Search and indexing routines for Open edX, supporting Elasticsearch, Meilisearch, and Typesense backends. Current version 5.0.0 as of August 2024. Release cadence is roughly quarterly.
pip install edx-searchVerified import paths — ran on the pinned version, not inferred.
Initialize a search engine with a Meilisearch backend (default). For Elasticsearch or Typesense, pass appropriate kwargs.
Upgrade Python to 3.12+ and update Django to >=4.2.
Update Elasticsearch client to 8.x and adjust import paths (e.g., elasticsearch8).
Upgrade to 4.1.2+ to use this filter.
Always provide 'url' and 'api_key' matching your backend.
Use: from search.search_engine_base import SearchEngine
Remove 'api_key' for Elasticsearch or use 'cloud_id' and 'http_auth' for Elasticsearch 8.x.