Skip to main content

Conda - Downloads PyPI - Downloads PyPI - Python Versions PyPI - License Build Status PyPI - Status Documentation Status Code Coverage

https://github.com/python-constraint/python-constraint/raw/main/docs/assets/logo/N-Queens_problem_Python.svg

python-constraint

⚠️ IMPORTANT: this software must be installed with pip install python-constraint2, as the original pip release will not be updated.
A Conda Forge / Mamba version is also available: conda install python-constraint2.

For an overview of recent changes, visit the Changelog.
The complete documentation can be found here.

New: writing constraints in the new string format is preferable over functions and lambdas.
These strings, even as compound statements, are automatically parsed to faster built-in constraints, are more concise, and do not require constraint solving familiarity by the user to be efficient.
For example, problem.addConstraint(["50 <= x * y < 100"]) is parsed to [MinProdConstraint(50, ["x", "y"]), MaxProdConstraint(100, ["x", "y"])].
Similarly, problem.addConstraint(["x / y == z"]) is parsed to [ExactProdConstraint("x", ["z", "y"])].
This feature is in beta and subject to possible change, please provide feedback.

Introduction

The python-constraint module offers efficient solvers for Constraint Satisfaction Problems (CSPs) over finite domains in an accessible Python package. CSP is class of problems which may be represented in terms of variables (a, b, …), domains (a in [1, 2, 3], …), and constraints (a < b, …).

Examples

Basics

This interactive Python session demonstrates basic operations:

>>> from constraint import *
>>> problem = Problem()
>>> problem.addVariable("a", [1,2,3])
>>> problem.addVariable("b", [4,5,6])
>>> problem.getSolutions()  # doctest: +NORMALIZE_WHITESPACE
[{'a': 3, 'b': 6}, {'a': 3, 'b': 5}, {'a': 3, 'b': 4},
 {'a': 2, 'b': 6}, {'a': 2, 'b': 5}, {'a': 2, 'b': 4},
 {'a': 1, 'b': 6}, {'a': 1, 'b': 5}, {'a': 1, 'b': 4}]

>>> problem.addConstraint("a*2 == b") # string constraints are preferable over the black-box problem.addConstraint(lambda a, b: a*2 == b, ("a", "b"))
>>> problem.getSolutions()
[{'a': 3, 'b': 6}, {'a': 2, 'b': 4}]

>>> problem = Problem()
>>> problem.addVariables(["a", "b"], [1, 2, 3])
>>> problem.addConstraint(AllDifferentConstraint())
>>> problem.getSolutions()  # doctest: +NORMALIZE_WHITESPACE
[{'a': 3, 'b': 2}, {'a': 3, 'b': 1}, {'a': 2, 'b': 3},
 {'a': 2, 'b': 1}, {'a': 1, 'b': 2}, {'a': 1, 'b': 3}]

Rooks problem

The following example solves the classical Eight Rooks problem:

>>> problem = Problem()
>>> numpieces = 8
>>> cols = range(numpieces)
>>> rows = range(numpieces)
>>> problem.addVariables(cols, rows)
>>> for col1 in cols:
...     for col2 in cols:
...         if col1 < col2:
...             problem.addConstraint(lambda row1, row2: row1 != row2, (col1, col2))
>>> solutions = problem.getSolutions()
>>> solutions   # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS
[{0: 7, 1: 6, 2: 5, 3: 4, 4: 3, 5: 2, 6: 1, 7: 0},
 {0: 7, 1: 6, 2: 5, 3: 4, 4: 3, 5: 2, 6: 0, 7: 1},
 {0: 7, 1: 6, 2: 5, 3: 4, 4: 3, 5: 1, 6: 2, 7: 0},
 {0: 7, 1: 6, 2: 5, 3: 4, 4: 3, 5: 1, 6: 0, 7: 2},
 ...
 {0: 7, 1: 5, 2: 3, 3: 6, 4: 2, 5: 1, 6: 4, 7: 0},
 {0: 7, 1: 5, 2: 3, 3: 6, 4: 1, 5: 2, 6: 0, 7: 4},
 {0: 7, 1: 5, 2: 3, 3: 6, 4: 1, 5: 2, 6: 4, 7: 0},
 {0: 7, 1: 5, 2: 3, 3: 6, 4: 1, 5: 4, 6: 2, 7: 0},
 {0: 7, 1: 5, 2: 3, 3: 6, 4: 1, 5: 4, 6: 0, 7: 2},
 ...]

