PyO3/pyo3

`pyo3-build-config` cleanups

Offen

#4.761 geöffnet am 03.12.2024

 (2 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Rust (668 Forks)batch import
Good First Issuerefactoring

Repository-Metriken

Stars
 (10.152 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 9T 18h) (51 gemergte PRs in 30 T)

Beschreibung

In https://github.com/PyO3/pyo3/pull/4758 I fixed the urgent bug with PYO3_CONFIG_FILE changes not correctly triggering rebuilds.

I think we can take action to ensure we don't have a similar accident again. I was playing around with various ideas, I've seen two so far which I think make sense:

  • A lot of pyo3-build-config APIs require being run in a build script. I wonder if we should have something like a BuildScriptContext struct which all those APIs take, and it can collect info about environment accesses so that we can both test them and emit to cargo reliably.
  • We can add clippy configuration to ban direct environment variable access, as suggested by @alex .

Contributor Guide