coredis 5.2.0__tar.gz → 5.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of coredis might be problematic. Click here for more details.

Files changed (257) hide show
  1. {coredis-5.2.0 → coredis-5.3.0}/.github/workflows/compatibility.yml +2 -2
  2. {coredis-5.2.0 → coredis-5.3.0}/.github/workflows/main.yml +2 -2
  3. {coredis-5.2.0 → coredis-5.3.0}/HISTORY.rst +11 -0
  4. {coredis-5.2.0 → coredis-5.3.0}/PKG-INFO +2 -2
  5. {coredis-5.2.0 → coredis-5.3.0}/README.md +0 -1
  6. {coredis-5.2.0 → coredis-5.3.0}/coredis/_version.py +2 -2
  7. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/__init__.py +5 -1
  8. {coredis-5.2.0 → coredis-5.3.0}/coredis/typing.py +14 -1
  9. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/modules.rst +0 -5
  10. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/index.rst +0 -1
  11. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/modules.rst +0 -129
  12. {coredis-5.2.0 → coredis-5.3.0}/docs/source/index.rst +0 -1
  13. {coredis-5.2.0 → coredis-5.3.0}/pyproject.toml +1 -0
  14. {coredis-5.2.0 → coredis-5.3.0}/uv.lock +3 -3
  15. {coredis-5.2.0 → coredis-5.3.0}/.gitattributes +0 -0
  16. {coredis-5.2.0 → coredis-5.3.0}/.github/FUNDING.yml +0 -0
  17. {coredis-5.2.0 → coredis-5.3.0}/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
  18. {coredis-5.2.0 → coredis-5.3.0}/.github/ISSUE_TEMPLATE/feature.md +0 -0
  19. {coredis-5.2.0 → coredis-5.3.0}/.github/dependabot.yml +0 -0
  20. {coredis-5.2.0 → coredis-5.3.0}/.gitignore +0 -0
  21. {coredis-5.2.0 → coredis-5.3.0}/.gitmodules +0 -0
  22. {coredis-5.2.0 → coredis-5.3.0}/.readthedocs.yml +0 -0
  23. {coredis-5.2.0 → coredis-5.3.0}/CODE_OF_CONDUCT.md +0 -0
  24. {coredis-5.2.0 → coredis-5.3.0}/LICENSE +0 -0
  25. {coredis-5.2.0 → coredis-5.3.0}/MANIFEST.in +0 -0
  26. {coredis-5.2.0 → coredis-5.3.0}/Makefile +0 -0
  27. {coredis-5.2.0 → coredis-5.3.0}/coredis/__init__.py +0 -0
  28. {coredis-5.2.0 → coredis-5.3.0}/coredis/_enum.py +0 -0
  29. {coredis-5.2.0 → coredis-5.3.0}/coredis/_json.py +0 -0
  30. {coredis-5.2.0 → coredis-5.3.0}/coredis/_packer.py +0 -0
  31. {coredis-5.2.0 → coredis-5.3.0}/coredis/_protocols.py +0 -0
  32. {coredis-5.2.0 → coredis-5.3.0}/coredis/_py_311_typing.py +0 -0
  33. {coredis-5.2.0 → coredis-5.3.0}/coredis/_py_312_typing.py +0 -0
  34. {coredis-5.2.0 → coredis-5.3.0}/coredis/_sidecar.py +0 -0
  35. {coredis-5.2.0 → coredis-5.3.0}/coredis/_utils.py +0 -0
  36. {coredis-5.2.0 → coredis-5.3.0}/coredis/_version.pyi +0 -0
  37. {coredis-5.2.0 → coredis-5.3.0}/coredis/cache.py +0 -0
  38. {coredis-5.2.0 → coredis-5.3.0}/coredis/client/__init__.py +0 -0
  39. {coredis-5.2.0 → coredis-5.3.0}/coredis/client/basic.py +0 -0
  40. {coredis-5.2.0 → coredis-5.3.0}/coredis/client/cluster.py +0 -0
  41. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/__init__.py +0 -0
  42. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/_key_spec.py +0 -0
  43. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/_utils.py +0 -0
  44. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/_validators.py +0 -0
  45. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/_wrappers.py +0 -0
  46. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/bitfield.py +0 -0
  47. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/constants.py +0 -0
  48. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/core.py +0 -0
  49. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/function.py +0 -0
  50. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/monitor.py +0 -0
  51. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/pubsub.py +0 -0
  52. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/request.py +0 -0
  53. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/script.py +0 -0
  54. {coredis-5.2.0 → coredis-5.3.0}/coredis/commands/sentinel.py +0 -0
  55. {coredis-5.2.0 → coredis-5.3.0}/coredis/config.py +0 -0
  56. {coredis-5.2.0 → coredis-5.3.0}/coredis/connection.py +0 -0
  57. {coredis-5.2.0 → coredis-5.3.0}/coredis/constants.py +0 -0
  58. {coredis-5.2.0 → coredis-5.3.0}/coredis/credentials.py +0 -0
  59. {coredis-5.2.0 → coredis-5.3.0}/coredis/exceptions.py +0 -0
  60. {coredis-5.2.0 → coredis-5.3.0}/coredis/experimental/__init__.py +0 -0
  61. {coredis-5.2.0 → coredis-5.3.0}/coredis/globals.py +0 -0
  62. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/autocomplete.py +0 -0
  63. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/base.py +0 -0
  64. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/filters.py +0 -0
  65. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/graph.py +0 -0
  66. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/json.py +0 -0
  67. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/__init__.py +0 -0
  68. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/__init__.py +0 -0
  69. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/autocomplete.py +0 -0
  70. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/graph.py +0 -0
  71. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/json.py +0 -0
  72. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/search.py +0 -0
  73. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/_callbacks/timeseries.py +0 -0
  74. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/response/types.py +0 -0
  75. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/search.py +0 -0
  76. {coredis-5.2.0 → coredis-5.3.0}/coredis/modules/timeseries.py +0 -0
  77. {coredis-5.2.0 → coredis-5.3.0}/coredis/parser.py +0 -0
  78. {coredis-5.2.0 → coredis-5.3.0}/coredis/pipeline.py +0 -0
  79. {coredis-5.2.0 → coredis-5.3.0}/coredis/pool/__init__.py +0 -0
  80. {coredis-5.2.0 → coredis-5.3.0}/coredis/pool/basic.py +0 -0
  81. {coredis-5.2.0 → coredis-5.3.0}/coredis/pool/cluster.py +0 -0
  82. {coredis-5.2.0 → coredis-5.3.0}/coredis/pool/nodemanager.py +0 -0
  83. {coredis-5.2.0 → coredis-5.3.0}/coredis/py.typed +0 -0
  84. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/__init__.py +0 -0
  85. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/credentials/__init__.py +0 -0
  86. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/credentials/iam_provider.py +0 -0
  87. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/locks/__init__.py +0 -0
  88. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/locks/extend.lua +0 -0
  89. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/locks/lua_lock.py +0 -0
  90. {coredis-5.2.0 → coredis-5.3.0}/coredis/recipes/locks/release.lua +0 -0
  91. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/__init__.py +0 -0
  92. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/__init__.py +0 -0
  93. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/acl.py +0 -0
  94. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/cluster.py +0 -0
  95. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/command.py +0 -0
  96. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/connection.py +0 -0
  97. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/geo.py +0 -0
  98. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/hash.py +0 -0
  99. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/keys.py +0 -0
  100. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/module.py +0 -0
  101. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/script.py +0 -0
  102. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/sentinel.py +0 -0
  103. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/server.py +0 -0
  104. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/sets.py +0 -0
  105. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/sorted_set.py +0 -0
  106. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/streams.py +0 -0
  107. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/strings.py +0 -0
  108. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_callbacks/vector_sets.py +0 -0
  109. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/_utils.py +0 -0
  110. {coredis-5.2.0 → coredis-5.3.0}/coredis/response/types.py +0 -0
  111. {coredis-5.2.0 → coredis-5.3.0}/coredis/retry.py +0 -0
  112. {coredis-5.2.0 → coredis-5.3.0}/coredis/sentinel.py +0 -0
  113. {coredis-5.2.0 → coredis-5.3.0}/coredis/stream.py +0 -0
  114. {coredis-5.2.0 → coredis-5.3.0}/coredis/tokens.py +0 -0
  115. {coredis-5.2.0 → coredis-5.3.0}/docker-compose.yml +0 -0
  116. {coredis-5.2.0 → coredis-5.3.0}/docs/Makefile +0 -0
  117. {coredis-5.2.0 → coredis-5.3.0}/docs/make.bat +0 -0
  118. {coredis-5.2.0 → coredis-5.3.0}/docs/source/_static/custom.css +0 -0
  119. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/bitfield.rst +0 -0
  120. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/caching.rst +0 -0
  121. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/clients.rst +0 -0
  122. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/connections.rst +0 -0
  123. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/credentials.rst +0 -0
  124. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/errors.rst +0 -0
  125. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/index.rst +0 -0
  126. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/pipeline.rst +0 -0
  127. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/pubsub.rst +0 -0
  128. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/scripting.rst +0 -0
  129. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/streams.rst +0 -0
  130. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/typing.rst +0 -0
  131. {coredis-5.2.0 → coredis-5.3.0}/docs/source/api/utilities.rst +0 -0
  132. {coredis-5.2.0 → coredis-5.3.0}/docs/source/compatibility.rst +0 -0
  133. {coredis-5.2.0 → coredis-5.3.0}/docs/source/conf.py +0 -0
  134. {coredis-5.2.0 → coredis-5.3.0}/docs/source/glossary.rst +0 -0
  135. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/.cluster.rst.swp +0 -0
  136. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/caching.rst +0 -0
  137. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/cluster.rst +0 -0
  138. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/connections.rst +0 -0
  139. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/credentials.rst +0 -0
  140. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/development.rst +0 -0
  141. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/encoding.rst +0 -0
  142. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/noreply.rst +0 -0
  143. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/optimization.rst +0 -0
  144. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/pipelines.rst +0 -0
  145. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/pubsub.rst +0 -0
  146. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/response.rst +0 -0
  147. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/scripting.rst +0 -0
  148. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/sentinel.rst +0 -0
  149. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/streams.rst +0 -0
  150. {coredis-5.2.0 → coredis-5.3.0}/docs/source/handbook/typing.rst +0 -0
  151. {coredis-5.2.0 → coredis-5.3.0}/docs/source/history.rst +0 -0
  152. {coredis-5.2.0 → coredis-5.3.0}/docs/source/recipes/credentials.rst +0 -0
  153. {coredis-5.2.0 → coredis-5.3.0}/docs/source/recipes/index.rst +0 -0
  154. {coredis-5.2.0 → coredis-5.3.0}/docs/source/recipes/locks.rst +0 -0
  155. {coredis-5.2.0 → coredis-5.3.0}/docs/source/release_notes.rst +0 -0
  156. {coredis-5.2.0 → coredis-5.3.0}/docs/source/theme_config.py +0 -0
  157. {coredis-5.2.0 → coredis-5.3.0}/push-release.sh +0 -0
  158. {coredis-5.2.0 → coredis-5.3.0}/pytest.ini +0 -0
  159. {coredis-5.2.0 → coredis-5.3.0}/scripts/RedisJSON.json +0 -0
  160. {coredis-5.2.0 → coredis-5.3.0}/scripts/benchmark.sh +0 -0
  161. {coredis-5.2.0 → coredis-5.3.0}/scripts/bloom.json +0 -0
  162. {coredis-5.2.0 → coredis-5.3.0}/scripts/code_gen.py +0 -0
  163. {coredis-5.2.0 → coredis-5.3.0}/scripts/commands.json +0 -0
  164. {coredis-5.2.0 → coredis-5.3.0}/scripts/countmin.json +0 -0
  165. {coredis-5.2.0 → coredis-5.3.0}/scripts/cuckoo.json +0 -0
  166. {coredis-5.2.0 → coredis-5.3.0}/scripts/github_release_notes.sh +0 -0
  167. {coredis-5.2.0 → coredis-5.3.0}/scripts/graph.json +0 -0
  168. {coredis-5.2.0 → coredis-5.3.0}/scripts/search.json +0 -0
  169. {coredis-5.2.0 → coredis-5.3.0}/scripts/suggestion.json +0 -0
  170. {coredis-5.2.0 → coredis-5.3.0}/scripts/tdigest.json +0 -0
  171. {coredis-5.2.0 → coredis-5.3.0}/scripts/test_data_gen.py +0 -0
  172. {coredis-5.2.0 → coredis-5.3.0}/scripts/timeseries.json +0 -0
  173. {coredis-5.2.0 → coredis-5.3.0}/scripts/topk.json +0 -0
  174. {coredis-5.2.0 → coredis-5.3.0}/tag.sh +0 -0
  175. {coredis-5.2.0 → coredis-5.3.0}/tests/__init__.py +0 -0
  176. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/__init__.py +0 -0
  177. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/conftest.py +0 -0
  178. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_cluster_connection_pool.py +0 -0
  179. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_node_manager.py +0 -0
  180. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_non_atomic_commands.py +0 -0
  181. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_pipeline.py +0 -0
  182. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_pubsub.py +0 -0
  183. {coredis-5.2.0 → coredis-5.3.0}/tests/cluster/test_scripting.py +0 -0
  184. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/__init__.py +0 -0
  185. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_acl.py +0 -0
  186. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_bitmap.py +0 -0
  187. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_cluster.py +0 -0
  188. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_connection.py +0 -0
  189. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_functions.py +0 -0
  190. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_generic.py +0 -0
  191. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_geo.py +0 -0
  192. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_hash.py +0 -0
  193. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_hyperloglog.py +0 -0
  194. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_list.py +0 -0
  195. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_modules.py +0 -0
  196. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_server.py +0 -0
  197. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_set.py +0 -0
  198. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_sorted_set.py +0 -0
  199. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_streams.py +0 -0
  200. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_string.py +0 -0
  201. {coredis-5.2.0 → coredis-5.3.0}/tests/commands/test_vector_sets.py +0 -0
  202. {coredis-5.2.0 → coredis-5.3.0}/tests/conftest.py +0 -0
  203. {coredis-5.2.0 → coredis-5.3.0}/tests/experimental/__init__.py +0 -0
  204. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/__init__.py +0 -0
  205. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/data/city_index.json +0 -0
  206. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/data/vss_queries.json +0 -0
  207. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/data/worldcities.csv +0 -0
  208. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_autocomplete.py +0 -0
  209. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_bloom_filter.py +0 -0
  210. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_compatibilty.py +0 -0
  211. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_count_min_sketch.py +0 -0
  212. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_cuckoo_filter.py +0 -0
  213. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_graph.py +0 -0
  214. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_json.py +0 -0
  215. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_search.py +0 -0
  216. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_tdigest.py +0 -0
  217. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_timeseries.py +0 -0
  218. {coredis-5.2.0 → coredis-5.3.0}/tests/modules/test_topk.py +0 -0
  219. {coredis-5.2.0 → coredis-5.3.0}/tests/recipes/__init__.py +0 -0
  220. {coredis-5.2.0 → coredis-5.3.0}/tests/recipes/credentials/__init__.py +0 -0
  221. {coredis-5.2.0 → coredis-5.3.0}/tests/recipes/credentials/test_elasticache_iam_provider.py +0 -0
  222. {coredis-5.2.0 → coredis-5.3.0}/tests/recipes/locks/__init__.py +0 -0
  223. {coredis-5.2.0 → coredis-5.3.0}/tests/recipes/locks/test_lua_lock.py +0 -0
  224. {coredis-5.2.0 → coredis-5.3.0}/tests/test_authentication.py +0 -0
  225. {coredis-5.2.0 → coredis-5.3.0}/tests/test_cache.py +0 -0
  226. {coredis-5.2.0 → coredis-5.3.0}/tests/test_client.py +0 -0
  227. {coredis-5.2.0 → coredis-5.3.0}/tests/test_connection.py +0 -0
  228. {coredis-5.2.0 → coredis-5.3.0}/tests/test_connection_pool.py +0 -0
  229. {coredis-5.2.0 → coredis-5.3.0}/tests/test_credentials.py +0 -0
  230. {coredis-5.2.0 → coredis-5.3.0}/tests/test_encoding.py +0 -0
  231. {coredis-5.2.0 → coredis-5.3.0}/tests/test_lru_cache.py +0 -0
  232. {coredis-5.2.0 → coredis-5.3.0}/tests/test_monitor.py +0 -0
  233. {coredis-5.2.0 → coredis-5.3.0}/tests/test_parsers.py +0 -0
  234. {coredis-5.2.0 → coredis-5.3.0}/tests/test_pipeline.py +0 -0
  235. {coredis-5.2.0 → coredis-5.3.0}/tests/test_pubsub.py +0 -0
  236. {coredis-5.2.0 → coredis-5.3.0}/tests/test_retry.py +0 -0
  237. {coredis-5.2.0 → coredis-5.3.0}/tests/test_scripting.py +0 -0
  238. {coredis-5.2.0 → coredis-5.3.0}/tests/test_sentinel.py +0 -0
  239. {coredis-5.2.0 → coredis-5.3.0}/tests/test_sidecar.py +0 -0
  240. {coredis-5.2.0 → coredis-5.3.0}/tests/test_stream_consumers.py +0 -0
  241. {coredis-5.2.0 → coredis-5.3.0}/tests/test_tracking_cache.py +0 -0
  242. {coredis-5.2.0 → coredis-5.3.0}/tests/test_type_adapters.py +0 -0
  243. {coredis-5.2.0 → coredis-5.3.0}/tests/test_utils.py +0 -0
  244. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/ca.crt +0 -0
  245. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/ca.key +0 -0
  246. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/ca.txt +0 -0
  247. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/client.crt +0 -0
  248. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/client.key +0 -0
  249. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/invalid-ca.crt +0 -0
  250. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/invalid-client.crt +0 -0
  251. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/invalid-client.key +0 -0
  252. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/openssl.cnf +0 -0
  253. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/redis.crt +0 -0
  254. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/redis.dh +0 -0
  255. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/redis.key +0 -0
  256. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/server.crt +0 -0
  257. {coredis-5.2.0 → coredis-5.3.0}/tests/tls/server.key +0 -0
