Update redis to 3.0.1 (#1350)
Update redis to 3.0.1 (#1350)

This PR updates [redis](https://pypi.org/project/redis) from **2.10.6** to **3.0.1**.



<details>
  <summary>Changelog</summary>
  
  
   ### 3.0.0
   ```
   BACKWARDS INCOMPATIBLE CHANGES
    * When using a Lock as a context manager and the lock fails to be acquired
      a LockError is now raised. This prevents the code block inside the
      context manager from being executed if the lock could not be acquired.
    * Renamed LuaLock to Lock.
    * Removed the pipeline based Lock implementation in favor of the LuaLock
      implementation.
    * Only bytes, strings and numbers (ints, longs and floats) are acceptable
      for keys and values. Previously redis-py attempted to cast other types
      to str() and store the result. This caused must confusion and frustration
      when passing boolean values (cast to &#39;True&#39; and &#39;False&#39;) or None values
      (cast to &#39;None&#39;). It is now the user&#39;s responsibility to cast all
      key names and values to bytes, strings or numbers before passing the
      value to redis-py.
    * The StrictRedis class has been renamed to Redis. StrictRedis will
      continue to exist as an alias of Redis for the forseeable future.
    * The legacy Redis client class has been removed. It caused much confusion
      to users.
    * ZINCRBY arguments &#39;value&#39; and &#39;amount&#39; have swapped order to match the
      the Redis server. The new argument order is: keyname, amount, value.
    * MGET no longer raises an error if zero keys are passed in. Instead an
      empty list is returned.
    * MSET and MSETNX now require all keys/values to be specified in a single
      dictionary argument named mapping. This was changed to allow for future
      options to these commands in the future.
    * ZADD now requires all element names/scores be specified in a single
      dictionary argument named mapping. This was required to allow the NX,
      XX, CH and INCR options to be specified.
    * Removed support for EOL Python 2.6 and 3.3. Thanks jdufresne
  OTHER CHANGES
    * Added missing DECRBY command. Thanks derek-dchu
    * CLUSTER INFO and CLUSTER NODES respones are now properly decoded to
      strings.
    * Added a &#39;locked()&#39; method to Lock objects. This method returns True
      if the lock has been acquired and owned by the current process,
      otherwise False.
    * EXISTS now supports multiple keys. It&#39;s return value is now the number
      of keys in the list that exist.
    * Ensure all commands can accept key names as bytes. This fixes issues
      with BLPOP, BRPOP and SORT.
    * All errors resulting from bad user input are raised as DataError
      exceptions. DataError is a subclass of RedisError so this should be
      transparent to anyone previously catching these.
    * Added support for NX, XX, CH and INCR options to ZADD
    * Added support for the MIGRATE command
    * Added support for the MEMORY USAGE and MEMORY PURGE commands. Thanks
      Itamar Haber
    * Added support for the &#39;asynchronous&#39; argument to FLUSHDB and FLUSHALL
      commands. Thanks Itamar Haber
    * Added support for the BITFIELD command. Thanks Charles Leifer and
      Itamar Haber
    * Improved performance on pipeline requests with large chunks of data.
      Thanks tzickel
    * Fixed test suite to not fail if another client is connected to the
      server the tests are running against.
    * Added support for SWAPDB. Thanks Itamar Haber
    * Added support for all STREAM commands. Thanks Roey Prat and Itamar Haber
    * SHUTDOWN now accepts the &#39;save&#39; and &#39;nosave&#39; arguments. Thanks
      dwilliams-kenzan
    * Added support for ZPOPMAX, ZPOPMIN, BZPOPMAX, BZPOPMIN. Thanks
      Itamar Haber
    * Added support for the &#39;type&#39; argument in CLIENT LIST. Thanks Roey Prat
    * Added support for CLIENT PAUSE. Thanks Roey Prat
    * Added support for CLIENT ID and CLIENT UNBLOCK. Thanks Itamar Haber
    * GEODIST now returns a None value when referencing a place that does
      not exist. Thanks qingping209
    * Added a ping() method to pubsub objects. Thanks krishan-carbon
    * Fixed a bug with keys in the INFO dict that contained &#39;:&#39; symbols.
      Thanks mzalimeni
    * ssl_cert_reqs now has a default value of &#39;required&#39; by default. This
      should make connecting to a remote Redis server over SSL more secure.
      Thanks u2mejc
    * Fixed the select system call retry compatibility with Python 2.x.
      Thanks lddubeau
    * max_connections is now a valid querystring argument for creating
      connection pools from URLs. Thanks mmaslowskicc
    * Added the UNLINK command. Thanks yozel
    * Added socket_type option to Connection for configurability.
      Thanks garlicnation
    * Lock.do_acquire now atomically sets acquires the lock and sets the
      expire value via set(nx=True, px=timeout). Thanks 23doors
    * Added &#39;count&#39; argument to SPOP. Thanks AlirezaSadeghi
    * Fixed an issue parsing client_list respones that contained an &#39;=&#39;.
      Thanks swilly22
   ```
   
  
</details>


 

<details>
  <summary>Links</summary>
  
  - PyPI: https://pypi.org/project/redis
  - Changelog: https://pyup.io/changelogs/redis/
  - Repo: https://github.com/andymccurdy/redis-py
</details>


mozilla-services/tecken,mozilla-services/tecken,mozilla-services/tecken,mozilla-services/tecken