#36739: `manage.py check` unexpectedly accesses database when JSONField is used
-------------------------------------+-------------------------------------
Reporter: Storm Heg | Type: Bug
Status: new | Component: Core
| (System checks)
Version: dev | Severity: Normal
Keywords: | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
I suspect this is a regression in
https://github.com/django/django/commit/3aba1fced8254435b947467739721ec6b4fb865c,
the commit message does not suggest to me that this was intentional.
Issue: if you run `manage.py check` in a project that uses
`django.db.models.JSONField`, the `support_json_field` SQLite feature
detection is now being run
(https://github.com/django/django/blob/d506e4a52847ed4fb80754175d76b6b83ff90929/django/db/backends/sqlite3/features.py#L160)
which unexpectedly interacts with the database.
This surfaced in the test suite of a package `django-otp-webauthn`, where
it validates its own system checks behave as expected. The test cases in
question are not marked as requiring database access, which is why the
test against django's main branch started failing last night:
https://github.com/Stormbase/django-otp-
webauthn/actions/runs/19415998875/job/55581034014
Raising this here as a potential bug, feel free to close if not a bug
(though a mention in 6.1 upgrade considerations would be welcome in that
case)
--
Ticket URL: <https://code.djangoproject.com/ticket/36739>
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 [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/django-updates/0107019a91cbb796-3bdd7784-82e8-47ee-afb0-d27b8937bf01-000000%40eu-central-1.amazonses.com.