Current Series Release Notes

6.3.0-8

Upgrade Notes

  • Support for Python 3.8 has been removed. Now the minimum python version supported is 3.9 .

6.1.0

New Features

  • The redis driver now supports the following options.

    • sentinel_username

    • sentinel_parameters

    • sentinel_ssl

Bug Fixes

  • The redis driver no longer enables authentication for redis sentinel when authentication is enabled in redis. This was the previous behavior before 6.0.0, and was already required by some deployment tools like kolla. Now authentication for redis sentinel is controlled by a separate options (sentinel_username and sentinel_password).

  • The redis driver no longer enables SSL for redis sentinel when SSL is enabled in redis, to restore the compatibility with older versions. Now SSL for redis sentinel is controlled by the separate sentinel_ssl option.

6.0.0

New Features

  • Now redis backend supports customizing path to CA certificates using the ssl_ca_certs query parameter.

  • Redis driver now supports the health_check_interval option.

  • The redis coordination driver now parses username in coordination url and use it in authentication requests to Redis.

  • The redis coordination driver now applies the connection arguments to Redis sentinel. This allows enabling SSL or authentication in Redis Sentinel. Note that using different SSL certificates or different credentials is not supported now.

Upgrade Notes

  • The socket_keepalive option of redis driver no longer accepts integers other than 0 and 1.

Bug Fixes

  • The socket_keepalive option of redis driver now accepts boolean values.

5.0.0

New Features

  • The etcd3gw driver now automatically discovers available etcd API version and determines the api path. The driver detects the appropriate api path before sending its first request, and the path is reused for its subsequent requests. Services may need to be restarted after its backend etcd server is upgraded, so that the new api path is detected. The detection is skipped if the coordination backend url contains the api_version query parameter or the ETCD3GW_API_PATH environment is set.

Upgrade Notes

  • The etcd3 driver has been removed.

Deprecation Notes

  • The zake driver has been deprecated and will be removed in a future release.

4.3.0

Upgrade Notes

  • This version of tooz defaults to the v3 endpoint for the etcd3gw backend. The previous behavior can be restored by appending ?api_version=v3alpha to the coordination URL. The v3alpha and v3beta endpoints have been deprecated by upstream etcd.

  • The minimum redis-py version required is now >= 3.0.0

4.0.0

New Features

  • Added TLS support for Zookeeper.

    TLS-related options can be defined in a connection URL as query parameters and they will be passed to the Kazoo driver as client arguments.

    • ca: SSL CA file to use for authentication

    • certfile: SSL certfile to use for authentication

    • keyfile: SSL keyfile to use for authentication

    • keyfile_password: keyfile password

    • use_ssl: controls whether SSL is used or not. Default to False.

    • verify_certs: when use_ssl is True you can control whether to complete certificate validation

    This also bumps minimum kazoo version to >=2.6.0

3.0.0

New Features

  • Added TLS support for MySQL driver.

    The following TLS-related options now can be specifed in the MySQL connection URL as query parameters

    ssl_ca

    path to the CA bundle to use for verifying server certificate

    ssl_capath

    path to folder with CA bundle files

    ssl_cert

    path to client public key certificate file

    ssl_key

    path to client private key file

    ssl_check_hostname

    verify server hostname against its certificate, accepted values are “true”, “1”, “yes” or “false”, “0”, “no” (default is “true”)

    ssl_verify_mode

    whether to verify TLS connection accepted values are “true”, “1”, “yes”, “required” or “false”, “0”, “no”, “none”, or “optional”

    ssl_cipher

    list of permissible ciphers for connection encryption

Bug Fixes

  • [etcd3gw] Membership lease can be already expired to the moment of lease refreshing. In this case heartbeat will try to refresh expired lease forever without success. The patch checks if lease is expired and creates new one.

  • Fixs inappropriate logic in memcachedlock.release()

2.11.0

Deprecation Notes

  • The etcd3 driver is deprecated, it will be removed in a future release. No testing is performed on this driver.

2.10.0

New Features

  • Redis driver retries actions for up to 15 times when met with error connecting to Redis.