Removed erroneous note in the get_type_hints docs
typing.get_type_hints still includes base class type hints.
(cherry picked from commit deaf090699a7312cccb0637409f44de3f382389b)
Automerge-Triggered-By: GH:AlexWaygood
update dataclasses docs for when annotations are inspected
(cherry picked from commit 659c2607f5b44a8a18a0840d1ac39df8a3219dd5)
Co-authored-by: Akshit Tyagi <37214399+exitflynn@users.noreply.github.com>
Avoid RecursionError on recursive dataclass field repr
(cherry picked from commit 0a7936a38f0bab1619ee9fe257880a51c9d839d5)
Automerge-Triggered-By: GH:ericvsmith
The behaviour is fully explained a couple paragraphs above, but it may be useful to have a brief example to cover the behaviour.
(cherry picked from commit 1ae619c911ec8e096f83eeb7cc57fcd966950a3d)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
Automerge-Triggered-By: GH:hauntsaninja
(cherry picked from commit 7f1eefc6f4843f0fca60308f557a71af11d18a53)
Co-authored-by: Christian Klein <167265+cklein@users.noreply.github.com>
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
gh-81611: Improve `range` paragraph in 8.3 of language reference (GH-98353)
(cherry picked from commit 8b1f1251215651c4ef988622345c5cb134e54d69)
Co-authored-by: 4l4k4z4m <alakazamjoined@gmail.com>
Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
- Remove first link to lexical definition of integer literal, since it
doesn't apply (differs in handling of leading zeros, base needs to be
explicitly specified, unicode digits are allowed)
- Better describe handling of leading zeros, unicode digits, underscores
- Base 0 does not work exactly as like a code literal, since it allows
Unicode digits. Link code literal to lexical definition of integer
literal.
(cherry picked from commit edfbf56f4ca6588dfd20b53f534a4465e43c82bd)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
The PEP-249 numeric style has never been supported by sqlite3.
(cherry picked from commit b7a68ab824249ebf053b8149ebb83cd8578781c9)
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
import dataclass not dataclasses from dataclasses
(cherry picked from commit 98308dbeb110198ebe28bdb7720d3671b3e7f57b)
Co-authored-by: Owain Davies <116417456+OTheDev@users.noreply.github.com>
Based on the definition of the collections.abc classes, it is more accurate to use "sequence" instead of "container" when describing argparse choices.
(cherry picked from commit ad3c99e521)
Co-authored-by: Guy Yagev <yourlefthandman8@gmail.com>
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
Previously, the grammar did not accept `float("10")`.
Also implement mdickinson's suggestion of removing the indirection.
(cherry picked from commit 2e1a9ce9890aba748a518a39d01d1ea6d623d0d9)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
gh-76963: PEP3118 itemsize of an empty ctypes array should not be 0 (GH-5576)
The itemsize returned in a memoryview of a ctypes array is now computed from the item type, instead of dividing the total size by the length and assuming that the length is not zero.
(cherry picked from commit 84bc6a4f25fcf467813ee12b74118f7b1b54e285)
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
Mentioned as a desired change by terryjreedy on the corresponding issue,
since Tk is not a subclass of Toplevel.
(cherry picked from commit ad23da0e77c4c4a3185df64d1c199b8c17e08188)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
In the docstring of `ParamSpec`, the name of `P = ParamSpec('P')` was
mistakenly written as `'T'`.
(cherry picked from commit 68981578eceee763da4163e93cf653cc6b1b6d35)
Co-authored-by: david-why <david_why@outlook.com>
This makes a couple related changes to inspect.signature's behaviour
when parsing a signature from `__text_signature__`.
First, `inspect.signature` is documented as only raising ValueError or
TypeError. However, in some cases, we could raise RuntimeError. This PR
changes that, thereby fixing GH-83685.
(Note that the new ValueErrors in RewriteSymbolics are caught and then
reraised with a message)
Second, `inspect.signature` could randomly drop parameters that it
didn't understand (corresponding to `return None` in the `p` function).
This is the core issue in GH-85267. I think this is very surprising
behaviour and it seems better to fail outright.
Third, adding this new failure broke a couple tests. To fix them (and to
e.g. allow `inspect.signature(select.epoll.register)` as in GH-85267), I
add constant folding of a couple binary operations to RewriteSymbolics.
(There's some discussion of making signature expression evaluation
arbitrary powerful in GH-68155. I think that's out of scope. The
additional constant folding here is pretty straightforward, useful, and
not much of a slippery slope)
Fourth, while GH-85267 is incorrect about the cause of the issue, it turns
out if you had consecutive newlines in __text_signature__, you'd get
`tokenize.TokenError`.
Finally, the `if name is invalid:` code path was dead, since
`parse_name` never returned `invalid`..
(cherry picked from commit 79311cbfe718f17c89bab67d7f89da3931bfa2ac)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>