Skip to main content

No project description provided

Project description

pyparaspace: a Python wrapper for the ParaSpace timelines planner -- a simple, flexible and extensible solver for timeline-based planning problems using the Z3 Theorem Prover.

Installing

Install using Pip.

pip install pyparaspace

See the file testPyParaspace.py for example usage.

Building locally

Requirements: Rust, Cargo, Clang/LLVM/LibClang, CMake.

  • Create a virtual environment
python3 -m venv env
source env/bin/activate
  • Install maturin
pip install maturin
  • Build package
maturin develop

Building and releasing

This section is intended for package maintainers. The pyparaspace package is released on PyPi with Python wheel packages that make it convenient to use paraspace without needing to set up Rust and C++ compilers and tools. Through the z3-sys package's static link option, we get the whole planner, including the Z3 solver, statically linked. This greatly increases the convenience for users of the library.

Windows and Manylinux platforms are currently supported.

Windows

If building and installing the local package works, then using maturin build --release should also correctly build a wheel package, which can be uploaded to PyPi using maturin publish.

Manylinux

paraspace requires an Rust version 1.60 and Clang version 3.5 (to compile the Z3 solver), which makes it requires a bit of setup to correcly build the manylinux wheel. There is a Dockerfile available that can be used to build a Docker image with an up-to-date Rust version and version 7 of the LLVM/Clang toolchain.

Project details


Download files

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

Source Distribution

pyparaspace-0.1.3.tar.gz (33.9 kB view details)

Uploaded Source

Built Distributions

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

pyparaspace-0.1.3-cp310-none-win_amd64.whl (6.1 MB view details)

Uploaded CPython 3.10Windows x86-64

pyparaspace-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

File details

Details for the file pyparaspace-0.1.3.tar.gz.

File metadata

  • Download URL: pyparaspace-0.1.3.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.1.0

File hashes

Hashes for pyparaspace-0.1.3.tar.gz
Algorithm Hash digest
SHA256 31921477d8b199cfe69a8879e52ffdf2f266a55c822cafa9bac51f6aecb227cc
MD5 d1c73aeb5d999911ddd83b4c90f72587
BLAKE2b-256 3ff508e5ddbead6d4a4652fcd798f2fc13b5dd49762ec34caca86cd7aa8acc05

See more details on using hashes here.

File details

Details for the file pyparaspace-0.1.3-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for pyparaspace-0.1.3-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 79c2895c18f9e4daaeccb0b5a82a2bb82cf0663282b5c1724d7355f5979b5e8b
MD5 b3da4950752d3f71eba40ac6770f9e3e
BLAKE2b-256 2616d6afc7f23949e0736fcc63b015a9376ef2bb2ecc6d1323597831df841e6c

See more details on using hashes here.

File details

Details for the file pyparaspace-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyparaspace-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eda2c3c24bd9b33f7fa324bda0f9396f75d4d45dc2b4c2bd28baf8eb9b620224
MD5 0cf68708db5b41f41a8d31b4fd747cdd
BLAKE2b-256 59d5bba0419226b3172241835450370aa1e6ee54332cf740f999158adeb986a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page