Skip to content

Add Better Detection of Debug Builds on Windows #3535

Closed
@dstufft

Description

From #3383 it'd be nice to have better detection of debug builds on Windows.

@zooba said on #3383 (comment)

Py_DEBUG is never going to be in pyconfig.h on Windows as the header is static (no autoconf) and debug/no-debug is determined using the preprocessor at build.

sys.gettotalrefcount is protected by Py_REF_DEBUG, which is not guaranteed to always be set when Py_DEBUG is set. That said, distutils.command.build tests for it, so it's probably safe enough (or at least, there'll be twice as many bugs when it breaks...).

The most reliable check is probably going to be:

any(x[0] == '_d.pyd' for x in imp.get_suffixes())

The only issue with this is that the imp module is deprecated - Python 3.3 and later should really use:

'_d.pyd' in importlib.machinery.EXTENSION_SUFFIXES

Metadata

Assignees

No one assigned

    Labels

    OS: windowsWindows specificauto-lockedOutdated issues that have been locked by automationtype: enhancementImprovements to functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions