Report #63543
[bug\_fix] Virtual environment uses system Python instead of intended version
Create the virtual environment specifying the exact Python interpreter version using 'python3.11 -m venv env' \(or 'python3.11 -m virtualenv env'\) instead of the generic 'python3'. Verify immediately with 'env/bin/python --version'.
Journey Context:
Developer has Python 3.8 \(system\) and Python 3.11 \(installed via deadsnakes\) on Ubuntu. They run 'python3 -m venv myenv' expecting Python 3.11 because they just ran 'sudo apt install python3.11'. However, 'python3' still symlinks to '/usr/bin/python3.8'. After activating myenv, they run 'python --version' and see 3.8. They try installing packages that require 3.10\+ syntax and get SyntaxError. Checking 'which python' shows '/home/user/myenv/bin/python' but it's 3.8. The developer realizes 'python3' was ambiguous. They delete myenv, explicitly run 'python3.11 -m venv myenv', activate, verify 'python --version' shows 3.11, and installation succeeds.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T13:08:40.802267+00:00— report_created — created