<feed xmlns='http://www.w3.org/2005/Atom'>
<title>django.git/tests/serializers, branch main</title>
<subtitle>django
</subtitle>
<id>http://cgit.adnoto.dev/django.git/atom?h=main</id>
<link rel='self' href='http://cgit.adnoto.dev/django.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/'/>
<updated>2026-04-06T17:04:33Z</updated>
<entry>
<title>Fixed #37023 -- Made XML serializer put each ManyToManyField object on its own line.</title>
<updated>2026-04-06T17:04:33Z</updated>
<author>
<name>Tim Graham</name>
<email>timograham@gmail.com</email>
</author>
<published>2026-04-04T22:02:17Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=33bfc66add643f49d466c5a646989ad91677753d'/>
<id>urn:sha1:33bfc66add643f49d466c5a646989ad91677753d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed #36750 -- Made ordering of M2M objects deterministic in serializers.</title>
<updated>2026-02-26T12:46:35Z</updated>
<author>
<name>VIZZARD-X</name>
<email>vigneshanandmay13@gmail.com</email>
</author>
<published>2025-12-27T08:24:14Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=e6108b7388775f4996a5906e0525fbdd40d2df51'/>
<id>urn:sha1:e6108b7388775f4996a5906e0525fbdd40d2df51</id>
<content type='text'>
Co-authored-by: Simon Charette &lt;charette.s@gmail.com&gt;
Co-authored-by: Jacob Walls &lt;jacobtylerwalls@gmail.com&gt;
</content>
</entry>
<entry>
<title>Modified tests to format PKs with %s rather than %d.</title>
<updated>2026-02-10T21:04:24Z</updated>
<author>
<name>Tim Graham</name>
<email>timograham@gmail.com</email>
</author>
<published>2026-02-06T16:06:17Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=d007fcf7291cc3c24d4545e23c759bde22b6a8a6'/>
<id>urn:sha1:d007fcf7291cc3c24d4545e23c759bde22b6a8a6</id>
<content type='text'>
It's how Django formats values internally and makes tests compatible
with databases that use non-integer primary keys.
</content>
</entry>
<entry>
<title>Applied Black's 2026 stable style.</title>
<updated>2026-01-18T20:26:56Z</updated>
<author>
<name>Mariusz Felisiak</name>
<email>felisiak.mariusz@gmail.com</email>
</author>
<published>2026-01-18T20:26:56Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=6cff02078799b7c683a0d39630d49ab4fe532e7c'/>
<id>urn:sha1:6cff02078799b7c683a0d39630d49ab4fe532e7c</id>
<content type='text'>
https://github.com/psf/black/releases/tag/26.1.0</content>
</entry>
<entry>
<title>Refs #36769 -- Raised SuspiciousOperation for unexpected nested tags in XML Deserializer.</title>
<updated>2026-01-12T21:38:32Z</updated>
<author>
<name>Jacob Walls</name>
<email>jacobtylerwalls@gmail.com</email>
</author>
<published>2026-01-07T21:23:48Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=73c5e94521c5b97e27cd2fe2d5b5c2e65f402755'/>
<id>urn:sha1:73c5e94521c5b97e27cd2fe2d5b5c2e65f402755</id>
<content type='text'>
Thanks Shai Berger and Natalia Bidart for reviews.
</content>
</entry>
<entry>
<title>Fixed #36786 -- Fixed XML serialization of None values in natural keys.</title>
<updated>2025-12-22T19:21:01Z</updated>
<author>
<name>Youngkwang Yang</name>
<email>me@youngkwang.dev</email>
</author>
<published>2025-12-18T04:49:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=95394443bff2cd6c5cb47c752422fe1f391bb43d'/>
<id>urn:sha1:95394443bff2cd6c5cb47c752422fe1f391bb43d</id>
<content type='text'>
None values in natural keys were incorrectly serialized as the string
"None", causing deserialization to fail for fields like UUIDField.
</content>
</entry>
<entry>
<title>Fixed #27380 -- Added "raw" argument to m2m_changed signals.</title>
<updated>2025-12-17T17:37:18Z</updated>
<author>
<name>Mariusz Felisiak</name>
<email>felisiak.mariusz@gmail.com</email>
</author>
<published>2025-11-07T09:17:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=4702b36120ea4c736d3f6b5595496f96e0021e46'/>
<id>urn:sha1:4702b36120ea4c736d3f6b5595496f96e0021e46</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed #35729 -- Enabled natural key serialization opt-out for subclasses.</title>
<updated>2025-12-03T20:04:52Z</updated>
<author>
<name>rimi0108</name>
<email>hyerimc858@gmail.com</email>
</author>
<published>2025-10-04T04:52:59Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=93540b34d4ef46f68df2c8bfe90447d0f649a852'/>
<id>urn:sha1:93540b34d4ef46f68df2c8bfe90447d0f649a852</id>
<content type='text'>
Refactored serialization logic to allow models inheriting a natural_key()
method (e.g. AbstractBaseUser) to explicitly opt out of natural key
serialization by returning an empty tuple from the method.

Thanks Jonas Dittrich for the report.

Co-authored-by: Jacob Walls &lt;jacobtylerwalls@gmail.com&gt;
</content>
</entry>
<entry>
<title>Fixed CVE-2025-64460 -- Corrected quadratic inner text accumulation in XML serializer.</title>
<updated>2025-12-02T12:21:07Z</updated>
<author>
<name>Shai Berger</name>
<email>shai@platonix.com</email>
</author>
<published>2025-10-11T18:42:56Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=50efb718b31333051bc2dcb06911b8fa1358c98c'/>
<id>urn:sha1:50efb718b31333051bc2dcb06911b8fa1358c98c</id>
<content type='text'>
Previously, `getInnerText()` recursively used `list.extend()` on strings,
which added each character from child nodes as a separate list element.
On deeply nested XML content, this caused the overall deserialization
work to grow quadratically with input size, potentially allowing
disproportionate CPU consumption for crafted XML.

The fix separates collection of inner texts from joining them, so that
each subtree is joined only once, reducing the complexity to linear in
the size of the input. These changes also include a mitigation for a
xml.dom.minidom performance issue.

Thanks Seokchan Yoon (https://ch4n3.kr/) for report.

Co-authored-by: Jacob Walls &lt;jacobtylerwalls@gmail.com&gt;
Co-authored-by: Natalia &lt;124304+nessita@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>Refs #36500 -- Rewrapped long docstrings and block comments via a script.</title>
<updated>2025-07-23T23:17:55Z</updated>
<author>
<name>django-bot</name>
<email>ops@djangoproject.com</email>
</author>
<published>2025-07-23T03:41:41Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=69a93a88edb56ba47f624dac7a21aacc47ea474f'/>
<id>urn:sha1:69a93a88edb56ba47f624dac7a21aacc47ea474f</id>
<content type='text'>
Rewrapped long docstrings and block comments to 79 characters + newline
using script from https://github.com/medmunds/autofix-w505.
</content>
</entry>
</feed>