@@ -13,7 +13,7 @@ jobs:
13
13
  runs-on: ubuntu-latest
14
14
  strategy:
15
15
  matrix:
16
- python-version: ["3.10", "3.11", "3.12", "3.13"]
16
+ python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
17
17
  steps:
18
18
  - uses: actions/checkout@v3
19
19
  - name: Install uv and Python
@@ -47,7 +47,7 @@ jobs:
47
47
  strategy:
48
48
  fail-fast: false
49
49
  matrix:
50
- python-version: ["3.10", "3.11", "3.12", "3.13"]
50
+ python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
51
51
  redis-version: ["7.0", "7.2", "7.4", "8.0", "8.2", "latest"]
52
52
  test_params: ["-m '(not (dragonfly or valkey or redict))'"]
53
53
  orjson: ["False"]
@@ -8,7 +8,7 @@ jobs:
8
8
  runs-on: ubuntu-latest
9
9
  strategy:
10
10
  matrix:
11
- python-version: ["3.10", "3.11", "3.12", "3.13"]
11
+ python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
12
12
  steps:
13
13
  - uses: actions/checkout@v3
14
14
  - name: Install uv and Python
@@ -42,7 +42,7 @@ jobs:
42
42
  strategy:
43
43
  fail-fast: false
44
44
  matrix:
