Skip to content

Commit

Permalink
Merge pull request #22 from warner/cleanup-release
Browse files Browse the repository at this point in the history
Release v0.9, and some associated tooling work
  • Loading branch information
meejah authored Sep 25, 2024
2 parents da68efa + 6c290b2 commit a13d32d
Show file tree
Hide file tree
Showing 5 changed files with 68 additions and 11 deletions.
54 changes: 54 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# How to Make a Release
# ---------------------
#
# This file answers the question "how to make a release" hopefully
# better than a document does (only meejah and warner may currently do
# the "upload to PyPI" part anyway)
#

default:
echo "see Makefile"
echo "Make a new tag, then 'make release'"
echo "git tag

release:
@echo "Is checkout clean?"
git diff-files --quiet
git diff-index --quiet --cached HEAD --

@echo "Install required build software"
python3 -m pip install docutils

@echo "Test README"
python3 setup.py check -s

@echo "Is GPG Agent running, and has key?"
gpg --pinentry=loopback -u [email protected] --armor --clear-sign NEWS

@echo "Build and sign wheel"
python3 setup.py bdist_wheel
gpg --pinentry=loopback -u [email protected] --armor --detach-sign dist/spake2-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl
ls dist/*`git describe --abbrev=0 | tail -c +2`*

@echo "Build and sign source-dist"
python3 setup.py sdist
gpg --pinentry=loopback -u [email protected] --armor --detach-sign dist/spake2-`git describe --abbrev=0 | tail -c +2`.tar.gz
ls dist/*`git describe --abbrev=0 | tail -c +2`*

release-test:
gpg --verify dist/spake2-`git describe --abbrev=0 | tail -c +2`.tar.gz.asc
gpg --verify dist/spake2-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl.asc
python -m venv test_spake2_venv
test_spake2_venv/bin/pip install --upgrade pip
test_spake2_venv/bin/pip install dist/spake2-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl
test_spake2_venv/bin/python -c "import spake2"
test_spake2_venv/bin/pip uninstall -y spake2
test_spake2_venv/bin/pip install dist/spake2-`git describe --abbrev=0 | tail -c +2`.tar.gz
test_spake2_venv/bin/python -c "import spake2"
rm -rf test_spake2_venv

release-upload:
twine upload --username __token__ --password `cat PRIVATE-release-token` dist/spake2-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl dist/spake2-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl.asc dist/spake2-`git describe --abbrev=0 | tail -c +2`.tar.gz dist/spake2-`git describe --abbrev=0 | tail -c +2`.tar.gz.asc
mv dist/*-`git describe --abbrev=0 | tail -c +2`.tar.gz.asc signatures/
mv dist/*-`git describe --abbrev=0 | tail -c +2`-py3-none-any.whl.asc signatures/
git push origin-push `git describe --abbrev=0 | tail -c +2`
14 changes: 12 additions & 2 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,18 @@ User-Visible Changes in python-spake2

* Upcoming Release

python-spake2 now depends on the "cryptography" library instead of
"hkdf" for key-derivation.
(Put notes about merged features here).


* Release 0.9 (24-Sep-2024)

This release mainly deals with packaging simplifications: two dependencies ("six" and "hkdf") are removed.
The "cryptography" library takes the place of "hkdf" for key derivation.

There is no longer a vendored version of "six" (nor internal use of it, thanks a-dieste).

The "versioneer" library is updated to 0.29.


* Release 0.8 (14-Feb-2018)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Pure-Python SPAKE2

* License: MIT
* Dependencies: hkdf
* Dependencies: "cryptography" (for hkdf)
* Compatible With: Python 3.9, 3.10, 3.11, 3.12, PyPy3
* [![Build Status](https://travis-ci.org/warner/python-spake2.png?branch=master)](https://travis-ci.org/warner/python-spake2) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/j2q57qee3xwbqp5l/branch/master?svg=true)](https://ci.appveyor.com/project/warner/python-spake2) [![Coverage Status](https://coveralls.io/repos/warner/python-spake2/badge.svg)](https://coveralls.io/r/warner/python-spake2)

Expand Down
3 changes: 0 additions & 3 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
[wheel]
universal = 1

# See the docstring in versioneer.py for instructions. Note that you must
# re-run 'versioneer.py setup' after changing this section, and commit the
# resulting files.
Expand Down
6 changes: 1 addition & 5 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,11 +71,7 @@ def abbrev(t):
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3",
"Topic :: Security :: Cryptography",
],
install_requires=["cryptography"],
Expand Down

0 comments on commit a13d32d

Please sign in to comment.