Skip to content

Conversation

@cclauss
Copy link
Member

Describe your change:

  • Test Python 3.14
  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Add or change doctests? -- Note: Please avoid changing both code and tests in a single pull request.
  • Documentation change?

Checklist:

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new Python files are placed inside an existing directory.
  • All filenames are in all lowercase characters with no spaces or dashes.
  • All functions and variable names follow Python naming conventions.
  • All function parameters and return values are annotated with Python type hints.
  • All functions have doctests that pass the automated testing.
  • All new algorithms include at least one URL that points to Wikipedia or another similar explanation.
  • If this pull request resolves one or more open issues then the description above includes the issue number(s) with a closing keyword: "Fixes #ISSUE-NUMBER".

@algorithms-keeperalgorithms-keeperbot added awaiting reviews This PR is ready to be reviewed tests are failing Do not merge until tests pass and removed tests are failing Do not merge until tests pass labels May 7, 2025
@cclausscclaussforce-pushed the Python-3.14 branch 3 times, most recently from db60e7e to bf69518CompareMay 8, 2025 14:28
@algorithms-keeperalgorithms-keeperbot removed the tests are failing Do not merge until tests pass label May 8, 2025
@algorithms-keeperalgorithms-keeperbot added the tests are failing Do not merge until tests pass label May 8, 2025
@cclausscclaussforce-pushed the Python-3.14 branch 2 times, most recently from a3721b9 to 5464999CompareMay 8, 2025 16:44
Traceback (most recent call last):
...
ZeroDivisionError: integer modulo by zero
ZeroDivisionError: division by zero
Copy link
MemberAuthor

Choose a reason for hiding this comment

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

Traceback (most recent call last):
...
ValueError: math domain error
ValueError: expected a positive input, got -1
Copy link
MemberAuthor

Choose a reason for hiding this comment

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

@cclausscclaussforce-pushed the Python-3.14 branch 2 times, most recently from 20d8de8 to 25a5908CompareMay 8, 2025 17:48
@algorithms-keeperalgorithms-keeperbot removed the tests are failing Do not merge until tests pass label May 8, 2025
@cclauss
Copy link
MemberAuthor

cclauss commented May 9, 2025

@hugovk congratulations on the compatibility of Python 3.14 beta. This repo contains tested Python algorithms spanning lots of domains and third-party libraries from a huge variety of contributors. We always test and run on the current version of CPython and when each beta 1 release ships I port to it making any required changes.

Of all the upgrades that I have done, Python v3.14 is by far the cleanest and simplest!! Third party tools like SciPy, Pillow, and H5py all seem ready to go. This has never been the case before so I suspect that you have been doing a lot of behind-the-scenes work to ensure everyone is ready for a great release.

We needed to rename our compression directory (#12725) and change the text of a few exceptions, but these were trivial changes. radix2_fft.py requires doctest changes that I cannot understand, but for an initial beta, I am very impressed.

Thanks and congratulations 🎉🎈🍾

@hugovk
Copy link

Good to hear, thank you! And thank you for the early testing :)

Of all the upgrades that I have done, Python v3.14 is by far the cleanest and simplest!! Third party tools like SciPy, Pillow, and H5py all seem ready to go. This has never been the case before so I suspect that you have been doing a lot of behind-the-scenes work to ensure everyone is ready for a great release.

Personally I've only been involved with Pillow, but I suspect much of it is down to the excellent work done by the Quansight team helping projects get ready for free-threading, which overlaps getting ready for 3.14. cc @ngoldbaum@lysnikolaou

https://labs.quansight.org/blog/free-threaded-python-rollout

@algorithms-keeperalgorithms-keeperbot added tests are failing Do not merge until tests pass and removed tests are failing Do not merge until tests pass labels May 13, 2025
cclauss added a commit that referenced this pull request May 28, 2025
As suggested at: * #12729 (comment) * #12710 (comment)@MaximSmolskiy@KirilBangachev@skirpichev Careful review, please. I am just implementing the suggestion, but I do not have any expertise in this area.
cclauss added a commit that referenced this pull request May 29, 2025
* maths/radix2_fft.py: Fix calculation for Python 3.14 As suggested at: * #12729 (comment) * #12710 (comment)@MaximSmolskiy@KirilBangachev@skirpichev Careful review, please. I am just implementing the suggestion, but I do not have any expertise in this area. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Change test results * GitHub Actions: Rename job from build to directory_writer It is confusing to have two jobs named `build`. --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
@algorithms-keeperalgorithms-keeperbot added the tests are failing Do not merge until tests pass label Jul 5, 2025
@cclausscclaussforce-pushed the Python-3.14 branch 4 times, most recently from 8880f15 to 9c4eeacCompareAugust 19, 2025 12:57
@algorithms-keeperalgorithms-keeperbot removed the tests are failing Do not merge until tests pass label Aug 19, 2025
@cclausscclaussforce-pushed the Python-3.14 branch 2 times, most recently from de178ab to 533caf5CompareAugust 19, 2025 14:16
@cclauss
Copy link
MemberAuthor

@cclausscclauss changed the title DO NOT MERGE: Test Python 3.14Test Python 3.14Oct 7, 2025
Copy link
Member

@poyeapoyea left a comment

Choose a reason for hiding this comment

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

🚢

@algorithms-keeperalgorithms-keeperbot removed the awaiting reviews This PR is ready to be reviewed label Oct 7, 2025
@cclausscclauss merged commit 9372040 into masterOct 7, 2025
8 checks passed
@cclausscclauss deleted the Python-3.14 branch October 7, 2025 16:23
Sign up for freeto 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.

4 participants

@cclauss@hugovk@poyea