{"categories":[{"label":"Scientific/Engineering","url":"https://skillfed.io/packages/category/scientific-engineering/5"}],"enrichment":{"capability":"Solves constraint satisfaction problems (CSPs) over finite domains using pure Python, allowing you to define variables, domains, and constraints and retrieve all valid solutions.","skillfed_tags":["constraint-solving","logic-puzzles","combinatorial-search"],"use_cases":["Solve logic puzzles like N-queens, magic squares, or sudoku by encoding variables, domains, and constraints.","Schedule tasks or resources with conflicting requirements by modeling availability and constraints.","Generate valid configurations for systems where certain combinations of settings are forbidden or required.","Verify that a set of rules or constraints is satisfiable and enumerate all valid solutions.","Prototype constraint-based problem solvers before moving to specialized or compiled CSP libraries."],"what_it_does":"python-constraint is a pure-Python library for solving constraint satisfaction problems\u2014computational puzzles where you define variables with possible values (domains) and rules (constraints) that those values must satisfy. You create a Problem object, add variables and their allowed values, specify constraints like \"a must not equal b\" or \"a times 2 must equal b\", and ask the solver to find all valid assignments. It includes three solver strategies (backtracking, recursive backtracking, and minimum conflicts) and predefined constraint types for common patterns like all-different, exact sums, and set membership.\n\nThe library is useful for logic puzzles, scheduling, configuration problems, and other combinatorial search tasks where you need to explore a solution space systematically. It has no external dependencies and runs in standard Python, making it portable and easy to embed. However, the package has not been released in over five years, and while the repository shows recent activity, this stale release cycle creates uncertainty about compatibility with current Python versions and whether bug fixes or improvements have been made but not published.","worth_installing":"Yes, with conditions. The library is actively maintained (recent commits) and solves a real problem with no external dependencies, but the stale release cycle (last version 2018-11-05) creates risk: you may encounter Python compatibility issues or undocumented bugs. Install it if you need a lightweight pure-Python CSP solver for prototyping or small-scale problems and are willing to test thoroughly or patch locally if needed. For production use or large-scale constraint solving, consider whether a more actively released alternative is available."},"id":"python-constraint","links":{"html":"https://skillfed.io/packages/python-constraint","md":"https://skillfed.io/packages/python-constraint.md","pypi":"https://pypi.org/project/python-constraint/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2018-11-05","license_spdx":null,"license_treatment":"permissive","name":"python-constraint","python_support":"unspecified","summary":"python-constraint is a module implementing support for handling CSPs (Constraint Solving Problems) over finite domain"},"popularity":{"monthly_downloads":309876,"position":7750,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.4.0"}
