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.1.tar.gz (850.9 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.1-cp314-cp314-win_arm64.whl (857.5 kB view details)

Uploaded CPython 3.14Windows ARM64

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

Uploaded CPython 3.14Windows x86-64

python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.35+ ARM64

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

Uploaded CPython 3.14macOS 26.0+ ARM64

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

Uploaded CPython 3.13Windows ARM64

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

Uploaded CPython 3.13Windows x86-64

python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.35+ ARM64

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

Uploaded CPython 3.13macOS 26.0+ ARM64

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

Uploaded CPython 3.12Windows ARM64

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

Uploaded CPython 3.12Windows x86-64

python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_39_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_35_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.35+ ARM64

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

Uploaded CPython 3.12macOS 26.0+ ARM64

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

Uploaded CPython 3.11Windows ARM64

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

Uploaded CPython 3.11Windows x86-64

python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_39_aarch64.whl (4.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ ARM64

python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_35_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.35+ ARM64

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

Uploaded CPython 3.11macOS 26.0+ ARM64

File details

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

File metadata

  • Download URL: python_constraint2-2.7.1.tar.gz
  • Upload date:
  • Size: 850.9 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.1.tar.gz
Algorithm Hash digest
SHA256 3e9fb77c0515cf379263a7ed71e606721658ae056ed0de3c02b7ac2d3270cf3a
MD5 fe7a426798ce79a7ad2621365d4281c8
BLAKE2b-256 ff37899766f0435995ead851c77995bd0ebbce3382e51018c2019187d55b8166

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1.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.1-cp314-cp314-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 39220e3c0398b11104303c30d14ded0256d5e56662c0c21b7c6bfcc5f56d1b43
MD5 923cfc54f04a7d807a648d3b186a965c
BLAKE2b-256 2d27a2afb51cd071dcc8fd979852db64dbfd90b8888bfda4e0ddb1ed37598721

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 60e02e07540ed2efcc60de5bbaef3f399788e906213d307020f035039f4e5ed4
MD5 165ffeb84479089fc13fb9ccb52b855b
BLAKE2b-256 5b308bd390cb1b5942e63e211558b787473249ed08d3921bd81b04c8ed426de8

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 38add363bed4f205e277ff5d3e3c3dc3d6c0a2acde9a0076d34de439913dff22
MD5 03112f7dbd7ad34aea75dae42a2eb483
BLAKE2b-256 d73047465e32301d8ebef28b05c59026189358a1b05a94d2e2e3b45ce0449c54

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 505701e3547ecd8acaa14a556c715558778801e5ae9cdc21dbdb215dc0cb0bf6
MD5 879c1832330f1f98c3bd659b898157ab
BLAKE2b-256 14ba394623ea06fde6b3dcd41d32695de7f0ca59eaf4f1d07e7b550ccb1eb4b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 eda6f08b6aa4e6867a1df7c5fcbd927799e17b3da148e018c6600c1d1facb6bf
MD5 38316e0929bb900465362a6938f53b1b
BLAKE2b-256 3a6bf24b1f78e54cdab241ba8806720c4c4739af543ee1c8d04513b23b609175

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 492167b5458f6a9447e52f3eac0c7e68a4e83ccde2d79123de0c6a9364971630
MD5 86cbea01909c4747cfe5ae74d8f88f22
BLAKE2b-256 3df3a6520949f93c7ab84e9634b1ccb2c15112833550a0300d13f228622ff3c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp314-cp314-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp314-cp314-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 5d8e4a2220a5099ca186070156a3de20c665b31025ed716bd99e99e33df001eb
MD5 97d4e80e8346233aae1f54113f188adb
BLAKE2b-256 eb751accbb798679b72d8b17e06beacbabcc9a130b52cd7c8878949ffa3a2e85

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 a0836dfd9078d4804c3d3a227e28148719f9367df37e5788d72eab2344e859dc
MD5 1af6459338f23328d3f62443db13d555
BLAKE2b-256 5c6e52acde245e249b150480999c981ba1199a5997a95c42d33b59fd815e4b82

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e0276144ddbf9da03c5d770a43225b5c835c16df44801a584af6c6c1e6d30977
MD5 7e4073ce1de06eb3b324966fda532966
BLAKE2b-256 ec743aab9480845aef17e2cd68a47b2e911fbfd0c1d54ae75a2b207a17ca3f28

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 838b979d7e590bfb3884a87a8f8ebac7a2cb4217306653888fde2df6deaed2bb
MD5 44e8aadb91f2f4f77a18479ffb9b9291
BLAKE2b-256 13eb5c12b43c21760eeaa1d38118986ad545ae4d2ec791d05f07360657806f03

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 970d79b3ea0ebb03de605a041e13c9a5c8e76877e6760b132f7931414864a795
MD5 da22f216068a0c97ba887a562288c599
BLAKE2b-256 a066c4825023692b015be934d4d91af9768b61e00f8a8b0a73966aadaac745c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 3003748ff8a5094183610e50bc41fb1b82445c1e6990df5993950f878591baaa
MD5 a47b4c3a1ef443d94ef1a86b16ad6693
BLAKE2b-256 c251089820f3c430528a7b972fe9d271f859c8b1f276d25c51f4e98b500601ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 b9964d21fbced108add1b4fcadce5b0c05de822e0b5b1d164119dfdaa77b289a
MD5 392f0a9b9563fbc8fb68242de58548d7
BLAKE2b-256 ea6c112197173655ec56ac3068d6486820b6d869d2110678a17030dd97097797

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp313-cp313-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp313-cp313-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 e2fb0edf79a724350156ae6edb382102e6c38262fb0ab5b5230b2fd1ba90f2d2
MD5 a173457438d6481aac4289c0f6560371
BLAKE2b-256 e6320e1a5f209610c980dac6ba05b77d454637c26dbc7ab683c24e1cc0ea6147

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 019d85aa7c8f79b7aedbb718fce1ed417c5f2aed6bba71f54f56102f3389d48c
MD5 48b7b19d1f00adfb7f931e95df0d67b9
BLAKE2b-256 af41cb2c9ab1f49b31b84e038ec8f01510815891065deab2d4cba9485b1342b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fece59f4a0243deb2ee02175d662ff421314571d3c1b3c59b412cad0fc2aa0e8
MD5 99b889785ad952d14120b96865e36529
BLAKE2b-256 fd16f2900769f939ffc62aea4979975479e8a789d92dc6c230e7fab9f65dc030

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 c6f1e652a488debb35f54de046717f11d1387949b07c9b301a5c6e8f9261f94d
MD5 a0e36f3deb0a32e72a5563f25894fc20
BLAKE2b-256 dd7adbfbc60b3dedb588e38f6d8ee9f4aafa38706926c6fdfd6c444c4db56acc

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 6954479898ced75cc9c9d4b05aa2f1197017c8dda3bbff36967d63136fb9d345
MD5 95578568a52844b9949dee8fa76aa909
BLAKE2b-256 4ef50240dc9f0ca39d57360bd2ddbc7be0474f21e59fb33587b26f38f3379743

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 d0b8b67587119663fa63a6ac7d85da0a0aa77e13c19b5a48ab8f970579e9f1ba
MD5 8257c122b79745aaba44de2dd1c264ba
BLAKE2b-256 f8e4955edc4164faad7385b8b8cd0896488e968f539a88d76541ccf98223039d

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 952f4487e00e847816204dba43c5447df8badb586990fc0c5a281976492e76e4
MD5 1d52fefe6ef82b21ec99cd38ff9b9409
BLAKE2b-256 3103b263ebbec29220ec0dc4e844db99b11477a81ab9f7d2c48b8c0f116b3c57

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp312-cp312-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp312-cp312-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 dead366a02b2466708e39f4eaa754e1dded3884cc9991989b7591bcce2cadeec
MD5 19a79d1380b6257b835d14636c63e586
BLAKE2b-256 707fc09725280da2c400b68f45c3e6b67de01652cd930b3fe91a6536b85067ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 fe9e52c1842e9129f2af538bb88ae768c6d3dbfcf913ddaa97704fd7b3ad176d
MD5 e634fbab720029940bfb9a7c79e8df4b
BLAKE2b-256 b5ec6ef0fb667bb9a4294b5ba7961fb9c014e9369043d0c8b63efb56b6d0d4ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 60b53f1bc817b82e3efda381a5ca4fc325843dc8f9e23063d8e795c48bd3d48c
MD5 25b7b2fa516bc31e83583a61e0b327fd
BLAKE2b-256 1160f321c5648fc9532170b77f19a3b3a7633cb71a034f9461e0340ff8dae4ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 bdd4dd535d61ce268d59087b65637d4b926e576c4bb6ed05824bd867e65b1ad1
MD5 20ba8d2e123825adee4adf304c713155
BLAKE2b-256 0f7e6548c58a151b03af176edb9db4bdbe4a90654703ffb6a73feae2ae87abe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 aa0670696f1095ea4aa2fc0a78f3cb2677e1b7e043446a6df7e120c8eb3e1e5a
MD5 526df61d9fd380eba635627424cae362
BLAKE2b-256 edf0c957f0c15a72f9bdee7717efbdf86989ce1cefb35eb2ff4a270a6c0f1db5

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 224ba9b6da1b1823c899220cd2ef66fd14ab629091e9107fcbd8919104637136
MD5 1b3e20fce61f64ad6a0728b090cb7cec
BLAKE2b-256 50d5b5fbc7e614d76de0d505ea9998e1763a34688d26f26433acedeca9a4623d

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 c6e8c59fcf3eb06367bb4fd05755ce5f03b54f77ee0835df76888e9704b4d2be
MD5 45bc7cb6ec87ee958e8a32b6098139f0
BLAKE2b-256 6d051fd45e8c7d99ce5acf01312345514d55e3236cb26287ffb547056aabac2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.1-cp311-cp311-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for python_constraint2-2.7.1-cp311-cp311-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 eb8d0a82aa1466b24e7d50cb5eafa30a72cfb3660e83becc3e41fc2665a140e0
MD5 1b6e7e8a6afef21aeb289b858cecf190
BLAKE2b-256 c3e443a62a3b48c2aea48443d9f05503f70cea65ccea433c8f13a8ecfa18a658

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_constraint2-2.7.1-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.

Release history Release notifications | RSS feed

2.7.3

41 files

2.7.2

33 files

This release

2.7.1 This release

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