[3.10] bpo-46678: Fix Invalid cross device link in Lib/test/support/import_helper.py (GH-31204) #31207
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In Lib/test/support/import_helper.py, the function
make_legacy_pyc
makes a call toos.rename
which can fail when the source and target live on different devices. This happens (for example) whenPYTHONPYCACHEPREFIX
is set to a directory anywhere on disk, while a ramdisk is mounted on/tmp
(the latter of which is the default on various Linux distros). Replacingos.rename
withshutil.move
fixes this.Automerge-Triggered-By: GH:brettcannon
(cherry picked from commit da576e0)
Co-authored-by: Jason Wilkes [email protected]
https://bugs.python.org/issue46678
Automerge-Triggered-By: GH:brettcannon