2014-09-30 15:49:24 +00:00
|
|
|
Release Process
|
|
|
|
===============
|
|
|
|
|
2016-07-07 15:33:37 +00:00
|
|
|
Pre-developing
|
|
|
|
--------------
|
|
|
|
|
|
|
|
|
|
|
|
1. create a new section in the ChangeLog, with the name of the
|
|
|
|
release and the estimated date when it is going to be published.
|
|
|
|
If no date can be known at that time, we should use ``Undefined``.
|
|
|
|
|
|
|
|
2. create a new ``What's new in Pylint X.Y`` document. Take a look
|
|
|
|
at the examples from doc/whatsnew.
|
|
|
|
|
2019-03-02 13:26:04 +00:00
|
|
|
|
|
|
|
Release process
|
|
|
|
---------------
|
2016-07-07 15:33:37 +00:00
|
|
|
|
2014-09-30 15:49:24 +00:00
|
|
|
1. Preparation
|
2018-05-26 06:07:43 +00:00
|
|
|
0. Run the acceptance tests to see if everything is alright with this release.
|
|
|
|
We don't run them on CI:
|
|
|
|
|
|
|
|
pytest -m acceptance
|
|
|
|
|
2014-09-30 15:49:24 +00:00
|
|
|
1. Check if the dependencies of the package are correct
|
|
|
|
2. Update the version number in __pkginfo__
|
|
|
|
3. Put the version number and the release date into the changelog
|
2016-07-07 15:33:37 +00:00
|
|
|
4. Put the release date into the ``What's new`` section.
|
2018-05-15 19:07:10 +00:00
|
|
|
5. If releasing a major or minor version, generate the new copyright notices for this release:
|
|
|
|
$ copyrite --contribution-threshold 1 --change-threshold 3 --backend-type git --aliases=.copyrite_aliases . --jobs=8
|
|
|
|
|
|
|
|
6. Submit your changes.
|
2014-09-30 15:49:24 +00:00
|
|
|
|
2016-06-17 11:14:43 +00:00
|
|
|
2. Make sure the tests are passing on Travis:
|
|
|
|
https://travis-ci.org/PyCQA/pylint/
|
2014-09-30 15:49:24 +00:00
|
|
|
|
2019-03-02 13:26:04 +00:00
|
|
|
3. Do the actual release by tagging the master with 'pylint-$VERSION'. Travis should deal
|
|
|
|
with the release process once the tag is pushed with `git push origin --tags`
|
2014-09-30 15:49:24 +00:00
|
|
|
|
2019-03-02 13:26:04 +00:00
|
|
|
Manual Release
|
|
|
|
--------------
|
2016-07-07 15:33:37 +00:00
|
|
|
|
2019-03-02 13:26:04 +00:00
|
|
|
Following the previous steps, for a manual release run the following commands:
|
2017-12-15 11:26:10 +00:00
|
|
|
|
2017-12-15 11:48:40 +00:00
|
|
|
$ git clean -fdx && find . -name '*.pyc' -delete
|
2017-09-30 08:51:42 +00:00
|
|
|
$ python setup.py sdist --formats=gztar bdist_wheel
|
|
|
|
$ twine upload dist/*
|
2019-03-02 13:26:04 +00:00
|
|
|
$ # don't forget to tag it as well
|