Skip to content

TST: add explicit support for Python 3.14#1684

Draft
neutrinoceros wants to merge 1 commit intopypa:mainfrom
neutrinoceros:tst/cp314
Draft

TST: add explicit support for Python 3.14#1684
neutrinoceros wants to merge 1 commit intopypa:mainfrom
neutrinoceros:tst/cp314

Conversation

@neutrinoceros
Copy link
Contributor

  • 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 neutrinoceros force-pushed the tst/cp314 branch 3 times, most recently from 490c8c8 to c16aecf Compare October 18, 2025 17:21
@dukecat0
Copy link
Member

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

@neutrinoceros
Copy link
Contributor Author

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
Copy link
Contributor Author

the relevant PR upstream is already merged theacodes/cmarkgfm#77
what's lacking is a release

@neutrinoceros
Copy link
Contributor Author

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.

@uranusjr
Copy link
Member

uranusjr commented Nov 6, 2025

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.

@neutrinoceros
Copy link
Contributor Author

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
Copy link
Contributor Author

fixed

@cclauss
Copy link
Contributor

cclauss commented Mar 17, 2026

Cannot replicate the pycowsay problem on GitHub Actions...

Copy link
Contributor

@gaborbernat gaborbernat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI is failing 🤔

@gaborbernat gaborbernat marked this pull request as draft March 17, 2026 13:55
@neutrinoceros
Copy link
Contributor Author

I'm aware. This is already being discussed above. I don't plan to dig further myself at the moment, so if that's what drafting the PR signals, you might as well just close it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants