| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-12-02 | [6.0.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. | |||
| 2025-07-23 | Refs #36500 -- Rewrapped long docstrings and block comments via a script. | django-bot | |
| Rewrapped long docstrings and block comments to 79 characters + newline using script from https://github.com/medmunds/autofix-w505. | |||
| 2025-07-23 | Removed double spaces after periods and within phrases. | Sarah Boyce | |
| 2025-03-11 | Fixed #36177 -- Added a trailing newline to JSON serializer. (#19232) | Tom Carrick | |
| 2025-03-01 | Applied Black's 2025 stable style. | Mariusz Felisiak | |
| https://github.com/psf/black/releases/tag/25.1.0 | |||
| 2024-12-18 | Fixed #35996 -- Fixed database serialization crash when serializing a ↵ | Erica Pisani | |
| many-to-many field that had a prefetch. | |||
| 2024-12-05 | Refs #21286 -- Fixed serializers tests if Pillow isn't installed. | Mariusz Felisiak | |
| 2024-12-03 | Refs #21286 -- Enabled ImageField test cases in serializer data tests. | Adam Zapletal | |
| This aligns ImageField to be tested in the same way as FileField. The commented-out test also exists for FileField and relates to #10244. | |||
| 2024-12-02 | Improved assert_serializer test assertions in test.serializers. | Sarah Boyce | |
| 2024-12-02 | Used skipIf/UnlessDBFeature in test.serializers. | Sarah Boyce | |
| 2024-11-28 | Refs #21286 -- Fixed serializer test with primary key TextField. | Adam Zapletal | |
| 2024-11-12 | Refs #21286 -- Fixed YAML serialization of TimeField primary key. | Adam Zapletal | |
| Handling for PyYAML not being able to serialize `datetime.time` values is moved from `handle_field` to `_value_from_field` as only non-primary key, non-relation fields are passed into `handle_field`. | |||
| 2024-10-16 | Refs #35727 -- Updated response.content.decode calls to use the ↵ | SaJH | |
| HttpResponse.text property. Signed-off-by: SaJH <wogur981208@gmail.com> | |||
| 2024-09-19 | Refs #29522 -- Fixed serializers/fixtures test crash if PyYAML isn't installed. | Mariusz Felisiak | |
| 2024-09-17 | Fixed #29522 -- Refactored the Deserializer functions to classes. | Amir Karimi | |
| Co-authored-by: Emad Mokhtar <emad.mokhtar@veneficus.nl> | |||
| 2024-03-04 | Refs #21286 -- Removed invalid commented out models and tests from ↵ | Adam Zapletal | |
| serializer tests. FileField/ImageField cannot be primary keys, so serialization support for this case will not be implemented. XMLField was removed in d1290b5b43485c7018ba92981d34c1f96614924e. | |||
| 2024-01-26 | Applied Black's 2024 stable style. | Mariusz Felisiak | |
| https://github.com/psf/black/releases/tag/24.1.0 | |||
| 2023-08-22 | Removed unnecessary trailing commas in tests. | konsti | |
| 2023-08-19 | Fixed #34779 -- Avoided unnecessary selection of non-nullable m2m fields ↵ | Juan Alvarez | |
| 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. | |||
| 2023-06-04 | Fixed #34620 -- Fixed serialization crash on m2m fields without natural keys ↵ | Mariusz Felisiak | |
| when base querysets use select_related(). Regression in 19e0587ee596debf77540d6a08ccb6507e60b6a7. Thanks Martin Svoboda for the report. | |||
| 2023-02-01 | 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 | |||
| 2023-01-17 | Refs #29708 -- Removed PickleSerializer per deprecation timeline. | Mariusz Felisiak | |
| 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. | |||
