gitextract_8s9rmjqg/ ├── .agent/ │ └── sync_async_type_hints_overload_guide.md ├── .dockerignore ├── .github/ │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── actions/ │ │ └── run-tests/ │ │ └── action.yml │ ├── dependabot.yml │ ├── release-drafter-config.yml │ ├── spellcheck-settings.yml │ ├── wordlist.txt │ └── workflows/ │ ├── codeql-analysis.yml │ ├── docs.yaml │ ├── hiredis-py-integration.yaml │ ├── install_and_test.sh │ ├── integration.yaml │ ├── pypi-publish.yaml │ ├── release-drafter.yml │ ├── spellcheck.yml │ └── stale-issues.yml ├── .gitignore ├── .mypy.ini ├── .readthedocs.yml ├── CHANGES ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── benchmarks/ │ ├── __init__.py │ ├── base.py │ ├── basic_operations.py │ ├── cluster_async.py │ ├── cluster_async_pipeline.py │ ├── command_packer_benchmark.py │ ├── otel_benchmark.py │ └── socket_read_size.py ├── codecov.yml ├── dev_requirements.txt ├── docker-compose.yml ├── dockers/ │ └── sentinel.conf ├── docs/ │ ├── Makefile │ ├── _static/ │ │ └── .keep │ ├── _templates/ │ │ └── .keep │ ├── advanced_features.rst │ ├── backoff.rst │ ├── clustering.rst │ ├── commands.rst │ ├── conf.py │ ├── connections.rst │ ├── examples/ │ │ ├── README.md │ │ ├── asyncio_examples.ipynb │ │ ├── connection_examples.ipynb │ │ ├── opentelemetry/ │ │ │ ├── README.md │ │ │ ├── config/ │ │ │ │ ├── alertmanager.yml │ │ │ │ ├── otel-collector.yaml │ │ │ │ └── vector.toml │ │ │ ├── docker-compose.yml │ │ │ ├── main.py │ │ │ ├── requirements.txt │ │ │ └── uptrace.yml │ │ ├── opentelemetry_api_examples.ipynb │ │ ├── pipeline_examples.ipynb │ │ ├── redis-stream-example.ipynb │ │ ├── search_json_examples.ipynb │ │ ├── search_vector_similarity_examples.ipynb │ │ ├── set_and_get_examples.ipynb │ │ ├── ssl_connection_examples.ipynb │ │ └── timeseries_examples.ipynb │ ├── examples.rst │ ├── exceptions.rst │ ├── genindex.rst │ ├── geographic_failover.rst │ ├── index.rst │ ├── lock.rst │ ├── lua_scripting.rst │ ├── opentelemetry.rst │ ├── redismodules.rst │ ├── requirements.txt │ ├── resp3_features.rst │ └── retry.rst ├── doctests/ │ ├── README.md │ ├── cmds_cnxmgmt.py │ ├── cmds_generic.py │ ├── cmds_hash.py │ ├── cmds_list.py │ ├── cmds_servermgmt.py │ ├── cmds_set.py │ ├── cmds_sorted_set.py │ ├── cmds_string.py │ ├── data/ │ │ ├── query_em.json │ │ └── query_vector.json │ ├── dt_bitfield.py │ ├── dt_bitmap.py │ ├── dt_bloom.py │ ├── dt_cms.py │ ├── dt_cuckoo.py │ ├── dt_geo.py │ ├── dt_hash.py │ ├── dt_hll.py │ ├── dt_json.py │ ├── dt_list.py │ ├── dt_set.py │ ├── dt_ss.py │ ├── dt_stream.py │ ├── dt_string.py │ ├── dt_tdigest.py │ ├── dt_time_series.py │ ├── dt_topk.py │ ├── dt_vec_set.py │ ├── geo_index.py │ ├── home_json.py │ ├── home_prob_dts.py │ ├── query_agg.py │ ├── query_combined.py │ ├── query_em.py │ ├── query_ft.py │ ├── query_geo.py │ ├── query_range.py │ ├── requirements.txt │ ├── run_examples.sh │ ├── search_quickstart.py │ ├── search_vss.py │ ├── string_set_get.py │ └── trans_pipe.py ├── pyproject.toml ├── redis/ │ ├── __init__.py │ ├── _parsers/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── commands.py │ │ ├── encoders.py │ │ ├── helpers.py │ │ ├── hiredis.py │ │ ├── resp2.py │ │ ├── resp3.py │ │ └── socket.py │ ├── asyncio/ │ │ ├── __init__.py │ │ ├── client.py │ │ ├── cluster.py │ │ ├── connection.py │ │ ├── http/ │ │ │ ├── __init__.py │ │ │ └── http_client.py │ │ ├── lock.py │ │ ├── multidb/ │ │ │ ├── __init__.py │ │ │ ├── client.py │ │ │ ├── command_executor.py │ │ │ ├── config.py │ │ │ ├── database.py │ │ │ ├── event.py │ │ │ ├── failover.py │ │ │ ├── failure_detector.py │ │ │ └── healthcheck.py │ │ ├── observability/ │ │ │ ├── __init__.py │ │ │ └── recorder.py │ │ ├── retry.py │ │ ├── sentinel.py │ │ └── utils.py │ ├── auth/ │ │ ├── __init__.py │ │ ├── err.py │ │ ├── idp.py │ │ ├── token.py │ │ └── token_manager.py │ ├── background.py │ ├── backoff.py │ ├── cache.py │ ├── client.py │ ├── cluster.py │ ├── commands/ │ │ ├── __init__.py │ │ ├── bf/ │ │ │ ├── __init__.py │ │ │ ├── commands.py │ │ │ └── info.py │ │ ├── cluster.py │ │ ├── core.py │ │ ├── helpers.py │ │ ├── json/ │ │ │ ├── __init__.py │ │ │ ├── _util.py │ │ │ ├── commands.py │ │ │ ├── decoders.py │ │ │ └── path.py │ │ ├── policies.py │ │ ├── redismodules.py │ │ ├── search/ │ │ │ ├── __init__.py │ │ │ ├── _util.py │ │ │ ├── aggregation.py │ │ │ ├── commands.py │ │ │ ├── dialect.py │ │ │ ├── document.py │ │ │ ├── field.py │ │ │ ├── hybrid_query.py │ │ │ ├── hybrid_result.py │ │ │ ├── index_definition.py │ │ │ ├── profile_information.py │ │ │ ├── query.py │ │ │ ├── querystring.py │ │ │ ├── reducers.py │ │ │ ├── result.py │ │ │ └── suggestion.py │ │ ├── sentinel.py │ │ ├── timeseries/ │ │ │ ├── __init__.py │ │ │ ├── commands.py │ │ │ ├── info.py │ │ │ └── utils.py │ │ └── vectorset/ │ │ ├── __init__.py │ │ ├── commands.py │ │ └── utils.py │ ├── connection.py │ ├── crc.py │ ├── credentials.py │ ├── data_structure.py │ ├── driver_info.py │ ├── event.py │ ├── exceptions.py │ ├── http/ │ │ ├── __init__.py │ │ └── http_client.py │ ├── lock.py │ ├── maint_notifications.py │ ├── multidb/ │ │ ├── __init__.py │ │ ├── circuit.py │ │ ├── client.py │ │ ├── command_executor.py │ │ ├── config.py │ │ ├── database.py │ │ ├── event.py │ │ ├── exception.py │ │ ├── failover.py │ │ └── failure_detector.py │ ├── observability/ │ │ ├── __init__.py │ │ ├── attributes.py │ │ ├── config.py │ │ ├── metrics.py │ │ ├── providers.py │ │ ├── recorder.py │ │ └── registry.py │ ├── ocsp.py │ ├── py.typed │ ├── retry.py │ ├── sentinel.py │ ├── typing.py │ └── utils.py ├── specs/ │ ├── commands_overload_inventory.md │ └── sync_async_deduplication_analysis.md ├── tasks.py ├── tests/ │ ├── __init__.py │ ├── conftest.py │ ├── entraid_utils.py │ ├── helpers.py │ ├── maint_notifications/ │ │ ├── proxy_server_helpers.py │ │ ├── test_cluster_maint_notifications_handling.py │ │ ├── test_maint_notifications.py │ │ └── test_maint_notifications_handling.py │ ├── mocks.py │ ├── ssl_utils.py │ ├── test_asyncio/ │ │ ├── __init__.py │ │ ├── compat.py │ │ ├── conftest.py │ │ ├── helpers.py │ │ ├── mocks.py │ │ ├── test_bloom.py │ │ ├── test_client.py │ │ ├── test_cluster.py │ │ ├── test_cluster_transaction.py │ │ ├── test_command_parser.py │ │ ├── test_command_policies.py │ │ ├── test_commands.py │ │ ├── test_connect.py │ │ ├── test_connection.py │ │ ├── test_connection_pool.py │ │ ├── test_credentials.py │ │ ├── test_cwe_404.py │ │ ├── test_encoding.py │ │ ├── test_hash.py │ │ ├── test_json.py │ │ ├── test_lock.py │ │ ├── test_monitor.py │ │ ├── test_multidb/ │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ ├── test_client.py │ │ │ ├── test_command_executor.py │ │ │ ├── test_config.py │ │ │ ├── test_failover.py │ │ │ ├── test_failure_detector.py │ │ │ ├── test_healthcheck.py │ │ │ └── test_pipeline.py │ │ ├── test_observability/ │ │ │ ├── __init__.py │ │ │ ├── test_cluster_metrics_error_handling.py │ │ │ └── test_recorder.py │ │ ├── test_pipeline.py │ │ ├── test_pubsub.py │ │ ├── test_retry.py │ │ ├── test_scenario/ │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ └── test_active_active.py │ │ ├── test_scripting.py │ │ ├── test_search.py │ │ ├── test_sentinel.py │ │ ├── test_sentinel_managed_connection.py │ │ ├── test_ssl.py │ │ ├── test_timeseries.py │ │ ├── test_usage_counter.py │ │ ├── test_utils.py │ │ ├── test_vsets.py │ │ └── testdata/ │ │ ├── jsontestdata.py │ │ ├── titles.csv │ │ └── will_play_text.csv.bz2 │ ├── test_auth/ │ │ ├── __init__.py │ │ ├── test_token.py │ │ └── test_token_manager.py │ ├── test_background.py │ ├── test_backoff.py │ ├── test_bloom.py │ ├── test_cache.py │ ├── test_client.py │ ├── test_cluster.py │ ├── test_cluster_transaction.py │ ├── test_command_parser.py │ ├── test_command_policies.py │ ├── test_commands.py │ ├── test_connect.py │ ├── test_connection.py │ ├── test_connection_pool.py │ ├── test_credentials.py │ ├── test_data_structure.py │ ├── test_driver_info.py │ ├── test_encoding.py │ ├── test_event.py │ ├── test_function.py │ ├── test_hash.py │ ├── test_helpers.py │ ├── test_http/ │ │ ├── __init__.py │ │ └── test_http_client.py │ ├── test_json.py │ ├── test_lock.py │ ├── test_max_connections_error.py │ ├── test_monitor.py │ ├── test_multidb/ │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_circuit.py │ │ ├── test_client.py │ │ ├── test_command_executor.py │ │ ├── test_config.py │ │ ├── test_failover.py │ │ ├── test_failure_detector.py │ │ └── test_pipeline.py │ ├── test_multiprocessing.py │ ├── test_observability/ │ │ ├── __init__.py │ │ ├── test_cluster_metrics_error_handling.py │ │ ├── test_config.py │ │ ├── test_metrics_connection_attributes.py │ │ ├── test_provider.py │ │ ├── test_public_api.py │ │ └── test_recorder.py │ ├── test_parsers/ │ │ ├── test_errors.py │ │ └── test_helpers.py │ ├── test_pipeline.py │ ├── test_pubsub.py │ ├── test_retry.py │ ├── test_scenario/ │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── fault_injector_client.py │ │ ├── maint_notifications_helpers.py │ │ ├── test_active_active.py │ │ └── test_maint_notifications.py │ ├── test_scripting.py │ ├── test_search.py │ ├── test_sentinel.py │ ├── test_sentinel_managed_connection.py │ ├── test_ssl.py │ ├── test_timeseries.py │ ├── test_utils.py │ ├── test_vsets.py │ └── testdata/ │ ├── jsontestdata.py │ ├── titles.csv │ └── will_play_text.csv.bz2 ├── util/ │ └── wait-for-it.sh └── whitelist.py