[2.2.x] Fixed #31654 -- Fixed cache key validation messages.
Backport of 926148ef01
from master.
This commit is contained in:
parent
b87719034a
commit
b2b2723512
|
@ -287,6 +287,6 @@ def memcache_key_warnings(key):
|
|||
if ord(char) < 33 or ord(char) == 127:
|
||||
yield (
|
||||
'Cache key contains characters that will cause errors if '
|
||||
'used with memcached: %r' % key, CacheKeyWarning
|
||||
'used with memcached: %r' % key
|
||||
)
|
||||
break
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
===========================
|
||||
Django 2.2.14 release notes
|
||||
===========================
|
||||
|
||||
*Expected July 1, 2020*
|
||||
|
||||
Django 2.2.14 fixes a bug in 2.2.13.
|
||||
|
||||
Bugfixes
|
||||
========
|
||||
|
||||
* Fixed messages of ``InvalidCacheKey`` exceptions and ``CacheKeyWarning``
|
||||
warnings raised by cache key validation (:ticket:`31654`).
|
|
@ -25,6 +25,7 @@ versions of the documentation contain the release notes for any later releases.
|
|||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
2.2.14
|
||||
2.2.13
|
||||
2.2.12
|
||||
2.2.11
|
||||
|
|
|
@ -619,8 +619,9 @@ class BaseCacheTests:
|
|||
cache.key_func = func
|
||||
|
||||
try:
|
||||
with self.assertWarnsMessage(CacheKeyWarning, expected_warning):
|
||||
with self.assertWarns(CacheKeyWarning) as cm:
|
||||
cache.set(key, 'value')
|
||||
self.assertEqual(str(cm.warning), expected_warning)
|
||||
finally:
|
||||
cache.key_func = old_func
|
||||
|
||||
|
@ -1257,8 +1258,9 @@ class BaseMemcachedTests(BaseCacheTests):
|
|||
invalid key.
|
||||
"""
|
||||
msg = expected_warning.replace(key, cache.make_key(key))
|
||||
with self.assertRaisesMessage(InvalidCacheKey, msg):
|
||||
with self.assertRaises(InvalidCacheKey) as cm:
|
||||
cache.set(key, 'value')
|
||||
self.assertEqual(str(cm.exception), msg)
|
||||
|
||||
def test_default_never_expiring_timeout(self):
|
||||
# Regression test for #22845
|
||||
|
|
Loading…
Reference in New Issue