-
Notifications
You must be signed in to change notification settings - Fork 36
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This is the official release of GEOS-Chem Classic 14.2.3. Updates include: - GEOS-Chem (science codebase) 14.2.3 - HEMCO 3.7.2 - Add utility script to change version numbers before release (PR #46) Signed-off-by: Bob Yantosca <[email protected]>
- Loading branch information
Showing
6 changed files
with
127 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,119 @@ | ||
#!/bin/bash | ||
|
||
#EOC | ||
#------------------------------------------------------------------------------ | ||
# GEOS-Chem Global Chemical Transport Model ! | ||
#------------------------------------------------------------------------------ | ||
#BOP | ||
# | ||
# !MODULE: changeVersionNumbers.sh | ||
# | ||
# !DESCRIPTION: Bash script to change the version numbers in the appropriate | ||
# files in the GCClassic directory structure. Run this before releasing | ||
# a new GEOS-Chem Classic version. | ||
#\\ | ||
#\\ | ||
# !CALLING SEQUENCE: | ||
# $ ./changeVersionNumbers.sh X.Y.Z # X.Y.Z = GCClassic version number | ||
#EOP | ||
#------------------------------------------------------------------------------ | ||
#BOC | ||
|
||
function replace() { | ||
|
||
#======================================================================== | ||
# Function to replace text in a file via sed. | ||
# | ||
# 1st argument: Search pattern | ||
# 2nd argument: Replacement text | ||
# 3rd argument: File in which to search and replace | ||
#======================================================================== | ||
|
||
sed -i -e "s/${1}/${2}/" "${3}" | ||
} | ||
|
||
|
||
function exitWithError() { | ||
|
||
#======================================================================== | ||
# Display and error message and exit | ||
#======================================================================== | ||
|
||
echo "Could not update version numbers in ${1}... Exiting!" | ||
exit 1 | ||
} | ||
|
||
|
||
function main() { | ||
|
||
#======================================================================== | ||
# Replaces the version number in the files listed. | ||
# | ||
# 1st argument: New version number to use | ||
#======================================================================== | ||
|
||
# New version number | ||
version="${1}" | ||
|
||
# Save this directory path and change to root directory | ||
thisDir=$(pwd -P) | ||
cd .. | ||
|
||
#======================================================================== | ||
# Update version numbers in various files | ||
#======================================================================== | ||
|
||
# Pattern to match: X.Y.Z | ||
pattern='[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*' | ||
|
||
# List of files to replace | ||
files=( \ | ||
"CMakeLists.txt" \ | ||
"docs/source/conf.py" \ | ||
) | ||
|
||
# Replace version numbers in files | ||
for file in ${files[@]}; do | ||
replace "${pattern}" "${version}" "${file}" | ||
[[ $? -ne 0 ]] && exitWithError "${file}" | ||
echo "GCClassic version updated to ${version} in ${file}" | ||
done | ||
|
||
#======================================================================== | ||
# Update version number and date in CHANGELOG.md | ||
#======================================================================== | ||
|
||
# Pattern to match: "[Unreleased] - TBD" | ||
pattern='\[.*Unreleased.*\].*' | ||
date=$(date -Idate) | ||
|
||
# List of files to replace | ||
files=( \ | ||
"CHANGELOG.md" \ | ||
"src/GEOS-Chem/CHANGELOG.md" \ | ||
) | ||
|
||
# Replace version numbers in files | ||
for file in ${files[@]}; do | ||
replace "${pattern}" "\[${version}\] - ${date}" "${file}" | ||
[[ $? -ne 0 ]] && exitWithError "${file}" | ||
echo "GCClassic version updated to ${version} in ${file}" | ||
done | ||
|
||
# Return to the starting directory | ||
cd "${thisDir}" | ||
} | ||
|
||
# --------------------------------------------------------------------------- | ||
|
||
# Expect 1 argument, or exit with error | ||
if [[ $# -ne 1 ]]; then | ||
echo "Usage: ./changeVersionNumbers.sh VERSION" | ||
exit 1 | ||
fi | ||
|
||
# Replace version numbers | ||
main "${1}" | ||
|
||
# Return status | ||
exit $? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule GEOS-Chem
updated
65 files
Submodule HEMCO
updated
10 files
+108 −0 | .release/changeVersionNumbers.sh | |
+12 −1 | CHANGELOG.md | |
+1 −1 | CMakeLists.txt | |
+1 −1 | SUPPORT.md | |
+1 −1 | docs/source/conf.py | |
+1 −1 | docs/source/hco-ref-guide/hemco-config.rst | |
+5 −0 | run/createRunDir.sh | |
+26 −4 | src/Core/hco_config_mod.F90 | |
+1 −1 | src/Core/hco_error_mod.F90 | |
+1 −1 | src/Core/hco_types_mod.F90 |