Carl Friedrich Bolz-Tereick pushed to branch branch/default at PyPy / pypy


Commits:
b5f49371 by Carl Friedrich Bolz-Tereick at 2022-05-25T11:16:39+02:00
backport b0441aa4fa0a to default: hide structseqfield.__get__

- - - - -
b71a9195 by Carl Friedrich Bolz-Tereick at 2022-05-25T11:31:15+02:00
add at least a few more structseq tests

- - - - -
bcd560f9 by Carl Friedrich Bolz-Tereick at 2022-05-25T11:37:41+02:00
some safety checking for defaults (but the feature is maybe unused in pypy?)

- - - - -
f9f67a2a by Carl Friedrich Bolz-Tereick at 2022-05-25T11:40:17+02:00
dont make an extra copy of the dict

- - - - -
c0c83fdd by Carl Friedrich Bolz-Tereick at 2022-05-25T18:11:17+02:00
compatibility, but also more efficient in _structseq:
- ignore any extra keys in the dict
- stop changing the .__dict__ away from a MapDict!

- - - - -
93c943c1 by Carl Friedrich Bolz-Tereick at 2022-05-25T18:13:28+02:00
add a test that a structseq uses a mapdict

- - - - -
caf7e302 by Carl Friedrich Bolz-Tereick at 2022-05-25T18:32:18+02:00
very carefully don't mutate instances of structseqfield

this way, immutability tracking of instance fields lets reads from the
instances be folded away, because the instances are in a class, so we have
constant references to them.

- - - - -
a7c83b43 by Carl Friedrich Bolz-Tereick at 2022-05-25T18:42:36+02:00
show immutability in repr of maps (visible via __pypy__.strategy(obj))

- - - - -
52ab5874 by Carl Friedrich Bolz-Tereick at 2022-05-25T22:39:31+02:00
make __name__ immutable too

- - - - -
18bdce13 by Carl Friedrich Bolz-Tereick at 2022-05-26T10:10:07+02:00
speed up posix.stat calls a lot

don't go via the messy applevel structdef_new, instead just construct the
object directly. Allows to keep it virtual and speed up something like islink a
lot, that just wants one field.

- - - - -


6 changed files:

- + extra_tests/test_structseq.py
- lib_pypy/_structseq.py
- pypy/module/posix/app_posix.py
- pypy/module/posix/interp_posix.py
- pypy/objspace/std/mapdict.py
- pypy/objspace/std/test/test_mapdict.py


View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/950d0636b8faa2f5b0b088d7712acfeef9968bbe...18bdce13656a8ac062c70ebb362f71b5217559dd

-- 
View it on Heptapod: 
https://foss.heptapod.net/pypy/pypy/-/compare/950d0636b8faa2f5b0b088d7712acfeef9968bbe...18bdce13656a8ac062c70ebb362f71b5217559dd
You're receiving this email because of your account on foss.heptapod.net.


_______________________________________________
pypy-commit mailing list -- pypy-commit@python.org
To unsubscribe send an email to pypy-commit-le...@python.org
https://mail.python.org/mailman3/lists/pypy-commit.python.org/
Member address: arch...@mail-archive.com

Reply via email to