45
- python-version: ["3.11", "3.12", "3.13"]
45
+ python-version: ["3.11", "3.12", "3.13", "3.14"]
46
46
  redis-version: ["7.0", "7.2", "7.4", "8.0", "8.2", "latest"]
47
47
  test_params: ["-m '(not (dragonfly or valkey or redict))'"]
48
48
  uvloop: ["False"]
@@ -3,6 +3,16 @@
3
3
  Changelog
4
4
  =========
5
5
 
6
+ v5.3.0
7
+ ------
8
+ Release Date: 2025-10-10
9
+
10
+ * Compatibility
11
+
12
+ * Mark redis graph module support as deprecated
13
+ * Fix compatibility with beartype >= 0.22
14
+ * Add support for python 3.14
15
+
6
16
  v5.2.0
7
17
  ------
8
18
  Release Date: 2025-10-01
@@ -2033,3 +2043,4 @@ v1.0.1
2033
2043
  * change `Script.register` to `Script.execute`
2034
2044
 
2035
2045
 
2046
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: coredis
3
- Version: 5.2.0
3
+ Version: 5.3.0
4
4
  Summary: Python async client for Redis key-value store
5
5
  Project-URL: Homepage, https://github.com/alisaifee/coredis
6
6
  Project-URL: Source, https://github.com/alisaifee/coredis
