Low-level Python CFFI Bindings for Argon2

Overview

Low-level Python CFFI Bindings for Argon2

argon2-cffi-bindings provides low-level CFFI bindings to the Argon2 password hashing algorithm including a vendored version of them.

The currently vendored Argon2 commit ID is f57e61e.

If you want to hash passwords in an application, this package is not for you. Have a look at argon2-cffi with its high-level abstractions!

These bindings have been extracted from argon2-cffi and it remains its main consumer. However, they may be used by other packages that want to use the Argon2 library without dealing with C-related complexities.

Usage

argon2-cffi-bindings is available from PyPI. The provided CFFI bindings are compiled in API mode.

Best effort is given to provide binary wheels for as many platforms as possible.

Disabling Vendored Code

A copy of Argon2 is vendored and used by default, but can be disabled if argon2-cffi-bindings is installed using:

$ env ARGON2_CFFI_USE_SYSTEM=1 \
  python -m pip install --no-binary=argon2-cffi-bindings argon2-cffi-bindings

Overriding Automatic SSE2 Detection

Usually the build process tries to guess whether or not it should use SSE2-optimized code. This can go wrong and is problematic for cross-compiling.

Therefore you can use the ARGON2_CFFI_USE_SSE2 environment variable to control the process:

  • If you set it to 1, argon2-cffi-bindings will build with SSE2 support.
  • If you set it to 0, argon2-cffi-bindings will build without SSE2 support.
  • If you set it to anything else, it will be ignored and argon2-cffi-bindings will try to guess.

Python API

Since this package is intended to be an implementation detail, it uses a private module name to prevent your users from using it by accident.

Therefore you have to import the symbols from _argon2_cffi_bindings:

from _argon2_cffi_bindings import ffi, lib

Please refer to cffi documentation on how to use the ffi and lib objects.

The list of symbols that are provided can be found in the _ffi_build.py file.

Project Information

argon2-cffi-bindings is available under the MIT license, available from PyPI, the source code and documentation can be found on GitHub.

argon2-cffi-bindings targets Python 3.6 and later, including PyPy3.

Credits & License

argon2-cffi-bindings is written and maintained by Hynek Schlawack. It is released under the MIT license.

The development is kindly supported by Variomedia AG.

The authors of Argon2 were very helpful to get the library to compile on ancient versions of Visual Studio for ancient versions of Python.

The documentation quotes frequently in verbatim from the Argon2 paper to avoid mistakes by rephrasing.

Vendored Code

The original Argon2 repo can be found at https://github.com/P-H-C/phc-winner-argon2/.

Except for the components listed below, the Argon2 code in this repository is copyright (c) 2015 Daniel Dinu, Dmitry Khovratovich (main authors), Jean-Philippe Aumasson and Samuel Neves, and under CC0 license.

The string encoding routines in src/encoding.c are copyright (c) 2015 Thomas Pornin, and under CC0 license.

The BLAKE2 code in src/blake2/ is copyright (c) Samuel Neves, 2013-2015, and under CC0 license.

Comments
  •  Argon2-cffi-bindings do not support FreeBSD 12

    Argon2-cffi-bindings do not support FreeBSD 12

    Hey,It is impossible to install because of the lack of support for FreeBSD, please upgrade to add support, because of this lack of support it is impossible to install my python package, I clearly do not want to modify my code as I am extremely dependent on your package, I look forward to future support for FreeBSD 12.

    I have asked the developer of the flask_argon2 python package that depends on argon2_cffi and Argon2-cffi-bindings to try to do an update on his side to add support for FreeBSD

    It remains to be seen

    Afi.

    opened by afi-dev 4
  • package will not install on python 3.6

    package will not install on python 3.6

    setuptools_scm 7.0.x, which was released last week, drops support of python 3.6 due to their use of annotations.

    Because of this, argon2-cffi-bindings fails to install on python 3.6 because it will use the latest version in their setup.

    The workaround, I think, is to use --no-build-isolation, but a proper fix if 3.6 support is desired is to pin setuptools_scm to the last 6.4 version (6.4.2).

    I am not very sophisticated with the python packaging system so if there's some fix I'm missing I apologize.

    opened by hinoue 4
  • Leave compilation of Argon2 to CFFI

    Leave compilation of Argon2 to CFFI

    If this works out, it saves us a ton of setup.py boilerplate and ensures, that we're not accidentally linked against a system-wide Argon2 installation.

    opened by hynek 1
  • Bump pypa/cibuildwheel from 2.11.2 to 2.11.4

    Bump pypa/cibuildwheel from 2.11.2 to 2.11.4

    Bumps pypa/cibuildwheel from 2.11.2 to 2.11.4.

    Release notes

    Sourced from pypa/cibuildwheel's releases.

    v2.11.4

    • ๐Ÿ› Fix a bug that caused missing wheels on Windows when a test was skipped using CIBW_TEST_SKIP (#1377)
    • ๐Ÿ›  Updates CPython 3.11 to 3.11.1 (#1371)
    • ๐Ÿ›  Updates PyPy 3.7 to 3.7.10, except on macOS which remains on 7.3.9 due to a bug. (#1371)
    • ๐Ÿ“š Added a reference to abi3audit to the docs (#1347)

    v2.11.3

    • โœจ Improves the 'build options' log output that's printed at the start of each run (#1352)
    • โœจ Added a friendly error message to a common misconfiguration of the CIBW_TEST_COMMAND option - not specifying path using the {project} placeholder (#1336)
    • ๐Ÿ›  The GitHub Action now uses Powershell on Windows to avoid occasional incompabilities with bash (#1346)
    Changelog

    Sourced from pypa/cibuildwheel's changelog.

    v2.11.4

    24 Dec 2022

    • ๐Ÿ› Fix a bug that caused missing wheels on Windows when a test was skipped using CIBW_TEST_SKIP (#1377)
    • ๐Ÿ›  Updates CPython 3.11 to 3.11.1 (#1371)
    • ๐Ÿ›  Updates PyPy to 7.3.10, except on macOS which remains on 7.3.9 due to a bug on that platform. (#1371)
    • ๐Ÿ“š Added a reference to abi3audit to the docs (#1347)

    v2.11.3

    5 Dec 2022

    • โœจ Improves the 'build options' log output that's printed at the start of each run (#1352)
    • โœจ Added a friendly error message to a common misconfiguration of the CIBW_TEST_COMMAND option - not specifying path using the {project} placeholder (#1336)
    • ๐Ÿ›  The GitHub Action now uses Powershell on Windows to avoid occasional incompabilities with bash (#1346)
    Commits
    • 27fc88e Bump version: v2.11.4
    • a7e9ece Merge pull request #1371 from pypa/update-dependencies-pr
    • b9a3ed8 Update cibuildwheel/resources/build-platforms.toml
    • 3dcc2ff fix: not skipping the tests stops the copy (Windows ARM) (#1377)
    • 1c9ec76 Merge pull request #1378 from pypa/henryiii-patch-3
    • 22b433d Merge pull request #1379 from pypa/pre-commit-ci-update-config
    • 98fdf8c [pre-commit.ci] pre-commit autoupdate
    • cefc5a5 Update dependencies
    • e53253d ci: move to ubuntu 20
    • e9ecc65 [pre-commit.ci] pre-commit autoupdate (#1374)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    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 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)
    dependencies 
    opened by dependabot[bot] 0
  • Bump step-security/harden-runner from 1 to 2

    Bump step-security/harden-runner from 1 to 2

    Bumps step-security/harden-runner from 1 to 2.

    Release notes

    Sourced from step-security/harden-runner's releases.

    v2.0.0

    Release v2.0.0

    • Feature to disable sudo: Use disable-sudo: true to run job steps without sudo access on the GitHub-hosted runner. disable-sudo is false by default and needs to be opted-into. (documentation)
    • File monitoring improvements: All source code files are monitored now for overwrite, instead of a few extensions. Instead of getting annotations for overwrites, you can also opt-in to getting email or Slack notifications if source code is overwritten. (documentation)
    • Support for private repositories: Starting with Harder Runner v2.0.0, use of harden runner for private repositories will require a Team/ Enterprise license. Harder Runner GitHub Action is free for all public repositories.

    What's Changed

    Full Changelog: https://github.com/step-security/harden-runner/compare/v1...v2.0.0

    v1.5.0

    What's Changed

    Full Changelog: https://github.com/step-security/harden-runner/compare/v1...v1.5.0

    v1.4.5

    What's Changed

    Full Changelog: https://github.com/step-security/harden-runner/compare/v1...v1.4.5

    v1.4.4

    What's Changed

    New Contributors

    Full Changelog: https://github.com/step-security/harden-runner/compare/v1...v1.4.4

    v1.4.3

    What's Changed

    • Fix performance issues related to file monitoring

    ... (truncated)

    Commits
    • ebacdc2 Merge pull request #209 from step-security/release-v2.0.0
    • f28b626 Update README (#208)
    • 620cac5 Update version
    • 118e400 Changes for v2.0.0 (#207)
    • 3888ae1 Merge pull request #204 from step-security/dependabot/github_actions/github/c...
    • 1e3c2df Bump github/codeql-action from 2.1.28 to 2.1.29
    • 5e53a69 Merge pull request #203 from step-security/dependabot/github_actions/actions/...
    • 33d7981 Bump actions/upload-artifact from 3.1.0 to 3.1.1
    • 5565dcd Merge pull request #201 from step-security/dependabot/github_actions/github/c...
    • d5b1e9d Merge pull request #202 from step-security/dependabot/github_actions/ossf/sco...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    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 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)
    dependencies 
    opened by dependabot[bot] 0
  • Bump pypa/cibuildwheel from 2.10.2 to 2.11.2

    Bump pypa/cibuildwheel from 2.10.2 to 2.11.2

    Bumps pypa/cibuildwheel from 2.10.2 to 2.11.2.

    Release notes

    Sourced from pypa/cibuildwheel's releases.

    v2.11.2

    • ๐Ÿ›  Updates CPython 3.11 to 3.11.0 - final release (#1327)
    • ๐Ÿ›  Simplify the default macOS repair command (#1322)
    • ๐Ÿ›  Fix the default MACOSX_DEPLOYMENT_TARGET on arm64 (#1312)
    • ๐Ÿ›  Hide irrelevant pip warnings on linux (#1311)
    • ๐Ÿ› Fix a bug that caused the stdout and stderr of commands in containers to be in the wrong order Previously, stdout could appear after stderr. (#1324)
    • ๐Ÿ“š Added a FAQ entry describing how to perform native builds of CPython 3.8 wheels on Apple Silicon. (#1323)
    • ๐Ÿ“š Other docs improvements

    v2.11.1

    • ๐Ÿ›  Updates to the latest manylinux images, and updates CPython 3.10 to 3.10.8.

    v2.11.0

    • ๐ŸŒŸ Adds support for cross-compiling Windows ARM64 wheels. To use this feature, add ARM64 to the CIBW_ARCHS option on a Windows Intel runner. (#1144)
    • โœจ Adds support for building Linux aarch64 wheels on Circle CI. (#1307)
    • โœจ Adds support for building Windows wheels on Gitlab CI. (#1295)
    • โœจ Adds support for building Linux aarch64 wheels under emulation on Gitlab CI. (#1295)
    • โœจ Adds the ability to test cp38-macosx_arm64 wheels on a native arm64 runner. To do this, you'll need to preinstall the (experimental) universal2 version of CPython 3.8 on your arm64 runner before invoking cibuildwheel. Note: it is not recommended to build x86_64 wheels with this setup, your wheels will have limited compatibility wrt macOS versions. (#1283)
    • ๐Ÿ›  Improved error messages when using custom Docker images and Python cannot be found at the correct path. (#1298)
    • ๐Ÿ“š Sample configs for Azure Pipelines and Travis CI updated (#1296)
    • ๐Ÿ“š Other docs improvements - including more information about using Homebrew for build dependencies (#1290)
    Changelog

    Sourced from pypa/cibuildwheel's changelog.

    v2.11.2

    26 October 2022

    • ๐Ÿ›  Updates CPython 3.11 to 3.11.0 - final release (#1327)
    • ๐Ÿ›  Simplify the default macOS repair command (#1322)
    • ๐Ÿ›  Fix the default MACOSX_DEPLOYMENT_TARGET on arm64 (#1312)
    • ๐Ÿ›  Hide irrelevant pip warnings on linux (#1311)
    • ๐Ÿ› Fix a bug that caused the stdout and stderr of commands in containers to be in the wrong order Previously, stdout could appear after stderr. (#1324)
    • ๐Ÿ“š Added a FAQ entry describing how to perform native builds of CPython 3.8 wheels on Apple Silicon. (#1323)
    • ๐Ÿ“š Other docs improvements

    v2.11.1

    13 October 2022

    • ๐Ÿ›  Updates to the latest manylinux images, and updates CPython 3.10 to 3.10.8.

    v2.11.0

    13 October 2022

    • ๐ŸŒŸ Adds support for cross-compiling Windows ARM64 wheels. To use this feature, add ARM64 to the CIBW_ARCHS option on a Windows Intel runner. (#1144)
    • โœจ Adds support for building Linux aarch64 wheels on Circle CI. (#1307)
    • โœจ Adds support for building Windows wheels on Gitlab CI. (#1295)
    • โœจ Adds support for building Linux aarch64 wheels under emulation on Gitlab CI. (#1295)
    • โœจ Adds the ability to test cp38-macosx_arm64 wheels on a native arm64 runner. To do this, you'll need to preinstall the (experimental) universal2 version of CPython 3.8 on your arm64 runner before invoking cibuildwheel. Note: it is not recommended to build x86_64 wheels with this setup, your wheels will have limited compatibility wrt macOS versions. (#1283)
    • ๐Ÿ›  Improved error messages when using custom Docker images and Python cannot be found at the correct path. (#1298)
    • ๐Ÿ“š Sample configs for Azure Pipelines and Travis CI updated (#1296)
    • ๐Ÿ“š Other docs improvements - including more information about using Homebrew for build dependencies (#1290)
    Commits
    • a6732b1 Bump version: v2.11.2
    • 36a6101 Merge pull request #1311 from henryiii/henryiii/fix/rootpip2
    • 8672fee Merge pull request #1300 from mayeut/gha-3.11
    • b1b8ab5 Merge pull request #1322 from ankith26/update-delocate-default
    • 89a8cac Merge pull request #1324 from pypa/stderr-interleaving
    • db12084 tests: include check for upgrade notice too
    • dfb3e62 tests: use 3.11 final
    • f259bfd tests: add a check in tests for the pip warning
    • f252274 fix: hide root pip warning on Linux again
    • 1aa841b Merge pull request #1323 from pypa/docs-38
    • Additional commits viewable in compare view

    Dependabot compatibility score

    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 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)
    dependencies 
    opened by dependabot[bot] 0
  • Bump pypa/cibuildwheel from 2.7.0 to 2.10.2

    Bump pypa/cibuildwheel from 2.7.0 to 2.10.2

    Bumps pypa/cibuildwheel from 2.7.0 to 2.10.2.

    Release notes

    Sourced from pypa/cibuildwheel's releases.

    v2.10.2

    • ๐Ÿ› Fix a bug that caused win32 identifiers to fail when used with --only. (#1282)
    • ๐Ÿ› Fix computation of auto/auto64/auto32 archs when targeting a different platform to the one that you're running cibuildwheel on. (#1266)
    • ๐Ÿ“š Fix an mistake in the 'how it works' diagram. (#1274)

    v2.10.1

    • ๐Ÿ› Fix a bug that stopped environment variables specified in TOML from being expanded. (#1273)

    v2.10.0

    • ๐ŸŒŸ Adds support for building wheels on Cirrus CI. This is exciting for us, as it's the first public CI platform that natively supports macOS Apple Silicon (aka. M1, arm64) runners. As such, it's the first platform that you can natively build and test macOS arm64 wheels. It also has native Linux ARM (aarch64) runners, for fast, native builds there. (#1191)
    • ๐ŸŒŸ Adds support for running cibuildwheel on Apple Silicon machines. For a while, we've supported cross-compilation of Apple Silicon wheels on x86_64, but now that we have Cirrus CI we can run our test suite and officially support running cibuildwheel on arm64. (#1191)
    • โœจ Adds the --only command line option, to specify a single build to run. Previously, it could be cumbersome to set all the build selection options to target a specific build - for example, you might have to run something like CIBW_BUILD=cp39-manylinux_x86_64 cibuildwheel --platform linux --archs x86_64. The new --only option overrides all the build selection options to simplify running a single build, which now looks like cibuildwheel --only cp39-manylinux_x86_64. (#1098)
    • โœจ Adds the CIBW_CONFIG_SETTINGS option, so you can pass arguments to your package's build backend (#1244)
    • ๐Ÿ›  Updates the CPython 3.11 version to the latest release candidate - v3.11.0rc2. (#1265)
    • ๐Ÿ› Fix a bug that can cause a RecursionError on Windows when building from an sdist. (#1253)
    • ๐Ÿ›  Add support for the s390x architecture on manylinux_2_28 (#1255)

    v2.9.0

    • ๐ŸŒŸ CPython 3.11 wheels are now built by default - without the CIBW_PRERELEASE_PYTHONS flag. It's time to build and upload these wheels to PyPI! This release includes CPython 3.11.0rc1, which is guaranteed to be ABI compatible with the final release. (#1226)
    • โš ๏ธ Removed support for running cibuildwheel in Python 3.6. Python 3.6 is EOL. However, cibuildwheel continues to build CPython 3.6 wheels for the moment. (#1175)
    • โœจ Improved error messages when misspelling TOML options, suggesting close matches (#1205)
    • ๐Ÿ›  When running on Apple Silicon (so far, an unsupported mode of operation), cibuildwheel no longer builds universal2 wheels by default - just arm64. See #1204 for discussion. We hope to release official support for native builds on Apple Silicon soon! (#1217)

    v2.8.1

    • ๐Ÿ› Fix a bug when building CPython 3.8 wheels on an Apple Silicon machine where testing would always fail. cibuildwheel will no longer attempt to test the arm64 part of CPython 3.8 wheels because we use the x86_64 installer of CPython 3.8 due to its macOS system version backward-compatibility. See #1169 for more details. (#1171)
    • ๐Ÿ›  Update the prerelease CPython 3.11 to 3.11.0b4. (#1180)
    • ๐Ÿ›  The GitHub Action will ensure a compatible version of Python is installed on the runner (#1114)
    • ๐Ÿ“š A few docs improvements

    v2.8.0

    • โœจ You can now run cibuildwheel on Podman, as an alternate container engine to Docker (which remains the default). This is useful in environments where a Docker daemon isn't available, for example, it can be run inside a Docker container, or without root access. To use Podman, set the CIBW_CONTAINER_ENGINE option. (#966)

    • โœจ Adds support for building py3-none-{platform} wheels. This works the same as ABI3 - wheels won't be rebuilt, but tests will still be run across all selected versions of Python.

      These wheels contain native extension code, but don't use the Python APIs. Typically, they're bridged to Python using a FFI module like ctypes or cffi. Because they don't use Python ABI, the wheels are more compatible - they work across many Python versions.

      Check out this example ctypes project to see an example of how it works. (#1151)

    • ๐Ÿ›  cibuildwheel will now error if multiple builds in a single run produce the same wheel filename, as this indicates a misconfiguration. (#1152)

    • ๐Ÿ“š A few docs improvements and updates to keep things up-to-date.

    Changelog

    Sourced from pypa/cibuildwheel's changelog.

    v2.10.2

    25 September 2022

    • ๐Ÿ› Fix a bug that caused win32 identifiers to fail when used with --only. (#1282)
    • ๐Ÿ› Fix computation of auto/auto64/auto32 archs when targeting a different platform to the one that you're running cibuildwheel on. (#1266)
    • ๐Ÿ“š Fix an mistake in the 'how it works' diagram. (#1274)

    v2.10.1

    18 September 2022

    • ๐Ÿ› Fix a bug that stopped environment variables specified in TOML from being expanded. (#1273)

    v2.10.0

    13 September 2022

    • ๐ŸŒŸ Adds support for building wheels on Cirrus CI. This is exciting for us, as it's the first public CI platform that natively supports macOS Apple Silicon (aka. M1, arm64) runners. As such, it's the first platform that you can natively build and test macOS arm64 wheels. It also has native Linux ARM (aarch64) runners, for fast, native builds there. (#1191)
    • ๐ŸŒŸ Adds support for running cibuildwheel on Apple Silicon machines. For a while, we've supported cross-compilation of Apple Silicon wheels on x86_64, but now that we have Cirrus CI we can run our test suite and officially support running cibuildwheel on arm64. (#1191)
    • โœจ Adds the --only command line option, to specify a single build to run. Previously, it could be cumbersome to set all the build selection options to target a specific build - for example, you might have to run something like CIBW_BUILD=cp39-manylinux_x86_64 cibuildwheel --platform linux --archs x86_64. The new --only option overrides all the build selection options to simplify running a single build, which now looks like cibuildwheel --only cp39-manylinux_x86_64. (#1098)
    • โœจ Adds the CIBW_CONFIG_SETTINGS option, so you can pass arguments to your package's build backend (#1244)
    • ๐Ÿ›  Updates the CPython 3.11 version to the latest release candidate - v3.11.0rc2. (#1265)
    • ๐Ÿ› Fix a bug that can cause a RecursionError on Windows when building from an sdist. (#1253)
    • ๐Ÿ›  Add support for the s390x architecture on manylinux_2_28 (#1255)

    v2.9.0

    11 August 2022

    • ๐ŸŒŸ CPython 3.11 wheels are now built by default - without the CIBW_PRERELEASE_PYTHONS flag. It's time to build and upload these wheels to PyPI! This release includes CPython 3.11.0rc1, which is guaranteed to be ABI compatible with the final release. (#1226)
    • โš ๏ธ Removed support for running cibuildwheel in Python 3.6. Python 3.6 is EOL. However, cibuildwheel continues to build CPython 3.6 wheels for the moment. (#1175)
    • โœจ Improved error messages when misspelling TOML options, suggesting close matches (#1205)
    • ๐Ÿ›  When running on Apple Silicon (so far, an unsupported mode of operation), cibuildwheel no longer builds universal2 wheels by default - just arm64. See #1204 for discussion. We hope to release official support for native builds on Apple Silicon soon! (#1217)

    v2.8.1

    18 July 2022

    • ๐Ÿ› Fix a bug when building CPython 3.8 wheels on an Apple Silicon machine where testing would always fail. cibuildwheel will no longer attempt to test the arm64 part of CPython 3.8 wheels because we use the x86_64 installer of CPython 3.8 due to its macOS system version backward-compatibility. See #1169 for more details. (#1171)
    • ๐Ÿ›  Update the prerelease CPython 3.11 to 3.11.0b4. (#1180)
    • ๐Ÿ›  The GitHub Action will ensure a compatible version of Python is installed on the runner (#1114)
    • ๐Ÿ“š A few docs improvements

    v2.8.0

    5 July 2022

    • โœจ You can now run cibuildwheel on Podman, as an alternate container engine to Docker (which remains the default). This is useful in environments where a Docker daemon isn't available, for example, it can be run inside a Docker container, or without root access. To use Podman, set the CIBW_CONTAINER_ENGINE option. (#966)
    • โœจ Adds support for building py3-none-{platform} wheels. This works the same as ABI3 - wheels won't be rebuilt, but tests will still be run across all selected versions of Python.

    ... (truncated)

    Commits
    • 7c45799 Bump version: v2.10.2
    • f766904 Merge pull request #1258 from henryiii/henryiii/chore/dev
    • 73a435b Merge pull request #1266 from henryiii/henryiii/fix/crossplatform
    • 8b0aa9b Merge pull request #1282 from pypa/fix-1281
    • 6b0e1bc Merge pull request #1274 from pypa/diagram-fix
    • 5e5fdd1 Fix win32 identifiers with --only
    • 1e3f3fd Add failing test
    • faa3ab4 Refactor a little to minimise changes and clarify naming
    • 7969f7c [Bot] Update dependencies (#1275)
    • 4447618 Merge pull request #1276 from pypa/pre-commit-ci-update-config
    • Additional commits viewable in compare view

    Dependabot compatibility score

    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 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)
    dependencies 
    opened by dependabot[bot] 0
  • [StepSecurity] ci: Harden GitHub Actions

    [StepSecurity] ci: Harden GitHub Actions

    Summary

    This is an automated pull request generated by Secure Workflows at the request of @hynek. Please merge the Pull Request to incorporate the requested changes. Please tag @hynek on your message if you have any questions related to the PR. You can also engage with the StepSecurity team by tagging @step-security-bot.

    Security Fixes

    Harden Runner

    This PR adds Harden-Runner in GitHub actions workflows to improve security. It is an open-source purpose-built security monitoring agent for GitHub hosted runners. It monitors the runtime behavior of the build environment to provide security insights. Optionally, it can also lock down the build environment.

    Feedback

    For bug reports, feature requests, and general feedback; please create an issue in step-security/secure-workflows or contact us via our website.

    opened by step-security-bot 0
Owner
Hynek Schlawack
Hynek Schlawack
A general purpose low level programming language written in Python.

A general purpose low level programming language written in Python. Basal is an easy mid level programming language compiling to C. It has an easy syntax, similar to Python, Rust etc.

Snm Logic 6 Mar 30, 2022
This is an online course where you can learn and master the skill of low-level performance analysis and tuning.

Performance Ninja Class This is an online course where you can learn to find and fix low-level performance issues, for example CPU cache misses and br

Denis Bakhvalov 1.2k Dec 30, 2022
Control System Packer is a lightweight, low-level program to transform energy equations into the compact libraries for control systems.

Control System Packer is a lightweight, low-level program to transform energy equations into the compact libraries for control systems. Packer supports Python ?? , C ?? and C++ ?? libraries.

mirnanoukari 31 Sep 15, 2022
pvaPy provides Python bindings for EPICS pvAccess

PvaPy - PvAccess for Python The PvaPy package is a Python API for EPICS7. It supports both PVA and CA providers, all standard EPICS7 types (structures

EPICS Base 25 Dec 5, 2022
Python bindings for the Plex API.

Python-PlexAPI Overview Unofficial Python bindings for the Plex API. Our goal is to match all capabilities of the official Plex Web Client. A few of t

Michael Shepanski 931 Jan 7, 2023
Python bindings for `ign-msgs` and `ign-transport`

Python Ignition This project aims to provide Python bindings for ignition-msgs and ignition-transport. It is a work in progress... C++ and Python libr

Rhys Mainwaring 3 Nov 8, 2022
Python bindings for Basler's VisualApplets TCL script generation

About visualapplets.py The Basler AG company provides a TCL scripting engine to automatize the creation of VisualApplets designs (a former Silicon Sof

Jรผrgen Hock 2 Dec 7, 2022
TikTok Auto Claimer Made By Aim low!#9999 Leaked By bazooka#0001

Zues Auto Claimer Leaked By bazooka#0001 put proxies in prox.txt put ssid in sid.txt put all users you want to target in user.txt for the login just t

null 1 Jan 14, 2022
HSPyLib is a Python library that will elevate your experience to another level.

HomeSetup Python Library - HSPyLib Your mature python application HSPyLib is a Python library that will elevate your experience to another level. It r

Hugo Saporetti Junior 4 Dec 14, 2022
banking system with python, beginner friendly, preadvanced level

banking-system-python banking system with python, beginner friendly, preadvanced level Used topics Functions else/if/elif dicts methods parameters hol

Razi Falah 1 Feb 3, 2022
WATTS provides a set of Python classes that can manage simulation workflows for multiple codes where information is exchanged at a coarse level

WATTS (Workflow and Template Toolkit for Simulation) provides a set of Python classes that can manage simulation workflows for multiple codes where information is exchanged at a coarse level.

null 13 Dec 23, 2022
๐ŸŒ๐Ÿ’‰ Global COVID-19 vaccination data at the regional level.

COVID-19 vaccination data at subnational level. To ensure its officiality, the source data is carefully verified.

sociepy 61 Sep 21, 2022
A Pythonic Data Catalog powered by Ray that brings exabyte-level scalability and fast, ACID-compliant, change-data-capture to your big data workloads.

DeltaCAT DeltaCAT is a Pythonic Data Catalog powered by Ray. Its data storage model allows you to define and manage fast, scalable, ACID-compliant dat

null 45 Oct 15, 2022
A collection of repositories used to realise various end-to-end high-level synthesis (HLS) flows centering around the CIRCT project.

circt-hls What is this?: A collection of repositories used to realise various end-to-end high-level synthesis (HLS) flows centering around the CIRCT p

null 29 Dec 14, 2022
A tool to allow New World players to calculate the best place to put their Attribute Points for their build and level

New World Damage Simulator A tool designed to take a characters base stats including armor and weapons, level, and base damage of their items (slash d

Joseph P Langford 31 Nov 1, 2022
Fixes your Microphone Level to one specific value.

MicLeveler Fixes your Microphone Level to one specific value. Intention A friend of mine has the problem that some programs are setting his microphone

Moritz Timpe 2 Oct 14, 2021
Automatically re-open threads when they get archived, no matter your boost level!

ThreadPersist Automatically re-open threads when they get archived, no matter your boost level! Installation You will need to install poetry to run th

null 7 Sep 18, 2022
Turn crypto miner on/off depending on powerwall charge level

Mining Crypto with Tesla Solar and Powerwalls This script turns a crypto miner on and off when the Tesla Powerwall level drops/rises above a certain t

Matt 1 Nov 9, 2021
A little tool that uses LLVM to extract simple "what does this do" level instruction information from all architectures.

moirai: MOre InstRuctions and Information Backcronym. Anyway, this is a small project to extract useful instruction definitions from LLVM's platform d

null 2 Jul 30, 2022