pyo3/examples/setuptools-rust-starter
Icxolu 31c4820010
deprecate &PyModule as #[pymodule] argument type (#3936)
* deprecate `&PyModule` as `#[pymodule]` argument type

* cleanup

* add ui tests

* fix deprecations in tests

* fix maturin and setuptools-rust starters

* run `deprecated` ui test only when `gil-refs` as disabled
2024-03-08 00:28:11 +00:00
..
.template release: 0.20.3 (#3890) 2024-02-23 12:30:38 +00:00
setuptools_rust_starter ci: switch from black to ruff 2023-10-26 21:04:49 +01:00
src deprecate &PyModule as #[pymodule] argument type (#3936) 2024-03-08 00:28:11 +00:00
tests
cargo-generate.toml Use --no-build-isolation 2022-01-17 10:02:03 +08:00
Cargo.toml Bump Rust edition to 2021 and make current Clippy happy. 2023-06-07 21:15:38 +02:00
MANIFEST.in
noxfile.py examples: remove requirements-dev.txt files 2023-10-26 08:24:30 +01:00
pyproject.toml examples: add cargo-generate configuration 2021-12-15 08:11:46 +00:00
README.md Switch from tox to nox 2022-01-17 00:24:33 +08:00
requirements-dev.txt Install wheel for the setuptools-rust-starter example 2023-07-20 08:54:24 -04:00
setup.cfg ci: build all examples in debug 2022-01-23 08:41:39 +00:00
setup.py ci: build all examples in debug 2022-01-23 08:41:39 +00:00

setuptools-rust-starter

An example of a basic Python extension module built using PyO3 and setuptools_rust.

Building and Testing

To build this package, first install setuptools_rust:

pip install setuptools_rust

To build and test use python setup.py develop:

pip install -r requirements-dev.txt
python setup.py develop && pytest

Alternatively, install nox and run the tests inside an isolated environment:

nox

Copying this example

Use cargo-generate:

$ cargo install cargo-generate
$ cargo generate --git https://github.com/PyO3/pyo3 examples/setuptools-rust-starter

(cargo generate will take a little while to clone the PyO3 repo first; be patient when waiting for the command to run.)