| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
library numeric types (GH-6121)" (GH-22584)
This reverts commit 58a7da9e125422323f79c4ee95ac5549989d8162.
|
|
|
|
|
| |
This special marker annotation is intended to help in distinguishing
proper PEP 484-compliant type aliases from regular top-level variable
assignments.
|
|
|
| |
The `for` statement doesn't use a condition and this function, the `while` statement does.
|
|
|
|
|
| |
The hard part was making all the tests pass; there are some subtle issues here, because apparently the future import wasn't tested very thoroughly in previous Python versions.
For example, `inspect.signature()` returned type objects normally (except for forward references), but strings with the future import. We changed it to try and return type objects by calling `typing.get_type_hints()`, but fall back on returning strings if that function fails (which it may do if there are future references in the annotations that require passing in a specific namespace to resolve).
|
|
|
|
| |
This function recomputes `cls.__abstractmethods__`.
Also update `@dataclass` to use it.
|
|
|
|
|
|
|
|
|
|
|
| |
UnicodeNames tests (GH-22575)
Similarly to GH-22566, those tests called eval() on content received via
HTTP in test_named_sequences_full. This likely isn't exploitable because
unicodedata.lookup(seqname) is called before self.checkletter(seqname,
None) - thus any string which isn't a valid unicode character name
wouldn't ever reach the checkletter method.
Still, it's probably better to be safe than sorry.
|
|
|
|
| |
codec tests (GH-22566)
|
| |
|
| |
|
|
|
|
| |
is called (#22505)
|
|
|
|
| |
Call urllib.request.urlcleanup() to reset the global
urllib.request._opener.
|
|
|
| |
Remove mention of space in "remove multiple items from list".
|
| |
|
|
|
| |
https://sqlite.org/releaselog/3_33_0.html
|
| |
|
|
|
|
| |
modifying an XML tree while iterating over it. (GH-22464)
|
|
|
|
|
|
|
|
|
|
|
| |
Enable recursion checks which were disabled when get __bases__ of
non-type objects in issubclass() and isinstance() and when intern
strings. It fixes a stack overflow when getting __bases__ leads
to infinite recursion.
Originally recursion checks was disabled for PyDict_GetItem() which
silences all errors including the one raised in case of detected
recursion and can return incorrect result. But now the code uses
PyDict_GetItemWithError() and PyDict_SetDefault() instead.
|
|
|
|
|
| |
Multiple typo fixes in code comments
Automerge-Triggered-By: @Mariatta
|
| |
|
| |
|
|
|
|
| |
(GH-22526)
|
|
|
| |
Also document that eval() does this (the same way).
|
|
|
|
|
| |
This changes a few occurrences left behind by #22340.
Automerge-Triggered-By: @gvanrossum
|
|
|
|
| |
symtable module (GH-22391)
|
| |
|
|
|
|
|
| |
Missed this occurrence before, sorry. Also changed "the PEP" to "PEP".
Automerge-Triggered-By: @gvanrossum
|
|
|
| |
bpo-40564: Avoid copying state from extant ZipFile.
|
|
|
| |
Co-authored-by: Skip Montanaro
|
|
|
|
| |
(GH-22418)
|
| |
|
|
|
|
| |
default namespace was defined. (GH-22474)
|
|
|
| |
Automerge-Triggered-By: @gvanrossum
|
| |
|
|
|
| |
* Correct at 2 places in email module
|
| |
|
|
|
|
| |
The PyUnicode_InternImmortal() function is now deprecated and will be
removed in Python 3.12: use PyUnicode_InternInPlace() instead.
|
| |
|
|
|
| |
Numeric(al) Python to NumPy. It seems the old name hasn't been used for some time.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
numeric types (GH-6121)
* bpo-26680: Adds support for int.is_integer() for compatibility with float.is_integer().
The int.is_integer() method always returns True.
* bpo-26680: Adds a test to ensure that False.is_integer() and True.is_integer() are always True.
* bpo-26680: Adds Real.is_integer() with a trivial implementation using conversion to int.
This default implementation is intended to reduce the workload for subclass
implementers. It is not robust in the presence of infinities or NaNs and
may have suboptimal performance for other types.
* bpo-26680: Adds Rational.is_integer which returns True if the denominator is one.
This implementation assumes the Rational is represented in it's
lowest form, as required by the class docstring.
* bpo-26680: Adds Integral.is_integer which always returns True.
* bpo-26680: Adds tests for Fraction.is_integer called as an instance method.
The tests for the Rational abstract base class use an unbound
method to sidestep the inability to directly instantiate Rational.
These tests check that everything works correct as an instance method.
* bpo-26680: Updates documentation for Real.is_integer and built-ins int and float.
The call x.is_integer() is now listed in the table of operations
which apply to all numeric types except complex, with a reference
to the full documentation for Real.is_integer(). Mention of
is_integer() has been removed from the section 'Additional Methods
on Float'.
The documentation for Real.is_integer() describes its purpose, and
mentions that it should be overridden for performance reasons, or
to handle special values like NaN.
* bpo-26680: Adds Decimal.is_integer to the Python and C implementations.
The C implementation of Decimal already implements and uses
mpd_isinteger internally, we just expose the existing function to
Python.
The Python implementation uses internal conversion to integer
using to_integral_value().
In both cases, the corresponding context methods are also
implemented.
Tests and documentation are included.
* bpo-26680: Updates the ACKS file.
* bpo-26680: NEWS entries for int, the numeric ABCs and Decimal.
Co-authored-by: Robert Smallshire <rob@sixty-north.com>
|
|
|
|
| |
(GH-22478)
|
| |
|
| |
|
|
|
| |
From `In particularly,` to `In particular,`
|
|
|
| |
Remove PREDICTion of POP_BLOCK from FOR_ITER.
|
|
|
|
|
| |
In the "Sequences (Tuples/Lists)" section, add
"How do you remove multiple items from a list".
|
|
|
|
| |
(GH-22441)
|
| |
|
| |
|
|
|
|
| |
Add codecs.unregister() and PyCodec_Unregister() functions
to unregister a codec search function.
|