-
Notifications
You must be signed in to change notification settings - Fork 53
Release Checklist
David Ozog edited this page Oct 19, 2021
·
23 revisions
- Update version number in
configure.ac
; format vX.Y.Z[suffix]. The X and Y numbers correspond to the highest numbered version of the OpenSHMEM specification that is supported by the release and the Y number starts at 0 and is incremented with each subsequent release. The suffix is used to denote a pre-release and has the format [a-z]+[0-9]+; we have adopted a convention of starting with "1" rather than "0" for suffix numbering. A suffix of "a" denotes an alpha release and "rc" denotes a release candidate. The suffix should not be appended with a "-" as this causes problems for autoconf (e.g. v1.3.0-rc1 was a poor choice). Examples of good version numbers: v1.4.0, v1.4.0a1, v1.4.0rc1. - Add entry to NEWS file for the new version. Autoconf will check that the version numbers match and fail if the NEWS entry is missing.
- Update SHMEM_MAJOR_VERSION and SHMEM_MINOR_VERSION in
mpp/shmem-def.h.in
andmpp/shmem.fh.in
. These numbers must follow the rules defined in the OpenSHMEM specification. In particular, they should correspond to the highest numbered version of the OpenSHMEM specification that is supported.
- Test with latest release of libfabric, including sockets, PSM2, GNI, and verbs;ofi_rxm providers.
- Test with c99 and c11 compilers (e.g.
-std=c99
) - Test with Portals 4 reference implementation (must be done on an InfiniBand cluster).
- Test that the tarball produced by
make dist
can be used to successfully build SOS (a common error is that newly added files are not included in the distribution).$ make distcheck
- Test the RPM package build:
$ ./configure --with-ofi=$HOME/opt/libfabric --enable-pmi-simple
$ make dist (note this doesn't work on Neptune)
$ rpmbuild -ta ./sandia-openshmem-X.Y.Z.tar.gz --define "configargs --enable-pmi-simple --with-ofi=path-to-libfabric"
- Coverity check (optional - there may be many false positive warnings)
- Check that all new profiling symbols (
pshmem
) are included in SOS - Travis only checks
--with-ofi --with-cma --enable-error-checking --enable-profiling --enable-ofi-mr=basic --enable-av-map --enable-remote-virtual-addressing --enable-pmi-simple
but we are consistently low on credits. It may be best to check it (and CMA in general) manually.
- Synchronize the external openshmem-org/sos-test repository and tag it with the corresponding version number.
- (Post release) synchronize upstream dependencies if necessary (OMPI configury, PMI-simple, dlmalloc, uthash, etc.)
- (Post release) Update
SOS_VERSION
inscripts/simple-build-ofi.sh
. Must be done only after the release is tagged.