Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Doc release guide #7635

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

Merged
merged 9 commits into from
Dec 19, 2016
Merged

Doc release guide #7635

merged 9 commits into from
Dec 19, 2016

Conversation

tacaswell
Copy link
Member

I have been sitting on this for about a year...

This is a fleshed out version of the checklist I have been using for releases.

Closes #3707

@tacaswell tacaswell added this to the 2.0.1 (next bug fix release) milestone Dec 18, 2016

In addition the following two tests should be run and manually inspected::

python unit/memleak_hawaii3.py``
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extra backticks.


.. _release_ghstats:

Github Stats
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GitHub, everywhere.

Github Stats
------------

We automatically extract github issue, PRs, and authors from the github via the API::
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the github -> GitHub

at the root of the source tree.
After the docs are built, check that all of the links, internal and external, are still
valid. We use ``linkchecker`` for this, which has not been ported to python3 yet. You will
need to create a python2 enviroment with ``requests==2.9.0`` and linkchecker ::
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

enviroment -> environment

On the branch, do any additional testing you want to do, and then build
binaries and source distributions for testing as release candidates.
which will prompt you for your gpg key password and an annotation.
For pre releases it is important to follow :pep:`440` so than the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

than -> that

git checkout v2.0.0-doc
git clean -xfd
cd doc
pyhton make.py html latex -n 16
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

latex? Not pdf, like before?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

other one is wrong.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just noticed, pyhton -> python

there are directories containing the documentation for older versions.
The documentation for current master are built on travis and push to
the `devdocs <https://github.com/matplotlib/devdocs/>`__ repository.
These are available `matplotlib.org/devdocs
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

available at

cd ../matplotlib.github.com
mkdir 2.0.0
rsync -a ../matplotlib/doc/build/html/* 2.0.0
cp ../matplotlib/doc/build/html/Matplotlib.pdf 2.0.0
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this path right? It seems like it would have been covered by the rsync.

matplotlib-devel. Final (non-release-candidate) versions should also
be announced on python-announce. Include a summary of highlights from
the CHANGELOG and/or post the whole CHANGELOG since the last release.
In addition, annoucments should be made on social networks (twitter,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

annoucements -> announcements


print('.. _github-stats:')
print()
print('Github Stats')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GitHub

@NelleV
Copy link
Member

NelleV commented Dec 18, 2016

That patch has really no reason to target 2.0…

The patch looks good.

the CHANGELOG and/or post the whole CHANGELOG since the last release.
In addition, announcements should be made on social networks (twitter,
g+, FB). For major release, `NumFOCUS <http://www.numfocus.org/>`__
should be contacted for inclusion in their news letter and maybe to
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

newsletter is in one word.

GitHub Stats
------------

We automatically extract GitHub issue, PRs, and authors from the GitHub via the API::
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the GitHub -> GitHub

git tag -a v1.0.1rc1 a9f3f3a50745
.. [#] The tarball that is provided by GitHub is produced using `git
archive <https://git-scm.com/docs/git-archive>`__. We use
`versioneer <https://github.com/warner/python-versioneer>`__
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

versioneer is a bit of a red-herring; it's just the git archive process that produces the tag/branch info. I just tried it and now I see what you mean about it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is where the substitution is used though


Then push the tags to the main repository::
git archive v2.0.0 -o matplotlib-2.0.0.tar.gz --prefix=matplotlib-2.0.0/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The trailing slash in the prefix is very important!


* We have a Makefile for the OS X builds in the mpl source dir
:file:`release/osx`, so use this to prepare the OS X releases.
git push DANGER v2.0.0-doc:v2.0.0-doc
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant before the editing, but you've got that in there now.


This will hide any previous releases automatically.
If this is a final release the following downsteam packagers should be contacted:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

downstream

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I sort of like 'downsteam'...

git checkout v2.0.0-doc
git clean -xfd
cd doc
pyhton make.py html latex -n 16
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just noticed, pyhton -> python

@QuLogic
Copy link
Member

QuLogic commented Dec 18, 2016

I don't know what GitHub did to my review, but I think this covers everything (though I'd guess you'd know best, after all.)

@tacaswell
Copy link
Member Author

I validated most of this today with the rc2 release, will update the final release sutff with 2.0.

@NelleV
Copy link
Member

NelleV commented Dec 19, 2016

I deduce from your comment that this is still work in progress?

@tacaswell
Copy link
Member Author

I would not be sad if this got merged (after fix the apparently invaild bash?), but also would not be sad if this sits a bit longer.

@NelleV NelleV changed the title Doc release guide [MRG+1] Doc release guide Dec 19, 2016
@NelleV
Copy link
Member

NelleV commented Dec 19, 2016

I've relaunched the tests, and will merge once it is all green.

@NelleV
Copy link
Member

NelleV commented Dec 19, 2016

You've got around 15 minutes to fix that invalid bash :)

@NelleV NelleV merged commit 25c4818 into matplotlib:v2.x Dec 19, 2016
@tacaswell tacaswell deleted the doc_release_guide branch December 19, 2016 16:01
@QuLogic QuLogic changed the title [MRG+1] Doc release guide Doc release guide Dec 19, 2016
@QuLogic QuLogic modified the milestones: 2.0 (style change major release), 2.0.1 (next bug fix release) Dec 19, 2016
@tacaswell tacaswell mentioned this pull request Oct 8, 2017
29 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.