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

Release Pillow 5.4.0 on January 1, 2019 #3391

Closed
20 tasks done
hugovk opened this issue Oct 1, 2018 · 21 comments
Closed
20 tasks done

Release Pillow 5.4.0 on January 1, 2019 #3391

hugovk opened this issue Oct 1, 2018 · 21 comments
Assignees
Labels
Milestone

Comments

@hugovk
Copy link
Member

hugovk commented Oct 1, 2018

Need release notes:

Main release checklist

  • Open a release ticket
  • Develop and prepare release in master branch.
  • Check Travis CI and AppVeyor CI to confirm passing tests in master branch.
  • Check that all of the wheel builds Pillow Wheel Builder pass the tests in Travis CI.
  • In compliance with PEP 440, update version identifier in src/PIL/_version.py
  • Update CHANGES.rst.
  • Run pre-release check via make release-test in a freshly cloned repo.
  • Create branch and tag for release e.g.:
    $ git branch 5.4.x
    $ git tag 5.4.0
    $ git push --all
    $ git push --tags
  • Create source distributions e.g.:
    $ make sdist

Binary Distributions

Windows

Mac and Linux

    $ git clone https://github.com/python-pillow/pillow-wheels
    $ cd pillow-wheels
    $ git submodule init
    $ git submodule update Pillow
    $ cd Pillow
    $ git fetch --all
    $ git checkout [[release tag]]
    $ cd ..
    $ git commit -m "Pillow -> 5.2.0" Pillow
    $ git push

Publicize Release

Documentation

@hugovk hugovk added the Release label Oct 1, 2018
@radarhere radarhere added this to the 5.4.0 milestone Oct 20, 2018
@radarhere
Copy link
Member

When I go to the Zenodo badge URL - https://zenodo.org/badge/latestdoi/17549/python-pillow/Pillow - I see Pillow 3.1.0. Do we need to add updating Zenodo to the release checklist?

@hugovk
Copy link
Member Author

hugovk commented Dec 24, 2018

I think it should be automatic after the first release.

Please could someone check the settings here? I don't have permission.

https://zenodo.org/account/settings/github/repository/python-pillow/Pillow

For example, at https://zenodo.org/account/settings/github/repository/hugovk/Pillow I see:

https://guides.github.com/activities/citable-code/

@hugovk
Copy link
Member Author

hugovk commented Dec 27, 2018

Anything in particular that needs adding to the release notes?

https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst#540-unreleased

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

We're down to a single page of PRs! I'll start the release.

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

I've excluded the new .readthedocs.yml from MANIFEST.in, so check-manifest passes (part of make release-test): d2d4387.

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

@cgohlke Please could we have Windows binaries for 5.4.0?

@cgohlke
Copy link
Contributor

cgohlke commented Jan 1, 2019

Please could we have Windows binaries for 5.4.0?

Here you go.

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

@cgohlke Thank you! Downloaded, and uploaded! https://pypi.org/project/Pillow/5.4.0/

@aclark4life or @wiredfool, I accidentally uploaded one old dev .egg file, please could you delete/unpublish/hide 5.4.0.dev0 from PyPI: https://pypi.org/project/Pillow/5.4.0.dev0/

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

Release mostly done, just docs and Twitter to do:

Make sure the default version for Read the Docs is the latest release version, i.e. 5.4.0 rather than latest e.g. https://pillow.readthedocs.io/en/5.4.x/

I don't see where to do this.

At https://readthedocs.org/dashboard/pillow/versions/ (and https://readthedocs.org/dashboard/pillow/advanced/) it's possible to set the default version, but there's only "latest", "stable" and "5.3.x" in the dropdown.

At https://readthedocs.org/projects/pillow/versions/, there's all the old versions but no 5.4.x (or 5.4.0).

At https://readthedocs.org/projects/pillow/builds/, it says the last build was 6 days ago. There should have been some since then, and today.

Any ideas?

@hugovk
Copy link
Member Author

hugovk commented Jan 1, 2019

Tweet: https://twitter.com/PythonPillow/status/1080197076779220994

@aclark4life
Copy link
Member

Thanks @hugovk @radarhere et al! HNY

@moubctez
Copy link

moubctez commented Jan 2, 2019

Source code didn't make it to PyPI. Please, upload.

@hugovk
Copy link
Member Author

hugovk commented Jan 2, 2019

@moubctez Source is now uploaded, sorry for the delay!

@aclark4life Please could you check #3391 (comment)?

@hugovk
Copy link
Member Author

hugovk commented Jan 2, 2019

@python-pillow/pillow-team Should we make a point release to fix this PNG/APNG regression discovered by Django?

#3501 (comment)

We have a fix PR: #3525.

If we do make a point release, I'd suggest we only fix the PNG/APNG regression, and the other Jpeg2K/SGI fixes in #3525 can wait until 5.5.0. Thoughts?

@aclark4life
Copy link
Member

@hugovk Reviewing things I missed now and will get back to you shortly. Is it OK from a "good practice" POV to delete that egg? I've been out of the loop, but I still have "never delete from PyPI!!!" deeply ingrained … as such, I might be leaning towards a 5.4.1.

@wiredfool
Copy link
Member

I'd say that the install on termux might qualify as well (#3526).

We should go with 5.4.1, but I'd wait a few days to catch any other reasonably immediate things.

@hugovk
Copy link
Member Author

hugovk commented Jan 2, 2019

Sounds good, will wait a bit. Yes, I was going to suggest including #3526 too (fix or revert).

I think 5.4.0.dev0 egg can be deleted completely, it's a dev build from November I accidentally uploaded from my build, instead of the clean environment build. It's a distinct "release" from the official 5.4.0 release on PyPI. But unpublish if you prefer.

Thanks!

@aclark4life
Copy link
Member

@hugovk The new PyPI does not have "hide" as far as I can tell … and there is a giant warning as you'd expect:

screenshot 2019-01-02 09 42 51

I say we leave it up as a social experiment … unless someone from the public complains along the lines of "For God's sake, please delete that egg!"

In general, even though I'm fuzzy on the details now, it's clearly coming back to me that the "morally right" thing to do is leave it (even though practically speaking, it probably doesn't matter one way or another in this case.)

@radarhere
Copy link
Member

I manually triggered a latest build at https://readthedocs.org/projects/pillow/builds/, and after that I could see the 5.4.x branch. So ReadTheDocs now redirects correctly for 5.4.x.

However, I found that if I deactivated 5.3.x, https://pillow.readthedocs.io/en/5.3.x/ would stop working. I presume this isn't our plan, and that we would like old documentation links to keep working. Scrolling down https://readthedocs.org/projects/pillow/versions/, I find that whether there is 'clean' or not describes if an old branch works or not - https://pillow.readthedocs.io/en/5.1.x/ vs https://pillow.readthedocs.io/en/5.0.x/
versions

Should we just activate all old branches, or does someone have a better understanding of this situation?

@aclark4life
Copy link
Member

@radarhere Looking …

@aclark4life
Copy link
Member

aclark4life commented Jan 3, 2019

@python-pillow/pillow-team Actually let's try defaulting to stable again.

screenshot 2019-01-03 17 50 00

There's no version number in the URL, but you can tell the version from the PyPI badge. No one needs to see the old versions as far as I'm concerned. This also requires no RTD updates on release, because RTD tracks latest and stable for us automatically:

Also, closing this one because we have #3535 now.

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

No branches or pull requests

6 participants