Skip to content

feat: Overrides mechanism #332

@henryiii

Description

@henryiii

This is an initial idea for the overrides system.

The overrides array would requires the select key set:

[[tool.scikit-build.overides]]
select = {python-version=">=3.8", implementation-name="cpython"}

The keys would be based on PEP 508:

  • python-version: a SpecifierSet that matches the Python version (note: PEP 508 splits this into python_full_version, maybe we should too, and make them mutually exclusive)
  • implementation-name
  • implementation-version
  • platform-system
  • platform-machine

The other values (besides python-version) would support regular expressions.

All other values in that array entry are then used over the original values if the select matches. Table/array merging should be considered, but might not make it in the first version. At least one value is required.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions