[package] name = "pyo3" version = "0.13.2" description = "Bindings to Python interpreter" authors = ["PyO3 Project and Contributors "] readme = "README.md" keywords = ["pyo3", "python", "cpython", "ffi"] homepage = "https://github.com/pyo3/pyo3" repository = "https://github.com/pyo3/pyo3" documentation = "https://docs.rs/crate/pyo3/" categories = ["api-bindings", "development-tools::ffi"] license = "Apache-2.0" exclude = ["/.gitignore", ".cargo/config", "/codecov.yml", "/Makefile", "/pyproject.toml", "/tox.ini"] build = "build.rs" edition = "2018" [dependencies] cfg-if = { version = "1.0" } # must stay at 0.3.x for Rust 1.41 compatibility indoc = { version = "0.3.6", optional = true } inventory = { version = "0.1.4", optional = true } libc = "0.2.62" parking_lot = "0.11.0" num-bigint = { version = "0.3", optional = true } num-complex = { version = "0.3", optional = true } # must stay at 0.1.x for Rust 1.41 compatibility paste = { version = "0.1.18", optional = true } pyo3-macros = { path = "pyo3-macros", version = "=0.13.2", optional = true } unindent = { version = "0.1.4", optional = true } hashbrown = { version = "0.9", optional = true } serde = {version = "1.0", optional = true} [dev-dependencies] assert_approx_eq = "1.1.0" trybuild = "1.0.23" rustversion = "1.0" proptest = { version = "0.10.1", default-features = false, features = ["std"] } # features needed to run the PyO3 test suite pyo3 = { path = ".", default-features = false, features = ["macros", "auto-initialize"] } serde_json = "1.0.61" [features] default = ["macros"] # Enables macros: #[pyclass], #[pymodule], #[pyfunction] etc. macros = ["pyo3-macros", "indoc", "inventory", "paste", "unindent"] # Use this feature when building an extension module. # It tells the linker to keep the python symbols unresolved, # so that the module can also be used with statically linked python interpreters. extension-module = [] # Use the Python limited API. See https://www.python.org/dev/peps/pep-0384/ for more. abi3 = [] # With abi3, we can manually set the minimum Python version. abi3-py36 = ["abi3-py37"] abi3-py37 = ["abi3-py38"] abi3-py38 = ["abi3-py39"] abi3-py39 = ["abi3"] # Changes `Python::with_gil` and `Python::acquire_gil` to automatically initialize the # Python interpreter if needed. auto-initialize = [] # Optimizes PyObject to Vec conversion and so on. nightly = [] [workspace] members = [ "pyo3-macros", "pyo3-macros-backend", "examples/*" ]