native-api
8037f22665
rehash: streamline executables discovery; fix regression ( #3418 )
Separate the corner-cutting code for `rehash' into a dedicated branch.
Saves some more time (about 100ms for the large fixture)
4 miesięcy temu
Jake Lodwick
23bcdebe18
versions: fast path for --bare --skip-aliases ( #3411 )
Skip sort, native extension probe, and per-symlink realpath
when called with --bare --skip-aliases (the rehash case).
Use readlink to distinguish internal aliases (relative target)
from external installs (absolute target).
In MacOS, speeds up rehash by 5.2 ms (7%) in empty environment,
55.9 ms (33%) in a regular environment (3 ver, 12 venvs, 320 bins),
93.7 ms (15%) in a large environment (6 ver, 60 venvs, 1466 bins)
4 miesięcy temu
Jon Crall
672eef1561
Speed up pyenv prefix by not constructing advice text when it would be discarded ( #3005 )
by adding an internal flag
2 lat temu
native-api
20189ff06f
Fix not showing symlink contents for unselected versions in `pyenv versions` ( #2675 )
3 lat temu
Shengqi Chen
b1ee6c93c4
Try locate `readlink` first in pyenv-hooks, fix #2654 ( #2655 )
* Remove all use of `greadlink`, fix #2654
Signed-off-by: Harry Chen <i@harrychen.xyz>
* revert greadlink back in tests
---------
Signed-off-by: Harry Chen <i@harrychen.xyz>
Co-authored-by: Anton Petrov <anton.a.petrov@gmail.com>
3 lat temu
Florian Schüller
68918e69b7
Support for BusyBox version of `head' ( #2629 )
3 lat temu
Rafał
86a4423bbb
Fix indentation ( #2620 )
3 lat temu
laggardkernel
a7b181c3ca
Fix link resolving in pyenv-versions
Co-Authored-by: Ivan Pozdeev <vano@mail.mipt.ru>
3 lat temu
Ivan Pozdeev
446411dc64
Streamline `pyenv-versions --bare'
Achieves a ~20% speedup.
As it's used in pyenv-latest, this affects all version lookups
3 lat temu
Ivan Pozdeev
9fe80f28e5
Add `pyenv versions' option to skip envs for `pyenv-latest'
3 lat temu
native-api
9248255f70
Show symlink contents in non-bare `pyenv versions' ( #2609 )
* Change other tests to use the newly-created convenience function
3 lat temu
Pedro Fonini
fdaeaf1f97
Use version sort in `pyenv versions` if available ( #2405 )
4 lat temu
Ivan Pozdeev
ddf952ab2d
Allow for cases where user might've aliased some programs
The $(type -p | head -1) construct expects to always get a path, so need to ignore such aliases with -P
Closes https://github.com/pyenv/pyenv/issues/1662
5 lat temu
Ivan Pozdeev
00f7d6249a
Fix not printing asterisk for current version in Bash 3
5 lat temu
Ville Skyttä
c4e556eded
versions: use associative array to hold current versions
"hyperfine pyenv-versions" before with my bash 4.4:
Time (mean ± σ): 81.7 ms ± 2.2 ms [User: 67.8 ms, System: 15.7 ms]
Range (min … max): 78.3 ms … 87.2 ms 34 runs
After:
Time (mean ± σ): 70.6 ms ± 2.4 ms [User: 55.6 ms, System: 16.9 ms]
Range (min … max): 67.9 ms … 78.9 ms 41 runs
5 lat temu
Ivan Pozdeev
f77c2d7eab
Detect Py2 presence as well
5 lat temu
Paul Bransford
4d762bca7b
fix 'system' python to be present if 'python3' is on path but not 'python'
6 lat temu
Maxime Brunet
2b174ab69f
List versions starting with a dot
7 lat temu
Andrew Rabert
0f596d2504
Revert "Merge pull request #1153 from cmcginty/remove-sbang"
This reverts commit 070e1c859fb2584c3dbe0a6fbe58cbc80938654e, reversing
changes made to 3faeda67bb .
7 lat temu
Casey McGinty
83e5459cfb
Remove shebang lines from scripts for performance
All scripts in libexec/ (excluding pyenv) are called through pyenv,
therefore the shebang lines are not necessary. On some systems this
provides a measurable increase in performance of the shell prompt.
Related to pyenv/pyenv-virtualenv#259
8 lat temu
Zach Riggle
19e2b9588a
Fix $PWD changes when executing Python
Specifically, this does not play well with PWD=/proc/self/cwd
8 lat temu
Yamashita, Yuu
96bfa1532d
Skip virtualenv aliases as well ( yyuu/pyenv-virtualenv#126 )
10 lat temu
Yamashita, Yuu
3937dc3618
list virtual environments created by anaconda/miniconda as a version in pyenv
10 lat temu
Yamashita Yuu
8e657374a1
Import recent changes from rbenv-versions
11 lat temu
Yamashita Yuu
8ddf8760d5
Import recent changes from rbenv 0.4.0
12 lat temu
Yamashita Yuu
403f4eb7a7
Preserve original IFSs
13 lat temu
Yamashita Yuu
1a6eb80bcd
should not declare IFS in toplevel
13 lat temu
Yamashita Yuu
fca31c4307
import trivial changes from rbenv 0.4.0
13 lat temu
Yamashita Yuu
da06998457
import rbenv-help from rbenv 0.4.0
13 lat temu
Yamashita Yuu
e89ae3a4a9
show all enabled versions (maybe multiple) in `pyenv versions`
14 lat temu
Yamashita Yuu
8187bc84e3
search commands from python version stack.
users can use multiple python versions at once.
14 lat temu
Yamashita Yuu
2457419b4a
created new project.
modified rbenv source for Python and renamed to pyenv.
14 lat temu