Software Release Procedure
Estimated reading time: 1 minuteCEPC Software Release Procedure
The software packages are defined in the repository cepc-release.
Define New Version
Edit file config/version and set to new version name and commit this
change with git commit.
Then tag cepc-release with new version name, e.g., 1.2.3:
git tag -a v1.2.3 -m 'Version 1.2.3'
git push origin v1.2.3
Then this version could be found with cepcenv ls-remote
command:
$ cepcenv ls-remote
...
1.2.3
Patch for Package
Several packages may be not compatible once other packages updated, like changed function definition, different compiler version. But sometimes we do not want to update these packages to a new version which may sovle this problem. Then we need to patch them in order to make them work. This is the patch steps:
- Copy the original package and modify the incompatible codes:
    copy -r package-1.2.3 package-1.2.3_patched
- Use diffcommand to generate the patch file:diff -Nur package-1.2.3 package-1.2.3_patched > package-1.2.3.patch
- Copy this patch file under the patchdirectory incepc-release.
- Modify the installconfiguration of the package and addpre_compilestep:pre_compile: handler: patch param: file: package-1.2.3.patch
The patch file will be automatically applied before compilation.