File: whatsnew-pypy2-6.0.0.rst

package info (click to toggle)
pypy3 7.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 111,848 kB
  • sloc: python: 1,291,746; ansic: 74,281; asm: 5,187; cpp: 3,017; sh: 2,533; makefile: 544; xml: 243; lisp: 45; csh: 21; awk: 4
file content (132 lines) | stat: -rw-r--r-- 3,755 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
===========================
What's new in PyPy2.7 5.10+
===========================

.. this is a revision shortly after release-pypy2.7-v5.10.0
.. startrev: 6b024edd9d12

.. branch: cpyext-avoid-roundtrip

Big refactoring of some cpyext code, which avoids a lot of nonsense when
calling C from Python and vice-versa: the result is a big speedup in
function/method calls, up to 6 times faster.

.. branch: cpyext-datetime2

Support ``tzinfo`` field on C-API datetime objects, fixes latest pandas HEAD


.. branch: mapdict-size-limit

Fix a corner case of mapdict: When an instance is used like a dict (using
``setattr`` and ``getattr``, or ``.__dict__``) and a lot of attributes are
added, then the performance using mapdict is linear in the number of
attributes. This is now fixed (by switching to a regular dict after 80
attributes).


.. branch: cpyext-faster-arg-passing

When using cpyext, improve the speed of passing certain objects from PyPy to C
code, most notably None, True, False, types, all instances of C-defined types.
Before, a dict lookup was needed every time such an object crossed over, now it
is just a field read.


.. branch: 2634_datetime_timedelta_performance

Improve datetime + timedelta performance.

.. branch: memory-accounting

Improve way to describe memory

.. branch: msvc14

Allow compilaiton with Visual Studio 2017 compiler suite on windows

.. branch: winapi

Update _winapi and internal _winbase_cffi (via _winbase_build) for python 3 

.. branch: refactor-slots

Refactor cpyext slots.


.. branch: call-loopinvariant-into-bridges

Speed up branchy code that does a lot of function inlining by saving one call
to read the TLS in most bridges.

.. branch: rpython-sprint

Refactor in rpython signatures

.. branch: cpyext-tls-operror2

Store error state thread-locally in executioncontext, fixes issue #2764

.. branch: cpyext-fast-typecheck

Optimize `Py*_Check` for `Bool`, `Float`, `Set`. Also refactor and simplify
`W_PyCWrapperObject` which is used to call slots from the C-API, greatly
improving microbenchmarks in https://github.com/antocuni/cpyext-benchmarks


.. branch: fix-sre-problems

Fix two (unrelated) JIT bugs manifesting in the re module:

- green fields are broken and were thus disabled, plus their usage removed from
  the _sre implementation

- in rare "trace is too long" situations, the JIT could break behaviour
  arbitrarily.

.. branch: jit-hooks-can-be-disabled

Be more efficient about JIT hooks. Make it possible for the frontend to declare
that jit hooks are currently not enabled at all. in that case, the list of ops
does not have to be created in the case of the on_abort hook (which is
expensive).


.. branch: pyparser-improvements

Improve speed of Python parser, improve ParseError messages slightly.

.. branch: ioctl-arg-size

Work around possible bugs in upstream ioctl users, like CPython allocate at
least 1024 bytes for the arg in calls to ``ioctl(fd, request, arg)``. Fixes
issue #2776

.. branch: cpyext-subclass-setattr

Fix for python-level classes that inherit from C-API types, previously the
`w_obj` was not necessarily preserved throughout the lifetime of the `pyobj`
which led to cases where instance attributes were lost. Fixes issue #2793


.. branch: pyparser-improvements-2

Improve line offsets that are reported by SyntaxError. Improve error messages
for a few situations, including mismatched parenthesis.

.. branch: issue2752

Fix a rare GC bug that was introduced more than one year ago, but was
not diagnosed before issue #2752.

.. branch: gc-hooks

Introduce GC hooks, as documented in doc/gc_info.rst

.. branch: gc-hook-better-timestamp

Improve GC hooks

.. branch: cppyy-packaging

Update backend to 0.6.0 and support exceptions through wrappers