@@ -19,6 +19,7 @@ Classifier: Programming Language :: Python :: 3.10
19
19
  Classifier: Programming Language :: Python :: 3.11
20
20
  Classifier: Programming Language :: Python :: 3.12
21
21
  Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
22
23
  Classifier: Programming Language :: Python :: Implementation :: PyPy
23
24
  Requires-Python: >=3.10
24
25
  Requires-Dist: async-timeout<6,>4
@@ -115,7 +116,6 @@ $ pip install coredis
115
116
 
116
117
  - [RedisJSON](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisjson)
117
118
  - [RediSearch](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisearch)
118
- - [RedisGraph](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisgraph)
119
119
  - [RedisBloom](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisbloom)
120
120
  - [RedisTimeSeries](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redistimeseries)
121
121
 
@@ -81,7 +81,6 @@ $ pip install coredis
81
81
 
82
82
  - [RedisJSON](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisjson)
83
83
  - [RediSearch](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisearch)
84
- - [RedisGraph](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisgraph)
85
84
  - [RedisBloom](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redisbloom)
86
85
  - [RedisTimeSeries](https://coredis.readthedocs.org/en/latest/handbook/modules.html#redistimeseries)
87
86
 
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '5.2.0'
32
- __version_tuple__ = version_tuple = (5, 2, 0)
31
+ __version__ = version = '5.3.0'
32
+ __version_tuple__ = version_tuple = (5, 3, 0)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -1,6 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
- from deprecated.sphinx import versionadded
3
+ from deprecated.sphinx import deprecated, versionadded
4
4
 
5
5
  from coredis.commands import CommandMixin
6
6
  from coredis.typing import AnyStr
@@ -95,6 +95,10 @@ class ModuleMixin(CommandMixin[AnyStr]):
95
95
 
96
96
  @property
97
97
  @versionadded(version="4.12.0")
98
+ @deprecated(
99
+ "RedisGraph has been discontinued and support for it's commands will be removed in 6.0",
100
+ version="5.2.1",
101
+ )
98
102
  def graph(self) -> Graph[AnyStr]:
99
103
  """
100
104
  Property to access :class:`~coredis.modules.Graph` commands.
@@ -43,8 +43,21 @@ from typing import (
43
43
  runtime_checkable,
44
44
  )
45
45
 
46
+ from beartype import __version__ as beartype_version
46
47
  from beartype import beartype
47
- from beartype.door import infer_hint, is_bearable, is_subhint
48
+ from packaging import version
49
+
50
+ if TYPE_CHECKING:
51
+ infer_hint: Callable[..., Any]
52
+ is_bearable: Callable[[Any, Any], bool]
53
+ is_subhint: Callable[[Any, Any], bool]
54
+ else:
55
+ if version.parse(beartype_version) < version.parse("0.22"):
56
+ from beartype.door import infer_hint
57
+ else:
58
+ from beartype.bite import infer_hint
59
+
60
+ from beartype.door import is_bearable, is_subhint
48
61
  from typing_extensions import (
49
62
  NotRequired,
50
63
  Self,
@@ -78,11 +78,6 @@ Autocomplete
78
78
  ============
79
79
  .. autoclass:: coredis.modules.Autocomplete
80
80
 
81
- RedisGraph
82
- ^^^^^^^^^^
83
-
84
- .. autoclass:: coredis.modules.Graph
85
-
86
81
  TimeSeries
87
82
  ^^^^^^^^^^
88
83
  .. autoclass:: coredis.modules.TimeSeries
@@ -50,7 +50,6 @@ Modules
50
50
  - :ref:`handbook/modules:redisjson`
51
51
  - :ref:`handbook/modules:redisbloom`
52
52
  - :ref:`handbook/modules:redisearch`
53
- - :ref:`handbook/modules:redisgraph`
54
53
  - :ref:`handbook/modules:redistimeseries`
55
54
 
56
55
  Performance
@@ -22,8 +22,6 @@ For example::
22
22
  await client.cf.reserve("cf", 1000)
23
23
  # RedisTimeSeries
24
24
  await client.timeseries.add("ts", 1, 1)
25
- # RedisGraph
26
- await client.graph.query("graph", "CREATE (:Node {name: 'Node'})")
27
25
 
28
26
 
29
27
  Module commands can also be used in :ref:`handbook/pipelines:pipelines` (and transactions)
@@ -401,133 +399,6 @@ Boost the score of a term::
401
399
 
402
400
  For more details refer to the API documentation for :class:`~coredis.modules.autocomplete.Autocomplete`
403
401
 
404
- RedisGraph
405
- ^^^^^^^^^^
406
- ``RedisGraph`` is a queryable Property Graph database that uses sparse matrices
407
- to represent the adjacency matrix in graphs and linear algebra to query the graph.
408
-
409
- To access the commands exposed by the module use the :attr:`~Redis.graph` property
410
- or manually instantiate the :class:`~modules.Graph` class with an instance of
411
- :class:`~Redis` or :class:`~RedisCluster`
412
-
413
- The main interface to the module is the :meth:`~coredis.modules.Graph.query` method
414
- or :meth:`~coredis.modules.Graph.ro_query` for readonly queries. The response from the method
415
- is an instance of :class:`~coredis.modules.response.types.GraphQueryResult` which
416
- follows the described `Result Structure <https://redis.io/docs/stack/graph/design/result_structure/>`__.
417
-
418
- Specifically:
419
-
420
- - Scalars are converted to native python types
421
- - Nodes are converted to instances of :class:`~coredis.modules.response.types.GraphNode`
422
- - Relations are converted to instances of :class:`~coredis.modules.response.types.GraphRelation`
423
- - Paths are converted to instances of :class:`~coredis.modules.response.types.GraphPath`
424
-
425
-
426
-
427
- Adding nodes & relations
428
- ========================
429
-
430
- Using the example from the `RedisGraph design documentation <https://redis.io/docs/stack/graph/design/>`__
431
- we can create a graph with multiple nodes and relationships in one query::
432
-
433
-
434
- import coredis
435
- client = coredis.Redis(decode_responses=True)
436
-
437
- results = await client.graph.query(
438
- "imdb",
439
- """
440
- CREATE (aldis:actor {
441
- name: "Aldis Hodge", birth_year: 1986
442
- }),
443
- (oshea:actor {
444
- name: "OShea Jackson", birth_year: 1991
445
- }),
446
- (corey:actor {
447
- name: "Corey Hawkins", birth_year: 1988
448
- }),
449
- (neil:actor {
450
- name: "Neil Brown", birth_year: 1980
451
- }),
452
- (compton:movie {
453
- title: "Straight Outta Compton", genre: "Biography", votes: 127258, rating: 7.9, year: 2015
454
- }),
455
- (neveregoback:movie {
456
- title: "Never Go Back", genre: "Action", votes: 15821, rating: 6.4, year: 2016
457
- }),
458
- (aldis)-[:act]->(neveregoback),
459
- (aldis)-[:act]->(compton),
460
- (oshea)-[:act]->(compton),
461
- (corey)-[:act]->(compton),
462
- (neil)-[:act]->(compton)
463
- """
464
- )
465
-
466
- assert results.stats["Nodes created"] == 6
467
- assert results.stats["Relationships created"] == 5
468
-
469
- Querying the graph
470
- ==================
471
- Using the previous example, let's query for a few scalar properties of the nodes::
472
-
473
- results = await client.graph.query("imdb", """
474
- MATCH (a:actor)-[:act]->(m:movie {
475
- title:"Straight Outta Compton"
476
- })
477
- RETURN a.name, m.title
478
- """)
479
- assert len(results.result_set) == 4
480
- assert ['Aldis Hodge', 'Straight Outta Compton'] == results.result_set[0]
481
-
482
-
483
- Perform the same query but this time return the nodes::
484
-
485
- results = await client.graph.query("imdb", """
486
- MATCH (a:actor)-[:act]->(m:movie {
487
- title:"Straight Outta Compton"
488
- })
489
- RETURN a, m
490
- """)
491
-
492
- assert len(results.result_set) == 4
493
- actor = results.result_set[0][0]
494
- movie = results.result_set[0][1]
495
-
496
- assert actor.properties == {"name": "Aldis Hodge", "birth_year": 1986}
497
- assert movie.properties == {
498
- "title": "Straight Outta Compton", "genre": "Biography",
499
- "votes": 127258, "rating": 7.9, "year": 2015
500
- }
501
-
502
- Fetch the entire matching path::
503
-
504
- results = await client.graph.query("imdb", """
505
- MATCH p=(a:actor)-[:act]->(m:movie {
506
- title:"Straight Outta Compton"
507
- })
508
- RETURN p
509
- """)
510
- path = results.result_set[0][0].path
511
- assert ["Aldis Hodge", "act", "Straight Outta Compton"] == [
512
- path[0].properties["name"], # GraphNode: actor
513
- path[1].type, # GraphRelation: act
514
- path[2].properties["title"] # GraphNode: movie
515
- ]
516
-
517
- Perform an aggregation using aggregate functions::
518
-
519
- results = await client.graph.query("imdb", """
520
- MATCH (a:actor)-[:act]->(m:movie {
521
- title:"Straight Outta Compton"
522
- })
523
- RETURN m.title, SUM(2020-a.birth_year), MAX(2020-a.birth_year), MIN(2020-a.birth_year), AVG(2020-a.birth_year)
524
- """)
525
- assert ['Straight Outta Compton', 135.0, 40, 29, 33.75] == results.result_set[0]
526
-
527
-
528
- For more details about supported commands in the module refer to the API documentation
529
- for :class:`~coredis.modules.Graph`
530
-
531
402
  RedisBloom
532
403
  ^^^^^^^^^^
533
404
  The probabilistic datastructures exposed by ``RedisBloom`` can be accessed
@@ -72,7 +72,6 @@ Feature Summary
72
72
 
73
73
  * :ref:`handbook/modules:RedisJSON`
74
74
  * :ref:`handbook/modules:RediSearch`
75
- * :ref:`handbook/modules:RedisGraph`
76
75
  * :ref:`handbook/modules:RedisBloom`
77
76
  * :ref:`handbook/modules:RedisTimeSeries`
78
77
 
@@ -34,6 +34,7 @@ classifiers = [
34
34
  "Programming Language :: Python :: 3.11",
35
35
  "Programming Language :: Python :: 3.12",
36
36
  "Programming Language :: Python :: 3.13",
37
+ "Programming Language :: Python :: 3.14",
37
38
  "Programming Language :: Python :: Implementation :: PyPy",
38
39
  ]
39
40
  requires-python = ">=3.10"
@@ -236,11 +236,11 @@ wheels = [
236
236
 
237
237
  [[package]]
238
238
  name = "beartype"
239
- version = "0.21.0"
239
+ version = "0.22.2"
240
240
  source = { registry = "https://pypi.org/simple" }
241
- sdist = { url = "https://files.pythonhosted.org/packages/0d/f9/21e5a9c731e14f08addd53c71fea2e70794e009de5b98e6a2c3d2f3015d6/beartype-0.21.0.tar.gz", hash = "sha256:f9a5078f5ce87261c2d22851d19b050b64f6a805439e8793aecf01ce660d3244", size = 1437066, upload-time = "2025-05-22T05:09:27.116Z" }
241
+ sdist = { url = "https://files.pythonhosted.org/packages/04/96/43ed27f27127155f24f5cf85df0c27fd2ac2ab67d94cecc8f76933f91679/beartype-0.22.2.tar.gz", hash = "sha256:ff3a7df26af8d15fa87f97934f0f6d41bbdadca971c410819104998dd26013d2", size = 1574491, upload-time = "2025-10-04T06:37:56.451Z" }
242
242
  wheels = [
243
- { url = "https://files.pythonhosted.org/packages/94/31/87045d1c66ee10a52486c9d2047bc69f00f2689f69401bb1e998afb4b205/beartype-0.21.0-py3-none-any.whl", hash = "sha256:b6a1bd56c72f31b0a496a36cc55df6e2f475db166ad07fa4acc7e74f4c7f34c0", size = 1191340, upload-time = "2025-05-22T05:09:24.606Z" },
243
+ { url = "https://files.pythonhosted.org/packages/96/2a/a4773109619010192e72f48e95165b14790413a51f513c879c8d63f67e17/beartype-0.22.2-py3-none-any.whl", hash = "sha256:12077afe3528eba5c5b801f816712f7ff06f6da5509994c79561e29b48bcedb8", size = 1317280, upload-time = "2025-10-04T06:37:53.99Z" },
244
244
  ]
245
245
 
246
246
  [[package]]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes