| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-09-14 | Fixed #33012 -- Added Redis cache backend. | Daniyal | |
| Thanks Carlton Gibson, Chris Jerdonek, David Smith, Keryn Knight, Mariusz Felisiak, and Nick Pope for reviews and mentoring this Google Summer of Code 2021 project. | |||
| 2021-09-07 | Fixed #32076 -- Added async methods to BaseCache. | Andrew-Chen-Wang | |
| This also makes DummyCache async-compatible. | |||
| 2021-09-07 | Refs #33060 -- Ensured cache backends validate keys. | Nick Pope | |
| The validate_key() function should be called after make_key() to ensure that the validation is performed on the key that will actually be stored in the cache. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> | |||
| 2021-09-07 | Refs #33060 -- Added memcached test for make_key() making keys invalid. | Mariusz Felisiak | |
| 2021-09-02 | Refs #31907 -- Fixed incorrect argument for delete_many() in cache tests. | Nick Pope | |
| 2021-08-31 | Fixed #33061 -- Fixed handling nonexistent keys with negative deltas in ↵ | Sondre Lillebø Gundersen | |
| incr()/decr() in memcached backends. Thanks Chris Jerdonek for the review. | |||
| 2021-08-31 | Refs #33061 -- Added DummyCache.incr()/decr() tests for nonexistent keys ↵ | Sondre Lillebø Gundersen | |
| with negative deltas. | |||
| 2021-05-26 | Fixed #32772 -- Made database cache count size once per set. | Michael Lissner | |
| 2021-05-18 | Fixed #32747 -- Prevented initialization of unused caches. | Mariusz Felisiak | |
| Thanks Alexander Ebral for the report. Regression in 98e05ccde440cc9b768952cc10bc8285f4924e1f. | |||
| 2021-05-05 | Fixed #32705 -- Prevented database cache backend from checking .rowcount on ↵ | ecogels | |
| closed cursor. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> | |||
| 2020-12-17 | Fixed #29867 -- Added support for storing None value in caches. | Nick Pope | |
| Many of the cache operations make use of the default argument to the .get() operation to determine whether the key was found in the cache. The default value of the default argument is None, so this results in these operations assuming that None is not stored in the cache when it actually is. Adding a sentinel object solves this issue. Unfortunately the unmaintained python-memcached library does not support a default argument to .get(), so the previous behavior is preserved for the deprecated MemcachedCache backend. | |||
| 2020-12-09 | Fixed #32193 -- Deprecated MemcachedCache. | Mariusz Felisiak | |
| 2020-12-08 | Fixed #32233 -- Cleaned-up duplicate connection functionality. | Florian Apolloner | |
| 2020-12-08 | Refs #32233 -- Added tests for nonexistent cache backend. | Mariusz Felisiak | |
| 2020-12-08 | Refs #32233 -- Added tests for nonexistent cache and databases aliases. | Mariusz Felisiak | |
| 2020-10-28 | Made small readability improvements. | Martin Thoma | |
| 2020-10-19 | Reverted "Reduced time.sleep() in cache touch() tests." | Mariusz Felisiak | |
| This reverts commit 177a49e79c882603da64d45995f5fd60dce8c852 which caused more frequent failures of test_touch(). | |||
| 2020-10-16 | Reduced time.sleep() in cache touch() tests. | Nick Pope | |
| There are 8 cache backends to test and each test of touch() takes ~7s → ~56s. This seems excessive and it feels like we should be able to reduce this significantly. time.sleep() accepts floating point values and is guaranteed to sleep for at least the number of seconds specified as of Python 3.5. We do run the risk that there may be spurious test failures from this, but that already seemed to be the case anyway. | |||
| 2020-09-16 | Fixed #29887 -- Added a cache backend for pymemcache. | Nick Pope | |
| 2020-09-16 | Refs #29887, Refs #24212 -- Added more client servers tests for PyLibMCCache. | Nick Pope | |
| 2020-09-14 | Fixed #31789 -- Added a new headers interface to HttpResponse. | Tom Carrick | |
| 2020-09-02 | Refs #29887, Refs #24212 -- Added servers configuration hook for memcached ↵ | Nick Pope | |
| backends. The servers property can be overridden to allow memcached backends to alter the server configuration prior to it being passed to instantiate the client. This allows avoidance of documentation for per-backend differences, e.g. stripping the 'unix:' prefix for pylibmc. | |||
| 2020-09-01 | Refs #29887 -- Simplified memcached client instantiation. | Nick Pope | |
| 2020-09-01 | Fixed CVE-2020-24584 -- Fixed permission escalation in intermediate-level ↵ | Mariusz Felisiak | |
| directories of the file system cache on Python 3.7+. | |||
| 2020-08-28 | Added tests for cache middlewares constructors. | Kevin Michel | |
| 2020-08-24 | Fixed #31907 -- Fixed missing validate_key() calls in cache backends. | Nick Pope | |
| 2020-08-24 | Refs #31907 -- Added cache key validation tests for cache operations. | Nick Pope | |
| 2020-06-22 | Refs #5691 -- Made cache keys independent of USE_L10N. | Claude Paroz | |
| This mostly reverts af1893c4ff8fdbf227a43a559d90bb1c1238b01a. | |||
| 2020-06-22 | Fixed #31728 -- Fixed cache culling when no key is found for deletion. | Guillermo Bonvehí | |
| DatabaseCache._cull implementation could fail if no key was found to perform a deletion in the table. This prevented the new cache key/value from being correctly added. | |||
| 2020-06-05 | Fixed #31654 -- Fixed cache key validation messages. | Mariusz Felisiak | |
| 2020-06-03 | Preferred usage of among/while to amongst/whilst. | David Smith | |
| 2020-06-03 | Refs CVE-2020-13254 -- Fixed cache.tests when KEY_PREFIX is defined. | Mariusz Felisiak | |
| Follow up to 2c82414914ae6476be5a166be9ff49c24d0d9069. | |||
| 2020-06-03 | Fixed CVE-2020-13254 -- Enforced cache key validation in memcached backends. | Dan Palmer | |
| 2020-03-19 | Made BaseCacheTests skip culling tests if culling is not supported. | Jon Dufresne | |
| 2020-02-18 | Refs #26601 -- Deprecated passing None as get_response arg to middleware ↵ | Claude Paroz | |
| classes. This is the new contract since middleware refactoring in Django 1.10. Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> | |||
| 2020-02-13 | Removed unused cache.tests.CacheUtils._set_cache(). | Claude Paroz | |
| Unused since its introduction in 71a03e01aa19cbde08e915d156abf39b67d904ef. | |||
| 2020-01-30 | Replaced assertWarns() with SimpleTestCase.assertWarnsMessage() in tests. | Hasan Ramezani | |
| 2020-01-16 | Fixed #30765 -- Made cache_page decorator take precedence over max-age ↵ | Flavio Curella | |
| Cache-Control directive. | |||
| 2019-12-31 | Improved tests assertions in cache tests. | Jon Dufresne | |
| Added assertions to compare results of .add(), .delete(), .touch(), .incr(), .decr(), and .get_or_set() methods. Made tests use assertIs() rather than assertTrue/False(). | |||
| 2019-12-11 | Fixed typo in tests/cache/tests.py docstring. | Jon Dufresne | |
| 2019-11-14 | Fixed #30759 -- Made cache.delete() return whether it succeeded. | daniel a rios | |
| Thanks Simon Charette for the review. | |||
| 2019-11-06 | Refs #29983 -- Added tests for FileBasedCache pathlib support. | Jon Dufresne | |
| 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-10-10 | Fixed #23755 -- Added support for multiple field names in the no-cache ↵ | Flavio Curella | |
| Cache-Control directive to patch_cache_control(). https://tools.ietf.org/html/rfc7234#section-5.2.2.2 | |||
| 2019-10-10 | Refs #23755 -- Added tests for patch_cache_control() with no-cache ↵ | Flavio Curella | |
| Cache-Control directive. | |||
| 2019-09-18 | Fixed #30772 -- Optimized make_template_fragment_key(). | Daniel Fairhead | |
| Removed usage of urllib.quote(), unnecessary since cbbe60c7fc39fa8ff75554bd90104eaad6924bb1. Used hasher's .update() on key fragments. | |||
| 2019-08-16 | Fixed #30701 -- Updated patch_vary_headers() to handle an asterisk according ↵ | Adnan Umer | |
| to RFC 7231. | |||
| 2019-02-14 | Fixed #30181 -- Made cache.get() with default work correctly on PyLibMCCache ↵ | Jakub Szafrański | |
| if None is cached. | |||
| 2019-01-28 | Fixed #30137 -- Replaced OSError aliases with the canonical OSError. | Jon Dufresne | |
| Used more specific errors (e.g. FileExistsError) as appropriate. | |||
| 2019-01-26 | Added missing assert in ↵ | Jon Dufresne | |
| FileBasedCacheTests.test_creates_cache_dir_if_nonexistent(). | |||