Magic squares

This example solves a 4x4 magic square:

>>> problem = Problem()
>>> problem.addVariables(range(0, 16), range(1, 16 + 1))
>>> problem.addConstraint(AllDifferentConstraint(), range(0, 16))
>>> problem.addConstraint(ExactSumConstraint(34), [0, 5, 10, 15])
>>> problem.addConstraint(ExactSumConstraint(34), [3, 6, 9, 12])
>>> for row in range(4):
...     problem.addConstraint(ExactSumConstraint(34), [row * 4 + i for i in range(4)])
>>> for col in range(4):
...     problem.addConstraint(ExactSumConstraint(34), [col + 4 * i for i in range(4)])
>>> solutions = problem.getSolutions()  # doctest: +SKIP

Features

The following solvers are available:

  • OptimizedBacktrackingSolver (default)

  • BacktrackingSolver

  • RecursiveBacktrackingSolver

  • MinConflictsSolver

  • ParallelSolver

Predefined constraint types currently available (use the parsing for automatic conversion to these types):

  • FunctionConstraint

  • AllDifferentConstraint

  • AllEqualConstraint

  • ExactSumConstraint

  • MinSumConstraint

  • MaxSumConstraint

  • MinProdConstraint

  • ExactProdConstraint

  • MaxProdConstraint

  • VariableExactSumConstraint

  • VariableMinSumConstraint

  • VariableMaxSumConstraint

  • VariableMinProdConstraint

  • VariableExactProdConstraint

  • VariableMaxProdConstraint

  • InSetConstraint

  • NotInSetConstraint

  • SomeInSetConstraint

  • SomeNotInSetConstraint

API documentation

Documentation for the module is available at: http://python-constraint.github.io/python-constraint/. It can be built locally by running make clean html from the docs folder. For viewing RST files locally, restview is recommended.

Download and install

$ pip install python-constraint2

Conda / Mamba:

$ conda config --add channels conda-forge
$ conda config --set channel_priority strict
$ conda install python-constraint2
$ mamba install python-constraint2

Testing

Run nox (tests for all supported Python versions in own virtual environment).

To test against your local Python version: make sure you have the development dependencies installed. Run pytest (optionally add --no-cov if you have the C-extensions enabled).

Contributing

Feel free to contribute by submitting pull requests or opening issues. Please refer to the contribution guidelines before doing so.

Roadmap

This GitHub organization and repository is a global effort to help to maintain python-constraint, which was written by Gustavo Niemeyer and originaly located at https://labix.org/python-constraint. For an overview of recent changes, visit the Changelog.

Planned development:

  • Support constant modifiers on parsed (variable) constraints instead defaulting to FunctionConstraint, e.g. problem.addConstraint("a+2 == b") or problem.addConstraint("x / y == 100")

  • Parse using Abstract Syntax Trees (AST) instead of the current parser to be more robust and support decomposing lambdas

  • Rewrite hotspots in C / Pyx instead of pure python mode

  • Improvements to make the ParallelSolver competitive (experiments reveal the freethreading mode to be promising)

  • Versioned documentation

Contact

