diff --git a/pkgs/development/python-modules/choreographer/default.nix b/pkgs/development/python-modules/choreographer/default.nix new file mode 100644 index 000000000000..53ecaaf6fa2d --- /dev/null +++ b/pkgs/development/python-modules/choreographer/default.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + logistro, + simplejson, +}: + +buildPythonPackage (finalAttrs: { + pname = "choreographer"; + version = "1.2.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "plotly"; + repo = "choreographer"; + tag = "v${finalAttrs.version}"; + hash = "sha256-WjAE3UlUCiXK5DxwmZvehQQaoJRkgEE8rNJQdAyOM4Q="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail ', "setuptools-git-versioning"' "" \ + --replace-fail 'dynamic = ["version"]' 'version = "${finalAttrs.version}"' + ''; + + build-system = [ + setuptools + ]; + + dependencies = [ + logistro + simplejson + ]; + + pythonImportsCheck = [ "choreographer" ]; + + # Tests require running chrome + doCheck = false; + + meta = { + description = "Devtools Protocol implementation for chrome"; + homepage = "https://github.com/plotly/choreographer"; + changelog = "https://github.com/plotly/choreographer/blob/${finalAttrs.src.tag}/CHANGELOG.txt"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/logistro/default.nix b/pkgs/development/python-modules/logistro/default.nix new file mode 100644 index 000000000000..fe2866a5f3ad --- /dev/null +++ b/pkgs/development/python-modules/logistro/default.nix @@ -0,0 +1,48 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # tests + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "logistro"; + version = "2.0.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "geopozo"; + repo = "logistro"; + tag = "v${finalAttrs.version}"; + hash = "sha256-c/wHOXDPDUYvfJCcLodbHzFdXGscvXEmOyPKCuzPIT0="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail ', "setuptools-git-versioning"' "" \ + --replace-fail 'dynamic = ["version"]' 'version = "${finalAttrs.version}"' + ''; + + build-system = [ + setuptools + ]; + + pythonImportsCheck = [ "logistro" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Wrapper for logging"; + homepage = "https://github.com/geopozo/logistro"; + changelog = "https://github.com/geopozo/logistro/blob/${finalAttrs.src.tag}/CHANGELOG.txt"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 097e84c7d506..8e27fb27d8d6 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2693,6 +2693,8 @@ self: super: with self; { chispa = callPackage ../development/python-modules/chispa { }; + choreographer = callPackage ../development/python-modules/choreographer { }; + chroma-hnswlib = callPackage ../development/python-modules/chroma-hnswlib { }; chromadb = callPackage ../development/python-modules/chromadb { zstd-c = pkgs.zstd; }; @@ -9239,6 +9241,8 @@ self: super: with self; { logilab-constraint = callPackage ../development/python-modules/logilab/constraint.nix { }; + logistro = callPackage ../development/python-modules/logistro { }; + logmatic-python = callPackage ../development/python-modules/logmatic-python { }; logster = callPackage ../development/python-modules/logster { };