Skip to content

Upgrade to Python 3.11 #2731

@jwhitlock

Description

@jwhitlock

Python 3.11.0 was released October 24, 2022. We'll want to upgrade to Python 3.10 first (#2452) done!, and then ensure that our dependencies support Python 3.11.

Some of the new major new features and changes in Python 3.11 are:

General changes

  • PEP 657 -- Include Fine-Grained Error Locations in Tracebacks
  • PEP 654 -- Exception Groups and except*
  • PEP 680 -- tomllib: Support for Parsing TOML in the Standard Library
  • gh-90908 -- Introduce task groups to asyncio
  • gh-34627 -- Atomic grouping ((?>...)) and possessive quantifiers (*+, ++, ?+, {m,n}+) are now supported in regular expressions.
  • The Faster CPython Project is already yielding some exciting results. Python 3.11 is up to 10-60% faster than Python 3.10. On average, we measured a 1.22x speedup on the standard benchmark suite. See Faster CPython for details.

Typing and typing language changes

  • PEP 673 -- Self Type
  • PEP 646 -- Variadic Generics
  • PEP 675 -- Arbitrary Literal String Type
  • PEP 655 -- Marking individual TypedDict items as required or potentially-missing
  • PEP 681 -- Data Class Transforms
### Tasks
- [ ] https://github.com/mozilla/fx-private-relay/issues/2452
- [ ] https://github.com/mozilla/fx-private-relay/issues/3126

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions