Add release_process.md documentation and tweak makefile

Document the release process, so we're more likely to
do it correctly.

Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
This commit is contained in:
David A. Wheeler 2018-01-26 00:26:36 -05:00
parent 34a58911d3
commit 196943f223
2 changed files with 62 additions and 7 deletions

View File

@ -2,12 +2,8 @@
# Released under the General Public License (GPL) version 2 or later.
# (C) 2001-2017 David A. Wheeler.
# To change version number, edit this here, the beginning of the
# "flawfinder" script, flawfinder.spec, setup.py, and index.html.
# Then "make test-is-correct" to get the updated version number.
# To distribute, "make distribute && su && make rpm".
# Then use make my_install to install to website image.
# Eventually switch to using DistUtils to autogenerate.
# See "release_process.md" for release process, including
# how to change version numbers.
NAME=flawfinder
VERSION=2.0.6
@ -123,7 +119,7 @@ distribute: clean flawfinder.pdf flawfinder.ps
dist: distribute
# This *creates* a PyPi distribution package. Use "upload-pypi" to upload it
pypi: distribute
pypi:
python setup.py bdist_wheel --universal
# NOTE: Only do this after running "make pypi" & being satisfied with it

59
release_process.md Normal file
View File

@ -0,0 +1,59 @@
# Release process
Here's information on how to release an update to flawfinder.
## Changing version number
You should really change the version number before changing anything else.
Make sure every release has a unique version number.
To change version number, edit the following files:
makefile
flawfinder
flawfinder.spec
setup.py
index.html
Then run:
make test && make test-is-correct # update version number in tests
## Test it
make check # Run tests in Python 2 and 3
## Tag version
Once you're sure this is the *real* version, tag it:
git tag VERSION
git push
## Create tarball
Run:
~~~~
make distribute
~~~~
## Post tarball
Then post the tarball flawfinder-VERSION.tar.gz to
the usual places:
* SourceForge "files" directory, and set it to be the default download.
* dwheeler.com/flawfinder
## Post to pip
Create a PyPi distribution package:
~~~~
make pypi
~~~~
And upload it:
~~~~
make upload-pypi
~~~~