[Django] #37405: Using sort_keys kwarg no longer possible with YAML serializer

0 views
Skip to first unread message

Django

unread,
Oct 6, 2026, 5:01:33 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob | Owner: Jacob Walls
Walls |
Type: Bug | Status: assigned
Component: Core | Version: 6.1
(Serialization) |
Severity: Release | Keywords:
blocker |
Triage Stage: | Has patch: 0
Unreviewed |
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 1
UI/UX: 0 |
-------------------------------------+-------------------------------------
The YAML serializer takes a `sort_keys` option, but since we neglected to
use `setdefault` when "defaulting" this argument in
7142667340f78403cbbcaa8f33703c494282b7b7, any existing uses could raise
`TypeError`:

Test case for `YamlSerializerTestCase`:
{{{#!py
def test_explicit_sort_keys(self):
serial_str = serializers.serialize(
"yaml", Author.objects.all(), sort_keys=False
)
self.assertTrue(self._validate_output(serial_str))
}}}
{{{#!py
File "/Users/jwalls/django/tests/serializers/test_yaml.py", line 159, in
test_explicit_sort_keys
serial_str = serializers.serialize("yaml", Author.objects.all(),
sort_keys=False)
^^^^^^^^^^^^^^^
File "/Users/jwalls/django/django/core/serializers/__init__.py", line
134, in serialize
s.serialize(queryset, **options)
^^^^^^^^^^^^^^^^^
File "/Users/jwalls/django/django/core/serializers/base.py", line 149,
in serialize
self.end_serialization()
^^^^^^^^^^^^^^^
File "/Users/jwalls/django/django/core/serializers/pyyaml.py", line 49,
in end_serialization
yaml.dump(
TypeError: yaml.dump() got multiple values for keyword argument
'sort_keys'
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/37405>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Oct 6, 2026, 5:08:03 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Core | Version: 6.1
(Serialization) |
Severity: Release blocker | Resolution:
Keywords: | Triage Stage:
| Unreviewed
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls):

* has_patch: 0 => 1

Comment:

[https://github.com/django/django/pull/22096 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/37405#comment:1>

Django

unread,
Oct 6, 2026, 5:28:05 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Core | Version: 6.1
(Serialization) |
Severity: Release blocker | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

* stage: Unreviewed => Accepted

--
Ticket URL: <https://code.djangoproject.com/ticket/37405#comment:2>

Django

unread,
Oct 6, 2026, 6:21:58 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Core | Version: 6.1
(Serialization) |
Severity: Release blocker | Resolution:
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

* stage: Accepted => Ready for checkin

--
Ticket URL: <https://code.djangoproject.com/ticket/37405#comment:3>

Django

unread,
Oct 6, 2026, 8:59:11 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Core | Version: 6.1
(Serialization) |
Severity: Release blocker | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls <jacobtylerwalls@…>):

* resolution: => fixed
* status: assigned => closed

Comment:

In [changeset:"a269574f1bcf4716502b9ba8c3492abf15dc93eb" a269574f]:
{{{#!CommitTicketReference repository=""
revision="a269574f1bcf4716502b9ba8c3492abf15dc93eb"
Fixed #37405 -- Fixed crash if sort_keys option is used with YAML
serializer.

Regression in 7142667340f78403cbbcaa8f33703c494282b7b7.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/37405#comment:4>

Django

unread,
Oct 6, 2026, 8:59:59 PM (5 days ago) Oct 6
to django-...@googlegroups.com
#37405: Using sort_keys kwarg no longer possible with YAML serializer
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Core | Version: 6.1
(Serialization) |
Severity: Release blocker | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"bc1f112b2de5256e0cb8211fb2330ab6efaf9344" bc1f112b]:
{{{#!CommitTicketReference repository=""
revision="bc1f112b2de5256e0cb8211fb2330ab6efaf9344"
[6.1.x] Fixed #37405 -- Fixed crash if sort_keys option is used with YAML
serializer.

Regression in 7142667340f78403cbbcaa8f33703c494282b7b7.

Backport of a269574f1bcf4716502b9ba8c3492abf15dc93eb from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/37405#comment:5>
Reply all
Reply to author
Forward
0 new messages