refactor: Version sourcing, license headers, and legacy cleanup - #127
Open
JoshCederstrom wants to merge 4 commits into
Open
refactor: Version sourcing, license headers, and legacy cleanup#127JoshCederstrom wants to merge 4 commits into
JoshCederstrom wants to merge 4 commits into
Conversation
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request merges housekeeping changes into the dev branch, targeting the upcoming v6.0.0 release. There are no changes to model physics, inputs, or outputs.
Three related cleanups: the copyright notices are made maintenance-free, four legacy utility programs are removed, and the version number is consolidated into a single source of truth that the C++ code reads rather than duplicates.
Copyright Notices
The license year in the source headers had been bumped with each release, which is not necessary and creates extra maintenance. License year is now only in
LICENSE.txt.Removed Legacy Utilities
Deleted
InitialGW.cpp,RainInputCheck.cpp,RunsTracker.cpp, andmergeOutput.plfromsrc/utilities. None were part of the build, legacy code that is no longer applicable.Version Handling
The version number was previously written in three places: both
project()calls inCMakeLists.txt, and a hardcoded string intControl.cpp.The version is now declared once in
CMakeLists.txtand consumed everywhere else. A small template is configured into the build tree as a generated header, whichtControl.cppincludes. The generated header lives in the build directory only and is never checked in.The startup banner also reports the git commit the binary was built from, with a
-dirtymarker when the working tree has uncommitted changes:This is intended to make model runs traceable to an exact commit. The stamp is refreshed on every build rather than at configure time. Users building from a downloaded source archive see the banner without the build field.