Registry / data / kiwisolver

kiwisolver

JSON →
library1.5.0pypypi✓ verified 25d ago

Kiwisolver is a fast implementation of the Cassowary constraint solver, designed to be lightweight and efficient. The current version is 1.5.0, released on March 9, 2026. The library is actively maintained and follows a regular release cadence, with updates approximately every few months.

pip install kiwisolver
INSTALL
IMPORT
SIG · KIWISOLVER
K
kiwisolver
datapythonv1.5.0
Install
1.8s avg
Import
Disk
22MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.5.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 24.8MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 1.8s · import 0.000s · 25MB
22MB installed
● package 22MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Solver
from kiwisolver import Solver
Ensure correct import path to access the Solver class.

A basic example demonstrating how to set up and solve a constraint system using Kiwisolver.

import os from kiwisolver import Solver solver = Solver() # Define variables and constraints here solver.update() # Solve the system solution = solver.solve() print(solution)
Debug
Known issues
breakingKiwisolver requires Python 3.10 or higher.
fix
Upgrade your Python installation to version 3.10 or later.
affects: >=1.5.0
gotchaEnsure that the 'cppy' package is installed for Python bindings.
fix
Install the 'cppy' package using pip.
affects: >=1.5.0
breakingThe `kiwisolver.Solver` object does not have an `update` method. This often indicates an incorrect API usage or an expectation of a method that is not part of the `kiwisolver` library's standard interface.
fix
Consult the `kiwisolver` documentation for available methods and correct API usage. Common methods for solving or updating variables include `solve()` or `updateVariables()`.
affects: >=1.0.0
Errors
Common errors & fixes
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
On Windows, kiwisolver requires the Microsoft Visual C++ Build Tools to compile its C++ extensions during installation.
fix
Download and install the "Build Tools for Visual Studio" from Microsoft's website, ensuring the "Desktop development with C++" workload is selected during installation.
fatal error: Python.h: No such file or directory
On Unix-like systems, kiwisolver requires the Python development headers to compile its C++ extension, but these headers (specifically Python.h) are missing.
fix
Install the Python development package for your specific Python version using your system's package manager (e.g., `sudo apt-get install python3-dev` on Debian/Ubuntu, or `sudo yum install python3-devel` on CentOS/Fedora).
ModuleNotFoundError: No module named 'kiwisolver'
The kiwisolver package is either not installed in the current Python environment, or the environment in which it was installed is not the one being used.
fix
Install the package using pip: `pip install kiwisolver`, and ensure you are running your script in the correct virtual environment if one was used during installation.
Upgrade
Version history
1.5.0latest on PyPI · released Mar 9, 2026
Audit
Dependencies
cppyrequiredRequired for Python bindings to the C++ codebase
Agent activity
7 hits · last 30 days
node
6
Resources
kiwisolver — pip install kiwisolver · libregistry