The only new feature is the possibility to pass an own salt to argon2.PasswordHasher.hash(), however a lot has changed around documentation and packaging to make argon2-cffi maintainable in the future.
Special Thanks
This release would not be possible without my generous sponsors! Thank you to all of you making sustainable maintenance possible! If you would like to join them, go to https://github.com/sponsors/hynek and check out the sweet perks!
Not to forget 3 more amazing humans who chose to be generous but anonymous!
Full Changelog
Removed
Python 3.6 is not supported anymore.
Deprecated
The InvalidHash exception is deprecated in favor of InvalidHashError. No plans for removal currently exist and the names can (but shouldn't) be used interchangeably.
argon2.hash_password(), argon2.hash_password_raw(), and argon2.verify_password() that have been soft-deprecated since 2016 are now hard-deprecated. They now raise DeprecationWarnings and will be removed in 2024.
Added
Official support for Python 3.11 and 3.12. No code changes were necessary.
argon2.exceptions.InvalidHashError as a replacement for InvalidHash.
salt parameter to argon2.PasswordHasher.hash() to allow for custom salts. This is only useful for specialized use-cases -- leave it on None unless you know exactly what you are doing. #153
The InvalidHash exception is deprecated in favor of InvalidHashError.
No plans for removal currently exist and the names can (but shouldn't) be used interchangeably.
argon2.hash_password(), argon2.hash_password_raw(), and argon2.verify_password() that have been soft-deprecated since 2016 are now hard-deprecated.
They now raise DeprecationWarnings and will be removed in 2024.
Added
Official support for Python 3.11 and 3.12.
No code changes were necessary.
argon2.exceptions.InvalidHashError as a replacement for InvalidHash.
salt parameter to argon2.PasswordHasher.hash() to allow for custom salts.
This is only useful for specialized use-cases -- leave it on None unless you know exactly what you are doing.
#153
The CFFI bindings have been extracted into a separate project: [argon2-cffi-bindings]
This makes argon2-cffi a Python-only project und should make it easier to contribute to and have more frequent releases with high-level features.
This change is breaking for users who want to use a system-wide installation of Argon2 instead of our vendored code, because the argument to the --no-binary argument changed.
Please refer to the installation guide.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Updates the requirements on argon2-cffi to permit the latest version.
Release notes
Sourced from argon2-cffi's releases.
Changelog
Sourced from argon2-cffi's changelog.
... (truncated)
Commits
7d3edef
Prepare 23.1.0aa1d424
Fix link2745a0d
Add header001ae15
docs: streamline88e2ef2
Use new Tidelift URL17e2808
PasswordHasher.hash: allow passing explicit salt (#153)ee243d2
docs: add copy button456e175
Hard-deprecate legacy functions413e03a
Simplify rename logic3316c26
docs: remove confusing enum sigDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show