| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-07-23 | Refs #36500 -- Shortened some long docstrings and comments. | Mike Edmunds | |
| Manually reformatted some long docstrings and comments that would be damaged by the to-be-applied autofixer script, in cases where editorial judgment seemed necessary for style or wording changes. | |||
| 2023-01-18 | Refs #34233 -- Used str.removeprefix()/removesuffix(). | Mariusz Felisiak | |
| 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 | |
| 2021-09-20 | Refs #32193 -- Removed MemcachedCache per deprecation timeline. | Mariusz Felisiak | |
| 2021-09-07 | Fixed #33060 -- Added BaseCache.make_and_validate_key() hook. | Nick Pope | |
| This helper function reduces the amount of duplicated code and makes it easier to ensure that we always validate the keys. | |||
| 2021-08-31 | Refs #33061 -- Removed unnecessary BaseMemcachedCache.decr(). | Mariusz Felisiak | |
| 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. | |||
| 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-09-16 | Fixed #29887 -- Added a cache backend for pymemcache. | Nick Pope | |
| 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-08-24 | Fixed #31907 -- Fixed missing validate_key() calls in cache backends. | Nick Pope | |
| 2020-08-20 | Refs #29887, #27480 -- Moved touch() to BaseMemcachedCache. | Nick Pope | |
| 2020-08-20 | Fixed comments related to nonexistent keys for incr()/decr() in memcached ↵ | Nick Pope | |
| backends. | |||
| 2020-06-03 | Fixed CVE-2020-13254 -- Enforced cache key validation in memcached backends. | Dan Palmer | |
| 2019-11-14 | Fixed #30759 -- Made cache.delete() return whether it succeeded. | daniel a rios | |
| Thanks Simon Charette for the review. | |||
| 2019-02-14 | Fixed #30181 -- Made cache.get() with default work correctly on PyLibMCCache ↵ | Jakub Szafrański | |
| if None is cached. | |||
| 2018-07-09 | Fixed #20584 -- Fixed memcached's get_many() with single-use iterators. | Christian Barcenas | |
| Thanks Guyon Morée for the report. | |||
| 2018-04-27 | Fixed #27480 -- Added cache.touch(). | Nicolas Noé | |
| 2017-09-22 | Refs #20892 -- Removed support for passing pylibmc behavior settings as ↵ | Tim Graham | |
| top-level attributes of CACHES['OPTIONS']. Per deprecation timeline. | |||
| 2017-09-06 | Fixed #27318 -- Made cache.set_many() return the list of failed keys. | Olivier Tabone | |
| 2017-09-05 | Used dict comprehensions in BaseMemcachedCache.get_many() and set_many() for ↵ | Sergey Fedoseev | |
| better readability. | |||
| 2017-06-01 | Refs #23968 -- Removed unnecessary lists, generators, and tuple calls. | Jon Dufresne | |
| 2017-02-21 | Refs #27656 -- Updated django.core docstring verbs according to PEP 257. | Anton Samarchyan | |
| 2017-02-03 | Fixed spelling of "nonexistent". | Tim Graham | |
| 2017-01-25 | Refs #23919 -- Replaced super(ClassName, self) with super(). | chillaranand | |
| 2017-01-20 | Refs #23919 -- Removed unneeded force_str calls | Claude Paroz | |
| 2017-01-18 | Refs #23919 -- Removed six.<various>_types usage | Claude Paroz | |
| Thanks Tim Graham and Simon Charette for the reviews. | |||
| 2016-09-02 | Fixed #11331 -- Stopped closing pylibmc connections after each request. | Ed Morley | |
| libmemcached manages its own connections, so isn't affected by refs #5133. | |||
| 2016-08-31 | Fixed #27152 -- Supported comma delimiter in memcached LOCATION string. | Ed Morley | |
| 2016-08-31 | Fixed #20892 -- Allowed configuring memcached client using OPTIONS. | Ed Morley | |
| Previously, the MemcachedCache backend ignored `OPTIONS` and PyLibMCCache used them to set pylibmc behaviors. Both backends now pass `OPTIONS` as keyword arguments to the client constructors. | |||
| 2016-06-15 | Fixed broken links in docs and comments. | Ville Skyttä | |
| 2016-01-25 | Fixed #26125 -- Fixed E731 flake warnings. | userimack | |
| 2015-07-06 | Updated Memcached get_backend_timeout() comment. | Karol Duleba | |
| 2015-05-13 | Removed unnecessary arguments in .get method calls | Piotr Jakimiak | |
| 2015-02-06 | Sorted imports with isort; refs #23860. | Tim Graham | |
| 2015-01-17 | Removed BaseMemcachedCacheMethods._get_memcache_timeout backwards ↵ | Tim Graham | |
| compatibility shim. Per deprecation timeline; refs #21147. | |||
| 2014-11-13 | Fixed #16358 - Made memcache backend delete old value on a failure to set. | Michael Manfre | |
| Default Memcached configuration allows for a maximum object of 1MB and will fail to set the key if it is too large. The key will be deleted from memcached if it fails to be set. This is needed to avoid an issue with cache_db session backend using the old value stored in memcached, instead of the newer value stored in the database. | |||
| 2014-06-16 | Fixed #22845 -- Correctly handled memcached default timeout value. | Vincent-Vega | |
| 2014-03-08 | Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings | Claude Paroz | |
| Thanks Anssi Kääriäinen for the idea and Simon Charette for the review. | |||
| 2013-11-23 | Fixed #21012 -- New API to access cache backends. | Curtis Maloney | |
| Thanks Curtis Malony and Florian Apolloner. Squashed commit of the following: commit 3380495e93f5e81b80a251b03ddb0a80b17685f5 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sat Nov 23 14:18:07 2013 +0100 Looked up the template_fragments cache at runtime. commit 905a74f52b24a198f802520ff06290a94dedc687 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sat Nov 23 14:19:48 2013 +0100 Removed all uses of create_cache. Refactored the cache tests significantly. Made it safe to override the CACHES setting. commit 35e289fe9285feffed3c60657af9279a6a2cfccc Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sat Nov 23 12:23:57 2013 +0100 Removed create_cache function. commit 8e274f747a1f1c0c0e6c37873e29067f7fa022e8 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sat Nov 23 12:04:52 2013 +0100 Updated docs to describe a simplified cache backend API. commit ee7eb0f73e6d4699edcf5d357dce715224525cf6 Author: Curtis Maloney <curtis@tinbrain.net> Date: Sat Oct 19 09:49:24 2013 +1100 Fixed #21012 -- Thread-local caches, like databases. | |||
| 2013-11-02 | Fixed all E261 warnings | coagulant | |
| 2013-11-02 | More attacking E302 violators | Alex Gaynor | |
| 2013-10-01 | Fixed #21147 -- Avoided time.time precision issue with cache backends. | Michael Manfre | |
| The precision of time.time() is OS specific and it is possible for the resolution to be low enough to allow reading a cache key previously set with a timeout of 0. | |||
| 2013-07-09 | Fixed #20722 -- Fixed MemcachedCache backend get_many on Python 3. | Tim Graham | |
| 2013-05-18 | Fixed #9595 -- Allow non-expiring cache timeouts. | Jacob Burch | |
| Also, streamline the use of 0 and None between cache backends. | |||
| 2013-02-24 | Fixed #19810 -- MemcachedCache now uses pickle.HIGHEST_PROTOCOL | Bas Peschier | |
| 2012-12-29 | Removed django.core.cache.backends.memcached.CacheClass. | Aymeric Augustin | |
