PyO3 / pyproject-toml-rs

pyproject.toml parser in Rust
MIT License
19 stars 8 forks source link

Use Version, VersionSpecifiers and Requirement from PEP 440 and PEP 508 parser #7

Closed konstin closed 1 year ago

konstin commented 1 year ago

This means we actually parse version, requires, dependencies , optional_dependencies, both validating them and allowing the user to actually use these field. If we also update of maturin, this prevents bugs like https://github.com/mozilla/bleach/pull/655.

Using crates.io releases is currently blocked on https://github.com/PyO3/pyo3/pull/2786

messense commented 1 year ago

LGTM, I guess we should merge this after https://github.com/PyO3/pyo3/pull/2786 since we can't publish to crates.io and you need to use git dep anyway?

konstin commented 1 year ago

yes; i'm not entirely sure how to proceed though since https://github.com/PyO3/pyo3/pull/2786 seems stalled but i need it for pep440_rs and i don't want to publish a fork

messense commented 1 year ago

If the Python API surface isn't big, maybe just use wrapper types to expose to Python for now and feature gate them in a separate module instead.

It's a bit tedious, but hey it works.

konstin commented 1 year ago

:/ done

messense commented 1 year ago

Published in v0.5.0.