Skip to content

Python 3.13 support #5484

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
youknowone opened this issue Jan 18, 2025 · 3 comments
Open

Python 3.13 support #5484

youknowone opened this issue Jan 18, 2025 · 3 comments

Comments

@youknowone
Copy link
Member

youknowone commented Jan 18, 2025

Previous major version update

Though #5078 has lots of changes, the core part of version update is importlib, site and ensurepip which have hard-coded python version or binary. test.support is not necessary, but usually need to be either updated or manually fixed to be compatible to new importlib.

In #5078, I tried to update importlib and resolve every following issues. site and ensurepip is done separately.

The first step is #5482, the easy part as it is. Changing CI CPython version to 3.13. It shows what behavior is changed in new version and what to prepare to cover it.
The second step is #5483. I found a few challanges in this update, but this is not the full list of them

  • __doc__ is changed. It now trims left whitespaces.
  • _opcode is added. This is _opcode.c in CPython source code. This could be temporarily ignored or replaced by python version.
  • match statement is now being used more and more. RustPython doesn't implement match statement yet. For 3.12, I rewrote a few match statement in standard library using if statement. 2 options. Implementing match or rewriting it without match.
  • remove dead batteries in https://peps.python.org/pep-0594/
@youknowone
Copy link
Member Author

cc @arihant2math

@arihant2math
Copy link
Collaborator

I'd suggest going for a match statement implementation first, it's save us a lot in the long run.

@arihant2math
Copy link
Collaborator

Can we get a list of match statements in standard libraries?

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

No branches or pull requests

2 participants