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

Create Release Notes for 8.0 releases #1211

Closed
pramodk opened this issue Apr 24, 2021 · 7 comments · Fixed by #1221
Closed

Create Release Notes for 8.0 releases #1211

pramodk opened this issue Apr 24, 2021 · 7 comments · Fixed by #1221
Assignees
Labels
release Release related issues
Milestone

Comments

@pramodk
Copy link
Member

pramodk commented Apr 24, 2021

For major release 8.0 release, we need to create detailed release notes similar to below format
Once done here, we can update #1221


Release Date : 30-04-2021

What's New

  • Dynamic selection of legacy vs modern units using HOC/Python API (default : modern)
  • Faster reaction-diffusion support
  • Initial GPU support using integration of CoreNEURON
  • Binary installer for new Apple M1 platform
  • Binary wheel distribution for Python 3.9 and Python 2.7
  • Release of NMODL version 0.3 (available as python wheel)
  • Versioned documentation available via nrn.readthedocs.io
  • CMake as a primary build system for NEURON and Interviews

Breaking Changes

  • h.Section now interprets positional arguments as name, cell. Previously positional arguments were interpreted in the other order. (Calling it with keyword arguments is unchanged.)
  • For 3d reaction-diffusion simulations, the voxelization and segment mapping algorithms have been adjusted, especially around the soma. Voxel indices and sometimes counts will change from previous versions.

Deprecations

  • Five functions in the neuron module: neuron.init, neuron.run, neuron.psection, neuron.xopen, and neuron.quit.
  • Autotools build is deprecated and will be removed in the next release. Use CMake instead.
  • Python 2 and Python 3.5 support is deprecated and will be removed in the next release. Use Python >= 3.6

Bug Fixes

For the complete list of bug fixes, see the list on the GitHub here.

Improvements / Other Changes

  • Allow for two point (single section) SWC somas
  • GitHub Actions and Azure as primary CI systems. Travis CI removed.
  • GitHub Releases provides full source tarballs, binary installers and python wheels.
  • Improved testing and CI infrastructure including GPUs
  • nrn-build-ci repository test nightly builds for Ubuntu 18.04, Ubuntu 20.04, Fedora 32, Fedora 33, CentOS7, CentOS8, Debian Buster (10) and macOS 10.15 platforms.
  • Improved integration of CoreNEURON
  • Support for recent numpy version
  • Various build improvements on Linux, MacOS and HPC platforms
  • Documentation from various repositories is consolidated under nrn repository
  • New releases via Spack and Easybuild package managers
  • Fix deadlock when compiling NEURON with AVX-512
  • Add backward-cpp for better backtraces

Upgrade Steps

Existing models should work without any changes. In order to upgrade NEURON version you can:

  • Use python wheels provided for Linux or Mac OS platform
  • Use binary installer provided for windows
  • Install from source, preferably using CMake build system
  • For new version, it's always a good idea to start over from scratch with nrnivmodl (deleting existing directory like x86_64)

See Installation section under nrn.readthedocs.io/. In the very rare case that numerical differences exist, check selection of legacy vs modern units.

Contributors

See the list of contributors on respective GitHub projects:

Feedback / Help

@pramodk pramodk added the release Release related issues label Apr 24, 2021
@pramodk pramodk added this to the Release v8.0 milestone Apr 24, 2021
@pramodk
Copy link
Member Author

pramodk commented Apr 24, 2021

@nrnhines @ramcdougal @alexsavulescu @adamjhn : we can start populating this ticket directly for release notes? we can directly edit the above comment if it's convenient. For the bug fixes we can get list from commit history in #1171 but we need to write highlights / Breaking Changes / Deprecations aspects explicitly.

@nrnhines
Copy link
Member

Useful issue as I don't fully know the answers to any of the questions off the top of my head:)

@pramodk
Copy link
Member Author

pramodk commented Apr 24, 2021

@nrnhines : I think based on the commits being cherry picked in #1171, we should be able to list down the changes. I will start updating few tomorrow.

@alexsavulescu
Copy link
Member

Actually we need to list all changes from 7.8.2, since 8.0a is a pre-release. once we merge #1171 I will provide a list here.

@alexsavulescu
Copy link
Member

alexsavulescu commented Apr 26, 2021

Sorry for the big list, but this is the best place to leverage GitHub commits via keywords.
So wrt 7.8.2 and 8.0-cherries :

git log --pretty=format:"%h , %ar : %s" 7.8.2..8.0-cherries

@alexsavulescu alexsavulescu linked a pull request Apr 28, 2021 that will close this issue
@nrnhines
Copy link
Member

Very well done!

Dynamic selection of legacy vs modern units using HOC/Python API

Dynamic selection of legacy vs modern units using HOC/Python API (default modern)
(or does that make the line too long?)

Existing models should work fine due backward compatibility

Existing models should work. In the very rare case that numerical differences exist, check ...
Is a pointer to the document about how to select legacy units useful here?
It is always a good idea to start over from scratch with nrnivmodl.
Is dictionary order in later Python3 relevant to mention?

@pramodk
Copy link
Member Author

pramodk commented Apr 29, 2021

Thank you Michael! I incorporated comments.

I didn't mention python3 dictionary aspects because we haven't changed anything default.

pramodk added a commit that referenced this issue Apr 29, 2021
@pramodk pramodk closed this as completed Apr 29, 2021
alexsavulescu added a commit that referenced this issue Apr 30, 2021
* introduce docs/changelog.md
* populate changelog from #1211

Co-authored-by: Pramod Kumbhar <pramod.kumbhar@epfl.ch>
alexsavulescu added a commit that referenced this issue Apr 30, 2021
* introduce docs/changelog.md
* populate changelog from #1211

Co-authored-by: Pramod Kumbhar <pramod.kumbhar@epfl.ch>
alexsavulescu added a commit that referenced this issue Apr 30, 2021
* introduce docs/changelog.md
* populate changelog from #1211

Co-authored-by: Pramod Kumbhar <pramod.kumbhar@epfl.ch>
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

Successfully merging a pull request may close this issue.

5 participants