Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 meejah@meejah.ca --armor --clear-sign NEWS

@echo "Build and sign wheel"
python3 setup.py bdist_wheel
gpg --pinentry=loopback -u meejah@meejah.ca --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 meejah@meejah.ca --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