-
Couldn't load subscription status.
- Fork 73
Release Process
Elsa Gonsiorowski, PhD edited this page Mar 7, 2019
·
17 revisions
There are a number of steps to creating a new release. Including updating the documentation, tagging a release on GitHub (complete with release notes), and updating distributed packaging systems.
- Verify the experimental status of all tools. Any tool which should be moved out of experimental status can follow the Experimental Tools release process.
- Update the documentation
- The version number must be updated in
doc/src/conf.pyandmpifileutils.spec. - The man pages must be regenerated, moved to
man/, and committed back to the repo.
- The version number must be updated in
- Tag the release on GitHub. Details on writing release notes can be found below.
- Update the spack package
- Push the new version to TCE
The release notes should be grouped by libmfu, then tool (alphabetically), and finally bug fixes.
Sample release notes from version 0.9:
We’ve officially converted to CMake! Instructions for building are here: https://mpifileutils.readthedocs.io/en/v0.9/build.html
New Features:
- dcmp: include nanoseconds when comparing timestamps
- dcmp: new
--liteoption to compare files based on file type, file size, and modification time rather than file content- drm: new
--aggressiveoption to delete files while walking- dsync: default behavior no longer deletes files at the destination, deleting now requires new
--deleteoption- dsync: optionally copies in batches with
--batch-filesoption as form of self-checkpointing long running dsync jobs- drm: fix segfault when deleting a large number of files
- libmfu: avoid problematic MPI I/O external32 for more consistent file format
- libmfu: support for GPFS ACLs
New Tools:
- dfind: filters file list based on different criteria
- dreln: update symlinks whose targets use absolute paths, useful after dsync