| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-03-19 | Fixed #36958 -- Reloaded logging config when logging settings are changed in ↵ | SnippyCodes | |
| tests. Thanks JaeHyuck Sa and Jake Howard for the reviews. | |||
| 2025-06-06 | Refs CVE-2025-48432 -- Made SuspiciousOperation logging use log_response() ↵ | Natalia | |
| for consistency. | |||
| 2025-06-06 | Refactored logging_tests to reuse assertions for log records. | Natalia | |
| 2025-06-04 | Fixed CVE-2025-48432 -- Escaped formatting arguments in `log_response()`. | Natalia | |
| Suitably crafted requests containing a CRLF sequence in the request path may have allowed log injection, potentially corrupting log files, obscuring other attacks, misleading log post-processing tools, or forging log entries. To mitigate this, all positional formatting arguments passed to the logger are now escaped using "unicode_escape" encoding. Thanks to Seokchan Yoon (https://ch4n3.kr/) for the report. Co-authored-by: Carlton Gibson <carlton@noumenal.es> Co-authored-by: Jake Howard <git@theorangeone.net> | |||
| 2025-05-22 | Added helpers in csrf_tests and logging_tests to assert logs from ↵ | Natalia | |
| `log_response()`. | |||
| 2025-05-22 | Refs #26688 -- Added tests for `log_response()` internal helper. | Natalia | |
| 2025-03-21 | Fixed #36138 -- Changed ADMINS and MANAGERS settings to lists of strings. | Mike Edmunds | |
| Previously, the ADMINS and MANAGERS settings were lists of (name, address) tuples (where the name had been unused). Deprecated use of tuples. Updated settings value sanity checks, and changed from ValueError to ImproperlyConfigured. | |||
| 2024-06-20 | Fixed #35537 -- Changed EmailMessage.attachments and ↵ | Jake Howard | |
| EmailMultiAlternatives.alternatives to use namedtuples. This makes it more descriptive to pull out the named fields. | |||
| 2024-04-12 | Fixed #35364 -- Stopped AdminEmailHandler rendering email unnecessarily. | Adam Johnson | |
| 2024-04-12 | Refs #35364 -- Tested AdminEmailHandler with empty ADMINS. | Adam Johnson | |
| 2023-12-31 | Used addCleanup() in tests where appropriate. | Mariusz Felisiak | |
| 2023-01-04 | Refs #34074 -- Used headers argument for RequestFactory and Client in docs ↵ | David Wobrock | |
| and tests. | |||
| 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-12 | Added exception to SuspiciousOperation logging. | Adam Johnson | |
| This allows better debugging and filtering of errors. | |||
| 2021-09-10 | Fixed #33096 -- Fixed <form> nesting in technical 500 template. | Jan Schär | |
| This also prevents sending <form> tags in emails. | |||
| 2021-06-04 | Refs #32355 -- Used addClassCleanup() in tests. | Mariusz Felisiak | |
| Inspired by Adam Johnson talk on DjangoCon Europe 2021. | |||
| 2020-05-08 | Fixed tests isolation in logging_tests. | François Freitag | |
| The SetupConfigureLogging test case does not restore the logging config after its execution. It leaves the logger django.request with an empty handlers array. This also removes the last use of LOGGING_CONFIG, introduced in 43503b093a35ca4707c16d865f10929960bfa0b8. | |||
| 2020-04-16 | Fixed #29329 -- Made datetime logging from runserver more consistent. | Hasan Ramezani | |
| Setting default_msec_format=None will make it the same, unfortunately it's not supported by Python, see https://bugs.python.org/issue40300. | |||
| 2019-10-29 | Used more specific unittest assertions in tests. | Nick Pope | |
| * assertIsNone()/assertIsNotNone() instead of comparing to None. * assertLess() for < comparisons. * assertIs() for 'is' expressions. * assertIsInstance() for isinstance() expressions. * rounding of assertAlmostEqual() for round() expressions. * assertIs(..., True/False) instead of comparing to True/False. * assertIs()/assertIsNot() for ==/!= comparisons. * assertNotEqual() for == comparisons. * assertTrue()/assertFalse() instead of comparing to True/False. | |||
| 2019-09-04 | Fixed #29714 -- Allowed using ExceptionReporter subclass with AdminEmailHandler. | Nasir Hussain | |
| 2019-04-24 | Removed unnecessary assignments in various code. | Jon Dufresne | |
| 2019-02-05 | Simplified temporary directory handling in AdminScriptTestCase. | Jon Dufresne | |
| Use tempfile.TemporaryDirectory() in AdminScriptTestCase.setUp() to create and destroy a temporary directory for each test. It removes the need for individual tests to delete files. For test classes that don't use the temporary directory, inherit from SimpleTestCase. | |||
| 2019-01-02 | Used 4 space hanging indent for dictionaries. | Tim Graham | |
| Thanks Mariusz Felisiak for auditing. | |||
| 2018-11-27 | Made reused RequestFactory instances class attributes. | Simon Charette | |
| 2018-10-16 | Refs #23919 -- Removed a stray object-inheritance. | Mads Jensen | |
| Follow up to 081e78716085ff4af08604af5d084c8fd27c0730. | |||
| 2018-05-04 | Fixed #26688 -- Fixed HTTP request logging inconsistencies. | Samir Shah | |
| * Added logging of 500 responses for instantiated responses. * Added logging of all 4xx and 5xx responses. | |||
| 2018-03-16 | Fixed hanging indentation in various code. | Mariusz Felisiak | |
| 2018-03-14 | Moved SchemaLoggingTest to tests/schema. | Tim Graham | |
| 2017-02-09 | Refs #23919 -- Removed default 'utf-8' argument for str.encode()/decode(). | Tim Graham | |
| 2017-01-25 | Refs #23919 -- Replaced super(ClassName, self) with super(). | chillaranand | |
| 2017-01-19 | Refs #23919 -- Stopped inheriting from object to define new style classes. | Simon Charette | |
| 2017-01-18 | Refs #23919 -- Removed most of remaining six usage | Claude Paroz | |
| Thanks Tim Graham for the review. | |||
| 2017-01-18 | Refs #23919 -- Removed encoding preambles and future imports | Claude Paroz | |
| 2016-12-07 | Fixed #27579 -- Added aliases for Python 3's assertion names in SimpleTestCase. | Tim Graham | |
| 2016-11-14 | Fixed E305 flake8 warnings. | Ramin Farajpour Cami | |
| 2016-11-10 | Refs #27392 -- Removed "Tests that", "Ensures that", etc. from test docstrings. | za | |
| 2016-11-10 | Removed an obsolete (as of refs #25999) logging test from refs #18985. | Tim Graham | |
| 2016-09-27 | Fixed #27271 -- Fixed a crash in runserver logging. | Sergey Fursov | |
| Allowed ServerFormatter to handle simple string messages or messages with formatting arguments. The formatter will set the server_time variable on the log record if it's required by the format string but wasn't passed in extra parameters. | |||
| 2016-06-16 | Fixed #26747 -- Used more specific assertions in the Django test suite. | Jon Dufresne | |
| 2016-05-17 | Fixed #26601 -- Improved middleware per DEP 0005. | Florian Apolloner | |
| Thanks Tim Graham for polishing the patch, updating the tests, and writing documentation. Thanks Carl Meyer for shepherding the DEP. | |||
| 2016-05-10 | Stopped truncating AdminEmailHandler message subjects | Claude Paroz | |
| Refs #26572, #17281. The RFC doesn't limit total length, just the line length which is already taken care of by Python itself. Thanks Tim Graham for the review. | |||
| 2016-04-20 | Fixed #26504 -- Avoided logging "Not Found" warnings if a middleware handles ↵ | Carl Worth | |
| the 404. For example, this avoids a warning in the case of a request that's redirected to a language-prefixed URL by LocaleMiddleware. | |||
| 2016-04-20 | Added tests for logging of Http404 warnings. | Carl Worth | |
| 2016-04-20 | Used @override_settings decorator rather than "with" to reduce indentation. | Carl Worth | |
| 2016-04-08 | Fixed E128 flake8 warnings in tests/. | Tim Graham | |
| 2016-03-15 | Fixed #26157 #25321 -- Added sql/params to extra context of schema logger | Markus Holtermann | |
| Thanks Akshesh Doshi for the initial patch and Tim Graham for the review | |||
| 2016-01-14 | Fixed #25999 -- Removed promotion of RemovedInNextVersionWarning to loud by ↵ | Tim Graham | |
| default. | |||
| 2015-09-23 | Refs #24526 -- Made the django logger handle INFO messages. | Tim Graham | |
| Without an explicit 'level', only messages at WARNING or higher are handled. This makes the config consistent with the docs which say, "The django catch-all logger sends all messages at the INFO level or higher to the console." | |||
| 2015-09-04 | Fixed #25099 -- Fixed crash in AdminEmailHandler on DisallowedHost. | Vlastimil Zíma | |
