Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

venv fails with confusing ENOENT when existing venv has broken symlinks #143768

Open
Labels
stdlibStandard Library Python modules in the Lib/ directory topic-venvRelated to the venv module type-bugAn unexpected behavior, bug, or error
@claydugo

Description

Bug report

Bug description:

python -m venv aborts with [Errno 2] No such file or directory if the target directory already contains a stale venv whose interpreter symlinks point to aremoved Python install.
Re-running venv on an existing environment shouldrefresh those links instead of failing.

Reproducer

mkdir -p oldvenv/bin
ln -s /nonexistent/python3 oldvenv/bin/python3
python3 -m venv oldvenv

Actual behavior

Traceback ends with FileNotFoundError: [Errno 2] No such file or directory: '/tmp/oldvenv/bin/python3' during the chmod phase.

Expected behavior

venv should replace broken interpreter symlinks just as it overwrites other files when re-run on an existing directory (without requiring --clear).

CPython versions tested on:

3.13

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    stdlibStandard Library Python modules in the Lib/ directory topic-venvRelated to the venv module type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /