-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
release 1.3 #11384
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
release 1.3 #11384
Conversation
|
Feel free to merge and continue whenever you think it makes sense, thanks for pushing this out @drammock ! |
|
hey @moritz-gerster and @dissagaliyeva; I noticed that in #11245 you credited Jennifer Behnke, Hakimeh Aslsardroud, and Pavel Navratil as contributors. But they weren't listed as co-authors on any commits in that PR, so in order for them to get credit as authors in the next release, I need to create an empty commit with them as commit authors. Which means I need (ideally github-associated) email addresses for each of them. Can you provide those? You can email to me privately if you don't want to post them publicly here. My email address is in the sidebar of my homepage (https://dan.mccloy.info) |
|
Sure, @drammock, I will send them to you via e-mail as soon as I get them! |
Co-authored-by: Hakimeh Aslsardroud <hakimeh.aslsardroud@localhost> Co-authored-by: Pavel Navratil <pavel.navratil@localhost>
51fae0c to
2ef2ce8
Compare
|
@moritz-gerster I ended up using fake |
update pinned website theme commit
Detailed instructions here but the basic steps are:
HEADof the theme, and find the newest commit that still looks good with our siterequirements_doc.txt.fix milestone issues / pending PRs.
build-dev-docs, you may need to run a[circle deploy]to get the docs up-to-date with the desired state of the code at release time.docs/cited.rstupdate website repo (mne-tools/mne-tools.github.io)
update changelog
Generate author list (note there is a version number in this command, be sure to update it):
Using the --group option in
git shortlogis important to capture "co-authored-by", and requires git 2.29+ (if your git is older than that, there is an official git PPA for debian-like systems).Add missing authors. Add anyone missing from the author list (e.g., first-time contributors who did not (co)author any commits but contributed during review/iteration). NOTE: make sure things are clean / not in process before doing this:
Ensure full names for all authors. If there are authors without full names, check if they already exist in
doc/changes/names.inc; if so, update.mailmapto map their full name to their alias. If they're not yet indoc/changes/names.inc, use the--emailoption in thegit shortlogcommand above to get their email address and ping them to ask if they want to provide a full name and URL; when they do, update.mailmapanddoc/changes/names.inc.Deduplicate authors. Check the list for duplicate names (e.g., Alex Gramfort and Alexandre Gramfort) and deduplicate by adding more
.mailmapentries.Add "authors" section to
doc/changes/latest.inc. Rerun thegit shortlogcommand above to generate the final list. Look at previous files (doc/changes/1.0.inc) for formatting example. Run make codespell and add any violating names toignore_words.txt.Highlight new contributors. Manually add + symbols next to new contributors in the list, and make sure their entries are properly formatted. Some users will not be associated with a given pull request / have a
:newcontrib:entry --git grep <name>can tell you if it's their first time contributing.Update changelog title and shortcut. At the top of
doc/changes/latest.incChange "Current" to "Version X.Y.Z (YYYY-MM-DD)", replacing X.Y.Z with the release version being prepared, and YYYY-MM-DD with the release date. Also change.. _current:to.. _changes_X_Y_Z:.Rename changelog file.
git mv doc/changes/latest.inc doc/changes/X.Y.incUpdate
doc/whats_new.rstto point toX.Y.incinstead oflatest.incupdate the version string
doc/_static/versions.jsonto add an entry and updated stable/devel.SECURITY.mdmne/_version.pychangeX.Y.dev0toX.Y.0.circleci/config.ymlbump the version in "maint/X.Y"tools/circleci_download.shbump the version in"$CIRCLE_BRANCH" == "maint/X.Y"update codemeta and citation
tools/generate_codemeta.pyto update thecompound_surnamesvariable (if needed, based on new contributors from the changelog).cd tools/ && python generate_codemeta.pyto update the codemeta metadata and CITATION.cff files for this release, and stage them:git add codemeta.json CITATION.cffcommit and push
upstream main(or merge in your "prep for release" PR)make a release tag
vX.Y.Zfor all fields (version number, name, description), otherwise they get auto-populated with annoying things. The "target" of the release should bemain.create new stable branch
maint/X.Y.circleci/config.ymlto change names "build_docs_main" to "build_docs_stable" (example commit), and change the workflow name from "main" to "stable". Commit and push this change (git push upstream maint/X.Y).maint/X.Y-1ormaint/X-1.Y) and remove the "stable" workflow from.circleci/config.yml. Commit and push this to the appropriatemaintbranch.package for PyPI
dist/folder (in case you have wheels left from prior releases).python setup.py sdist bdist_wheeltwine upload dist/* --repository testpypi --verbosetwine upload dist/* --verbosepackage for Conda
versionandsha256inrecipe/meta.yaml; other additions will depend on what has changed for the project (e.g., minimum dependency versions). You can get the sha sum fromsha256 dist/mne-X.Y.Z.tar.gz(with X.Y.Z subsituted for the real version number, of course)update version numbers (again)
mne/_version.pyto next dev version, e.g.X.Y+1.dev0includes indoc/whats_new.pymainupdate MNE Installers
doc/install/installers.rstto point to the new installer files. Make sure to update links for all 3 platforms. Push this change to bothmaint/X.Yandmain, with commit message[circle deploy].announce the release
Close milestone
Do all the deprecations
git grep deprecat, find all the deprecations that are slated to be removed in the now-current dev version, and open a PR to remove them.stuff we no longer do:
Details
package for Debian
git-buildpackage --git-verbose --git-ignore-new -uc -us --git-tagdpkg-source --commitgit push