Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix issue with absolute path with Python 3.13 on Windows #302

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

adang1345
Copy link

Fix pypa/setuptools#4669.

I originally opened a pull request at pypa/setuptools#4671 but was asked to submit the change here instead. See the above links for details about the bug and the fix.

@lazka
Copy link
Contributor

lazka commented Oct 18, 2024

lgtm in general, but the commit message could explain why it broke and why this fixes it.

For future reference, this function tries to implement os.path.splitroot()[-1], but that got only added in 3.12.

With Python 3.13 on Windows, `os.path.isabs()` no longer returns `True`
for a path that starts with a slash. Thus, when the argument to
`_make_relative()` is an absolute path, the return value starts with a
slash on Python 3.13 and does not start with a slash on older Python
versions. This causes the extension module build directory to be
calculated incorrectly with Python 3.13 on Windows.

Fix this by ensuring that the return value does not start with a slash.
@adang1345
Copy link
Author

I edited the commit message to explain the issue and the fix.

@lazka
Copy link
Contributor

lazka commented Oct 22, 2024

better, thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Extension module build files are written to source directory
3 participants