But it’s probably better to open an issue.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_constraint2-2.7.2.tar.gz (851.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

python_constraint2-2.7.2-cp314-cp314-win_arm64.whl (857.5 kB view details)

Uploaded CPython 3.14Windows ARM64

python_constraint2-2.7.2-cp314-cp314-win_amd64.whl (857.5 kB view details)

Uploaded CPython 3.14Windows x86-64

python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.39+ x86-64

python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.35+ x86-64

python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.35+ ARM64

python_constraint2-2.7.2-cp314-cp314-macosx_26_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.14macOS 26.0+ ARM64

python_constraint2-2.7.2-cp314-cp314-macosx_13_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

python_constraint2-2.7.2-cp313-cp313-win_arm64.whl (848.0 kB view details)

Uploaded CPython 3.13Windows ARM64

python_constraint2-2.7.2-cp313-cp313-win_amd64.whl (848.0 kB view details)

Uploaded CPython 3.13Windows x86-64

python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ x86-64

python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.35+ x86-64

python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.35+ ARM64

python_constraint2-2.7.2-cp313-cp313-macosx_26_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.13macOS 26.0+ ARM64

python_constraint2-2.7.2-cp313-cp313-macosx_13_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

python_constraint2-2.7.2-cp312-cp312-win_arm64.whl (848.0 kB view details)

Uploaded CPython 3.12Windows ARM64

python_constraint2-2.7.2-cp312-cp312-win_amd64.whl (848.0 kB view details)

Uploaded CPython 3.12Windows x86-64

python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ x86-64

python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.35+ x86-64

python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.35+ ARM64

python_constraint2-2.7.2-cp312-cp312-macosx_26_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.12macOS 26.0+ ARM64

python_constraint2-2.7.2-cp312-cp312-macosx_13_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

python_constraint2-2.7.2-cp311-cp311-win_arm64.whl (848.0 kB view details)

Uploaded CPython 3.11Windows ARM64

python_constraint2-2.7.2-cp311-cp311-win_amd64.whl (848.0 kB view details)

Uploaded CPython 3.11Windows x86-64

python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ x86-64

python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.35+ x86-64

python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.35+ ARM64

python_constraint2-2.7.2-cp311-cp311-macosx_26_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 26.0+ ARM64

python_constraint2-2.7.2-cp311-cp311-macosx_13_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file python_constraint2-2.7.2.tar.gz.

File metadata

  • Download URL: python_constraint2-2.7.2.tar.gz
  • Upload date:
  • Size: 851.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for python_constraint2-2.7.2.tar.gz
Algorithm Hash digest
SHA256 474d12f7bfb49a629698f21aa11a4ffda597ed27ba005f5b1226b72a70e4e043
MD5 afeb12423256673dd320ff73c0b2ba62
BLAKE2b-256 aec8dc87862ff7c5b5a8aa900f0ee50087fb9164bcf86eabcbc928afb2d90800

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2.tar.gz:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 16fd70e9d56217265e9a2243d3131c9c7af20613fdc8020762f84eea11133423
MD5 ad27f305f9b91c2d6b982c6e89ae1891
BLAKE2b-256 5643117836835a7331f90a7eea777da23d1183737d900bd35a7dce68b562554e

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-win_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 fa8ac6245050f3154561d3dacae6265946cef202d49961ca47dddea08ecedd51
MD5 a12a543aa231d31ffb5c75dfcfced2e0
BLAKE2b-256 4b78d28dc230fdeb90099b0e782fab1e02244738371b099eab268b6d83615e4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-win_amd64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 41f717e5456ede7aebc4e476507690f58a212304b2c3b3e9e60b074e413f4145
MD5 51d8667abb054f4e793a57050a6e81ef
BLAKE2b-256 0f366e8ec4be35c306c851af0f553c5703c3434281969205af800e8800999db7

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 63890602bf3fd2f7be06fb87128b1b698d04a88249a24427301ebd7b1823f71a
MD5 64dc587dd24a134bf9c28efa53aaaa56
BLAKE2b-256 e2601390bc857564b2a5534652d4765009b2a630a037777d3d8a06e8a3048246

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-manylinux_2_39_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 36632fc1779c4608387b89712d8bb7048759eeab0e5dffeb59aeae5b053c857d
MD5 d2ec61686ef79fec2d3300a98aa9ac32
BLAKE2b-256 62b8d24d5536ed9de5f148f75074d09361984ce8217ecad7e16eb62eebc486d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 1c1052b8280eafdc309f458a7806f28464b30713c7280ab58300e4306c24fdf8
MD5 0b0cc4bedf50de16c2214276dec7fe80
BLAKE2b-256 260343ff12fa988c5922503a7c4d4cc2952428580f390992bd1163d1d4e82e12

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-manylinux_2_35_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 baf0c84e2353b16a0ac87876cd3d9b34c79858a0f8953f804f631103432a9837
MD5 812247be8dacd92d2f34d3d60730c99d
BLAKE2b-256 bf0e085cfcb67d3464377ba247114e886b99b6b69bb2e0861ba5ae4bf1b61b63

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-macosx_26_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 65fc5b7c6a5812231d63cc1565c9f08c78ec9c4206d669ef05b03fe0b5b3c0e5
MD5 548d30385325900b1f67f8018ea28dd0
BLAKE2b-256 d07935edd652267f2cd51899fae6d1055cf11fa8949971e99e801794d678e8ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp314-cp314-macosx_13_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 827812fab1d8eea7db930ad898801fe0824e408227c6b16302e940d7a1803ccf
MD5 ebfc6df99d99093ba96a0ea45c199d8f
BLAKE2b-256 0ab2b7666a30ecb7d59979cabc640f88f879a4cadcad8a5fb5d6969150606299

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-win_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 715a436d93f71ac5d6dcbdb556b56d00bbb68c6c677c364d9350cbb0fac41db5
MD5 718c8f451d1bd1daca425f6e2c548da2
BLAKE2b-256 22833e2034532013ca139936b271316389eb5c8403858f641f83c7963f011679

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-win_amd64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 1ff86dbab66158827dc9154cd3173ff85d79aa0a4dd96f855fb6a19c6bddcdb6
MD5 dc4534ac421a6ea0296cfda833c2d6c8
BLAKE2b-256 9913e1841ae4aea5037b84de50022ab0aa15fdc6358974723406b84831080f51

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 2609e3806dba1332831050d2b8f83ba78b3e491512275cb93aeb370ab4eff028
MD5 b1c5b5700223b25df463ff5587fc12cc
BLAKE2b-256 1f562f2e56cf724c22982cb79411790a61d2b2644f52c42444b441ccb4cee920

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-manylinux_2_39_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 0cb5374fc1d16b0a9b7db361b937f911b3df9e2595f27660f882890f237ee676
MD5 a9903061bdb4817dd4205b7eec04a5ba
BLAKE2b-256 0ba41fbfd5250e73f74d8442a8597801e6283682e1ef1190888910afc8a04b76

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 c7a59c031d8ee8ebc8cd39c3c57afab695644d08adddfb175fa7ef7b0ec1ca54
MD5 4cfe67c7b3e26ffc1ad579d6e3b76fc8
BLAKE2b-256 1174ebc641ffaa4d929bf24cd62aeefef0d7f45655fe9c08e7b86bc91bd8132b

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-manylinux_2_35_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 5a6499f2e33312c67f5e2295cc03a71bf24aab9dcf8a45c02cab64103c0a6f13
MD5 cf5a54c53c2035caf87cae2f6fb1ab8e
BLAKE2b-256 c21e07773e375649b15ae5b85fe848abb4258f117dc12a83ab15707dff8c767c

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-macosx_26_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a42c7d28e1c2be1fb003cfde0e6e8bbc0d974ed626d69bcf7efb1330ce1cac4f
MD5 735139f75bdaeceffdc7eb07f14ac4a3
BLAKE2b-256 bf09791b6b5e3d11ae406cebfee57a97301047f6bcc5f94b473c02694235d088

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 9e3c393b9326563415c400fc6e77c30b6633daa3e613891a8f6ffbd22947d7cb
MD5 498f72c157ed3ea0d70914b94aeaaf38
BLAKE2b-256 637fe4d121c8287b3b7eaca89660ef3a2f38b99305d24ff6e29a71f6f81cf760

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-win_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 91703dbfc45bf5e86cc2fe97ffefc9f773b96a90cd8740dbe53e469287ce1814
MD5 5d8c1470d1f5ca1bc43ebe2fdb1b55f7
BLAKE2b-256 e622096d9838d6400a6d3c7d65b89fca2205edb921921f512fbbc9c99b819c46

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-win_amd64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 db6dcfb38bae48cf231f1412b80f6b322ace2454c68476ed7109fba71d9355de
MD5 1063b3be284ac2fe8a44964da1347278
BLAKE2b-256 cd71587ba8c58d04276f3a4b42e6c160dc8f40abcc0e664d19885bec3e0245de

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 3476a9c396f7031531b248f09db784454ae3bed74561b01977f6c6e26b2231fe
MD5 c59cd6a41e3fc7dfb2976d4386df49d5
BLAKE2b-256 676a70c33772e0d5e0fe03f9a1dba86dc19e49504d88d17d0f004d05ac894e24

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-manylinux_2_39_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 9c9aaf69011556ab662910baf0b73e70bd9c3125ce0b297f59461f12feb97380
MD5 04dec121100557bdb8e7efaefc3e4f54
BLAKE2b-256 e90fff1b4e53df93de4491f72698a7a232383a3e8b4e60c2f36c1f12d50cdc67

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 11e1ce370e3adc66a228cd60a24ea8cc23031d6f3c2240d250410f2f51cfc561
MD5 f47e42e4d62bd5372e561f448e0a9d59
BLAKE2b-256 2dc607b210ef32756dda92b8328594e7aa5a346c995d0a08d990a89d1c88b0be

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-manylinux_2_35_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 6a1fe3b605cf1d06f2f7732ee228ffdac2fee63593452626b9b7849b2057cb0e
MD5 d80fd1429c9bacd26d1aca42104a45f9
BLAKE2b-256 909cac101cfb1624350c30e3f650fa24e201d3459da6b7fdfaa5a835bc57a05e

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-macosx_26_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 912f45051177197eafbb365094d830afdea019d3ed332b9b07baaad3bf66440b
MD5 b11ea504775eb2a71b0e674eb1364ded
BLAKE2b-256 b3fc24eb660e306d4e5c9bf8cd311c3857da00e795b48b999a1ab278c1f6f274

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 cbf3017b62db698653b432931c15084d02120ff8b495762818480e9dc8cd144f
MD5 d256cb513d9bcfdfce15b087bd6f0d6a
BLAKE2b-256 a7a9939c30ff820df210146826a18bf09057568713601ed65da38cf7d935701a

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-win_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f7c939abc1666bcbfb1e329379c7b30c0291b60cedabdf2d52bbd478734adde4
MD5 28c45a63dbe551345163d930ce025deb
BLAKE2b-256 437a440c0ea1c7a9a3605a1ee077e9073a2314e3e19a4b5040921db84a1bcbfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-win_amd64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 d19ddddb1206a788b64f509b01b991de732c168d305934f42ba6ab376dde5b14
MD5 54b048bcf9a5c52e7a60cbf7bff65aac
BLAKE2b-256 3f480621f80942f50d499160048f1d492177361dda3bf1bc95bc8d7c8430edef

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 f7b1322e169b5a5c0b7ed7abda06f7fb3684537201802cef1053344cc3af4a1b
MD5 d3a76db7283f87274e587ecbbeddf9af
BLAKE2b-256 584cc68678ea80e09942d544369db778992aabb761dec56143672d7152ccfcf2

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-manylinux_2_39_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 3949cebf76d9cee94d7ebd60f86c9f74c56aeec34681ef8a681a7d0af95ec0f7
MD5 4f154bf41cf8699b4e45f7ec2ea40a78
BLAKE2b-256 8b77240e68f324f2948e9d5eb704dcedd5db356d76c153b168996bda2fd1afdb

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_x86_64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 4f04b2767e79ead5151286f5fdbbbc69d483c453993a81f770a52ac91cc2b9dc
MD5 73ecc6b4a52eb897d7c6872e6c91d83d
BLAKE2b-256 8e5641dbc46f8869dac0f4a52f8c04e3185047ca7b8c8f913eaf659a48f70679

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-manylinux_2_35_aarch64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 5b9c4bdf0cfbebf5b1cae2ecc2c8a5c4b4db6a466c255db9ec1a1efd8bc16e93
MD5 81cb0f7c151b3e049f81791fd1acca37
BLAKE2b-256 1d725aa9a14f2ee5b8cd5064d5957a10a7a45ba91ce10d69f7dad6fcac9b5d14

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-macosx_26_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_constraint2-2.7.2-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.2-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a39b53c898ee573a5444922fe399fb4c42df65a5d5ecf8d650ec8cb35a22bc4e
MD5 3d9c64c12a8a94ef8fb951bcf7f1a29b
BLAKE2b-256 9f274640801c869db7e36db8afa72deb37e95ac5cdd00614812ef62630e3a795

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.2-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: publish-package.yml on python-constraint/python-constraint

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.7.3

41 files

This release

2.7.2 This release

33 files

2.7.1

29 files

2.7.0

29 files

2.6.0

17 files

2.5.0

25 files

2.4.0

21 files

2.3.2

21 files

2.3.1

21 files

2.3.0

21 files

2.2.3

21 files

2.2.2

16 files

2.2.1

16 files

2.2.0

16 files

2.1.0

16 files

2.0.3

16 files

2.0.2

16 files

2.0.1

16 files

2.0.0

16 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page