Skip to content
Cyrus Harrison edited this page May 21, 2024 · 33 revisions

This page lists the steps to publish a new Conduit release.

Update the Conduit Version in the Main CMakeLists.txt file

  • (src/CMakeLists.txt)

Update the Conduit Version in pip setup script file

  • (setup.py)
  • (src/libs/conduit/python/setup.py)

Update Docs

  • Update CHANGELOG, remember to update the github release range links at the bottom
  • Make sure to also change the version number in the Sphinx conf.py
    • cd scripts && python3 gen_relnotes_variants_from_changelog.py 0.9.0
  • Use the helper script to convert changelog release into github release notes, sphinx, and the llnl news entry.
    • Also add release data to the sphinx release notes
  • Create release notes entry for the releases docs page

Close the Release Milestone on Github

  • Make sure there are no outstanding issues and explicitly close the milestone

Publish the Release

  • Start a release on github, name the release X.Y.Z (ex: 0.2.1)

  • Add release notes (or shortened variant) to the release

    • Recall Sphinx and Github use different markup, make sure to preview the release notes
  • Tag develop as vX.Y.Z (ex: v0.2.1)

  • Create source release tarball that includes BLT using the git_archive_all script:

    • python3 scripts/git_archive_all.py --prefix conduit-v0.3.1 conduit-v0.3.1-src-with-blt.tar.gz
    • ( or python3 scripts/gen_release_tarball.py --version 0.7.0)
  • Upload release tarball to github

Update the Conduit Spack Package

  • Download the release source conduit-X.Y.Z-src-with-blt.tar.gz from github.
  • Calc the sha256 checksum for the release tarball:
    • shasum -a 256 < conduit-X.Y.Z-src-with-blt.tar.gz
  • Add the version and checksum as a new entry to the conduit spack package.py
  • Init a pull request to the spack develop branch to merge the conduit package.py update

Create a News Item for software.llnl.gov

  • use a fork of LLNL/llnl.github.io to create a news item
  • Create a new post for https://github.com/LLNL/llnl.github.io/tree/master/_posts
  • Again, Sphinx and Github use different markup, see other posts for examples of the proper style
  • Init a pull request to llnl.github.io master to merge and publish the post