From b822b85ac11e73bbe4417bf03ee770ab116bb42d Mon Sep 17 00:00:00 2001 From: Barney Gale Date: Tue, 23 Jan 2024 05:30:16 +0000 Subject: [PATCH] GH-105900: Fix `pathlib.Path.symlink_to(target_is_directory=...)` docs (#114035) Clarify that *target_is_directory* only matters if the target doesn't exist. --- Doc/library/pathlib.rst | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Doc/library/pathlib.rst b/Doc/library/pathlib.rst index a6d99d4a64f..fcbc0bf489b 100644 --- a/Doc/library/pathlib.rst +++ b/Doc/library/pathlib.rst @@ -1539,9 +1539,13 @@ call fails (for example because the path doesn't exist). .. method:: Path.symlink_to(target, target_is_directory=False) - Make this path a symbolic link to *target*. Under Windows, - *target_is_directory* must be true (default ``False``) if the link's target - is a directory. Under POSIX, *target_is_directory*'s value is ignored. + Make this path a symbolic link pointing to *target*. + + On Windows, a symlink represents either a file or a directory, and does not + morph to the target dynamically. If the target is present, the type of the + symlink will be created to match. Otherwise, the symlink will be created + as a directory if *target_is_directory* is ``True`` or a file symlink (the + default) otherwise. On non-Windows platforms, *target_is_directory* is ignored. ::