pipx icon indicating copy to clipboard operation
pipx copied to clipboard

TST: add explicit support for Python 3.14

Open neutrinoceros opened this issue 2 months ago • 6 comments

  • [x] I have added a news fragment under changelog.d/ (if the patch affects the end users)

Summary of changes

Test plan

Tested by running

nox -s tests

neutrinoceros avatar Oct 18 '25 17:10 neutrinoceros

Thanks for the contribution, but it looks like some of the test dependencies haven't supported Python 3.14 yet. 👀

dukecat0 avatar Oct 20 '25 00:10 dukecat0

Indeed. I didn't identify this issue locally because apparently I ran the test suite on the only platform where everything builds fine (macOS). Let me list the issues I'm parsing from log here:

  • cmarkgfm fails to build, at least on Linux
  • test_run_with_windows_python_version fails (not sure where the bug is coming from)

neutrinoceros avatar Oct 20 '25 05:10 neutrinoceros

the relevant PR upstream is already merged https://github.com/theacodes/cmarkgfm/pull/77 what's lacking is a release

neutrinoceros avatar Oct 20 '25 05:10 neutrinoceros

The remaining failure looks genuine to me. I even think it was probably already discovered once, but hidden away by updating the test itself instead of fixing the bug (#1647). Of course, this is just my conclusion from a very quick review, and I could be entirely mistaken.

neutrinoceros avatar Nov 03 '25 11:11 neutrinoceros

Looks like issues are essentially caused by pycowsay not working on Windows with newer Python. Probably a good idea to fix the tests to use a different package instead.

uranusjr avatar Nov 06 '25 04:11 uranusjr

Hum, that's really surprising for a package that has a pure-python wheel. I'm inclined to go and dig a little deeper before we resort to ditching it entirely, since it's used everywhere in pipx's documentation

The log from CI is not particularly useful however

ERROR    pipx.util:util.py:347 Fatal error from pip prevented installation. Full pip output in file:
    C:\Users\runneradmin\AppData\Local\Temp\pytest-of-runneradmin\pytest-0\test_do_not_wait_for_input0\subdir\pipxhome\logs\cmd_2025-11-03_02.34.38_pip_errors.log

is there any way I could retrieve this file or see its content ?

neutrinoceros avatar Nov 06 '25 07:11 neutrinoceros