#34986: Fix up support for PyPy 3.10 -----------------------------------------+--------------------------- Reporter: Nick Pope | Owner: Nick Pope Type: Bug | Status: assigned Component: Uncategorized | Version: dev Severity: Normal | Keywords: pypy Triage Stage: Unreviewed | Has patch: 0 Needs documentation: 0 | Needs tests: 0 Patch needs improvement: 0 | Easy pickings: 0 UI/UX: 0 | -----------------------------------------+--------------------------- Python 3.10 support was released in PyPy v7.3.12 in June 2023.
It was highlighted [https://github.com/django/django/pull/17496 here] that a number of tests are failing, and [https://code.djangoproject.com/ticket/34983#comment:2 here] and [https://code.djangoproject.com/ticket/34983#comment:4 here] that the changes in #31262 have introduced some large "regressions". It turns out that there is a [https://foss.heptapod.net/pypy/pypy/-/issues/4036 bug] in PyPy related to abstract base classes being used for `isinstance()` checks with structural pattern matching. This can be resolved by either waiting for a fix in PyPy or implementing a workaround by removing the pattern matching approach. Aside from that, however, there are also a number of other failures and crashes that still need to be addressed. [https://pypy.org/ PyPy] claims to be highly compatible with CPython and that it supports Django. Django [https://docs.djangoproject.com/en/4.2/topics/performance/#id1 claims] to be compatible with PyPy. We need to determine whether it is possible to fix these issues or whether we need to remove this claim. One of the issues is that currently there is no CI to ensure that PyPy support remains in a working state. An initial [https://github.com/django/django/pull/17499 PR] has been created to run a daily scheduled test run on SQLite only. Later it may make sense to enable triggering testing via assigning a label to a PR. -- Ticket URL: <https://code.djangoproject.com/ticket/34986> Django <https://code.djangoproject.com/> The Web framework for perfectionists with deadlines. -- You received this message because you are subscribed to the Google Groups "Django updates" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-updates+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/django-updates/0107018bf32ebd7a-c6a364ed-2f33-4add-9c89-133b2869db4a-000000%40eu-central-1.amazonses.com.