Skip to content

Document behavior of Path.symlink_to() when source already exists #132416

Open
@bmispelon

Description

@bmispelon

Documentation

The documentation for Path.symlink_to() [1] does not mention what happens when the source already exists, e.g.:

>>> from pathlib import Path
>>> Path("source").symlink_to("target1")
>>> Path("source").symlink_to("target2")
Traceback (most recent call last):
  File "<python-input-2>", line 1, in <module>
    Path("source").symlink_to("target2")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/lib/python3.13/pathlib/_local.py", line 789, in symlink_to
    os.symlink(target, self, target_is_directory)
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileExistsError: [Errno 17] File exists: 'target2' -> 'source'

(The same applies to os.symlink [2] by the way)

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions