Skip to content
peterbrittain edited this page Jan 21, 2019 · 17 revisions

Warning: building on Windows is not safe

There is currently a known issue with building the public package on Windows: the CRLF format breaks PYPI and so formatting of the long description goes horribly wrong.

In addition, the last time I tried, the resulting package insisted on installing pypiwin32 on Linux. I believe that this may have been fixed by my recent application of http://stackoverflow.com/a/32955538/4994021, but haven't yet verified this, so... This still needs further testing on next distribution. In the meantime only build releases on Linux.

Building a new release

Quick checklist before going public with a new release:

  1. Check CHANGES.rst is up to date.
  2. Update README.rst to reference new release in any URLs.
    • Update sample URL
  3. Check everything in and run the full set of tests.
  4. Create new branch for major updates.
    • create in Github
    • git pull/merge
  5. Check latest docs build (and update RTD build branches as needed - try to keep 3 active).
  6. Tag, rebuild and check the dist installs.
    • git tag <version>
    • python setup.py test
    • python setup.py sdist bdist_wheel --universal
    • Check that both these files (sdist and wheel) install and can run latest samples.
    • Try uploading to pypitest and then installing on all platforms
      • twine upload -r pypitest dist/asciimatics*
      • pip install -U --index-url https://test.pypi.org/simple/ asciimatics
    • twine upload dist/asciimatics* (assuming just have new builds to upload).
  7. Push tag to github if not done from there originally.
    • git push origin <tag>
  8. Force re-build of docs if necessary to pick up tagged version.
  9. Release!
  10. Edit release notes for tag on github.
Clone this wiki locally