Skip to content

Commit

Permalink
Merge branch 'main' into pep705
Browse files Browse the repository at this point in the history
  • Loading branch information
JelleZijlstra authored Nov 29, 2023
2 parents 3192691 + 7af82f9 commit f884301
Show file tree
Hide file tree
Showing 9 changed files with 230 additions and 41 deletions.
5 changes: 3 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,14 +51,15 @@ jobs:
- "3.11"
- "3.11.0"
- "3.12"
- "3.13"
- "pypy3.8"
- "pypy3.9"
- "pypy3.10"

runs-on: ubuntu-20.04

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v4
Expand All @@ -82,7 +83,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: 3

Expand All @@ -50,10 +50,10 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: 3

Expand Down
33 changes: 17 additions & 16 deletions .github/workflows/third_party.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,26 +41,27 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "pypy3.9"]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3.9", "pypy3.10"]
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Checkout pydantic
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: pydantic/pydantic
- name: Edit pydantic pyproject.toml
# pydantic's python-requires means pdm won't let us add typing-extensions-latest
# as a requirement unless we do this
run: sed -i 's/^requires-python = .*/requires-python = ">=3.8"/' pyproject.toml
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup pdm for pydantic tests
uses: pdm-project/setup-pdm@v3
with:
python-version: ${{ matrix.python-version }}
allow-python-prereleases: true
- name: Add local version of typing_extensions as a dependency
run: pdm add ./typing-extensions-latest
- name: Install pydantic test dependencies
Expand Down Expand Up @@ -90,12 +91,12 @@ jobs:
timeout-minutes: 60
steps:
- name: Checkout typing_inspect
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ilevkivskyi/typing_inspect
path: typing_inspect
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down Expand Up @@ -133,12 +134,12 @@ jobs:
timeout-minutes: 60
steps:
- name: Check out pyanalyze
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: quora/pyanalyze
path: pyanalyze
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down Expand Up @@ -172,17 +173,17 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3.9"]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3.10"]
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Check out typeguard
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: agronholm/typeguard
path: typeguard
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down Expand Up @@ -221,12 +222,12 @@ jobs:
timeout-minutes: 60
steps:
- name: Check out typed-argument-parser
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: swansonk14/typed-argument-parser
path: typed-argument-parser
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down Expand Up @@ -272,12 +273,12 @@ jobs:
timeout-minutes: 60
steps:
- name: Checkout mypy for stubtest and mypyc tests
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: python/mypy
path: mypy
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down Expand Up @@ -319,11 +320,11 @@ jobs:
timeout-minutes: 60
steps:
- name: Checkout cattrs
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: python-attrs/cattrs
- name: Checkout typing_extensions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: typing-extensions-latest
- name: Setup Python
Expand Down
13 changes: 13 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

version: 2

build:
os: ubuntu-22.04
tools:
python: "3.11"

sphinx:
configuration: docs/conf.py

11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
# Unreleased
# Release 4.9.0 (???)

- Add support for PEP 705, adding `typing_extensions.ReadOnly` and the
`readonly=True` and `other_keys=False` arguments to `TypedDict`. Patch
by Jelle Zijlstra.
- All parameters on `NewType.__call__` are now positional-only. This means that
the signature of `typing_extensions.NewType.__call__` now exactly matches the
signature of `typing.NewType.__call__`. Patch by Alex Waygood.
- Fix bug with using `@deprecated` on a mixin class. Inheriting from a
deprecated class now raises a `DeprecationWarning`. Patch by Jelle Zijlstra.
- `@deprecated` now gives a better error message if you pass a non-`str`
argument to the `msg` parameter. Patch by Alex Waygood.
- Exclude `__match_args__` from `Protocol` members,
this is a backport of https://github.com/python/cpython/pull/110683

# Release 4.8.0 (September 17, 2023)

Expand Down
7 changes: 6 additions & 1 deletion doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -598,10 +598,15 @@ Decorators

.. decorator:: deprecated(msg, *, category=DeprecationWarning, stacklevel=1)

See :pep:`702`. Experimental; not yet part of the standard library.
See :pep:`702`. In the :mod:`warnings` module since Python 3.13.

.. versionadded:: 4.5.0

.. versionchanged:: 4.9.0

Inheriting from a deprecated class now also raises a runtime
:py:exc:`DeprecationWarning`.

.. decorator:: final

See :py:func:`typing.final` and :pep:`591`. In ``typing`` since 3.8.
Expand Down
Loading

0 comments on commit f884301

Please sign in to comment.