What’s new in PyPy3.7 7.3.6¶
Merge latest hpy
Produce better error messages for IndentationErrors (showing statement and line that opened the block that is missing), AttributeErrors and NameErrors (showing suggestions which name could have been meant instead in case of typos). This follows the upcoming CPython 3.10 features.
Instantiate the distutils.command.install
schema for the python
implementation (issue 3436)
Avoid overflow in struct.pack_into
error message (BPO 30245)
Reduce memory allocations at runtime caused by interpreter-internal identifiers.
Speep up cached imports by re-implementing (a subset of) BPO-22557. This brings it very close to PyPy2 standards.
Make creation and destruction of many files cheaper: don’t call .__del__
of
streams that had their .close()
method called (and aren’t user defined
classes).
Add a sys.implementation._multiarch
field like CPython on linux, darwin via
__pypy__.os._get_multiarch()
Add a lib_pypy/_sysconfigdata__*.py
file like CPython on linux, darwin
during packaging via sysconfig._generate_posix_vars()
(issue 3483).
Update HPy backend to 0.0.2
Implement missing PyDateTimeAPI functions related to timezones (issue 3320)
Use libffi v3.3 like CPython instead of the very old libffi_msvc
on windows
When creating a PyUnicodeObject, use the compact form to store the data directly on the object and not via an additional buffer. This is used in pythran via _PyUnicode_COMPACT_DATA even though it is a “private” interface.
Use the cpyext error indicator to implement HPy exceptions