This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author gregory.p.smith
Recipients eryksun, gregory.p.smith, pablogsal, ronaldoussoren
Date 2020-07-29.21:14:58
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1596057298.99.0.408564581045.issue41355@roundup.psfhosted.org>
In-reply-to
Content
Thanks for the analysis Eryk!  I think you are right, changing the default to match the behavior that people have actually been experiencing on `os.link(src, dst)` makes sense.

Possible suggestion:

We can go one step further if anyone believes it is likely to be necessary: Preserve the exiting buggy behavior regardless of src_dir_fd= value when follow_symlinks is not explicitly provided as an argument.  This way the behavior for people who did not specify it remains unchanged <= 3.9.  This would be the principal of no surprise.  (it'd effectively become a tri-state _UNSPECIFIED/True/False value where _UNSPECIFIED depends on the mess of conditionals described by Eryk)

Documentation up through 3.9 should be updated to note the oddity.

In 3.8 & 3.9 if it _is_ explicitly specified, fixing the bug so that it actually honors that makes sense.

In 3.10 we should honor the new =False default without this tri-state behavior bug-compatible-by-default at all.

This is more complicated to implement.  I'd also be happy with the already described "just updating the default to False and fixing forward in 3.10 to actually honor True properly."

META: Regarding macOS, can we update the macOS version used to build the installers for 3.10?
History
Date User Action Args
2020-07-29 21:14:59gregory.p.smithsetrecipients: + gregory.p.smith, ronaldoussoren, eryksun, pablogsal
2020-07-29 21:14:58gregory.p.smithsetmessageid: <1596057298.99.0.408564581045.issue41355@roundup.psfhosted.org>
2020-07-29 21:14:58gregory.p.smithlinkissue41355 messages
2020-07-29 21:14:58gregory.p.smithcreate