Skip to content

Commit e4c98c7

Browse files
authored
Improve documentation of the release process. (#1063)
1 parent c9ce19c commit e4c98c7

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

docs/contributing.rst

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ The following notes are to remind the project maintainers and leads of the steps
256256
review and merge PRs and to publish a new release.
257257

258258
Reviewing and Merging PRs
259-
------------------------
259+
-------------------------
260260

261261
- Make sure the PR description includes the `pull request template
262262
<https://github.com/jazzband/django-oauth-toolkit/blob/master/.github/pull_request_template.md>`_
@@ -272,18 +272,25 @@ PRs that are incorrectly merged may (reluctantly) be reverted by the Project Lea
272272
Publishing a Release
273273
--------------------
274274

275-
Only Project Leads can publish a release to pypi.org and rtfd.io. This checklist is a reminder
276-
of steps.
275+
Only Project Leads can `publish a release <https://jazzband.co/about/releases>`_ to pypi.org
276+
and rtfd.io. This checklist is a reminder of the required steps.
277277

278278
- When planning a new release, create a `milestone
279279
<https://github.com/jazzband/django-oauth-toolkit/milestones>`_
280280
and assign issues, PRs, etc. to that milestone.
281281
- Review all commits since the last release and confirm that they are properly
282-
documented in the CHANGELOG. (Unfortunately, this has not always been the case
283-
so you may be stuck documenting things that should have been documented as part of their PRs.)
282+
documented in the CHANGELOG. Reword entries as appropriate with links to docs
283+
to make them meaningful to users.
284284
- Make a final PR for the release that updates:
285285

286286
- CHANGELOG to show the release date.
287-
- setup.cfg to set `version = ...`
288-
289-
- Once the final PR is committed push the new release to pypi and rtfd.io.
287+
- `oauth2_provider/__init__.py` to set `__version__ = "..."`
288+
289+
- Once the final PR is merged, create and push a tag for the release. You'll shortly
290+
get a notification from Jazzband of the availability of two pypi packages (source tgz
291+
and wheel). Download these locally before releasing them.
292+
- Do a `tox -e build` and extract the downloaded and bullt wheel zip and tgz files into
293+
temp directories and do a `diff -r` to make sure they have the same content.
294+
(Unfortunately the checksums do not match due to timestamps in the metadata
295+
so you need to compare all the files.)
296+
- Once happy that the above comparison checks out, approve the releases to Pypi.org.

tox.ini

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,17 +82,14 @@ deps =
8282
flake8-quotes
8383
flake8-black
8484

85-
[testenv:install]
85+
[testenv:build]
8686
deps =
87-
twine
8887
setuptools>=39.0
8988
wheel
9089
whitelist_externals = rm
9190
commands =
9291
rm -rf dist
9392
python setup.py sdist bdist_wheel
94-
twine upload dist/*
95-
9693

9794
[coverage:run]
9895
source = oauth2_provider
@@ -103,7 +100,7 @@ show_missing = True
103100

104101
[flake8]
105102
max-line-length = 110
106-
exclude = docs/, oauth2_provider/migrations/, tests/migrations/, .tox/
103+
exclude = docs/, oauth2_provider/migrations/, tests/migrations/, .tox/, build/, dist/
107104
application-import-names = oauth2_provider
108105
inline-quotes = double
109106
extend-ignore = E203, W503

0 commit comments

Comments
 (0)