Commit graph

725 commits

Author SHA1 Message Date
native-api a944da76c0
rehash: support BSD mktemp (#3376)
macOS 12 `mktemp' doesn't support `-p`
2025-12-21 06:38:46 +03:00
Florian Blanchet aeea3ac825
Add PowerShell support (#2749)
Co-authored-by: Ivan Pozdeev <ivan_pozdeev@mail.ru>
Co-authored-by: Ivan Pozdeev <vano@mail.mipt.ru>
2025-12-21 05:33:19 +03:00
Ivan Pozdeev 7418835908
Prevent infinite loop if a shim is linked and called from a nonstandard location with "system" active 2025-12-20 11:05:27 +03:00
Ivan Pozdeev 22b192913e
2.6.17 2025-12-16 23:30:42 +03:00
Ivan Pozdeev e805257c1f
2.6.16 2025-12-06 00:58:03 +03:00
Ivan Pozdeev a6ea5b3179 Fix rehash 2025-12-05 20:57:07 +03:00
native-api 0f7b8fa8ee
sh-rehash: Fix erroneously executing rather than printing a command (#3369) 2025-12-05 20:42:25 +03:00
native-api 6f0e2d3458
rehash: Fix hanging for 60 seconds when shims directory is not writable due to Linux Landlock (#3367) 2025-12-05 16:19:17 +03:00
Ivan Pozdeev 61d869f67e
2.6.15 2025-12-03 03:23:17 +03:00
Ivan Pozdeev d1ae7fd65d
2.6.14 2025-12-02 21:00:00 +03:00
Ivan Pozdeev fdde91269b
2.6.13 2025-11-19 14:30:40 +03:00
Ivan Pozdeev c6ea700cdf 2.6.12 2025-10-31 23:27:18 +03:00
Ivan Pozdeev 94071a9374 2.6.11 2025-10-15 14:40:44 +03:00
Ivan Pozdeev a419b003b4 2.6.10 2025-10-10 04:14:38 +03:00
Ivan Pozdeev 8087e811cd 2.6.9 2025-10-07 22:33:22 +03:00
Ivan Pozdeev 519ce9dbf0 2.6.8 2025-09-19 07:14:28 +03:00
rockandska 68edd564cf update parent shell detection in pyenv-init to be more portable 2025-09-15 15:00:18 +02:00
Ivan Pozdeev 3dbdfdf39a 2.6.7 2025-08-15 21:49:48 +03:00
Ivan Pozdeev d56241330c 2.6.6 2025-08-07 23:17:54 +03:00
Ivan Pozdeev df84c42653 2.6.5 2025-07-23 21:20:39 +03:00
Ivan Pozdeev 0c680e8ede 2.6.4 2025-07-08 21:12:30 +03:00
Ivan Pozdeev f1c5371752 2.6.3 2025-06-18 22:05:08 +03:00
Ivan Pozdeev a71a378dac 2.6.2 2025-06-12 13:19:45 +03:00
Ivan Pozdeev b9ede4ae0e 2.6.1 2025-06-04 20:22:49 +03:00
Ivan Pozdeev bfbe76e6a9 2.6.0 2025-05-26 22:59:51 +03:00
Jesse Wattenbarger 018ca73444
Add --bare option to pyenv version (#2783) 2025-05-17 18:23:25 +03:00
Ivan Pozdeev f216b4bfb1 2.5.7 2025-05-09 00:52:54 +03:00
Ivan Pozdeev 6fff3d29d4 2.5.6 2025-05-08 17:12:28 +03:00
Ivan Pozdeev 97993fcc26 2.5.5 2025-04-09 23:00:35 +03:00
Ivan Pozdeev abf1376487 2.5.4 2025-03-15 02:06:16 +03:00
Ivan Pozdeev 5051a42b2c 2.5.3
Some checks failed
macos_build / macos_build (3.10) (push) Waiting to run
macos_build / macos_build (3.11) (push) Waiting to run
macos_build / macos_build (3.12) (push) Waiting to run
macos_build / macos_build (3.13) (push) Waiting to run
macos_build / macos_build (3.9) (push) Waiting to run
pyenv_tests / pyenv_tests (macos-13) (push) Waiting to run
pyenv_tests / pyenv_tests (macos-14) (push) Waiting to run
pyenv_tests / pyenv_tests (ubuntu-24.04) (push) Waiting to run
ubuntu_build / ubuntu_build (3.10) (push) Waiting to run
ubuntu_build / ubuntu_build (3.11) (push) Waiting to run
ubuntu_build / ubuntu_build (3.12) (push) Waiting to run
ubuntu_build / ubuntu_build (3.13) (push) Waiting to run
ubuntu_build / ubuntu_build (3.9) (push) Waiting to run
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
2025-02-13 09:17:25 +03:00
Ivan Pozdeev b3dad5887e 2.5.2 2025-02-05 19:54:06 +03:00
Ivan Pozdeev 734d6323d8 2.5.1
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-24.04) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.10) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.11) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.12) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.13) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.9) (push) Has been cancelled
2025-01-19 17:47:51 +03:00
Christian Fredrik Johnsen 4c6b0e9c3b
Fix: mistake in configuration hints in pyenv init and manpage. (#3145)
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-24.04) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.10) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.11) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.12) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.13) (push) Has been cancelled
ubuntu_build / ubuntu_build (3.9) (push) Has been cancelled
2024-12-23 20:58:54 +03:00
Ivan Pozdeev 2aff0df76d 2.5.0 2024-12-22 23:22:20 +03:00
Christian Fredrik Johnsen c6973391f3
pyenv-init | performance improvements (#3136)
* perf: replace a series of if statements with a case block. Add error
handling for case where unknown option is provided.
Same setup as rbenv-init for reading arguments.

* perf, docs: Recommend users to specify the shell for `pyenv init -`
Speeds up the startup by about 40% (in local testing, from ~50ms to ~30ms).
Reflect this in `pyenv init` hint text.

* style: remove unnecessary `root` variable in pyenv-init
* style: remove unnecessary variable declarations at the top of file in pyenv-init.

* perf: replace `cat <<` calls with `echo`
The builtin `echo` is about 100x faster. In tests, saves about 2-3ms.

* docs: document the `pyenv init - <shell>` performance boost in the Advanced Configuration section.

* style: test_helper.bash: avoid unnecessary ".." in produced PATH

* docs: fix a false statement about completions location in the Advanced Configuration section.
2024-12-22 15:23:51 +03:00
Ivan Pozdeev a1edb81e8e 2.4.23
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 1s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-12-18 10:13:13 +03:00
Ivan Pozdeev 86be59a6d5 Tolerate nonexistent versions from pyenv-version-name in pyenv-which
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
Addendum to #3134 as per https://github.com/pyenv/pyenv/pull/3134#issuecomment-2545710044
2024-12-16 21:36:14 +03:00
native-api dc873cf568
Support missing versions being present and set in a local .python-version (#3134)
Some checks failed
macos_build / macos_build (3.10) (push) Waiting to run
macos_build / macos_build (3.11) (push) Waiting to run
macos_build / macos_build (3.12) (push) Waiting to run
macos_build / macos_build (3.13) (push) Waiting to run
macos_build / macos_build (3.9) (push) Waiting to run
pyenv_tests / pyenv_tests (macos-13) (push) Waiting to run
pyenv_tests / pyenv_tests (macos-14) (push) Waiting to run
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Waiting to run
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 1s
Requested in https://github.com/pyenv/pyenv/issues/2680
for deployments with a stock `.pyenv-version` that can use any
of a number of Python versions
and for compatibility with `uv`.

* Support `pyenv local --force`
* Support `pyenv-version-file-write --force`
* Support `pyenv version-name --force`
* Ignore missing versions when searching for executables
* Display "commmand not found" even when there are nonexistent versions

* exec.bats: replace `python` and `rspec` with something that doesn't exist globally, either
in Ubuntu Github CI, `python` exists globally
2024-12-16 02:32:45 +03:00
Ivan Pozdeev d04a081dcb 2.4.22
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-12-07 14:29:09 +03:00
Ivan Pozdeev ee84e89ef1 2.4.21
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-12-06 02:57:27 +03:00
Ivan Pozdeev 0f8b2b2b84 2.4.20
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.13) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 1s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.13) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-12-04 02:08:51 +03:00
Ivan Pozdeev 1e8e96b8a2 2.4.19
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.8) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.8) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-11-20 22:11:32 +03:00
Ivan Pozdeev 6393a4dfce 2.4.18
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.8) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.8) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-11-17 23:49:36 +03:00
Ivan Pozdeev 96b3fb2fc3 2.4.17 2024-10-28 02:43:30 +03:00
Ivan Pozdeev 770eb66ec8 2.4.16
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 1s
ubuntu_build / ubuntu_build (3.8) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 1s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.8) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-10-17 18:47:39 +03:00
Ivan Pozdeev 050f88c78b 2.4.15
Some checks failed
pyenv_tests / pyenv_tests (ubuntu-22.04) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.10) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.11) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.12) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.8) (push) Failing after 0s
ubuntu_build / ubuntu_build (3.9) (push) Failing after 0s
macos_build / macos_build (3.10) (push) Has been cancelled
macos_build / macos_build (3.11) (push) Has been cancelled
macos_build / macos_build (3.12) (push) Has been cancelled
macos_build / macos_build (3.8) (push) Has been cancelled
macos_build / macos_build (3.9) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-13) (push) Has been cancelled
pyenv_tests / pyenv_tests (macos-14) (push) Has been cancelled
pyenv_tests / pyenv_tests (ubuntu-20.04) (push) Has been cancelled
2024-10-11 16:31:00 +03:00
native-api 3ced1c4751
Support free-threaded CPython flavor in prefix resolution (#3090)
Since 3.13, CPython is provided in 2 flavors: regular and
free-threaded, with the 't' suffix.

An incomplete prefix ending with '[0-9]t'
resolves only among versions that also end with '[0-9]t'
2024-10-11 16:28:10 +03:00
Antoine Arbouin 03b60aafec
Support virtualenvs with names starting with "python-" (#3086) 2024-10-10 20:43:13 +03:00
Ivan Pozdeev 5180c3cfb5 2.4.14 2024-10-02 15:13:21 +03:00