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

Switch releases to a single multi-pex. #698

Merged
merged 1 commit into from
Apr 3, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 16 additions & 32 deletions RELEASE.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,15 @@ local commit:
::

$ git log --stat -1
commit 47c26d746046a8ab21bd3cb3bb782ce5f018a369 (HEAD -> master, tag: v1.4.7, origin/master, origin/HEAD)
commit 8ffb208eb8cc597a4a486b212e0f6d3a12416a09 (HEAD -> master, tag: v1.6.5, origin/master, origin/HEAD)
Author: John Sirois <[email protected]>
Date: Tue Sep 25 16:06:26 2018 -0600
Date: Fri Mar 29 17:53:00 2019 -0700

Prepare the 1.4.7 release. (#556)

Fixes #555
Prepare the 1.6.5 release. (#697)

CHANGES.rst | 8 ++++++++
pex/version.py | 2 +-
setup.py | 1 +
3 files changed, 10 insertions(+), 1 deletion(-)
2 files changed, 9 insertions(+), 1 deletion(-)

Push to Master
--------------
Expand All @@ -36,7 +33,7 @@ Tag, push and watch Travis CI go green:

::

$ git tag --sign -am 'Release 1.4.7' v1.4.7
$ git tag --sign -am 'Release 1.6.5' v1.6.5
$ git push --tags origin HEAD

PyPI Release
Expand All @@ -57,7 +54,7 @@ Dogfood
$ pip install --no-cache-dir --upgrade pex
...
$ pex --version
pex 1.4.7
pex 1.6.5

Github Release
==============
Expand All @@ -67,49 +64,36 @@ Prepare binary assets

::

$ tox -e py27-package
$ tox -e package
...
$ ./dist/pex27 --version
pex27 1.4.7

$ tox -e py37-package
...
$ ./dist/pex37 --version
pex36 1.4.7
$ ./dist/pex --version
pex 1.6.5

Craft the Release
-----------------

Open a tab on prior release as a template:

- https://github.com/pantsbuild/pex/releases/edit/v1.4.6
- https://github.com/pantsbuild/pex/releases/edit/v1.6.4

Open a tab to construct the current:

- https://github.com/pantsbuild/pex/releases/new?tag=v1.4.7
- https://github.com/pantsbuild/pex/releases/new?tag=v1.6.5

1. Use "Release <VERSION>" as the release name (e.g. "Release 1.4.7")
1. Use "Release <VERSION>" as the release name (e.g. "Release 1.6.5")
2. Copy and paste the most recent CHANGES.rst section.
3. Adapt the syntax from RestructuredText to Markdown (e.g. ``#ID <links>`` -> ``#ID``).
4. Upload both the ``pex27`` and ``pex37`` artifacts.
4. Upload the ``pex`` artifact.

Check your work
---------------

::

$ curl -L https://github.com/pantsbuild/pex/releases/download/v1.4.7/pex27 -O
$ curl -L https://github.com/pantsbuild/pex/releases/download/v1.6.5/pex -O
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 578 0 578 0 0 525 0 --:--:-- 0:00:01 --:--:-- 525
100 1450k 100 1450k 0 0 128k 0 0:00:11 0:00:11 --:--:-- 139k
$ ./pex27 --version
pex27 1.4.7

$ curl -L https://github.com/pantsbuild/pex/releases/download/v1.4.7/pex37 -O
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 578 0 578 0 0 296 0 --:--:-- 0:00:01 --:--:-- 296
100 1406k 100 1406k 0 0 131k 0 0:00:10 0:00:10 --:--:-- 256k
$ ./pex37 --version
pex37 1.4.7
$ ./pex --version
pex 1.6.5
25 changes: 11 additions & 14 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -180,20 +180,17 @@ commands = pex {posargs:}
[testenv:py37-run]
commands = pex {posargs:}

[testenv:py27-package]
commands = pex --cache-dir {envtmpdir}/buildcache requests . -o dist/pex27 -e pex.bin.pex:main -v

[testenv:py34-package]
commands = pex --cache-dir {envtmpdir}/buildcache requests . -o dist/pex34 -e pex.bin.pex:main -v

[testenv:py35-package]
commands = pex --cache-dir {envtmpdir}/buildcache requests . -o dist/pex35 -e pex.bin.pex:main -v

[testenv:py36-package]
commands = pex --cache-dir {envtmpdir}/buildcache requests . -o dist/pex36 -e pex.bin.pex:main -v

[testenv:py37-package]
commands = pex --cache-dir {envtmpdir}/buildcache requests . -o dist/pex37 -e pex.bin.pex:main -v
[testenv:package]
# TODO(John Sirois): Include subprocess32 when #415, #658 and #694 are resolved.
commands =
pex -v \
--cache-dir {envtmpdir}/buildcache \
--interpreter-constraint=">=3.4,<4" \
--interpreter-constraint="==2.7.*" \
--python-shebang="/usr/bin/env python" \
-o dist/pex \
-c pex \
requests .

# Would love if you didn't have to enumerate environments here :-\
[testenv:py27]
Expand Down