Mercurial > p > roundup > code
comparison RELEASE.txt @ 6378:b57c3d50505b
issue2550899 Migrate setup.py to setuptools
Also fixes issue2550866 'pip install --editable .' fails
Installing roundup requires setuptools package which is available in
most OS distrobutions or via pip. Patch by John
Kristensen (jerrykan); additional doc changes (upgrade.txt,
RELEASE.txt) John Rouillard.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sat, 17 Apr 2021 16:41:23 -0400 |
| parents | a635a60ffb84 |
| children | 843a88670707 |
comparison
equal
deleted
inserted
replaced
| 6377:a7e7314fb7d9 | 6378:b57c3d50505b |
|---|---|
| 45 7. Remove previous build files | 45 7. Remove previous build files |
| 46 python setup.py clean --all | 46 python setup.py clean --all |
| 47 rm -rf build/share # deletes locale .mo files | 47 rm -rf build/share # deletes locale .mo files |
| 48 Rebuild and install .mo files | 48 Rebuild and install .mo files |
| 49 python setup.py build (sdist generation will fail if this isn't done) | 49 python setup.py build (sdist generation will fail if this isn't done) |
| 50 8. Rebuild documentation in "share/doc/roundup/html" | 50 8. Check documentation: |
| 51 python setup.py check --restructuredtext --metadata --strict | |
| 52 Rebuild documentation in "share/doc/roundup/html" | |
| 51 python setup.py build_doc | 53 python setup.py build_doc |
| 52 9. python setup.py sdist --manifest-only | 54 9. python setup.py sdist |
| 53 (ignore the 'warning: no previously-included ...' lines) | 55 (if you find sdist a little verbose, add "--quiet" to the end of the |
| 54 10. Check the MANIFEST to make sure that any new files are included. | 56 command) |
| 55 (use hg status --rev <last release or tag>:tip to list changed | 57 9a. 2021/04/17 skip this for now. Need to make sure that whl installs |
| 56 added and removed files. Last release e.g. 1.5.1 where tip was | 58 execuable scripts properly and update these directions to test. |
| 57 what would become 1.6) E.G. | 59 |
| 60 python2 setup.py bdist_wheel; python3 setup.py bdist_wheel | |
| 61 | |
| 62 to create binary distributions in wheel format. (egg format is | |
| 63 deprecated.) | |
| 64 10. Check the roundup.egg-info/SOURCES.txt to make sure that any new files are | |
| 65 included. (use hg status --rev <last release or tag>:tip to list changed | |
| 66 added and removed files. Last release e.g. 1.5.1 where tip was what would | |
| 67 become 1.6) E.G. | |
| 58 | 68 |
| 59 hg status --rev 1.6.0:tip | sed -ne 's/^A //p' | while read i ; \ | 69 hg status --rev 1.6.0:tip | sed -ne 's/^A //p' | while read i ; \ |
| 60 do echo $i; grep "$i" MANIFEST; done | uniq -c | 70 do echo $i; grep "$i" roundup.egg-info/SOURCES.txt; done | uniq -c |
| 61 | 71 |
| 62 Anything with a count of 1 is not in the manifest. | 72 Anything with a count of 1 is not in the manifest. |
| 63 If there are missing files that should be in the manifest, | 73 If there are missing files that should be in the manifest, |
| 64 edit MANIFEST.in to include them. For format docs see | 74 edit MANIFEST.in to include them. For format docs see |
| 65 http://docs.python.org/2/distutils/sourcedist.html#manifest-template | 75 https://packaging.python.org/guides/using-manifest-in/#using-manifest-in |
| 66 (Notes files for the website and issue tracker shouldn't be in the | 76 (Note: files under website/ shouldn't be in the manifest.) |
| 67 manifest.) | 77 11. Unpack the new tarball created in dist/roundup-<version>.tar.gz |
| 68 11. python setup.py sdist | |
| 69 (if you find sdist a little verbose, add "--quiet" to the end of the | |
| 70 command) | |
| 71 12. Unpack the new tarball created in dist/roundup-<version>.tar.gz | |
| 72 file in /tmp then | 78 file in /tmp then |
| 73 a) run tests using installed pytest run under python2 and | 79 a) run tests using installed pytest run under python2 and |
| 74 python3. (python2 -m pytest test/; python3 -m pytest test/) | 80 python3. (python2 -m pytest test/; python3 -m pytest test/) |
| 75 b) demo.py | 81 b) demo.py |
| 76 with all available Python versions. | 82 with all available Python versions. |
| 77 13. Assuming all is well tag the release in the version-control | 83 11a. (TBD how to test wheel binary distribution before uploading.) |
| 84 12. Assuming all is well tag the release in the version-control | |
| 78 system. | 85 system. |
| 79 a) hg tag 1.6.0 # use right version. Should create/commit a changeset | 86 a) hg tag 1.6.0 # use right version. Should create/commit a changeset |
| 80 b) hg push # update main repo | 87 b) hg push # update main repo |
| 81 c) hg sum # verify that the tag shows up | 88 c) hg sum # verify that the tag shows up |
| 82 14. Upload source distribution to PyPI - requires you sign up for a | 89 13. Upload source distribution to PyPI - requires you sign up for a |
| 83 pypi account and be added as a maintainer to roundup. Ask existing | 90 pypi account and be added as a maintainer to roundup. Ask existing |
| 84 maintainer for access. | 91 maintainer for access. You can do this two ways: |
| 92 | |
| 85 python setup.py sdist upload --repository pypi --sign | 93 python setup.py sdist upload --repository pypi --sign |
| 86 It should appear on http://pypi.python.org/pypi/roundup in no | 94 |
| 87 time. If you are using python older than 2.7.13 you need a | 95 which rebuilds the source distribution tarball and uploads it. |
| 88 .pypirc shown below. URL has changed. If using 2.7.13 or newer, | 96 This means that you have uploaded something tha is not tested. It |
| 89 you can remove the "--repository pypi" option. | 97 should be the same as the tarball you tested but.... |
| 90 15. Send doc/announcement.txt to python-announce@python.org and | 98 |
| 99 Another way to do this is to use twine (pip install twine). | |
| 100 You need to sign the tarball. This can be done with: | |
| 101 | |
| 102 gpg --detach-sign --armor <filename>.tgz | |
| 103 | |
| 104 you should be prompted to use the roundup release key. If not you | |
| 105 can add --local=roundup-devel@lists.sourceforge.net. | |
| 106 This will create a file by the name <filename>.tgz.asc. Then | |
| 107 use twine to upload *both* the asc and distibution tarball | |
| 108 at the same time. E.G.:x | |
| 109 | |
| 110 twine upload --repository pypi <filename>.tar.gz <filename>.tar.gz.asc | |
| 111 | |
| 112 (If you upload the .asc file separately from the distibution file | |
| 113 it gets a different path and is not able to be located in the pypi | |
| 114 interface. The asc file is downloaded using the tarball path and | |
| 115 add `asc'.) | |
| 116 | |
| 117 The distribution file should appear on | |
| 118 https://pypi.python.org/pypi/roundup in no time. If you are using | |
| 119 python older than 2.7.13 you need a .pypirc shown below since the | |
| 120 URL has changed. If using 2.7.13 or newer, you can remove the | |
| 121 "--repository pypi" option and use 'setup.py sdist upload...'. | |
| 122 | |
| 123 You can also use twine to upload the .whl (wheel) format | |
| 124 distributions (if created). Follow the directions for generating | |
| 125 the gpg asc files and upload the .whl distribution and .whl.asc | |
| 126 signature files together. | |
| 127 14. Send doc/announcement.txt to python-announce@python.org and | |
| 91 roundup-users@lists.sourceforge.net and | 128 roundup-users@lists.sourceforge.net and |
| 92 roundup-devel@lists.sourceforge.net | 129 roundup-devel@lists.sourceforge.net |
| 93 15b. Update entry on https://freshcode.club/projects/roundup-tracker | 130 14b. Update entry on https://freshcode.club/projects/roundup-tracker |
| 94 15c. Update entries for fossies by emailing announcement to | 131 14c. Update entries for fossies by emailing announcement to |
| 95 announce@fossies.org | 132 announce@fossies.org |
| 96 16. Refresh website. | 133 15. Refresh website. |
| 97 website/README.txt | 134 website/README.txt |
| 98 https://www.roundup-tracker.org/ should state that the stable | 135 https://www.roundup-tracker.org/ should state that the stable |
| 99 version is the one that you released. | 136 version is the one that you released. |
| 100 https://www.roundup-tracker.org/docs.html should also match the | 137 https://www.roundup-tracker.org/docs.html should also match the |
| 101 released version (or at least the major non pre-release | 138 released version (or at least the major non pre-release |
| 111 python setup.py check --restructuredtext --metadata --strict | 148 python setup.py check --restructuredtext --metadata --strict |
| 112 python setup.py build_doc | 149 python setup.py build_doc |
| 113 cd locale | 150 cd locale |
| 114 make | 151 make |
| 115 cd .. | 152 cd .. |
| 116 python setup.py sdist --manifest-only | |
| 117 python setup.py sdist --quiet | 153 python setup.py sdist --quiet |
| 118 ## python setup.py bdist_rpm | 154 ## python setup.py bdist_rpm |
| 119 # not required for pypi.org since 2017 -> python setup.py register | 155 # not required for pypi.org since 2017 -> python setup.py register |
| 120 python setup.py sdist upload --repository pypi --sign | 156 python setup.py sdist upload --repository pypi --sign |
| 121 | 157 |
