Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-dogpile.cache for 
openSUSE:Factory checked in at 2022-07-21 11:33:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-dogpile.cache (Old)
 and      /work/SRC/openSUSE:Factory/.python-dogpile.cache.new.1523 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-dogpile.cache"

Thu Jul 21 11:33:13 2022 rev:35 rq:990239 version:1.1.8

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-dogpile.cache/python-dogpile.cache.changes    
    2022-03-30 20:36:40.489353220 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-dogpile.cache.new.1523/python-dogpile.cache.changes
      2022-07-21 11:33:43.930967790 +0200
@@ -1,0 +2,17 @@
+Tue Jul 19 12:05:35 UTC 2022 - Dirk M??ller <dmuel...@suse.com>
+
+- update to 1.1.8:
+  * Moved the MemcacheArgs.dead_retry argument and the
+    MemcacheArgs.socket_timeout argument which were erroneously added to the
+    ???set_parameters???, where they have no effect, to be part of the 
Memcached
+    connection arguments MemcachedBackend.dead_retry,
+    MemcachedBackend.socket_timeout.
+  * Added MemcacheArgs.dead_retry and MemcacheArgs.socket_timeout to the
+    dictionary of additional keyword arguments that will be passed directly to
+    GenericMemcachedBackend().
+  * Added RedisBackend.connection_kwargs parameter, which is a dictionary of
+    additional keyword arguments that will be passed directly to StrictRedis() 
or
+    StrictRedis.from_url(), in the same way that this parameter works with the
+    RedisSentinelBackend already
+
+-------------------------------------------------------------------

Old:
----
  dogpile.cache-1.1.5.tar.gz

New:
----
  dogpile.cache-1.1.8.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-dogpile.cache.spec ++++++
--- /var/tmp/diff_new_pack.czt4bQ/_old  2022-07-21 11:33:44.406968259 +0200
+++ /var/tmp/diff_new_pack.czt4bQ/_new  2022-07-21 11:33:44.410968263 +0200
@@ -19,10 +19,10 @@
 %{?!python_module:%define python_module() python3-%{**}}
 %global pythons python3
 Name:           python-dogpile.cache
-Version:        1.1.5
+Version:        1.1.8
 Release:        0
 %define modname dogpile.cache
-%define modver  1_1_5
+%define modver  1_1_8
 Summary:        A caching front-end based on the Dogpile lock
 License:        BSD-3-Clause
 URL:            https://github.com/sqlalchemy/dogpile.cache

++++++ dogpile.cache-1.1.5.tar.gz -> dogpile.cache-1.1.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/.gitignore 
new/dogpile.cache-rel_1_1_8/.gitignore
--- old/dogpile.cache-rel_1_1_5/.gitignore      2022-01-19 19:23:08.000000000 
+0100
+++ new/dogpile.cache-rel_1_1_8/.gitignore      2022-07-08 19:57:24.000000000 
+0200
@@ -17,3 +17,4 @@
 test_*.db.bak
 test_*.db.dat
 test_*.db.dir
+tests/tls/generate/gen/
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/.pre-commit-config.yaml 
new/dogpile.cache-rel_1_1_8/.pre-commit-config.yaml
--- old/dogpile.cache-rel_1_1_5/.pre-commit-config.yaml 2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/.pre-commit-config.yaml 2022-07-08 
19:57:24.000000000 +0200
@@ -2,25 +2,25 @@
 # See https://pre-commit.com/hooks.html for more hooks
 repos:
 -   repo: https://github.com/python/black
-    rev: 21.5b1
+    rev: 22.3.0
     hooks:
     -   id: black
 
 -   repo: https://github.com/sqlalchemyorg/zimports
-    rev: v0.4.1
+    rev: v0.6.0
     hooks:
     -   id: zimports
         args:
             - --keep-unused-type-checking
 
 -   repo: https://github.com/pycqa/flake8
-    rev: 3.9.2
+    rev: 4.0.1
     hooks:
     -   id: flake8
         additional_dependencies:
           - flake8-import-order
           - flake8-builtins
-          - flake8-docstrings>=1.3.1
+          - flake8-docstrings>=1.6.0
           - flake8-rst-docstrings
           - pydocstyle
           - pygments
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/docs/build/changelog.rst 
new/dogpile.cache-rel_1_1_8/docs/build/changelog.rst
--- old/dogpile.cache-rel_1_1_5/docs/build/changelog.rst        2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/docs/build/changelog.rst        2022-07-08 
19:57:24.000000000 +0200
@@ -3,6 +3,55 @@
 =========
 
 .. changelog::
+    :version: 1.1.8
+    :released: Fri Jul 8 2022
+
+    .. change::
+        :tags: bug, memcached
+        :tickets: 223, 228
+
+        Moved the :paramref:`.MemcacheArgs.dead_retry` argument and the
+        :paramref:`.MemcacheArgs.socket_timeout` argument which were
+        erroneously added to the "set_parameters",
+        where they have no effect, to be part of the Memcached connection
+        arguments :paramref:`.MemcachedBackend.dead_retry`,
+        :paramref:`.MemcachedBackend.socket_timeout`.
+
+
+.. changelog::
+    :version: 1.1.7
+    :released: Tue Jul 5 2022
+
+    .. change::
+           :tags: usecase, memcached
+           :tickets: 223
+
+           Added :paramref:`.MemcacheArgs.dead_retry` and
+           :paramref:`.MemcacheArgs.socket_timeout` to the dictionary of
+           additional keyword arguments that will be passed
+           directly to ``GenericMemcachedBackend()``.
+
+.. changelog::
+    :version: 1.1.6
+    :released: Fri Jun 10 2022
+
+    .. change::
+        :tags: bug, redis
+        :tickets: 220
+
+        Fixed regression caused by backwards-incompatible API changes in Redis 
that
+        caused the "distributed lock" feature to not function.
+
+    .. change::
+        :tags: usecase, redis
+        :tickets: 221
+
+        Added :paramref:`.RedisBackend.connection_kwargs` parameter, which is a
+        dictionary of additional keyword arguments that will be passed 
directly to
+        ``StrictRedis()`` or ``StrictRedis.from_url()``, in the same way that 
this
+        parameter works with the :class:`.RedisSentinelBackend` already.
+
+.. changelog::
     :version: 1.1.5
     :released: Wed Jan 19 2022
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/docs/build/conf.py 
new/dogpile.cache-rel_1_1_8/docs/build/conf.py
--- old/dogpile.cache-rel_1_1_5/docs/build/conf.py      2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/docs/build/conf.py      2022-07-08 
19:57:24.000000000 +0200
@@ -74,7 +74,7 @@
 # The short X.Y version.
 version = dogpile.__version__
 # The full version, including alpha/beta/rc tags.
-release = "1.1.5"
+release = "1.1.8"
 
 
 # The language for content autogenerated by Sphinx. Refer to documentation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/dogpile/__init__.py 
new/dogpile.cache-rel_1_1_8/dogpile/__init__.py
--- old/dogpile.cache-rel_1_1_5/dogpile/__init__.py     2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/dogpile/__init__.py     2022-07-08 
19:57:24.000000000 +0200
@@ -1,4 +1,4 @@
-__version__ = "1.1.5"
+__version__ = "1.1.8"
 
 from .lock import Lock  # noqa
 from .lock import NeedRegenerationException  # noqa
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/dogpile/cache/backends/memcached.py 
new/dogpile.cache-rel_1_1_8/dogpile/cache/backends/memcached.py
--- old/dogpile.cache-rel_1_1_5/dogpile/cache/backends/memcached.py     
2022-01-19 19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/dogpile/cache/backends/memcached.py     
2022-07-08 19:57:24.000000000 +0200
@@ -58,7 +58,7 @@
             elif not wait:
                 return False
             else:
-                sleep_time = (((i + 1) * random.random()) + 2 ** i) / 2.5
+                sleep_time = (((i + 1) * random.random()) + 2**i) / 2.5
                 time.sleep(sleep_time)
             if i < 15:
                 i += 1
@@ -220,7 +220,6 @@
 class MemcacheArgs(GenericMemcachedBackend):
     """Mixin which provides support for the 'time' argument to set(),
     'min_compress_len' to other methods.
-
     """
 
     def __init__(self, arguments):
@@ -303,14 +302,39 @@
             }
         )
 
+    :param dead_retry: Number of seconds memcached server is considered dead
+     before it is tried again. Will be passed to ``memcache.Client``
+     as the ``dead_retry`` parameter.
+
+     .. versionchanged:: 1.1.8  Moved the ``dead_retry`` argument which was
+        erroneously added to "set_parameters" to
+        be part of the Memcached connection arguments.
+
+    :param socket_timeout: Timeout in seconds for every call to a server.
+      Will be passed to ``memcache.Client`` as the ``socket_timeout``
+      parameter.
+
+      .. versionchanged:: 1.1.8  Moved the ``socket_timeout`` argument which
+         was erroneously added to "set_parameters"
+         to be part of the Memcached connection arguments.
+
     """
 
+    def __init__(self, arguments):
+        self.dead_retry = arguments.get("dead_retry", 30)
+        self.socket_timeout = arguments.get("socket_timeout", 3)
+        super(MemcachedBackend, self).__init__(arguments)
+
     def _imports(self):
         global memcache
         import memcache  # noqa
 
     def _create_client(self):
-        return memcache.Client(self.url)
+        return memcache.Client(
+            self.url,
+            dead_retry=self.dead_retry,
+            socket_timeout=self.socket_timeout,
+        )
 
 
 class BMemcachedBackend(GenericMemcachedBackend):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/dogpile/cache/backends/redis.py 
new/dogpile.cache-rel_1_1_8/dogpile/cache/backends/redis.py
--- old/dogpile.cache-rel_1_1_5/dogpile/cache/backends/redis.py 2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/dogpile/cache/backends/redis.py 2022-07-08 
19:57:24.000000000 +0200
@@ -24,7 +24,7 @@
 
 
 class RedisBackend(BytesBackend):
-    """A `Redis <http://redis.io/>`_ backend, using the
+    r"""A `Redis <http://redis.io/>`_ backend, using the
     `redis-py <http://pypi.python.org/pypi/redis/>`_ backend.
 
     Example configuration::
@@ -88,6 +88,14 @@
      asynchronous runners, as they run in a different thread than the one
      used to create the lock.
 
+    :param connection_kwargs: dict, additional keyword arguments are passed
+     along to the
+     ``StrictRedis.from_url()`` method or ``StrictRedis()`` constructor
+     directly, including parameters like ``ssl``, ``ssl_certfile``,
+     ``charset``, etc.
+
+     .. versionadded:: 1.1.6  Added ``connection_kwargs`` parameter.
+
     """
 
     def __init__(self, arguments):
@@ -98,12 +106,12 @@
         self.password = arguments.pop("password", None)
         self.port = arguments.pop("port", 6379)
         self.db = arguments.pop("db", 0)
-        self.distributed_lock = arguments.get("distributed_lock", False)
+        self.distributed_lock = arguments.pop("distributed_lock", False)
         self.socket_timeout = arguments.pop("socket_timeout", None)
-
-        self.lock_timeout = arguments.get("lock_timeout", None)
-        self.lock_sleep = arguments.get("lock_sleep", 0.1)
-        self.thread_local_lock = arguments.get("thread_local_lock", True)
+        self.lock_timeout = arguments.pop("lock_timeout", None)
+        self.lock_sleep = arguments.pop("lock_sleep", 0.1)
+        self.thread_local_lock = arguments.pop("thread_local_lock", True)
+        self.connection_kwargs = arguments.pop("connection_kwargs", {})
 
         if self.distributed_lock and self.thread_local_lock:
             warnings.warn(
@@ -112,7 +120,7 @@
             )
 
         self.redis_expiration_time = arguments.pop("redis_expiration_time", 0)
-        self.connection_pool = arguments.get("connection_pool", None)
+        self.connection_pool = arguments.pop("connection_pool", None)
         self._create_client()
 
     def _imports(self):
@@ -131,6 +139,7 @@
             self.reader_client = self.writer_client
         else:
             args = {}
+            args.update(self.connection_kwargs)
             if self.socket_timeout:
                 args["socket_timeout"] = self.socket_timeout
 
@@ -150,11 +159,13 @@
 
     def get_mutex(self, key):
         if self.distributed_lock:
