Did not implement customizable priority due to unclear use feedback and more compilation in the code, can decide and do that separately
Tcl/Tk from MacPorts support is omitted due to CPython's only being compatible with
Tcl/Tk 9 since 3.12.5 and 3.13.0.
Co-authored-by: Ivan Pozdeev <vano@mail.mipt.ru>
An older plugin, pyenv-alias, allowed naming the desired python version with
an alias, which allowed installing multiple versions of the same python
version. This is particularly useful on Apple silicon if you want to install
both arm and x86_64 versions of python.
Unfortunately, the pyenv-alias plugin broke when the code was updated to
allow specifying multiple versions of Python to install at once, and the
current code is not amenable to modifying the version in place with another
plugin.
XCode Command Line Tools 15.0 was recently released, and it contains a
broken version of ncurses 6.0. Some uses of Python's `curses` module
will segfault when compiled with it. The solution is to switch to using
the version of ncurses from Homebrew, which is currently 6.4. Support
for ncurses 6 was added to Python 3.7 and was backported to 3.6 and 2.7,
so this change should not break any recently supported Python versions.
Tested with Python 3.12, 3.11, and 2.7, and all tests in
the `test.test_curses` module pass without issue.
See https://github.com/python/cpython/issues/109617 and
https://github.com/python/cpython/issues/69906 for more information.
All include directories should go into CPPFLAGS.
XCode SDK was being added to CFLAGS instead
which caused old Tcl/Tk in the SDK to override a newer one in Homebrew.
The -s flag assures that nothing can be installed to user site-packages
but doesn't keep ensurepip from looking there for Pip.
If Pip is installed in the user site-packages directory, pip won't be installed
for the newly built python -- and its shim won't be created.
-I makes the build install Pip in any case.
The user site-packages installation will override it --
but we'll have the shim at least.
Guthub have recently preinstalled x64 Homebrew OpenSSL to stock MacOS runners. This has caused FreeBSD OpenSSL detection logic to erroneously trigger when running FreeBSD tests in MacOS because their paths happened to coincide.
Replaced checking a specific path with checking with pkg.
* 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>