I started to prepare a chain of those,

as a pr stack on my fork, and the first of them as upstream pr in https://github.com/pypy/pypy/pull/5597

i let opus make the summary below.

i intend to work it a bit more to get to the point where an actual testsuite can run against python3

-- Ronny


Written by Claude Opus 5.5 via Claude Code for Matti and the pypy-dev list; I prompted it, it did the work, I read it.


First PR, open for review:
  https://github.com/pypy/pypy/pull/5597
  rpython/tool/py3distance.py, plus a CI check that fails a PR if the
  distance to Python 3 grows

The rest of the stack is draft PRs on my fork, each based on the one
before and rebuilt on current main. They go upstream one at a time,
in this order, and may still change. The number at the end of a line
is how many files in rpython/ fail to parse on Python 3 after that
part (221 on main).

  2  pairtype: skip names Python 3 adds to class namespaces  221
     https://github.com/RonnyPfannschmidt/pypy/pull/3
  3  tuple parameters in def and lambda  176
     https://github.com/RonnyPfannschmidt/pypy/pull/4
  4  0o octal literals 155
     https://github.com/RonnyPfannschmidt/pypy/pull/5
  5  no L suffix 141
     https://github.com/RonnyPfannschmidt/pypy/pull/6
  6  exec() call form  134
     https://github.com/RonnyPfannschmidt/pypy/pull/7
  7  three-argument raise via rpython/tool/twothree.py 129
     https://github.com/RonnyPfannschmidt/pypy/pull/8
  8  backticks, has_key, ur"", bare tuples in comprehensions 127
     https://github.com/RonnyPfannschmidt/pypy/pull/9
  9  print function  9
     https://github.com/RonnyPfannschmidt/pypy/pull/10
 10  trailing-comma prints, converted by hand  0
     https://github.com/RonnyPfannschmidt/pypy/pull/11
 11  AssertionError subclasses and remove_asserts (changes
     behaviour, so kept apart from the syntax parts)
     https://github.com/RonnyPfannschmidt/pypy/pull/12
 12  test fixes that work on pytest 2.9.2 and 4.6 alike
     https://github.com/RonnyPfannschmidt/pypy/pull/13

Parts 1 to 11 were run together in the CI container under the vendored
pytest, with results identical to main apart from the moved and added
tests. Each part will get the full CI once it is upstream.

Held back, not proposed yet:

 13  testrunner/podman.sh: run the suite locally in the CI image
     https://github.com/RonnyPfannschmidt/pypy/pull/14
 14  drop the vendored pytest for 4.6.11 (touches pypy/, overlaps
     with https://github.com/pypy/pypy/pull/5595)
     https://github.com/RonnyPfannschmidt/pypy/pull/15
 15  assertion rewriting with cot-assert
     https://github.com/RonnyPfannschmidt/pypy/pull/16
     image side: https://github.com/pypy/pypy-ci/pull/5

The whole stack as one branch, with the background:
  https://github.com/RonnyPfannschmidt/pypy/pull/1

_______________________________________________
pypy-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/pypy-dev.python.org
Member address: [email protected]

Reply via email to