1{ 2 lib, 3 aiohttp, 4 buildPythonPackage, 5 elastic-transport, 6 fetchPypi, 7 hatchling, 8 orjson, 9 pythonOlder, 10 requests, 11}: 12 13buildPythonPackage rec { 14 pname = "elasticsearch8"; 15 version = "8.17.2"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.7"; 19 20 src = fetchPypi { 21 inherit pname version; 22 hash = "sha256-j6FaQWPFJ8kqoTwjIPyMDcOZBg8mOO0BbKCFn4ESCAM="; 23 }; 24 25 build-system = [ hatchling ]; 26 27 dependencies = [ elastic-transport ]; 28 29 optional-dependencies = { 30 async = [ aiohttp ]; 31 requests = [ requests ]; 32 orjson = [ orjson ]; 33 }; 34 35 # Check is disabled because running them destroy the content of the local cluster! 36 # https://github.com/elasticsearch/elasticsearch-py/tree/main/test_elasticsearch 37 doCheck = false; 38 39 pythonImportsCheck = [ "elasticsearch8" ]; 40 41 meta = with lib; { 42 description = "Official low-level client for Elasticsearch"; 43 homepage = "https://github.com/elasticsearch/elasticsearch-py"; 44 changelog = "https://github.com/elastic/elasticsearch-py/releases/tag/v${version}"; 45 license = licenses.asl20; 46 maintainers = with maintainers; [ fab ]; 47 }; 48}