-            return self.writer_client.lock(
-                "_lock{0}".format(key),
-                timeout=self.lock_timeout,
-                sleep=self.lock_sleep,
-                thread_local=self.thread_local_lock,
+            return _RedisLockWrapper(
+                self.writer_client.lock(
+                    "_lock{0}".format(key),
+                    timeout=self.lock_timeout,
+                    sleep=self.lock_sleep,
+                    thread_local=self.thread_local_lock,
+                )
             )
         else:
             return None
@@ -193,6 +204,22 @@
         self.writer_client.delete(*keys)
 
 
+class _RedisLockWrapper:
+    __slots__ = ("mutex", "__weakref__")
+
+    def __init__(self, mutex: typing.Any):
+        self.mutex = mutex
+
+    def acquire(self, wait: bool = True) -> typing.Any:
+        return self.mutex.acquire(blocking=wait)
+
+    def release(self) -> typing.Any:
+        return self.mutex.release()
+
+    def locked(self) -> bool:
+        return self.mutex.locked()  # type: ignore
+
+
 class RedisSentinelBackend(RedisBackend):
     """A `Redis <http://redis.io/>`_ backend, using the
     `redis-py <http://pypi.python.org/pypi/redis/>`_ backend.
@@ -251,9 +278,11 @@
      a normal Redis connection can be specified here.
      Default is {}.
 
-    :param connection_kwargs: dict, are keyword arguments that will be used
-     when establishing a connection to a Redis server.
-     Default is {}.
+    :param connection_kwargs: dict, additional keyword arguments are passed
+     along to the
+     ``StrictRedis.from_url()`` method or ``StrictRedis()`` constructor
+     directly, including parameters like ``ssl``, ``ssl_certfile``,
+     ``charset``, etc.
 
     :param lock_sleep: integer, number of seconds to sleep when failed to
      acquire a lock.  This argument is only valid when
@@ -272,7 +301,6 @@
         self.sentinels = arguments.pop("sentinels", None)
         self.service_name = arguments.pop("service_name", "mymaster")
         self.sentinel_kwargs = arguments.pop("sentinel_kwargs", {})
-        self.connection_kwargs = arguments.pop("connection_kwargs", {})
 
         super().__init__(
             arguments={
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/cache/test_memcached_backend.py 
new/dogpile.cache-rel_1_1_8/tests/cache/test_memcached_backend.py
--- old/dogpile.cache-rel_1_1_5/tests/cache/test_memcached_backend.py   
2022-01-19 19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/cache/test_memcached_backend.py   
2022-07-08 19:57:24.000000000 +0200
@@ -380,7 +380,11 @@
         pass
 
     def _create_client(self):
-        return MockClient(self.url)
+        return MockClient(
+            self.url,
+            dead_retry=self.dead_retry,
+            socket_timeout=self.socket_timeout,
+        )
 
 
 class MockPylibmcBackend(PylibmcBackend):
@@ -422,6 +426,24 @@
         self._cache.pop(key, None)
 
 
+class MemcachedBackendTest(TestCase):
+    def test_memcached_dead_retry(self):
+        config_args = {
+            "url": "127.0.0.1:11211",
+            "dead_retry": 4,
+        }
+        backend = MockMemcacheBackend(arguments=config_args)
+        eq_(backend._create_client().kw["dead_retry"], 4)
+
+    def test_memcached_socket_timeout(self):
+        config_args = {
+            "url": "127.0.0.1:11211",
+            "socket_timeout": 6,
+        }
+        backend = MockMemcacheBackend(arguments=config_args)
+        eq_(backend._create_client().kw["socket_timeout"], 6)
+
+
 class PylibmcArgsTest(TestCase):
     def test_binary_flag(self):
         backend = MockPylibmcBackend(arguments={"url": "foo", "binary": True})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/cache/test_redis_backend.py 
new/dogpile.cache-rel_1_1_8/tests/cache/test_redis_backend.py
--- old/dogpile.cache-rel_1_1_5/tests/cache/test_redis_backend.py       
2022-01-19 19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/cache/test_redis_backend.py       
2022-07-08 19:57:24.000000000 +0200
@@ -195,3 +195,23 @@
     def test_connect_with_url(self, MockStrictRedis):
         arguments = {"url": "redis://redis:password@127.0.0.1:6379/0"}
         self._test_helper(MockStrictRedis.from_url, arguments)
+
+    def test_extra_arbitrary_args(self, MockStrictRedis):
+        arguments = {
+            "url": "redis://redis:password@127.0.0.1:6379/0",
+            "connection_kwargs": {
+                "ssl": True,
+                "encoding": "utf-8",
+                "new_redis_arg": 50,
+            },
+        }
+        self._test_helper(
+            MockStrictRedis.from_url,
+            {
+                "url": "redis://redis:password@127.0.0.1:6379/0",
+                "ssl": True,
+                "encoding": "utf-8",
+                "new_redis_arg": 50,
+            },
+            arguments,
+        )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/README.rst 
new/dogpile.cache-rel_1_1_8/tests/tls/README.rst
--- old/dogpile.cache-rel_1_1_5/tests/tls/README.rst    1970-01-01 
01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/README.rst    2022-07-08 
19:57:24.000000000 +0200
@@ -0,0 +1,27 @@
+=============================
+Generate memcached TLS files
+=============================
+
+Credit to https://github.com/scoriacorp/docker-tls-memcached
+
+courtesy Mois??s Guimar??es
+
+
+
+Instructions
+==============
+
+The certs will expire every two years.
+
+To renew::
+
+
+    $ cd tests/tls/generate
+    $ make clean
+    $ make install
+    $ git commit -a
+    $ git push
+
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/ca-root.crt 
new/dogpile.cache-rel_1_1_8/tests/tls/ca-root.crt
--- old/dogpile.cache-rel_1_1_5/tests/tls/ca-root.crt   2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/ca-root.crt   2022-07-08 
19:57:24.000000000 +0200
@@ -1,38 +1,38 @@
 -----BEGIN CERTIFICATE-----
-MIIGozCCBIugAwIBAgIJAM58RO9sXvoHMA0GCSqGSIb3DQEBCwUAMIGNMQswCQYD
-VQQGEwJDWjEaMBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJy
-bm8xGzAZBgNVBAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE2MDQGA1UEAwwtU2Nvcmlh
-IENvcnBvcmF0aW9uIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4XDTIwMDQw
-MzE0NDAzOVoXDTQwMDMyOTE0NDAzOVowgY0xCzAJBgNVBAYTAkNaMRowGAYDVQQI
-DBFKaWhvbW9yYXZza3kga3JhajENMAsGA1UEBwwEQnJubzEbMBkGA1UECgwSU2Nv
-cmlhIENvcnBvcmF0aW9uMTYwNAYDVQQDDC1TY29yaWEgQ29ycG9yYXRpb24gUm9v
-dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
-ggIKAoICAQDJqBOt19LipwyEq8YYnWe8SOJcDSE6fc+3gSggOSisJvDcjDZfgER2
-eJmVdDutRbbeHoCTlA57buIy+3Dr1BkHbWpNrSlcBD3fgja6BhDZiH6Cuq3BvL5b
-y2Yin96lk5JXmjNT5SP6vBmIe68lt+2BwjHgrbI6s8vOJwOy6gGZ8rVKGR6lHtbY
-S7DznswyGoDuOlzHdf/9PNfbf1Jd72qn6qpAkf7GGvzqJaxqamhtB+V4QjSuv2Ts
-em61+/7aeIN+MIF7IkiyVm+FwoVz505oAoeP8obXLFi2VKifinOrTMMMIoDd9I2m
-FHraS5OhmlD4XaGNV9YhOYYu/gFgiHkQyjGBjtH+a4pZPwi9SyhsBHDRWx8HsWZV
-6DWLjUyUhoM9yCUUYIPv+dA6zPhs5LKsmUfM5ASuhjTN/BBx+zpTUurX6Fmnz2Io
-ypfiYjGWMdrwUdMLa6pY/5RcCysJHkrVLZSQi6hiC3yPqg0TlPVYBIcGP3vbkEcU
-f7MBqdH6Tc8wdSAWSc+zgVD0ql5+TZ6MUXnL5wf2NYwuuzQDa1gT/VfjOZOjkv3H
-lPC8isg926R6XuywPL4CynrL/qn6DRwNVelp31aD95HBS6YAVhJg7S4odQHDar4P
-bA+qXqx0+syMyF9+c6liV2fmCHMKgRFFi6SfuwmpQ92gU53bFXPa1QIDAQABo4IB
-AjCB/zAdBgNVHQ4EFgQUhVz9eXfMmqIaA4m3NVpJpI1tz1AwgcIGA1UdIwSBujCB
-t4AUhVz9eXfMmqIaA4m3NVpJpI1tz1ChgZOkgZAwgY0xCzAJBgNVBAYTAkNaMRow
-GAYDVQQIDBFKaWhvbW9yYXZza3kga3JhajENMAsGA1UEBwwEQnJubzEbMBkGA1UE
-CgwSU2NvcmlhIENvcnBvcmF0aW9uMTYwNAYDVQQDDC1TY29yaWEgQ29ycG9yYXRp
-b24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCCQDOfETvbF76BzAMBgNVHRME
-BTADAQH/MAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAHkqrlcn7pzr/
-UOsWkwtJkZaUgnejrryMsS24Oj7sWmpH23ZG//97gLibAjIhngZm3AOS4K7TVxvW
-rkirvaRq5ZbehOnMqLhEBbAjumK2RjeM8SBzRqYBsvU7iELyN/IMgsHzeul/5/0R
-vsBr0vtI6acKOAkUfMbpxN7m/gOL2CvGUmDy1NXtHWQTeDf6wxWkNGBb4E66sK66
-auSP205xxKzlMCzRaf8nfDAx7oy4zQtjJKunMtglxjrpGDCEFMixT8wqIUbf46o+
-+uK2AWqprBFL42+qGiu68gzMz1WS1iMmzbM0DUmAc3piDnBOz9YZa9iMegZekch5
-OL52DDd6tId/eWVFrj/IcHYoCg7KNHQteZ004zUInCpjAT/e78IZFxG8k0lZR1Lc
-87s8QXfhqm/GMzDIFMdZACrH8R90ubocK06iMcTahvI5EilH6LcLut28GGrRH8Og
-C0YBAPaZ5cjhflc0grSjPK1dKqj/Vre3CQH/+lJ8qTOBPurXlxFL759bsi9Auath
-GZ4bWhFTnykKCXJyzFbFgJObN/r/KrU4LI8q5MrkCseX5UTZ+P345WU6ZykjQqhJ
-GPi/z+dXZDy8TQJD8gg07t/oyFlzlaqDkJNWOvU+Bf/zSUyY+WxvGKXb2l9Gd7/s
-e2XISxvCzZK32s1mBNWSfl/tX0iw340=
+MIIGnDCCBISgAwIBAgIUFoHIqLQse8V35j6P0IQVbcMWsB4wDQYJKoZIhvcNAQEL
+BQAwgYMxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwI
+QnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1dGluZzE3MDUGA1UEAwwuenp6Y29t
+cHV0aW5nIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAeFw0yMjA2
+MDkxNzM5MzdaFw00MjA2MDQxNzM5MzdaMIGDMQswCQYDVQQGEwJVUzERMA8GA1UE
+CAwITmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21w
+dXRpbmcxNzA1BgNVBAMMLnp6emNvbXB1dGluZyBDbGllbnQgUm9vdCBDZXJ0aWZp
+Y2F0ZSBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDO
+nW4j+A+j4uYBbAPmLHB6BGPKM4EN62OkxZar31t2whNT366sLonnHb9sRGfOXItX
+bfipS0zDxY9GYaoYb8Nv627KH6qClzj9fOnOMnF2hl0iMClWO4PKQZOoeS1Bd92X
+0ehrXcMLcwTdDbK6W8ziq9sQVr85msphTRqNLoGP/git8qxlU4UgFeisEt+Pg4rk
+ZfGsgBqWUVRXL0VwLcNWKlqUPuR1ayfIwpqj8Y1DhMYqFW0/HgkpGfIKbX6qnKa7
+RZP+xg31M1M+iGvNnTHVagZBb8iLcRk+5yuxbQ6+LW+VeU9npuG8BO9FzospSw4r
+YiZnzDRKF6mP4o9+2RHpioC4+KrrnVHZXL0Cynp9wZ3+2jgafv0pTGzG6Hl9VmzJ
+cEDsMnKEyctLxTJr+0hTPdaEYx25Hty6om9HLCGaMfd+m9D4YodO/z1HzSl2hkLW
+NRHaj5zToYXZGhlRJhEV/4h+0meTjxBIL5Bxsna4/BX7ddtwaZy+v+TavAX06nZL
+MRmeV16ocPR//YVYlSQDyeEhsQo47BsIAfIPXRumy/XqQahDYchGdlc8Tmy+09iX
+AF20UrLTMLOplVMqq3lu4fgjOeWQ84w9Z0VWUc3YMeOk6JzOTGd2laT3qFzK1W6d
+KTkeGd1Z+7JEgBfh42UO3wmFOD2RP4vYkCF/vN0JsQIDAQABo4IBBDCCAQAwHQYD
+VR0OBBYEFDdkWrDsJafBydBOCYtDbNPJg8fhMIHDBgNVHSMEgbswgbiAFDdkWrDs
+JafBydBOCYtDbNPJg8fhoYGJpIGGMIGDMQswCQYDVQQGEwJVUzERMA8GA1UECAwI
+TmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21wdXRp
+bmcxNzA1BgNVBAMMLnp6emNvbXB1dGluZyBDbGllbnQgUm9vdCBDZXJ0aWZpY2F0
+ZSBBdXRob3JpdHmCFBaByKi0LHvFd+Y+j9CEFW3DFrAeMAwGA1UdEwQFMAMBAf8w
+CwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQCOiT8d6eDuhLCxocQO9ybG
+HZZg37VK++q66oXpoBmNmYVKx5Mfu9/PFCs7fSSCS3UMaOeczJN8ra9FElT2ubr2
+jLQjLo+ehUr77qbtWKbLHo1hkYYEnLdPJByh6qgA7e42ruRlwSu0pfhmMcGGHynJ
+p4oXRdcEzRuPqpl8qdjWZUMbf6x9x5IK6IaWHIEn7ViSsYB3sDijDK6An/qU11mr
+WXEApDd9N4svtHC9OXwt5qkj0dyiULSulDLQG523YN12lAnZi1vMWYMCZ4LvMnAt
+oz3ap/ID7DtT6cDXu9ODc/P4eg2e4Z/iARV5Ckx1OMaNo/gTE7e2GCIvmtbJGhDq
+2vVyl6p5CI3/4MQWprJex2EpYeYsaWcFm4Y/TWI8nYzMa4KyBHFX3IimfiKU3Su7
+BECAy1TS1advKCj7xRJuJRyPtrLuFCOojWFgVda2Guyr7d13p2t7aO3G+D0fmK4g
+2uQhTpaJr5Kl9KmgFKeTCxZpnoxNszJLgIF0NBcYotO614ipk4ws8wI8lbXcddoO
+TrFAuL0ZHpOjySQ6gM9vC/uqG1MyrSWoOh3aORdmxqYGpuqPqAqkqh5RciNaS+A4
+i+OCNqFWuOTFEHBmSITwc3ZDBBkFqm6rbZiaP9ZyxyoHxpWZMrcqX5+4c8PMFeA9
+AarOppqrX32TV/XwWoOjNg==
 -----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/client-ca-root.crt 
new/dogpile.cache-rel_1_1_8/tests/tls/client-ca-root.crt
--- old/dogpile.cache-rel_1_1_5/tests/tls/client-ca-root.crt    2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/client-ca-root.crt    2022-07-08 
19:57:24.000000000 +0200
@@ -1,38 +1,38 @@
 -----BEGIN CERTIFICATE-----
-MIIGuTCCBKGgAwIBAgIJAL3E2gDMzhfMMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD
-VQQGEwJDWjEaMBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJy
-bm8xGzAZBgNVBAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE9MDsGA1UEAww0U2Nvcmlh
-IENvcnBvcmF0aW9uIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAe
-Fw0yMDA0MDMxNDQwNDBaFw00MDAzMjkxNDQwNDBaMIGUMQswCQYDVQQGEwJDWjEa
-MBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJybm8xGzAZBgNV
-BAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE9MDsGA1UEAww0U2NvcmlhIENvcnBvcmF0
-aW9uIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTCCAiIwDQYJKoZI
-hvcNAQEBBQADggIPADCCAgoCggIBANAe4fgUSDem9NxvC3RuN70cBaJv/rorRL8X
-mxHTAyElHJmoAdrto8DqCjLC2zLa3/V5MMg0j0mZ/3qeDiAUBKhICWQLY3ljHiHT
-YY8Zk7TQKr1olapQRA4KtZEe5rOcLsO7S0u4eh2gspA+VP+yjOCQlNY8X9YCVLb9
-tF6uvRy2m1N9LjxsDTV+XA7YJZk1TCx64p1XCbG6opcJ+TX1z5NwpBKC6jcnQSIa
-oYxFc0Tc/NNOvRT50VVj+AmnAH+zgQbBxoKmIdEP21JOJb+bB1oV9+XOFhSkUgvO
-CKW10to9Dr1TNWSjhkXiN0/c8lO9Ah1QBNDdbtn2XL6VAWBZGyPcz3hMbBpVpaD0
-ix0BJbDMFHeT7k3UTbCtRb7q3t33SlP4LSBrFUWvEwliHOYCv/mbGFPShtGkGjil
-F+IawuqYdz4cSR4Ccxv2M79j0eOrMl3GfS9jEWcOkn0mwADzHJBDjhbZkWSQ7Bhz
-yH5GhHr6XqU/+83nI3B8Cx65IaypLRJlmihSFLe+hkrIBkI/gv//PiG10tHS1GEB
-rcN3g0ItuIz+no6ju6ethBEBo38MbNDIrByJVUM3Zv98f6w4ncIt9UbynyPT4RNt
-Ds46euKdyWqQp4MDAZkJ5m8hale4oCb3Lvd9W+oxj9gAeX6NSOs6913HJvir9Uu+
-ldcGkSlBAgMBAAGjggEKMIIBBjAdBgNVHQ4EFgQUMadjZUOijMEa//u6ljOIB0tR
-CDcwgckGA1UdIwSBwTCBvoAUMadjZUOijMEa//u6ljOIB0tRCDehgZqkgZcwgZQx
-CzAJBgNVBAYTAkNaMRowGAYDVQQIDBFKaWhvbW9yYXZza3kga3JhajENMAsGA1UE
-BwwEQnJubzEbMBkGA1UECgwSU2NvcmlhIENvcnBvcmF0aW9uMT0wOwYDVQQDDDRT
-Y29yaWEgQ29ycG9yYXRpb24gQ2xpZW50IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9y
-aXR5ggkAvcTaAMzOF8wwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwDQYJKoZI
-hvcNAQELBQADggIBABABLncFNn9B75aKiSpY6scXDf0fh56GYqCFOd4piW3Y/2t7
-WnRNkwQDhob4ISNeMsP0OhWo0dmHDkY73jkDZNhek2guS6GBw0uf4WAKjTFA6OZs
-XLv3cqODlojO1B1TdCDfmz25hJRBnhv9pI6akiNvWDZ6ERZxVx8YYfRsTu2gD0wq
-dhOBS/kcnaT0YnLiMUnn4c4Nyh2J++hLjJSR81/Ue7uxmgP3N8nb1xLKPCJ+wb+/
-iOMNh1kZM13SphNkufnN4t8Ulj+LqXft+oS3s1UGtVB/fp+xVvhY2s7OXjiHOKrY
-jvtdYvztzUelnPPtKNcu3A/eH+4V5k4OwXdZCjJq2pK4X+dEyMcLobRJXnPvlLbA
-saqJnFT2RJcejuxRYJp5DYvjdK/I87fk/JWgJuBChZs8FwsMtWWEdmR622EJ/AtO
-so5DF2YbRc8bKZrGsUuruk34liZVdZcmUOKTm1ugunO7b9zAPg9kmZPqed91XUnB
-9NqAe5FG+/gpgDLMQE63SZbyk70oxkrnkbRPY6cqJxkOO9FGJ/JiLKY5qlpShiTs
-1u3k8zcwLvdn7Ho41sL6Loiug8UBh74hL/qftBBv7+0U8Rv3pOteQmMq5zKvdUaK
-3DmBBshH/qECYpeMkPPopZ8rs/p34ZroKwBT3coyrY08fDg1gSFuxfN4Ashm
+MIIGnDCCBISgAwIBAgIULwc4U+OZiKVf+y94AHvMVh2sp2cwDQYJKoZIhvcNAQEL
+BQAwgYMxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwI
+QnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1dGluZzE3MDUGA1UEAwwuenp6Y29t
+cHV0aW5nIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAeFw0yMjA2
+MDkxNzM5MzhaFw00MjA2MDQxNzM5MzhaMIGDMQswCQYDVQQGEwJVUzERMA8GA1UE
+CAwITmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21w
+dXRpbmcxNzA1BgNVBAMMLnp6emNvbXB1dGluZyBDbGllbnQgUm9vdCBDZXJ0aWZp
+Y2F0ZSBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDb
+D5wrb6W6WW7EB3qVYaESmoiimD9aaonNfjxQzJ+WEmz8Phy0p8ysTqPqQNo+fOMU
+S5BTVQ5IzqZce06xfDF+4kSH26lJUnQ/0hnA8q/qleBY8QxYsxs9bvff4KE+tJh/
+0eXolj/LsFJya6DOvsj5nN48sHEDX5S68XQ9f7QjeOIPCj0ubNFUNAS3SORhaVwf
+a25s0r6EoVcAeLz0l+DKSBhNzBPGawkTqOEaR+0CGsUJYLDpsarAf8GT165q0+YE
+eUUL5Hgl0Z/jAFuOsxFpBRZIGQpINbxQtEgTEJ/rsUN+eIDO21pK9BUAvtk5xlgs
+HqnlmD7bSJ8JJzx8oVVPpd4Rdy1v/n2QLhEjzH/86CcJ4Ai9qsV7W73MN8MoWUDM
+gLAWWqYj/i/KGNnM7boNOUYMFs0J4JjYwXGD5VAoZGYD7fhyRdSfWySVtvvvPafW
+BpM7VXiT6GBIYu5mH/VRgZvWDqaFACSU5QQmrqS55bflCRWec3BD8dSMARb9C6OB
+jZAKgYdRnhUAXXcqHLbp+nVwMw2O2M5wB9CULTqMrCA/rQdZ3gNOvHzvDDZrOnH1
+qziGBVvV13FysOZpc/095XKQiWueSpYKnCaa97fd2MxJlIT6rMLsfXI8LWg4pFkM
+X/IFfIRfdJMLIErDx/VuyeycqB0yWYTvspaijpDgwwIDAQABo4IBBDCCAQAwHQYD
+VR0OBBYEFHWmqAh9zxIRzwQo07mtVEjwzi0UMIHDBgNVHSMEgbswgbiAFHWmqAh9
+zxIRzwQo07mtVEjwzi0UoYGJpIGGMIGDMQswCQYDVQQGEwJVUzERMA8GA1UECAwI
+TmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21wdXRp
+bmcxNzA1BgNVBAMMLnp6emNvbXB1dGluZyBDbGllbnQgUm9vdCBDZXJ0aWZpY2F0
+ZSBBdXRob3JpdHmCFC8HOFPjmYilX/sveAB7zFYdrKdnMAwGA1UdEwQFMAMBAf8w
+CwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQANZ/fjxl79uMJUZncHtTOy
+9mKqlIy5QKe3griJpIL38SoerMRv9yOhMN4YIN7sz6MzDAdEc2d0PrkWIPjM/6NC
+bng8ARQiR6QWe5Qd9EFy0ivInpWBSH5sj3OfQkzDmJISWFAmPUe/PI3HJJywQD1e
++hmcL1ugJmAkkut8uMmiSqMODmihoywn/KUCAiuGTYUpwtKNUk63wX7BwJaiB4pa
+uvmacM+xToaWzC1Xaa7Qd+JwQAjTc1HmPYyz3Vj7LIpm48+fBZh7YPZHCY0n4WDt
+KQA8t0QSlwqNw1GeTll2g2yFKQd5CdDAWFBnuI8fnm1X3GDynx2kcM/0M6Lm1rBh
+tZGlZL1NtE4tbm4B08SjVg/lTnjmCZT7G2nhTRm6NlGU4HSzLrJvOM4DS1tpQEEQ
+NF2zQmm7122bVZoBmpFcXhdISAGBslS7EnZpmDjUyiLoWnaGas8yjsJ6uP3mRiIN
+cs6NFNqqiNzYdmQqkE14fNfw3tK2NE11gxLT0JeLkJAXUoFubSnB0oRidwRSypHx
+ueTDrcwz9b+o1/c+f8lEstu8LURfTqLwC8cmyQ1HRzmH5DHiuY+gTgLy8kF5WWEg
+PHxzqFa1WQisxSRxaYT+CWushnee1wz88wXJnxUTsPuqtffUjBShfGzlV3CPN34A
+2hDHksVCo/H4T4IY52IzAA==
 -----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/client.crt 
new/dogpile.cache-rel_1_1_8/tests/tls/client.crt
--- old/dogpile.cache-rel_1_1_5/tests/tls/client.crt    2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/client.crt    2022-07-08 
19:57:24.000000000 +0200
@@ -1,28 +1,28 @@
 -----BEGIN CERTIFICATE-----
-MIIEyzCCArOgAwIBAgIJAPPSvsWCQbfFMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD
-VQQGEwJDWjEaMBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJy
-bm8xGzAZBgNVBAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE9MDsGA1UEAww0U2Nvcmlh
-IENvcnBvcmF0aW9uIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAe
-Fw0yMDA0MDMxNDQwNDBaFw0yMjA0MDMxNDQwNDBaMIGFMQswCQYDVQQGEwJDWjEa
-MBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJybm8xGzAZBgNV
-BAoMElNjb3JpYSBDb3Jwb3JhdGlvbjEuMCwGA1UEAwwlU2NvcmlhIENvcnBvcmF0
-aW9uIENsaWVudCBDZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
-AQoCggEBALAJe+CxlDH9ajw9q7rpYOaXBZ7Z2t2qmRFChR9rySQVFft2mTsyeF9W
-0zVNiR7wg1W74VvrrcQsv8OkbgEVeWt7e9lKIoIFzrQ1dJGUAs+vF4IQOKmlanWt
-jjz42fuJVlwTn71rXHCxoyqd0jCaRd7BHtf/fl7Po9WEFRjUr5O1iZWHBIwIn7q+
-edIwEUBs6qJN3vO42nqYmY7mQ/hG+vVzq7cL2WkN/EMGvj9SRVl0OMbmKnfxmUUi
-FoVnB6KiREHt4Kb/4y1plZzAmEMI2QDpPp/keLSmHw55U2waTEo+BKJ//G4dp7Rs
-K+CkdlOTIAEDM/AYvbM0/0rkPceovCMCAwEAAaMtMCswCQYDVR0TBAIwADARBglg
-hkgBhvhCAQEEBAMCB4AwCwYDVR0PBAQDAgXgMA0GCSqGSIb3DQEBCwUAA4ICAQBV
-M9wSpuC4zt5LhhXBHmxHuUVdIEIU+XXLTzMms3IC8r56rH4fFD6wfyVqvTlLVIyk
-UeX/FrZ9P1uOt1H1nDeNLlK8ihVdw+JSLplCfjX7SevD8tXdnokcl95p3RMMHjXU
-d46pY1StAU9fIm46WVsbtzfIPhejNlhn2L3DW3V2tkVXEKzdvaiFvmLWVlalxawY
-CoyDh4m9E5s6l/B9RoLCAajSGeXQxMCm2L9DwAyUJhFPQYLO4YJT1fM7cvl7Irms
-qjRAPq0rroebSP3bZDP0PXe7hwd01JcSnuLcQg6cOnsL9UOla8UpqJrMxG+rBD9o
-nnIOoFA/2pjNsa0xTarRXa7C75H0f4TWlEzhsEvlTqT1eTVu/XfUcv2r2mL+jSVW
-7iSQ37tlR8hN9L8/iYjIMlsf++3pdK1rvP0Mk8042pL8eqB+OYUQe/88KaNxTBeN
-q1sqzkXtcJk7DqTBPXfHFJgzASpy7UR56sa/P7XmqTmBrpNDMP2XUkdNoAQjGae1
-qiRmTiHP9e7d3bfWjW+odjbCxxZz5v4vfYY8FB6w2FfgLknfmnYKTOVR5ewT0d3T
-01mLiKVtNDlMNHSBsOWvv72sH8Y1viQ09AzzrsCEFmyCGvQXQ4bps0ObIAITS98f
-S1D9f+XM2TZJ/WxEB5VQP30iegfqEuKrwUTk8Lh6+g==
+MIIEszCCApugAwIBAgIUKcDJjsRTjDBbGNs/DZvCA2LtKNIwDQYJKoZIhvcNAQEL
+BQAwgYMxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwI
+QnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1dGluZzE3MDUGA1UEAwwuenp6Y29t
+cHV0aW5nIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAeFw0yMjA2
+MDkxNzM5MzhaFw0yNDA2MDgxNzM5MzhaMHQxCzAJBgNVBAYTAlVTMREwDwYDVQQI
+DAhOZXcgWW9yazERMA8GA1UEBwwIQnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1
+dGluZzEoMCYGA1UEAwwfenp6Y29tcHV0aW5nIENsaWVudCBDZXJ0aWZpY2F0ZTCC
+ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK5ZN8Ri6i/G5k161t5tNNoA
+IIsa346+3jA4ctKoWHvfpaW1hmUaeMKitwAMBsr1BByDMaD4JftkCQfoBFOpVwIS
+JU9octkJWSYe9GNGhkM34Rv436uvFwqfVKXjSh3lQVCR53SWVApCLpxIqArcbzdO
+kCpjnaRS8Gn6mTLR9Hsgo96ysXQJVCepHy6OdxvKegTk3ckWKufHV2mawNLOLT5s
+FU0YOBOYdcqYpgG4dvXMtdIwFIbGlu/KMuE8CdGHN/eHuGjF8uSeYR9E9IQ5h/d/
+MSERkY4Bb1xYDnOZ+2vlRTl7Hyl0F5pGTJ02liec9/pvISRepdXpEdR9pdL9XhkC
+AwEAAaMtMCswCQYDVR0TBAIwADARBglghkgBhvhCAQEEBAMCB4AwCwYDVR0PBAQD
+AgXgMA0GCSqGSIb3DQEBCwUAA4ICAQAJLEaQzV4xS+7dW5ho5YCYhF8M37atkbJp
+SDQJJc6RRhSthTJ2dnn5YZL4NsY3Gq01SA1rHQGv9bHF9CpqdJzQs8dEKvlT+Nd1
+XORYXibEzD7jXRmd4waKdN5MUgKqCJcM5TErx6ruXtUrSc7jfSnXx3yUmG6XV1Oh
+IxF7AusV+y982uSZ3eSDKobZJuush0K1fTO7E0TVYYfu5mnVtoi6KSvgwaaYiMvt
+3s9WTz9VymylFQyZhi0UBoqdjIAk405Z/bQJU9bTIPuU5lfrvrLFX2obtCvzsqeN
+xTbAHKhfx8o/74P4C1zsf0Fh/hb+dQrZeu49WWuSxJ5V8ujoEhtA7FbCqUAGn6U6
+6dMcumCfa8lN2sbZT0qdV/nPiO8OdfkCGTCp7xzU75hylzadk4c/d7NuX4+8Iibc
+/f6EXgEeTfqschfKjSBmejTcwM64E+K/687y0im6+UuREiaDem5J06V48GtXBHFa
+xkkMQGu+vP9cOysIuVwuwLmNIz2Kr47UoB1+vzzzeCnLmLYKNsxEYI0V0oHHXfjQ
+OA2TXJSIQCRQJ9qLFK3v99a+ii16oBqzMfIiyX0MLRBSIfJegjg67MqUQN0SNtKq
+uAkn+uiVtC8TqRHGKUrlRx9mBT+il3KskD+U/FqfkF39D2fUMMG/qS4EWcpp+AxN
+Z1DXHXvCmA==
 -----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/client.key 
new/dogpile.cache-rel_1_1_8/tests/tls/client.key
--- old/dogpile.cache-rel_1_1_5/tests/tls/client.key    2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/client.key    2022-07-08 
19:57:24.000000000 +0200
@@ -1,27 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-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
+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
 -----END RSA PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/generate/Makefile 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/Makefile
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/Makefile     1970-01-01 
01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/Makefile     2022-07-08 
19:57:24.000000000 +0200
@@ -0,0 +1,85 @@
+# chain     :: pem <= []crt
+# dhparam   :: pem <= int (#bits)
+# gen-ca    :: crt <= conf, key
+# gen-csr   :: csr <= conf, key
+# gen-key    :: key <= int (#bits)
+# gen-ecckey :: key <= string (ECC Prime)
+# self-sign :: crt <= days, hash, extensions, conf, csr, key (self)
+# sign      :: crt <= days, hash, extensions, conf, csr, key (CA), crt (CA)
+
+# Note: Files and paths must not contain spaces.
+
+DOMAIN = localhost
+DEFAULT_CERT_TYPE = rsa2048
+DEFAULT_DAYS = 730
+DEFAULT_HASH = sha256
+DEST = gen/
+
+DEFAULT_CA_SIGN = 3650 $(DEFAULT_HASH) req_v3_ca
+DEFAULT_server_SIGN = $(DEFAULT_DAYS) $(DEFAULT_HASH) req_v3_usr
+
+.PHONY: all
+all: install
+
+.PHONY: clean
+clean:
+       rm -rf $(DEST)
+
+# root CA #############################
+$(DEST)ca-root.key:
+       ./tool gen-key $@ $(DOMAIN) 4096
+$(DEST)ca-root.crt: conf/ca-root.conf $(DEST)ca-root.key
+       ./tool gen-ca $@ $(DOMAIN) $^
+
+# intermediate CA #####################
+$(DEST)ca-intermediate.key:
+       ./tool gen-key $@ $(DOMAIN) 4096
+$(DEST)ca-intermediate.csr: conf/ca-intermediate.conf 
$(DEST)ca-intermediate.key
+       ./tool gen-csr $@ $(DOMAIN) $^
+$(DEST)ca-intermediate.crt: conf/ca-intermediate.conf 
$(DEST)ca-intermediate.csr $(DEST)ca-root.key $(DEST)ca-root.crt
+       ./tool sign $@ $(DOMAIN) $(DEFAULT_CA_SIGN) $^
+
+# server cert #########################
+$(DEST)server-rsa2048.key:
+       ./tool gen-key $@ $(DOMAIN) 2048
+$(DEST)server-rsa2048.csr: conf/server.conf $(DEST)server-rsa2048.key
+       ./tool gen-csr $@ $(DOMAIN) $^
+$(DEST)server-rsa2048.crt: conf/server.conf $(DEST)server-rsa2048.csr 
$(DEST)ca-intermediate.key $(DEST)ca-intermediate.crt
+       ./tool sign $@ $(DOMAIN) $(DEFAULT_server_SIGN) $^
+$(DEST)server-rsa2048.pem: $(DEST)server-rsa2048.crt $(DEST)ca-intermediate.crt
+       ./tool chain $@ $(DOMAIN) $^
+CHAINS += $(DEST)server-rsa2048.pem
+
+# client root CA ######################
+$(DEST)client-ca-root.key:
+       ./tool gen-key $@ $(DOMAIN) 4096
+$(DEST)client-ca-root.crt: conf/client-ca-root.conf $(DEST)client-ca-root.key
+       ./tool gen-ca $@ $(DOMAIN) $^
+
+# client cert #########################
+$(DEST)client.key:
+       ./tool gen-key $@ $(DOMAIN) 2048
+$(DEST)client.csr: conf/client.conf $(DEST)client.key
+       ./tool gen-csr $@ $(DOMAIN) $^
+$(DEST)client.crt: conf/client.conf $(DEST)client.csr 
$(DEST)client-ca-root.key $(DEST)client-ca-root.crt
+       ./tool sign $@ $(DOMAIN) $(DEFAULT_server_SIGN) $^
+$(DEST)client.p12: $(DEST)client.crt $(DEST)client.key
+       ./tool gen-pkcs12-p12 $@ $(DOMAIN) $^
+$(DEST)client.pem: $(DEST)client.p12
+       ./tool pkcs12-convert-p12-pem $@ $(DOMAIN) $^
+CHAINS += $(DEST)client.pem
+
+#######################################
+
+.PHONY: chains
+chains: $(CHAINS)
+
+.PHONY: install
+install: $(CHAINS)
+       cp $(DEST)client.key ../client.key
+       cp $(DEST)client.crt ../client.crt
+       cp $(DEST)client-ca-root.crt ../client-ca-root.crt
+       cp $(DEST)server-rsa2048.key ../server.key
+       cp $(DEST)server-rsa2048.pem ../server_chain.pem
+       cp $(DEST)ca-root.crt ../ca-root.crt
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/ca-intermediate.conf 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/ca-intermediate.conf
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/ca-intermediate.conf    
1970-01-01 01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/ca-intermediate.conf    
2022-07-08 19:57:24.000000000 +0200
@@ -0,0 +1,20 @@
+[ req ]
+default_bits        = 4096
+default_md          = sha256
+distinguished_name  = req_distinguished_name
+encrypt_key         = no
+prompt              = no
+x509_extensions     = req_v3_ca
+
+[ req_distinguished_name ]
+countryName         = US
+stateOrProvinceName = New York
+localityName        = Brooklyn
+organizationName    = zzzcomputing
+commonName          = zzzcomputing Intermediate Certificate Authority
+
+[ req_v3_ca ]
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid:always,issuer:always
+basicConstraints = CA:true
+keyUsage = cRLSign, keyCertSign
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/ca-root.conf 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/ca-root.conf
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/ca-root.conf    
1970-01-01 01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/ca-root.conf    
2022-07-08 19:57:24.000000000 +0200
@@ -0,0 +1,20 @@
+[ req ]
+default_bits        = 4096
+default_md          = sha256
+distinguished_name  = req_distinguished_name
+encrypt_key         = no
+prompt              = no
+x509_extensions     = req_v3_ca
+
+[ req_distinguished_name ]
+countryName         = US
+stateOrProvinceName = New York
+localityName        = Brooklyn
+organizationName    = zzzcomputing
+commonName          = zzzcomputing Client Root Certificate Authority
+
+[ req_v3_ca ]
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid:always,issuer:always
+basicConstraints = CA:true
+keyUsage = cRLSign, keyCertSign
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/client-ca-root.conf 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/client-ca-root.conf
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/client-ca-root.conf     
1970-01-01 01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/client-ca-root.conf     
2022-07-08 19:57:24.000000000 +0200
@@ -0,0 +1,20 @@
+[ req ]
+default_bits        = 4096
+default_md          = sha256
+distinguished_name  = req_distinguished_name
+encrypt_key         = no
+prompt              = no
+x509_extensions     = req_v3_ca
+
+[ req_distinguished_name ]
+countryName         = US
+stateOrProvinceName = New York
+localityName        = Brooklyn
+organizationName    = zzzcomputing
+commonName          = zzzcomputing Client Root Certificate Authority
+
+[ req_v3_ca ]
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid:always,issuer:always
+basicConstraints = CA:true
+keyUsage = cRLSign, keyCertSign
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/client.conf 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/client.conf
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/client.conf     
1970-01-01 01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/client.conf     
2022-07-08 19:57:24.000000000 +0200
@@ -0,0 +1,18 @@
+[ req ]
+default_bits        = 4096
+distinguished_name  = req_distinguished_name
+encrypt_key         = no
+prompt              = no
+req_extensions      = req_v3_usr
+
+[ req_distinguished_name ]
+countryName         = US
+stateOrProvinceName = New York
+localityName        = Brooklyn
+organizationName    = zzzcomputing
+commonName          = zzzcomputing Client Certificate
+
+[ req_v3_usr ]
+basicConstraints = CA:FALSE
+nsCertType = client
+keyUsage = nonRepudiation, digitalSignature, keyEncipherment
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/server.conf 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/server.conf
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/conf/server.conf     
1970-01-01 01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/conf/server.conf     
2022-07-08 19:57:24.000000000 +0200
@@ -0,0 +1,21 @@
+[ req ]
+default_bits        = 2048
+distinguished_name  = req_distinguished_name
+encrypt_key         = no
+prompt              = no
+req_extensions      = req_v3_usr
+
+[ req_distinguished_name ]
+countryName         = US
+stateOrProvinceName = New York
+localityName        = Brooklyn
+organizationName    = zzzcomputing
+commonName          = *.__DOMAIN__
+
+[ req_v3_usr ]
+basicConstraints = CA:FALSE
+subjectAltName = @alt_names
+
+[ alt_names ]
+DNS.1 = *.__DOMAIN__
+DNS.2 = __DOMAIN__
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/generate/tool 
new/dogpile.cache-rel_1_1_8/tests/tls/generate/tool
--- old/dogpile.cache-rel_1_1_5/tests/tls/generate/tool 1970-01-01 
01:00:00.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/generate/tool 2022-07-08 
19:57:24.000000000 +0200
@@ -0,0 +1,101 @@
+#!/usr/bin/env bash
+set -eu
+
+COMMAND=$1
+shift
+OUT=$1
+shift
+DOMAIN=$1
+shift
+
+mkdir -p $(dirname $OUT)
+PREGEN_OUT=$(echo "$OUT" | sed "s#/gen/#/pregen/#") 
+if [ -e $PREGEN_OUT ]
+then
+  cp $PREGEN_OUT $OUT
+  exit 0
+fi
+
+case "$COMMAND" in
+chain)
+  cat $@ > $OUT
+  ;;
+dhparam)
+  openssl dhparam \
+  -out $OUT \
+  $1
+  ;;
+gen-csr)
+  openssl req -new \
+    -out $OUT \
+    -config <(cat $1 | sed "s/__DOMAIN__/$DOMAIN/g") \
+    -key $2
+  ;;
+gen-csr-no-subject)
+  openssl req -new \
+    -subj / \
+    -out $OUT \
+    -config <(cat $1 | sed "s/__DOMAIN__/$DOMAIN/g") \
+    -key $2
+  ;;
+gen-ca)
+  openssl req -new -x509 -days 7300 \
+    -out $OUT \
+    -config $1 \
+    -key $2
+  ;;  
+gen-key)
+  openssl genrsa \
+    -out $OUT \
+    $1
+  ;;
+gen-ecckey)
+  openssl ecparam \
+    -out $OUT \
+    -name $1 \
+    -genkey
+  ;;
+gen-pkcs12-p12)
+  openssl pkcs12 \
+    -out $OUT \
+    -export \
+    -clcerts \
+    -passout "pass:$DOMAIN" \
+    -in $1 \
+    -inkey $2
+  ;;
+pkcs12-convert-p12-pem)
+  openssl pkcs12 \
+    -out $OUT \
+    -clcerts \
+    -passin "pass:$DOMAIN" \
+    -passout "pass:$DOMAIN" \
+    -in $1
+  ;;
+self-sign)
+  openssl x509  -req  -CAcreateserial \
+    -out $OUT \
+    -days $1 \
+    -$2 \
+    -extensions $3 \
+    -extfile <(cat $4 | sed "s/__DOMAIN__/$DOMAIN/g") \
+    -in $5 \
+    -signkey $6
+  ;;
+sign)
+  openssl x509 \
+    -req \
+    -CAcreateserial \
+    -days $1 \
+    -$2 \
+    -out $OUT \
+    -extensions $3 \
+    -extfile <(cat $4 | sed "s/__DOMAIN__/$DOMAIN/g") \
+    -in $5 \
+    -CAkey $6 \
+    -CA $7
+  ;;
+*)
+  echo "Unknown command."
+  exit 1
+esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/server.key 
new/dogpile.cache-rel_1_1_8/tests/tls/server.key
--- old/dogpile.cache-rel_1_1_5/tests/tls/server.key    2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/server.key    2022-07-08 
19:57:24.000000000 +0200
@@ -1,27 +1,27 @@
 -----BEGIN RSA PRIVATE KEY-----
-MIIEpQIBAAKCAQEA052cFffr1JEyRUi5MoyaHCPlxSMCSFBNNFJj+5l1tmSfyIe1
-K6t9w+soynVTDz6Jomwj6Y1rj2AUGp6Lnjre8lXU1LEh+NZ7xkkYWOTD+I93vwaI
-QeVHQRmZKbQTK+1XAkuHs9yK6p0ifcljwO6yfEE+PCTOJGcuyjPej3hb1RQM0Cky
-a4M/QIOL6wcvrceeZIfyN3pxl5nMNpMqlJVhGMDsL/0lRlsy92GzcdVI1GJmYBqh
-9jn5gLNYcXtNPTXN2BW02l4GlQ8ak1JsLr5v0OfDJqAjjB4Tj8Kaolj+tkS+09Qa
-ynTj2Dgv2HDNpOyzvfxXaWU/c1BtuuhWdNLXLQIDAQABAoIBAQCdnIogoqL3k51J
-lTy6tZYi12nPRp/wlD6sdaEaR9YwnwmTJeB+QiBNx9x9zpyqgf2pB7pHvZkbFIhk
-uylqFJbxD5SRRczztWxC5zZHHzwG6XRaxta9nbNQfWxib0jIMuHXR8Iu6FhfHeIO
-peyyShaODVn5GcCfxGpJGBDv8skTDZ0XrA8JOsNz+jQg5wb/zlMiLiosVXNikQ8Q
-bduFrBQURrHkZhBVTXHX3pbLzZ3HFcBIs/qaVuRmfSDq+IS6z4IuuBpi95m1nZIR
-uBhvNgMNQmJbHm96S+JydoaFbo2WHyOXwhkVEQ/kAUgyfKO5fR/XQLp7v6Yrw9CV
-WyuLeVjRAoGBAO8BkzjgTBxShWsXvTyepWBybgnAVVUxWSFr5xdDpZTk2i4CgAgh
-FyQrvgpZkbXDFCkphEBBoBIzLaWeNxFVS01YJK2Ds27uq3MXvmrTJFRDwRkjDaA6
-fwV7iM/+22zqAdDzkYRDrQYSRocPJQwN22FltBA3/eGpPIvUUdkVRiBvAoGBAOKp
-eAuZeKYH1FauhKBuXnSnpFJveATsqMDv53HY9osljvqJlZeEJF0koKroSLoVdjoz
-UDu+SQ8nldAnEWJCDyVmUJnF4jlC9Ih1loLsolcc7gY6Mi/yVy3OnTlnskBl4f/x
-ue4S7S6TnEwFVPRDS9g002XnJl1078wz78pO7hgjAoGBALBTuye04rHqd5/gra3x
-ZRTYlzH+gXYOqDEuCBlzwM8uX4CeO5LDxuzakKPWHNe6Cj+r73PwdoW22DBdn0bc
-ZGe1ZanVhiWLU1Xf6I2rJBw+uFExOTZCsb97uh2panzZz2k2qN6phxb5mKq/k5dn
-Cbi7bbKhfF5lmtOWWqQLO+dlAoGAGTLqC7AWP68jJjfkuslKawGwPRHzb+i3oiuJ
-uZh7YGDekm/1V5DzUf+edSG55CY6rKHDy8CN8sdd2nRddGUPtgK390COs/sDoKAi
-CZAxRCoNNFgH+Fii5I7R3+3tXUd2ZrQDDbrA76qtd64oEbfhmLnWvr+B/mXfuv4T
-LJS1160CgYEAsvgvuLJT551h7XAeZwW/4LeFEtesKwJpix4QlXxLnaoxUrVHsRSK
-7RH8LpZlDand6G8blZdfCV9v+buBXRETL4Zv30EafHfJ5tpt0eGUQDKg8/V5Jil9
-IQFZxbTC1fCxE17l5XCfxsetsSAMUslXyY3r1jAEX9836yFx+BgnPHs=
+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
 -----END RSA PRIVATE KEY-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/server_chain.pem 
new/dogpile.cache-rel_1_1_8/tests/tls/server_chain.pem
--- old/dogpile.cache-rel_1_1_5/tests/tls/server_chain.pem      2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/server_chain.pem      2022-07-08 
19:57:24.000000000 +0200
@@ -1,66 +1,65 @@
 -----BEGIN CERTIFICATE-----
-MIIEtDCCApygAwIBAgIJAInDKKlH1oebMA0GCSqGSIb3DQEBCwUAMIGVMQswCQYD
-VQQGEwJDWjEaMBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJy
-bm8xGzAZBgNVBAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE+MDwGA1UEAww1U2Nvcmlh
-IENvcnBvcmF0aW9uIEludGVybWVkaWF0ZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkw
-HhcNMjAwNDAzMTQ0MDM5WhcNMjIwNDAzMTQ0MDM5WjBrMQswCQYDVQQGEwJDWjEa
-MBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJybm8xGzAZBgNV
-BAoMElNjb3JpYSBDb3Jwb3JhdGlvbjEUMBIGA1UEAwwLKi5sb2NhbGhvc3QwggEi
-MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDTnZwV9+vUkTJFSLkyjJocI+XF
-IwJIUE00UmP7mXW2ZJ/Ih7Urq33D6yjKdVMPPomibCPpjWuPYBQanoueOt7yVdTU
-sSH41nvGSRhY5MP4j3e/BohB5UdBGZkptBMr7VcCS4ez3IrqnSJ9yWPA7rJ8QT48
-JM4kZy7KM96PeFvVFAzQKTJrgz9Ag4vrBy+tx55kh/I3enGXmcw2kyqUlWEYwOwv
-/SVGWzL3YbNx1UjUYmZgGqH2OfmAs1hxe009Nc3YFbTaXgaVDxqTUmwuvm/Q58Mm
-oCOMHhOPwpqiWP62RL7T1BrKdOPYOC/YcM2k7LO9/FdpZT9zUG266FZ00tctAgMB
-AAGjMDAuMAkGA1UdEwQCMAAwIQYDVR0RBBowGIILKi5sb2NhbGhvc3SCCWxvY2Fs
-aG9zdDANBgkqhkiG9w0BAQsFAAOCAgEAfSD5SawR6hN5IJTu+ddZ0yDhC2EUSHGR
-EDRNsFfV0UDX39LycWlV/Xhi76snh08CsosyfCD0M3yXNSLl5OzNtgL673ENPMmL
-81EhGhTYjrLa5YrzupSFkRZZJ3tMvaq/3pvyMGCmcKpbjaTIUv2R9qCyk3JAIGws
-AnH226yQI/7QqEUnwN3GUiVO3MabS/dzkz1KJGdycvamdspeWw6oAt8uwlBMt4+2
-x5Mbhh7v4DIrKWx3mcv7GPWOGJTQmNJtU8Nx4ro79boB+5hSLfwLLVciaRh8tt0z
-rgNIo94TI3E9otfm6uMokFWmCSwlqGVZu70Ew3gUY6GRD3ectIvJZwHukGVP7Drv
-BJh7X6NgTQzXj826h0a4QBzJrRMimhWEY6Y/wS+2lkd3jIpWl8dhKiMMu69EBhUD
-xf7HOijghXDhuNm/n+sO1Kb0LBRwuacjVSa/v0hKAHBJaABoSr8hW0+7GJy3qX/4
-glZ+WBx5I3zXWpu7F2aSbbTL8CcosUBvUD1d3wxAMRD58bRwBJGhgKzR/ofPTl2J
-yx/p12PXGI85C/yn3EF73yQyMtsiUkOh3+158Ko2xVJTcQwnVdcqOS0NxpM9WFaW
-c4Wt2NXBlhWTpcHChpcwaxb7btQrIbw/F4HmQRAjrsjXqwBn9bhN6o5gbU5WWUwT
-L0bnjB5GS0U=
+MIIEozCCAougAwIBAgIUQBLpJT4SYzqecClHWJ+V45q0KCQwDQYJKoZIhvcNAQEL
+BQAwgYQxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwI
+QnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1dGluZzE4MDYGA1UEAwwvenp6Y29t
+cHV0aW5nIEludGVybWVkaWF0ZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMjIw
+NjA5MTczOTM3WhcNMjQwNjA4MTczOTM3WjBgMQswCQYDVQQGEwJVUzERMA8GA1UE
+CAwITmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21w
+dXRpbmcxFDASBgNVBAMMCyoubG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOC
+AQ8AMIIBCgKCAQEAuLEUVXSuFiIrW1PCnIphtW0jOQjr3QRp5DSbtEYWtxR4Sj9j
+bHrykjtvrEoUnoGlpPe/nnXCZDeLpQR7iPx/XeXuRMo7iQki3f6HX8dYU8ZYHSLZ
+9IB5P1DiyEmvsRzydAUbvjS6/Hu/+wjZXtVo4XWwrjHZxiqfYLw1bMLTNKLvy+Fc
+qpmVji16G6jKQunecInU2bQ1lxYulnGswCoKcyq7L3FJuVtNqmyRe3slVRXE/I2C
+8TX1kpK2uJG7Zjpiiy9NHGCTULLp0Y+SS1quiXTlqvT4N39GN1YJh9mYvawUaRC/
+Y9Rc2zLUe4I93FLaiQ9xDMvXTHbeY8d72X4AXQIDAQABozAwLjAJBgNVHRMEAjAA
+MCEGA1UdEQQaMBiCCyoubG9jYWxob3N0gglsb2NhbGhvc3QwDQYJKoZIhvcNAQEL
+BQADggIBAFmP5HiBpl/M7DG3yDiELnsUbdl5nAbaw/fMN/oBpPF2UKh+Y/4o6YSx
+7FaIk3K6S5k5kgVQwCLQU0WXKBYoY8qzCW0nIOznTtspYBV9eM5X77wjnWQC5IwK
+y508HC/4OfByiaJY4HzDbK6lKZt9wBv4WWyfAn7PWGET1YoyoylxgkvdYCAV5gbr
+sA9lq86/G+wQ5ins8HLll7k6yZ+ok7jJNygEGE/jrxDcYugczEy6rNLf+G2lkdbi
+p1kLxqhhzPn5ejuxZz7nvefeXTi/vP/oK2CB9p/ZWvNVnmoRU8wToetm7Lmiipw8
+aKXEYED4xpyFuu0ek+5HHk6e4wbK52Uxdn1gY+sESMwP/Lwx/TpRRtbvciRaxN3i
+lR3k7gCpVWTjBfhFWaogQdVRn9/o3SQ+XcMG2QrLdoe9EAEHE84u6EMvhu4wWSiN
+4lylLLj09au2vz75C9rhvVqsUQNzh1pi+YpBGaeyNgNQdF3r6Hpu0eXdR7o6X9De
+Dm/msAhnAFD31JRaDaXluQeEUrd0WA4cduvmPbqoSIebmsdXzn1HBL8LjEJsYT9z
+ubrNq5RrR1h6d5dn8oA5S0UDvmgjCJIIOVVH0BKmAMg+gwOan2J7/t/tIFRE9UAR
+QKERKP3gCFyjhNtBK8na1F6R98vLDJwJSYTlv9dSWzGNaX1D5Cre
 -----END CERTIFICATE-----
 -----BEGIN CERTIFICATE-----
-MIIGqzCCBJOgAwIBAgIJAPwK/9rWwT83MA0GCSqGSIb3DQEBCwUAMIGNMQswCQYD
-VQQGEwJDWjEaMBgGA1UECAwRSmlob21vcmF2c2t5IGtyYWoxDTALBgNVBAcMBEJy
-bm8xGzAZBgNVBAoMElNjb3JpYSBDb3Jwb3JhdGlvbjE2MDQGA1UEAwwtU2Nvcmlh
-IENvcnBvcmF0aW9uIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4XDTIwMDQw
-MzE0NDAzOVoXDTMwMDQwMTE0NDAzOVowgZUxCzAJBgNVBAYTAkNaMRowGAYDVQQI
-DBFKaWhvbW9yYXZza3kga3JhajENMAsGA1UEBwwEQnJubzEbMBkGA1UECgwSU2Nv
-cmlhIENvcnBvcmF0aW9uMT4wPAYDVQQDDDVTY29yaWEgQ29ycG9yYXRpb24gSW50
-ZXJtZWRpYXRlIENlcnRpZmljYXRlIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEB
-BQADggIPADCCAgoCggIBAMZWxzstRzCkLe6GwE7nnm1Rrn6JJYYWo6VhW4+zPsE7
-simraHlIZD3KtGSQUvdTI6LMdKOZk6LXuQcJAtDpYiFBQ6uEN0ckz1e2BY4V4fze
-9+7GX1+zrh3Gdoi9qf0iKYzCX+uyk5+VOrbBZ5Vqodd/Tk/dg4WWhkeocgIxxKK0
-0A+2bMHxGZAImMnBXWDt+I9FJv6/N0dHhJsVt8FQd5rC6Uf58VBh6MZOPq7aHHsM
-NjjNDT0XjOiDmFUNvizncXwHBP/2w0CBflsaU0ehW9I0yLApqrUumF1YqlgIg57h
-IsoER97caGjPVqo9/bNDraJ5XdLymM0VNzJZ3AxIpot7NqCRoJWlJiJf1n/7tzva
-eVOTLWaEAXgxuYpRuXIebRZUJMUOOLDZHxAfUxgRBOyFutgOyEPc0tbcvQ/P/FWk
-ZaGDXjQaivGh7lfs1r7LXj5FueePAvf6G99xccAvfHYsy8wWWbh/w0MurbNusmY/
-VcRHP/G0O0ynF/PTh7LDF+tGShrnd4UHgAAipzES/HhBfp4+cwXYerTaq91IQW+k
-KHLYO0YdLA3jqeD727gL4CYkQCkPTsUhRG3xbUD9Q7J7hJ3bQg5IFgDtMfzFJMX3
-flptj/5jcf97PCwW2bwuoWqpmV4u/kZmXHewYHMRjfZTrafZM3KbB1x9Zv6R9Icb
-AgMBAAGjggECMIH/MB0GA1UdDgQWBBRh0BoVha3OSmA34kKGMoiJtp2qMDCBwgYD
-VR0jBIG6MIG3gBSFXP15d8yaohoDibc1WkmkjW3PUKGBk6SBkDCBjTELMAkGA1UE
-BhMCQ1oxGjAYBgNVBAgMEUppaG9tb3JhdnNreSBrcmFqMQ0wCwYDVQQHDARCcm5v
-MRswGQYDVQQKDBJTY29yaWEgQ29ycG9yYXRpb24xNjA0BgNVBAMMLVNjb3JpYSBD
-b3Jwb3JhdGlvbiBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eYIJAM58RO9sXvoH
-MAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQBs
-65lfyy6BwzXaz8EmrWj/5xerT1yQWKjiViZ0iJiFo2HTOs3FI1vv3IOEELn+65i2
-56hUBB22CRbCpgJVcPGzkPc/p15u5XQeCuCpYdcLGjOVT8TRDY+lJ32MVdzlA1pB
-2oxzTJYqTeGmWGMZmFvrpYuj4P2Cxroo+NcmShdgr1TNXdZkVf+sCwC15xmpxw8n
-bHOO801ip/FKX8LqYtO7FgogtlWqj1pKWUfyN+omoDP0dxNMGgmUqmpX5mjl09l2
-6gR+ULyRk+7CwAcVEoDKbQh1eM2brDW6olw7ynzYufOyT6n9zdqC55TB0ix0RxmR
-1pntbAM4SLI7FtKLH9aReKI6mh6hKrglKMiwq2bFUw33q4Mq1WGXmmc1hlkeqhCB
-jq6Xsr1It2C+qEAnLZ/sdiZLfXnsvkTC2FuXU3w5LSu5EBOVGhkAjM0vZR1b77PX
-cdjuXQc/DDjEC2WM995j8p1gM+NYeD0o1NXdWULpOHJEtVMIWnaL9PRQY6uP7vJl
-ObTSTf1XeP1fTN82fpdyhIuwoVH/CW0UJiMKE65dHqJAh2sG6TNGEnaTw39L74C2
-BHVPOAJ20h/FBSa0gIENyjNwESv45HeZ0dighxpHMZ28V1+EhDfrvYBklbHRpVWH
-GPyddLmQ8WCpsUW8enoHkzuVcQQNS4CTcj0jdTh/fw==
+MIIGnTCCBIWgAwIBAgIUcjcyBwt103/wVJnsjU67N/qqRJUwDQYJKoZIhvcNAQEL
+BQAwgYMxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwI
+QnJvb2tseW4xFTATBgNVBAoMDHp6emNvbXB1dGluZzE3MDUGA1UEAwwuenp6Y29t
+cHV0aW5nIENsaWVudCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTAeFw0yMjA2
+MDkxNzM5MzdaFw0zMjA2MDYxNzM5MzdaMIGEMQswCQYDVQQGEwJVUzERMA8GA1UE
+CAwITmV3IFlvcmsxETAPBgNVBAcMCEJyb29rbHluMRUwEwYDVQQKDAx6enpjb21w
+dXRpbmcxODA2BgNVBAMML3p6emNvbXB1dGluZyBJbnRlcm1lZGlhdGUgQ2VydGlm
+aWNhdGUgQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
+3M1XdgW0FWqaR741s9wMPe1NT4cPCrkSmcX/GnwvZZLPECQj1O9xIOjpMJSMFolQ
+kKZ+Q3NyD5dDSa08qJu8/1ImGoK2/+OUjjwIkAX44CYC9TANp2UQxqHZPAkwmiQK
+8CkVif00uS5gbhnJP4qXWXS7YN/RDiXuG+x2KjcY0sR+2glPA9mQ0T5S7Waqc4Wm
+ZoixJBjcW2nZVnbIvHKPoCS0BVT9S+ou26fAKytMoCPo4zGbDZeofpbd+Ut5zQoi
+odO3OYgVgOMKRafKtLv3kEbXlBEZx3tjnyQwPr7z5yyW0a1ZKLpzayEUYYiPtcJM
+l4kYBJEVw3WXizQTiFYslu4Zcw1BFmlCaug4MW0JDIAtwQ8Y/8L03G5zw+v/e0GV
+eiwq/z53IRgl0AFvbG5cOTsG0VX3uxYyQF4zmpYmQaepW1cnNjNPZv0vEX5hwenW
+hOIipkZLxO6o0xTwuVOf9VLO6KNvhYgw3HGql18zWX+wrooCQY5EfOP1qy0rqyYT
+Vj0cIN8p1mheQzlCNxPsTHj1r5OqLMvdKgp/SBaNjvg94pTR1FK0Az5VttcNPHd5
+Laz9eccQuK4///yikrzYXB9gC+lVwgUKG4ecX2sQgDAwZWkvem1CajvGERX0A8Em
+OzP8LXX+XuwDEO/ScZ7z6hMif4JKyiaVnY6pEv7X4V0CAwEAAaOCAQQwggEAMB0G
+A1UdDgQWBBQqQUfkyrMWiOj85MummYJpN2mqfTCBwwYDVR0jBIG7MIG4gBQ3ZFqw
+7CWnwcnQTgmLQ2zTyYPH4aGBiaSBhjCBgzELMAkGA1UEBhMCVVMxETAPBgNVBAgM
+CE5ldyBZb3JrMREwDwYDVQQHDAhCcm9va2x5bjEVMBMGA1UECgwMenp6Y29tcHV0
+aW5nMTcwNQYDVQQDDC56enpjb21wdXRpbmcgQ2xpZW50IFJvb3QgQ2VydGlmaWNh
+dGUgQXV0aG9yaXR5ghQWgciotCx7xXfmPo/QhBVtwxawHjAMBgNVHRMEBTADAQH/
+MAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAokFPow+L4SM04QbWRCoI
+ERtl7HZrantOCxnBjmzXIpxydEoiWbDibrjKUgl0fOORqMzHKIjB6vEhQtGufAh/
+nmf/gkLVzm910/Oxsa5d/mOSjl0LQbD3GUPfXwZzzuFuGFQaNPAWgNdRRts2SZg3
+hUzKGzNfBnYcSgGXfB7EwY1OsfsAECSeUQcUN5qPJokw5/g2Fj1E44cAOJiXi5VN
++tNe3bz3vWDR/BcMxx4of6ibYEKEXQz1mJwxPqVVuiFyoZF9PQbDbh1pWzg3beUZ
+nWsg+GHgfmHwRJDj9YaDtADwoLNwNDr4IBWBm6bBD0MB4R7Ufzvve9oDFbDw2ZQr
+RN0txnLfjf4I9bjDbsm7jtMhdWF9YoFOfYlSk/nvx6or9sx6yN2H9Oinvt63I/z/
+HsIYPuoZCO47BLnUTUHRKR/OwfXs8y1V+LJ4WcDHn23rRa8XSSGF7nkggP9ScdXW
+/MD6q9epeXUAt1ydblafDS7nx2+MHem98zVLZMdKYYcp2jo9KznIogT1InI5CYwq
+ighMOqvST66cIXAvprhInFcjTedzUuuFdX9wyvLICVsmzzIgAHAnN3fthm0vDAhb
+2l6AQ+rsYcj1GBvfL0ljLW+7UBAOiDKEexhe9MKlTGOy/jAEsvoOgayvB2hcXLlq
+7Y2ptXwfMqvRQOpXkUHCE7Q=
 -----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tests/tls/update.sh 
new/dogpile.cache-rel_1_1_8/tests/tls/update.sh
--- old/dogpile.cache-rel_1_1_5/tests/tls/update.sh     2022-01-19 
19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tests/tls/update.sh     1970-01-01 
01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-#!/bin/bash
-
-# source:
-# https://github.com/scoriacorp/docker-tls-memcached
-# courtesy Mois??s Guimar??es
-
-# extracting client credentials
-docker run --rm scoriacorp/tls_memcached cat /opt/certs/key/client.key > 
client.key
-docker run --rm scoriacorp/tls_memcached cat /opt/certs/crt/client.crt > 
client.crt
-
-# extracting client CA certificate
-docker run --rm scoriacorp/tls_memcached cat /opt/certs/crt/client-ca-root.crt 
> client-ca-root.crt
-
-# extracting server credentials
-docker run --rm scoriacorp/tls_memcached cat /opt/certs/key/server-rsa2048.key 
> server.key
-docker run --rm scoriacorp/tls_memcached cat 
/opt/certs/chain/server-rsa2048.pem > server_chain.pem
-
-# extracting CA certificate
-docker run --rm scoriacorp/tls_memcached cat /opt/certs/crt/ca-root.crt > 
ca-root.crt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dogpile.cache-rel_1_1_5/tox.ini 
new/dogpile.cache-rel_1_1_8/tox.ini
--- old/dogpile.cache-rel_1_1_5/tox.ini 2022-01-19 19:23:08.000000000 +0100
+++ new/dogpile.cache-rel_1_1_8/tox.ini 2022-07-08 19:57:24.000000000 +0200
@@ -83,7 +83,7 @@
       flake8-rst-docstrings
       # used by flake8-rst-docstrings
       pygments
-      black==21.5b1
+      black==22.3.0
 commands =
     flake8 ./dogpile/ ./tests/ setup.py  {posargs}
     black --check .

Reply via email to