{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":363150,"defaultBranch":"master","name":"redis-py","ownerLogin":"redis","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2009-11-06T10:22:26.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1529926?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717696979.0","currentOid":""},"activityList":{"items":[{"before":"9d85723ecf0fe642040d15d30fb1b35d256d16fd","after":"29b861bd72faac2568c5cd804f9f4e7129705ebf","ref":"refs/heads/master","pushedAt":"2024-06-12T11:17:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Add extra tests for GEO search (#3244)\n\nAdd more tests for GEO search, to cover the query operators `within`,\r\n`contains`, `intersects` and `disjoint`, for POINT and POLYGON, i.e. the\r\ncurrently supported shapes and operators.","shortMessageHtmlLink":"Add extra tests for GEO search (#3244)"}},{"before":"3a0c724f9b300452b95347014af596f254810dca","after":"9d85723ecf0fe642040d15d30fb1b35d256d16fd","ref":"refs/heads/master","pushedAt":"2024-06-12T10:29:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Timeseries insertion filters for close samples (#3228)\n\nSupport timeseries insertion filters for samples that are close to each\r\nother in time and value.\r\n\r\nUse the documented way to disable compression, i.e. `ENCODING\r\nUNCOMPRESSED` instead of `UNCOMPRESSED`.\r\n\r\nPolish the documentation related to timeseries.\r\n\r\nAlign things needed around CI, to make sure all tests are actually executed.\r\n\r\nBREAKING CHANGES:\r\n\r\n1. Remove the `uncompressed` flag from TS.ALTER, since compression of\r\nexisting timeseries cannot be changed. This should not have been used, so\r\nthere should be no real impact.\r\n\r\n2. For the TS.ADD command (TimeSeriesCommands.add method): the\r\n`duplicate_policy` Python parameter that was mapping to\r\n`ON DUPLICATE` was now rewired to map to `DUPLICATE POLICY`.\r\nA new Python parameter called `on_duplicate` was added, that maps to\r\n`ON DUPLICATE`. The expected impact of this change is low.","shortMessageHtmlLink":"Timeseries insertion filters for close samples (#3228)"}},{"before":"27accc8dd535feeee6e0060c6d0feffef15b35e7","after":"3a0c724f9b300452b95347014af596f254810dca","ref":"refs/heads/master","pushedAt":"2024-06-06T17:54:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Version 5.1.0b6 (#3269)\n\nBump version to 5.1.0b6\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Version 5.1.0b6 (#3269)"}},{"before":"ff7821dcb4867db3870477ae3cce90287c1f73c5","after":"27accc8dd535feeee6e0060c6d0feffef15b35e7","ref":"refs/heads/master","pushedAt":"2024-06-06T17:14:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Hash field expiration commands (#3218)\n\nSupport hash field expiration commands that become available with\r\nRedis 7.4. \r\n\r\nAdapt some tests to match recent server-side changes. Update tests\r\nrelated to memory stats. Make CLIENT KILL test not run with cluster.\r\nDisable tests related to Graph module. The Graph module is no longer\r\npart of Redis Stack, so for the moment disable all related tests.\r\n\r\n---------\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Hash field expiration commands (#3218)"}},{"before":"9fd5576b296b5ad315024d7245fb0376ba1c4aae","after":"ff7821dcb4867db3870477ae3cce90287c1f73c5","ref":"refs/heads/master","pushedAt":"2024-06-06T12:43:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Use standard Redis docker image in CI (#3246)\n\nAdapt the tests to use the standard Redis docker image where possible,\r\ninstead of using the Redis Stack image in all places. This way we can\r\nrun the CI against different versions of Redis and Redis Stack.\r\n\r\nRun the test cluster based on the default Redis docker image, i.e.\r\nwithout Stack support. This is needed in order to make the CI pass until\r\nStack gets a new release. What is needed is to mark all Stack related\r\ntests accordingly, and then they don't get executed in the cluster\r\ntests (they are already filtered out in `invoke cluster-tests`).\r\n\r\nTake the opportunity to remove some empty tests and to fix the naming in\r\ntwo tests.\r\n\r\n---------\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Use standard Redis docker image in CI (#3246)"}},{"before":"26d2d13edcf3f29a381df4850c5926cb285d3584","after":"6f55c0286ccc444204a23e8738117f43c182bf9b","ref":"refs/heads/5.0","pushedAt":"2024-06-06T08:06:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Bump version to 5.0.5 (#3267)\n\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Bump version to 5.0.5 (#3267)"}},{"before":"26d2d13edcf3f29a381df4850c5926cb285d3584","after":null,"ref":"refs/tags/v5.0.5","pushedAt":"2024-06-06T07:44:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"}},{"before":"0d47d6527a10fb70f8fcfdf8df69ae3b11ec92ef","after":"9fd5576b296b5ad315024d7245fb0376ba1c4aae","ref":"refs/heads/master","pushedAt":"2024-06-05T12:30:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Fix parsing of INFO response (#3265)\n\nIf the INFO response contains a single `a=b` value for any of the keys,\r\nthat must also be parsed into a dictionary.\r\n\r\nFixes #3262\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Fix parsing of INFO response (#3265)"}},{"before":"e71119de095bb01201665d57a1dc63230aa0606e","after":"26d2d13edcf3f29a381df4850c5926cb285d3584","ref":"refs/heads/5.0","pushedAt":"2024-06-05T11:28:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Fix parsing of INFO response (#3264)\n\nIf the INFO response contains a single `a=b` value for any of the keys,\r\nthat must also be parsed into a dictionary.\r\n\r\nFixes #3262\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Fix parsing of INFO response (#3264)"}},{"before":null,"after":"2d044da833ad0fc7ecc02a2b51e83d061f72f43a","ref":"refs/heads/dependabot/github_actions/rojopolis/spellcheck-github-actions-0.37.0","pushedAt":"2024-06-01T19:11:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"Bump rojopolis/spellcheck-github-actions from 0.36.0 to 0.37.0\n\nBumps [rojopolis/spellcheck-github-actions](https://github.com/rojopolis/spellcheck-github-actions) from 0.36.0 to 0.37.0.\n- [Release notes](https://github.com/rojopolis/spellcheck-github-actions/releases)\n- [Changelog](https://github.com/rojopolis/spellcheck-github-actions/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/rojopolis/spellcheck-github-actions/compare/0.36.0...0.37.0)\n\n---\nupdated-dependencies:\n- dependency-name: rojopolis/spellcheck-github-actions\n dependency-type: direct:production\n update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"Bump rojopolis/spellcheck-github-actions from 0.36.0 to 0.37.0"}},{"before":"85dafcc7eac8c997b89a072016e4f64fa3a8f973","after":"0d47d6527a10fb70f8fcfdf8df69ae3b11ec92ef","ref":"refs/heads/master","pushedAt":"2024-05-28T14:28:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Add missing type hints for backoff.py (#3249)\n\nAdd type hints to backoff.py","shortMessageHtmlLink":"Add missing type hints for backoff.py (#3249)"}},{"before":"b7a85eb6b477298dd3765da3a299979cc1ddafcc","after":"85dafcc7eac8c997b89a072016e4f64fa3a8f973","ref":"refs/heads/master","pushedAt":"2024-05-28T07:25:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"More robust parsing of memory stats response (#3247)\n\nMake the parsing of memory stats response more robust, to not break on\r\nchanges that will be added to the Redis server.\r\n\r\nAlso make a test related to client kill by maxage more resilient.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"More robust parsing of memory stats response (#3247)"}},{"before":"9908a4d4fa33b96dffe4e11b1f257f2c59954dcd","after":"b7a85eb6b477298dd3765da3a299979cc1ddafcc","ref":"refs/heads/master","pushedAt":"2024-05-24T08:50:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Parse FT.PROFILE response more robustly (#3245)\n\nWhen parsing the response of FT.PROFILE, handle the cases when the\r\nnested items are either not lists, or empty lists, or lists with a\r\nsingle item.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Parse FT.PROFILE response more robustly (#3245)"}},{"before":"9a70f627f5c9a213b4bdb0358fc84fdedb77894f","after":"9908a4d4fa33b96dffe4e11b1f257f2c59954dcd","ref":"refs/heads/master","pushedAt":"2024-05-23T14:21:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Run pyupgrade for 3.8 (#3236)\n\nRun pyupgrade for 3.8.","shortMessageHtmlLink":"Run pyupgrade for 3.8 (#3236)"}},{"before":"82589143fc01b2ca58bcd9d9d6f62823b4a16943","after":"2887873667557d9fea1621748f44bd8e425864aa","ref":"refs/heads/dependabot/github_actions/actions/stale-9","pushedAt":"2024-05-22T05:40:52.000Z","pushType":"push","commitsCount":21,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Merge branch 'master' into dependabot/github_actions/actions/stale-9","shortMessageHtmlLink":"Merge branch 'master' into dependabot/github_actions/actions/stale-9"}},{"before":"de8b5709a7d2022deff55034fe7dabc5770225a2","after":"9a70f627f5c9a213b4bdb0358fc84fdedb77894f","ref":"refs/heads/master","pushedAt":"2024-05-21T07:17:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Fix typing for address_remap (fixes #3234) (#3235)\n\nThe address_remap callback received a tuple with the host and the port.\r\nMake this clear in the typing hints.","shortMessageHtmlLink":"Fix typing for address_remap (fixes #3234) (#3235)"}},{"before":"cefc36ef9360fb730025087ef359d676991fd96d","after":"de8b5709a7d2022deff55034fe7dabc5770225a2","ref":"refs/heads/master","pushedAt":"2024-05-20T15:39:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Use new Redis logo and website (#3233)\n\nUse the new logo, and use the SVG version of the logo in all places,\r\nincluding the README.\r\n\r\nReplace most of the redis.com URLs with their new redis.io counterparts.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Use new Redis logo and website (#3233)"}},{"before":"6751de20a0cad597a2a024cdae2a1518ea1b1580","after":"cefc36ef9360fb730025087ef359d676991fd96d","ref":"refs/heads/master","pushedAt":"2024-05-20T14:44:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Update ResponseT type alias (#3227)\n\nPyright treats explicit and implicit `Any` differently, with implicit `Any` being treated as `Unknown`. Pyright raised a warning indicating an unknown member type for 'Awaitable' when used in 'ResponseT'. Using the `incr` method as an example, the warning is:\r\n\r\n```\r\n\"warning: Type of 'incr' is partially unknown\r\n Type of 'incr' is '(name: bytes | str | memoryview, amount: int = 1) -> (Awaitable[Unknown] | Any)' (reportUnknownMemberType)\"\r\n```\r\n\r\nBy explicitly specifying 'Awaitable[Any]' in the union for 'ResponseT', this resolves the ambiguity about the member type.","shortMessageHtmlLink":"Update ResponseT type alias (#3227)"}},{"before":"0b2008701d9187f2b128542322ca833d62619a45","after":"6751de20a0cad597a2a024cdae2a1518ea1b1580","ref":"refs/heads/master","pushedAt":"2024-05-15T13:50:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Streamline documentation style (#3232)\n\nAdopt the Google docstrings style as the preferred way to document code.\r\nUpdate one of the existing docstrings to the new format, to showcase how\r\nit would look like.\r\n\r\nEnable the `napoleon` preprocessor in Sphinx, to be able to process\r\nGoogle style docstrings.\r\n\r\nTake the opportunity to make the copyright year dynamic, so we don't\r\nhave to manually keep it up to date.\r\n\r\nAdd a section about documentation to the contributors guide.\r\n\r\n---------\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Streamline documentation style (#3232)"}},{"before":"68d6d537529cba18ed994edb512985da766eb989","after":"0b2008701d9187f2b128542322ca833d62619a45","ref":"refs/heads/master","pushedAt":"2024-05-15T12:41:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Document XREAD of last message (+) (#3188)\n\nXREAD now supports reading the last message in the stream, with the +\r\nspecial Id. The code already supports this, so just add some\r\ndocumentation to an existing Jupyter notebook.\r\n\r\nFixes #3155\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Document XREAD of last message (+) (#3188)"}},{"before":"d93f533941a0c10f630da68b7fe38f8764ffc85a","after":"35e4850d9817c7b382bf813e6ce0ea2ebab7fb24","ref":"refs/heads/emb-examples","pushedAt":"2024-05-15T12:40:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"DOC-3787 add missing code samples for JSON (#3229)\n\nPython examples for the JSON datatype page\r\n(https://redis.io/docs/latest/develop/data-types/json/) are available in the repo but\r\nhaven't been added to the page yet. While adding them, I discovered that the Python\r\nsamples don't match the CLI samples in a few places, so I've updated them.","shortMessageHtmlLink":"DOC-3787 add missing code samples for JSON (#3229)"}},{"before":"cd92428cb3f0bc989bdf2fc03ee572bb239e7f3a","after":"68d6d537529cba18ed994edb512985da766eb989","ref":"refs/heads/master","pushedAt":"2024-05-14T15:58:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Fix CNs in test certificates (#3226)\n\nThe CNs in the test certificates (CA, server and client) were all the\r\nsame, which is not right. Make them different.\r\n\r\nCleanup the Jupyter notebook that documents how SSL connections work.\r\nMake the code blocks actually run, by using the test certificates from\r\ndevenv. Simplify a bit the OCSP examples, since they can't run anyway,\r\ndue to lack of OCSP in our test infrastructure, so they are rather informative.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Fix CNs in test certificates (#3226)"}},{"before":"a2bcea26e1b8b364da0edc01ec5ef9bc73f4fb93","after":"cd92428cb3f0bc989bdf2fc03ee572bb239e7f3a","ref":"refs/heads/master","pushedAt":"2024-05-09T07:12:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Support NOVALUES parameter for HSCAN (#3157)\n\n* Support NOVALUES parameter for HSCAN\r\n\r\nIssue #3153\r\n\r\nThe NOVALUES parameter instructs HSCAN to only return the hash keys,\r\nwithout values.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Support NOVALUES parameter for HSCAN (#3157)"}},{"before":"4981761db2bc933434824f60629c4d48d351d7e9","after":"a2bcea26e1b8b364da0edc01ec5ef9bc73f4fb93","ref":"refs/heads/master","pushedAt":"2024-05-09T07:07:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Support the MAXAGE option for CLIENT KILL (#3187)\n\nIssue #3154\r\n\r\nThe CLIENT KILL command has a new option, called MAXAGE, to kill\r\nclients older than a given age. Add support for this new option.\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Support the MAXAGE option for CLIENT KILL (#3187)"}},{"before":"8afddde93a107cc2e4eaf469c13780c8c7913a1b","after":"4981761db2bc933434824f60629c4d48d351d7e9","ref":"refs/heads/master","pushedAt":"2024-05-08T11:47:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gerzse","name":"Gabriel Erzse","path":"/gerzse","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5439601?s=80&v=4"},"commit":{"message":"Version 5.1.0b5 (#3224)\n\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Version 5.1.0b5 (#3224)"}},{"before":"3bd311c7ee9ae04da62d5f1e3b1777da49b2e61f","after":"8afddde93a107cc2e4eaf469c13780c8c7913a1b","ref":"refs/heads/master","pushedAt":"2024-05-08T00:53:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dvora-h","name":null,"path":"/dvora-h","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/67596500?s=80&v=4"},"commit":{"message":"Make it possible to customize SSL ciphers (#3212) (#3214)\n\nGiven that Python 3.10 changed the default list of TLS ciphers, it is a\r\ngood idea to allow customization of the list of ciphers when using\r\nRedis with TLS. In some situations the client is unusable right now\r\nwith older servers and Python >= 3.10.","shortMessageHtmlLink":"Make it possible to customize SSL ciphers (#3212) (#3214)"}},{"before":"64f291f7797b5b3e5652da8941947b8c2db517e9","after":"3bd311c7ee9ae04da62d5f1e3b1777da49b2e61f","ref":"refs/heads/master","pushedAt":"2024-05-08T00:52:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dvora-h","name":null,"path":"/dvora-h","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/67596500?s=80&v=4"},"commit":{"message":"Streamline client side caching API typing (#3216)\n\n* Streamline client side caching API typing\r\n\r\nStreamline the typing of the client side caching API. Some of the\r\nmethods are defining commands of type `str`, while in reality tuples\r\nare being sent for those parameters.\r\n\r\nAdd client side cache tests for Sentinels. In order to make this work,\r\nfix the sentinel configuration in the docker-compose stack.\r\n\r\nAdd a test for client side caching with a truly custom cache, not just\r\ninjecting our internal cache structure as custom.\r\n\r\nAdd a test for client side caching where two different types of commands\r\nuse the same key, to make sure they invalidate each others cached data.\r\n\r\n* Fixes after running tests against RE\r\n\r\n* More test cases\r\n\r\n* Fix async tests\r\n\r\n* Tests for raw commands\r\n\r\n* Change terminology for allow/deny lists\r\n\r\n* Add test for single connection\r\n\r\n* Make sure flushing the cache works everywhere\r\n\r\n* Reenable some tests for cluster too\r\n\r\n* Align cache typings at abstract level\r\n\r\n* Use Sequence instead of Iterable for types\r\n\r\n* Remove some exceptions in favor of ifs\r\n\r\n---------\r\n\r\nCo-authored-by: Gabriel Erzse ","shortMessageHtmlLink":"Streamline client side caching API typing (#3216)"}},{"before":"0bcd574f1146e22bf6a894d94680bc7423f263b0","after":"fec8e324fc543cbc5e50ea9c042a07e04405bd7e","ref":"refs/heads/enterprise-tests","pushedAt":"2024-05-06T11:43:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dvora-h","name":null,"path":"/dvora-h","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/67596500?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}},{"before":"3b09eee652006fc87cffe497139551f422d9a04f","after":"0bcd574f1146e22bf6a894d94680bc7423f263b0","ref":"refs/heads/enterprise-tests","pushedAt":"2024-05-06T10:51:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dvora-h","name":null,"path":"/dvora-h","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/67596500?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}},{"before":"dc28a4f494d4401e71cd1f05e09225d7ee5ff295","after":"3b09eee652006fc87cffe497139551f422d9a04f","ref":"refs/heads/enterprise-tests","pushedAt":"2024-05-06T10:36:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dvora-h","name":null,"path":"/dvora-h","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/67596500?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYzfybgA","startCursor":null,"endCursor":null}},"title":"Activity ยท redis/redis-py"}