-
Notifications
You must be signed in to change notification settings - Fork 73
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
Conversation
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 |
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.
401e6a6
to
464735f
Compare
I edited the commit message to explain the issue and the fix. |
better, thanks |
I think this change introduces some lint, so that'll need to be fixed after the other emergent lint issues in main are resolved. I've left a comment in the original issue - I'd first like to understand if this change to Python 3.13 is indeed intentional. If it is, I'm hoping there's some advice on how to handle this situation, and I'd like to see a documented function that implements this logic in a re-usable way. |
Co-authored-by: Avasam <samuel.06@hotmail.com>
I started working on adding a regression test for the missed behavior, but it's tricky because in #169 |
fe48898
to
ede1af2
Compare
I've found that |
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.