use cmake and python to keep version numbers updated #26323
Draft
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 uses a combination of python scripts and cmake dependencies to keep the version number information consistent with the information in
CMakeLists.txt
. The purpose is to avoid manually having to update the version number across a variety of documents with every release. With this change, the version numbers will be correctly updated based on the status of theCHPL_OFFICIAL_RELEASE
flag, and the current, previous, and next version numbers.This necessitated tracking the next and past version numbers as the
versionButton.php
file needs the next version number when theCHPL_OFFICIAL_RELEASE
flag becomes true, and at the same time the archived-spec.rst file needs to know the previous version number.Because we can't predict the past or next version number from the current one, it was necessary to add these to the
CMakeLists.txt
file.New files that need updating can be handled by creating new instances of the
FileUpdater
class and implementing theupdate
method.