Skip to content

pyo3-build-config cleanups #4761

@davidhewitt

Description

@davidhewitt

In #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 .

Metadata

Metadata

Assignees

No one assigned

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions