Skip to content

Change Log

Version 0.3.0

New

  • official support for cluster servers!!!
  • now all operations support omitting exceptions
  • make_key, make_pattern, encode and decode are now functions, so they can be used outside the backend (e.g: when using the raw client)
  • django_valkey.get_valkey_connection now works with shard client as well
  • replace django's close_caches receiver with close_async_caches

bug fix

  • fixed bug of omit_exception not handling generator and async generators
  • fixed bug of async get_valkey_connection checking if the client is async.

internal change

  • make_key and make_pattern return None if key/pattern is None
  • moved all operations from django_valkey.cache and django_valkey.async_cache.cache to django_valkey.base.
  • cluster client now uses the same methods as normal client, unless it has to have a specific method.
  • prefixing async methods with a is done dynamically now; (so no more aset = set), it's all handled in __getattr__.
  • moved async client methods to django_valkey.base_client.AsyncClientCommands.
  • moved sync client methods to django_valkey.base_client.ClientCommands.
  • make_key, make_pattern, encode, decode, _decode_iterable_result are now all sync methods and moved to django_valkey.base_client.BaseClient.
  • AsyncHerdClient._pack and AsyncHerdClient._unpack are now sync methods.
  • common parts of herd clients now live in django_valkey.base_client
  • shard client now has get_client instead of get_server
  • all tests now use pytest tools
  • use anyio for async tests instead of pytest-asyncio
  • add editorconfig file

Version 0.2.0

  • drop support for EOL django versions

  • floats are no longer serialized this is to support atomic float operations

  • minor bug fix

Version 0.1.8

  • Added AsyncSentinelClient

  • internal bug fix

Version 0.1.7

  • added AsyncHerdClient

Version 0.1.6

  • added blocking and lock_class to get_lock parameters.

Version 0.1.5

  • Added mset and mget (atomic)

  • get_many() is now non-atomic

  • extended base.BaseValkeyCache to have more logic

Version 0.1.4

  • Added BaseClient class

  • BREAKING: changed BaseConnectionPool to BaeConnectionFactory

Version 0.1.3

  • Moved some method implementation out of BaseConnectionFactory class

  • added a guide to use the base classes

Version 0.1.2

  • Added an async backend

  • Added an async client

  • Added two async connection factories

  • Added documentation for async client

Version 0.0.17

  • Added migration guide to documents

  • changed documentation setup

  • added RESP3 documentation

  • changes in README.rst

  • cleaning up the codebase

  • fixed some test settings

  • major internal refactoring

  • renamed lock() to get_lock(), but the old form is still available.

Version 0.0.15

Released 2024/09/07

  • Added this documentation!

  • changed VALKEY_CLIENT_CLASS to BASE_CLIENT_CLASS for clarity

  • changed CLIENT_KWARGS to BASE_CLIENT_KWARGS for clarity

  • added some docstring to compressor classes

  • fixed some messages generated by autocomplete