From 9950cee4132ef31c1f49351cd6b4e72d18ed0ec5 Mon Sep 17 00:00:00 2001 From: natsukium Date: Sat, 6 Jul 2024 10:21:42 +0900 Subject: [PATCH 1/5] python311Packages.azure-search-documents: init at 11.4.0 --- .../azure-search-documents/default.nix | 46 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 48 insertions(+) create mode 100644 pkgs/development/python-modules/azure-search-documents/default.nix diff --git a/pkgs/development/python-modules/azure-search-documents/default.nix b/pkgs/development/python-modules/azure-search-documents/default.nix new file mode 100644 index 000000000000..63672e0c69e2 --- /dev/null +++ b/pkgs/development/python-modules/azure-search-documents/default.nix @@ -0,0 +1,46 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + azure-common, + azure-core, + isodate, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "azure-search-documents"; + version = "11.4.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Azure"; + repo = "azure-sdk-for-python"; + rev = "azure-search-documents_${version}"; + hash = "sha256-0J9AXDH7TOkcKDwFbICiMatLAwiFq3Jtoji8fJSOg8k="; + }; + + sourceRoot = "${src.name}/sdk/search/azure-search-documents"; + + build-system = [ setuptools ]; + + dependencies = [ + azure-common + azure-core + isodate + ]; + + pythonImportsCheck = [ "azure.search.documents" ]; + + # require devtools_testutils which is a internal package for azure-sdk + doCheck = false; + + meta = { + description = "Microsoft Azure Cognitive Search Client Library for Python"; + homepage = "https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/search/azure-search-documents"; + changelog = "https://github.com/Azure/azure-sdk-for-python/blob/${src.rev}/sdk/search/azure-search-documents/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e3e6066cf77d..22a5e914921b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1302,6 +1302,8 @@ self: super: with self; { azure-nspkg = callPackage ../development/python-modules/azure-nspkg { }; + azure-search-documents = callPackage ../development/python-modules/azure-search-documents { }; + azure-servicebus = callPackage ../development/python-modules/azure-servicebus { }; azure-servicefabric = callPackage ../development/python-modules/azure-servicefabric { }; From a194071b8e7a9a2dd77894e1a4a9b3043db73849 Mon Sep 17 00:00:00 2001 From: natsukium Date: Sat, 6 Jul 2024 11:03:03 +0900 Subject: [PATCH 2/5] python311Packages.datashaper: init at 0.0.49 --- .../python-modules/datashaper/default.nix | 52 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/python-modules/datashaper/default.nix diff --git a/pkgs/development/python-modules/datashaper/default.nix b/pkgs/development/python-modules/datashaper/default.nix new file mode 100644 index 000000000000..1da7346f2669 --- /dev/null +++ b/pkgs/development/python-modules/datashaper/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + pythonOlder, + pythonRelaxDepsHook, + poetry-core, + dacite, + diskcache, + jsonschema, + pandas, + pyarrow, +}: + +buildPythonPackage rec { + pname = "datashaper"; + version = "0.0.49"; + pyproject = true; + + disabled = pythonOlder "3.10"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-Bb+6WWRHSmK91SWew/oBc9AeNlIItqSv9OoOYwlqdTM="; + }; + + build-system = [ poetry-core ]; + + nativeBuildInputs = [ pythonRelaxDepsHook ]; + + pythonRelaxDeps = [ "pyarrow" ]; + + dependencies = [ + dacite + diskcache + jsonschema + pandas + pyarrow + ]; + + pythonImportsCheck = [ "datashaper" ]; + + # pypi tarball has no tests + doCheck = false; + + meta = { + description = "Collection of utilities for doing lightweight data wrangling"; + homepage = "https://github.com/microsoft/datashaper/tree/main/python/datashaper"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 22a5e914921b..4bc81af04ad5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2841,6 +2841,8 @@ self: super: with self; { datashape = callPackage ../development/python-modules/datashape { }; + datashaper = callPackage ../development/python-modules/datashaper { }; + datatable = callPackage ../development/python-modules/datatable { }; datauri = callPackage ../development/python-modules/datauri { }; From 362ec3fa31ec5803af6eba104b34bcc9d2375d2b Mon Sep 17 00:00:00 2001 From: natsukium Date: Sun, 7 Jul 2024 11:34:58 +0900 Subject: [PATCH 3/5] python312Packages.pyaml-env: init at 1.2.1 --- .../python-modules/pyaml-env/default.nix | 37 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 39 insertions(+) create mode 100644 pkgs/development/python-modules/pyaml-env/default.nix diff --git a/pkgs/development/python-modules/pyaml-env/default.nix b/pkgs/development/python-modules/pyaml-env/default.nix new file mode 100644 index 000000000000..dfbeb55112cd --- /dev/null +++ b/pkgs/development/python-modules/pyaml-env/default.nix @@ -0,0 +1,37 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + pyyaml, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "pyaml-env"; + version = "1.2.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mkaranasou"; + repo = "pyaml_env"; + rev = "refs/tags/v${version}"; + hash = "sha256-xSu+dksSVugShJwOqedXBrXIKaH0G5JAsynauOuP3OA="; + }; + + build-system = [ setuptools ]; + + dependencies = [ pyyaml ]; + + pythonImportsCheck = [ "pyaml_env" ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + meta = { + description = "Parse YAML configuration with environment variables in Python"; + homepage = "https://github.com/mkaranasou/pyaml_env"; + changelog = "https://github.com/mkaranasou/pyaml_env/releases/tag/v${version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4bc81af04ad5..ab43ac754e67 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10825,6 +10825,8 @@ self: super: with self; { pyaml = callPackage ../development/python-modules/pyaml { }; + pyaml-env = callPackage ../development/python-modules/pyaml-env { }; + pyannotate = callPackage ../development/python-modules/pyannotate { }; pyannote-audio = callPackage ../development/python-modules/pyannote-audio { }; From f72bebe4afeea484c54f267876d10b64479680c9 Mon Sep 17 00:00:00 2001 From: natsukium Date: Sat, 13 Jul 2024 09:13:44 +0900 Subject: [PATCH 4/5] python312Packages.swifter: init at 1.4.0 --- .../python-modules/swifter/default.nix | 52 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/python-modules/swifter/default.nix diff --git a/pkgs/development/python-modules/swifter/default.nix b/pkgs/development/python-modules/swifter/default.nix new file mode 100644 index 000000000000..53c5ea5c508a --- /dev/null +++ b/pkgs/development/python-modules/swifter/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + dask, + pandas, + psutil, + tqdm, + ipywidgets, + ray, +}: + +buildPythonPackage rec { + pname = "swifter"; + version = "1.4.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jmcarpenter2"; + repo = "swifter"; + rev = "refs/tags/${version}"; + hash = "sha256-lgdf8E9GGjeLY4ERzxqtjQuYVtdtIZt2HFLSiNBbtX4="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + pandas + psutil + dask + tqdm + ] ++ dask.optional-dependencies.dataframe; + + optional-dependencies = { + groupby = [ ray ]; + notebook = [ ipywidgets ]; + }; + + pythonImportsCheck = [ "swifter" ]; + + # tests may hang due to ignoring cpu core limit + # https://github.com/jmcarpenter2/swifter/issues/221 + doCheck = false; + + meta = { + description = "Package which efficiently applies any function to a pandas dataframe or series in the fastest available manner"; + homepage = "https://github.com/jmcarpenter2/swifter"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ab43ac754e67..828ccc82ecb3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14961,6 +14961,8 @@ self: super: with self; { swift = callPackage ../development/python-modules/swift { }; + swifter = callPackage ../development/python-modules/swifter { }; + swisshydrodata = callPackage ../development/python-modules/swisshydrodata { }; swspotify = callPackage ../development/python-modules/swspotify { }; From d2c2cc8e61831c65d929de41c782858123e7187e Mon Sep 17 00:00:00 2001 From: natsukium Date: Sat, 13 Jul 2024 10:15:49 +0900 Subject: [PATCH 5/5] python312Packages.graphrag: init at 0.1.1 --- .../python-modules/graphrag/default.nix | 122 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 124 insertions(+) create mode 100644 pkgs/development/python-modules/graphrag/default.nix diff --git a/pkgs/development/python-modules/graphrag/default.nix b/pkgs/development/python-modules/graphrag/default.nix new file mode 100644 index 000000000000..204b7a747597 --- /dev/null +++ b/pkgs/development/python-modules/graphrag/default.nix @@ -0,0 +1,122 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + poetry-core, + poetry-dynamic-versioning, + aiofiles, + aiolimiter, + azure-identity, + azure-search-documents, + azure-storage-blob, + datashaper, + devtools, + environs, + fastparquet, + graspologic, + lancedb, + networkx, + nltk, + numba, + numpy, + openai, + pyaml-env, + pydantic, + python-dotenv, + pyyaml, + rich, + scipy, + swifter, + tenacity, + textual, + tiktoken, + typing-extensions, + uvloop, + nbformat, + pytest-asyncio, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "graphrag"; + version = "0.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "microsoft"; + repo = "graphrag"; + rev = "refs/tags/v${version}"; + hash = "sha256-hIAQOIqm9S9AtssE6UxcXfaIbSt3+506ueMrlathNaQ="; + }; + + build-system = [ + poetry-core + poetry-dynamic-versioning + ]; + + pythonRelaxDeps = [ + "aiofiles" + "azure-identity" + "scipy" + "tiktoken" + ]; + + dependencies = [ + aiofiles + aiolimiter + azure-identity + azure-search-documents + azure-storage-blob + datashaper + devtools + environs + fastparquet + graspologic + lancedb + networkx + nltk + numba + numpy + openai + pyaml-env + pydantic + python-dotenv + pyyaml + rich + scipy + swifter + tenacity + textual + tiktoken + typing-extensions + uvloop + ]; + + env.NUMBA_CACHE_DIR = "$TMPDIR"; + + pythonImportsCheck = [ "graphrag" ]; + + nativeCheckInputs = [ + nbformat + pytest-asyncio + pytestCheckHook + ]; + + pytestFlagsArray = [ "tests/unit" ]; + + disabledTests = [ + # touch the network + "test_child" + "test_dotprefix" + "test_find" + "test_run_extract_entities_multiple_documents" + "test_run_extract_entities_single_document" + ]; + + meta = { + description = "Modular graph-based Retrieval-Augmented Generation (RAG) system"; + homepage = "https://github.com/microsoft/graphrag"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ natsukium ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 828ccc82ecb3..b5d5fe1f0c2d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5218,6 +5218,8 @@ self: super: with self; { graphql-subscription-manager = callPackage ../development/python-modules/graphql-subscription-manager { }; + graphrag = callPackage ../development/python-modules/graphrag { }; + graph-tool = callPackage ../development/python-modules/graph-tool { }; graphtage = callPackage ../development/python-modules/graphtage { };