Skip to content

Unexpected propagation of Cython's build_ext options #2209

Description

@Kamekameha

From,

user_options = _build_ext.build_ext.user_options
boolean_options = _build_ext.build_ext.boolean_options
help_options = _build_ext.build_ext.help_options
Cython's build_ext starts using and modifying distutils' options attributes directly instead of making a copy of them.

If using setuptools' setup function (most likely the case) and Cython is installed then setuptools will successfully (and unconditionally) import Cython's build_ext, therefore Cython's modifications to these lists do happen and is, more than anything, confusing whenever using directly or subclassing distutils' build_ext that these options appear out of "nowhere".

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions