| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-12-02 | [4.2.x] Fixed CVE-2025-64460 -- Corrected quadratic inner text accumulation ↵ | Shai Berger | |
| in XML serializer. 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 <jacobtylerwalls@gmail.com> Co-authored-by: Natalia <124304+nessita@users.noreply.github.com> Backport of 50efb718b31333051bc2dcb06911b8fa1358c98c from main. | |||
| 2023-08-19 | [4.2.x] Fixed #34779 -- Avoided unnecessary selection of non-nullable m2m ↵ | Juan Alvarez | |
| fields without natural keys during serialization. By using `select_related(None)` instead of `select_related()`, the unnecessary joins are completely avoided. Note that the current tests already covers the change, when the field is not `null=True`. Regression in f9936deed1ff13b20e18bd9ca2b0750b52706b6c. Backport of 517d3bb4dd17e9c51690c98d747b86a0ed8b2fbf from main | |||
| 2023-06-04 | [4.2.x] Fixed #34620 -- Fixed serialization crash on m2m fields without ↵ | Mariusz Felisiak | |
| natural keys when base querysets use select_related(). Regression in 19e0587ee596debf77540d6a08ccb6507e60b6a7. Thanks Martin Svoboda for the report. Backport of f9936deed1ff13b20e18bd9ca2b0750b52706b6c from main | |||
| 2023-02-01 | [4.2.x] Refs #33476 -- Applied Black's 2023 stable style. | David Smith | |
| Black 23.1.0 is released which, as the first release of the year, introduces the 2023 stable style. This incorporates most of last year's preview style. https://github.com/psf/black/releases/tag/23.1.0 Backport of 097e3a70c1481ee7b042b2edd91b2be86fb7b5b6 from main | |||
| 2022-09-05 | Fixed #33937 -- Optimized serialization of related m2m fields without ↵ | Mark Evans | |
| natural keys. | |||
| 2022-04-18 | Fixed various tests on MySQL with MyISAM storage engine. | Mariusz Felisiak | |
| 2022-02-22 | Removed redundant QuerySet.all() calls in docs and tests. | Nick Pope | |
| Most QuerySet methods are mapped onto the Manager and, in general, it isn't necessary to call .all() on the manager. | |||
| 2022-02-07 | Refs #33476 -- Refactored code to strictly match 88 characters line length. | Mariusz Felisiak | |
| 2022-02-07 | Refs #33476 -- Reformatted code with Black. | django-bot | |
| 2022-01-13 | Fixed #29708 -- Deprecated PickleSerializer. | Adam Johnson | |
| 2021-09-02 | Refs #33012 -- Moved PickleSerializer to django.core.serializers.base and ↵ | Daniyal Abbasi | |
| added tests. | |||
| 2021-02-05 | Fixed #32420 -- Fixed detecting primary key values in deserialization when ↵ | Mikolaj Rybinski | |
| PK is also a FK. | |||
| 2021-01-14 | Refs #31369 -- Removed models.NullBooleanField per deprecation timeline. | Mariusz Felisiak | |
| 2020-08-17 | Fixed #31888 -- Avoided module-level MySQL queries in tests. | Ahmad A. Hussein | |
| 2020-07-20 | Fixed #17653 -- Allowed using zero as AutoFields value on MySQL if ↵ | Mariusz Felisiak | |
| NO_AUTO_VALUE_ON_ZERO SQL mode is enabled. | |||
| 2020-06-17 | Refs #30190 -- Minor edits to JSONL serializer. | Mariusz Felisiak | |
| Follow up to e29637681be07606674cdccb47d1e53acb930f5b. | |||
| 2020-06-16 | Fixed #30190 -- Added JSONL serializer. | Ali Vakilzade | |
| 2020-05-25 | Fixed #29078 -- Made serializers respect prefetch_related() for m2m fields. | Claude Paroz | |
| 2020-05-15 | Refs #31395 -- Relied on setUpTestData() test data isolation in various tests. | Simon Charette | |
| 2020-05-04 | Changed `'%s' % value` pattern to `str(value)`. | Nick Pope | |
| 2020-04-28 | Fixed #29249 -- Made JSON and YAML serializers use Unicode by default. | Hasan Ramezani | |
| 2020-04-28 | Refs #29249 -- Added tests for serializing Unicode data with XML serializer. | Hasan Ramezani | |
| 2020-04-07 | Enforced uniqueness of natural keys used in tests. | Mariusz Felisiak | |
| 2020-02-07 | Used assertRaisesMessage() in various tests. | Hasan Ramezani | |
| 2019-12-30 | Fixed #31071 -- Disabled insert optimization for primary keys with defaults ↵ | Simon Charette | |
| when loading fixtures. Model.save_base() is called directly when loading fixtures and assumes existing rows will be updated. Branching of "raw" allows to maintain the optimization introduced in #29260 while supporting this edge case. Regression in 85458e94e38c20e57939947ee515a1a53689659f. Thanks Reupen Shah for the report. | |||
| 2019-12-13 | Fixed #26743 -- Fixed UnboundLocalError crash when deserializing m2m fields ↵ | Baptiste Mispelon | |
| and value isn't iterable. | |||
| 2019-11-19 | Fixed #30987 -- Added models.PositiveBigIntegerField. | Caio Ariede | |
| 2019-08-07 | Corrected several typos in string literals and test names. | Min ho Kim | |
| 2019-06-27 | Added test for serializing child model without inherited fields. | Nadège Michel | |
| 2019-06-27 | Fixed #28725 -- Prevented serializing inherited ManyToManyFields in child model. | Nadège Michel | |
| 2019-05-03 | Refs #11929 -- Fixed ordering of test YAML dumps. | Tobias Kunze | |
| Thanks Nick Pope for the review. | |||
| 2019-05-03 | Removed unused YamlSerializerTestCase.fwd_ref_str. | Mariusz Felisiak | |
| Unused since its introduction in febd5aeec604198b2e374a33552b0c365096fd45. | |||
| 2019-03-20 | Fixed serializers test crash if PyYAML isn't installed. | Tim Graham | |
| Follow up to a57c783dd4e6dc73847081221827a1902eede88b. | |||
| 2019-03-14 | Fixed serializers tests for PyYAML 5.1+. | Mariusz Felisiak | |
| 2018-12-27 | Followed style guide for model attribute ordering. | Matt Wiens | |
| 2018-11-27 | Fixed #28385 -- Fixed deserializing natural keys when primary key has a ↵ | dmytryi.striletskyi | |
| default value. Co-Authored-By: Hasan Ramezani <hasan.r67@gmail.com> | |||
| 2018-07-13 | Fixed #26291 -- Allowed loaddata to handle forward references in natural_key ↵ | Peter Inglesby | |
| fixtures. | |||
| 2018-03-20 | Fixed #29227 -- Allowed BooleanField to be null=True. | Tim Graham | |
| Thanks Lynn Cyrin for contributing to the patch, and Nick Pope for review. | |||
| 2018-02-12 | Fixed #24607 -- Serialized natural keys in multi-table inheritance models. | Denys Duchier | |
| Thanks João Paulo Melo de Sampaio for the test. | |||
| 2018-01-03 | Fixed #28984 -- Made assorted code simplifications. | Tim Graham | |
| 2017-12-06 | Fixed #28893 -- Removed unnecessary dict.items() calls. | Tim Graham | |
| 2017-11-30 | Fixed #28856 -- Fixed a regression in caching of a GenericForeignKey ↵ | Simon Charette | |
| pointing to a MTI model. Regression in b9f8635f58ad743995cad2081b3dc395e55761e5. | |||
| 2017-09-18 | Fixed #28610 -- Skipped test when serializer is not available | Claude Paroz | |
| Thanks Tim Graham for the review. | |||
| 2017-09-18 | Revert "Refs #21286 -- Enabled serializer tests with time pk model" | Claude Paroz | |
| This reverts commit 01c6a3e227b645e8dea97e9befecd23d1d3b8581. Unfortunately, the YAML serializer is not yet able to cope with time values. | |||
| 2017-09-17 | Refs #21286 -- Enabled serializer tests with time pk model | Claude Paroz | |
| 2017-09-06 | Refs #23919 -- Replaced usage of django.utils.functional.curry() with ↵ | Sergey Fedoseev | |
| functools.partial()/partialmethod(). | |||
| 2017-07-20 | Fixed #28370 -- Deprecated the context arg of Field.from_db_value() and ↵ | Tim Graham | |
| Expression.convert_value(). Unused since a0d166306fbdc41f49e6fadf4ec84b17eb147daa. | |||
| 2017-06-05 | Refs #21286 -- Enabled serializer tests with date/datetime pk model | Claude Paroz | |
| 2017-06-01 | Sorted imports per isort 4.2.9. | Tim Graham | |
| 2017-02-11 | Fixed #27742 -- Reverted "Fixed #24607 -- Serialized natural keys in ↵ | Tim Graham | |
| multi-table inheritance models." This reverts commit 74a575eb7296fb04e1fc2bd4e3f68dee3c66ee0a as it causes unexpected migrations and doesn't seem to be the best solution. | |||
