Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NEURON 9.0 release #3137

Open
1 of 29 tasks
pramodk opened this issue Oct 21, 2024 · 2 comments
Open
1 of 29 tasks

NEURON 9.0 release #3137

pramodk opened this issue Oct 21, 2024 · 2 comments
Assignees
Labels
release Release related issues

Comments

@pramodk
Copy link
Member

pramodk commented Oct 21, 2024

Action items

Pre-release

Sanity checks

  • Create release/x.y branch and make sure GitHub, Azure and CircleCI builds pass
  • Run nrn-build-ci for the respective Azure build; see Azure drop guide
  • Activate ReadTheDocs build for release/x.y & make it hidden. Check docs are fine after build is done.
  • Run a test wheel build WITHOUT upload for release/x.y to ensure all the wheels build (see details)
  • Run BBP Simulation Stack & other relevant tests

Releasing

  • Update semantic version in CMakeLists.txt
  • Update changelog below and agree on it with everyone; then commit it to docs/changelog (copy structure as-is)
  • Update docs/index.rst accordingly with the new .pkg and .exe links for PKG installer and Windows Installer
  • Run the ReadTheDocs build again for release-x.y, make sure the build passes and inspect the Changelog page.

Important: we print the following message from nrnivmodl on error. Make sure the URL is right one!

NOTE: If you are encountering MOD file compilation errors only with NEURON version 9.0 or later
refer to the C++ migration guide at https://nrn.readthedocs.io/en/9.0.0/guide/porting_mechanisms_to_cpp.html
  • Create new release+tag on GitHub via release workflow. Note that the GitHub release will be marked as pre-release and will contain the full-src-package and the Windows installer at the end of the release workflow.
  • Build release wheels but WITHOUT upload (see details)
  • Create, test and upload manual artifacts
    • MacOS package installer (manual task, ask Michael)
    • arm64 wheels (manual task, check with Erik, Goran or Pramod)
    • aarch64 wheels (create a release/x.y-aarch64 branch for this, see guide)
  • Publish the x.y.z wheels on Pypi; see wheel publishing instructions
  • Once wheels are published, activate the x.y.z tag on ReadTheDocs
  • Rename the Windows installer in the GitHub release to match the new version and the supported python versions (i.e. nrn-8.2.2.w64-mingw-py-37-38-39-310-311-setup.exe
    )
  • Publish release on GitHub (edit https://github.com/neuronsimulator/nrn/releases/tag/x.y.z and un-tick the pre-release checkbox)

Post-release

  • To mark the start of a new development cycle, tag master as follows:
    • minor version: x.(y+1).dev
    • major version: (x+1).0.dev
  • Deactivate ReadTheDocs build for release/x.y
  • Go to ReadTheDocs advanced settings and set Default version to x.y.z
  • Let people know 🚀
  • Cherrypick changelog and installer links to master
  • Update the changelog for the release on GitHub

Changelog

NEURON X.Y

[x.y.z]

Release Date : DD-MM-YYYY

What's New

  • [List new features/support added]
  • .....

Breaking Changes

  • [List the changes that aren't backward compatible]
  • ...

Deprecations

  • [List the features that are deprecated]
  • ...

Bug Fixes

  • [List the important bug fixes]
  • ...

Improvements / Other Changes

  • [List the improvements made in the new release and any other changes]
  • ...

Upgrade Steps

  • [Describe how to migrate from previous NEURON Version]
  • ...

For the complete list of features and bug fixes, see the list in GitHub Issue #[GH_no.]

ReadTheDocs sneak peek

Commits going into x.y.z

[given a.b.c is the last release:]

Since [a.b.c], with:

git log --pretty=format:"%h : %s" a.b.c..release/x.y

we get:

  • commit 1
  • commit 2
  • ...
@pramodk pramodk added the release Release related issues label Oct 21, 2024
@JCGoran
Copy link
Contributor

JCGoran commented Oct 31, 2024

Currently there are some failures in modelDB for version 9.0, as seen here: https://github.com/neuronsimulator/nrn-modeldb-ci/actions/runs/11586042419/job/32255970874
The culprit appears to be this PR: #3093
I tested with a patched version of release 8.2, and the differences between the two (9.0 nightly and patched 8.2) disappear, so the failures are actually a non-issue.

@JCGoran
Copy link
Contributor

JCGoran commented Nov 1, 2024

Somehow #3143 (see #3143 (comment) for reproducer) broke the arm64 build on Linux: https://app.circleci.com/pipelines/github/neuronsimulator/nrn/9533/workflows/f44568f7-581f-4a2b-b9bf-fdf643ba0c14/jobs/4696
so the release is currently blocked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release Release related issues
Projects
None yet
Development

No branches or pull requests

2 participants