evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / development / python-modules / graspologic-native / default.nix
blob3f014562f40abbbb59a03c0161b23c0e93106853
2   lib,
3   buildPythonPackage,
4   fetchFromGitHub,
5   rustPlatform,
6   libiconv,
7   pytestCheckHook,
8 }:
10 buildPythonPackage rec {
11   pname = "graspologic-native";
12   version = "1.2.1";
13   pyproject = true;
15   src = fetchFromGitHub {
16     owner = "graspologic-org";
17     repo = "graspologic-native";
18     rev = "refs/tags/${version}";
19     hash = "sha256-fgiBUzYBerYX59uj+I0Yret94vA+FpQK+MckskCBqj4=";
20   };
22   cargoDeps = rustPlatform.importCargoLock { lockFile = ./Cargo.lock; };
24   postPatch = ''
25     ln -s ${./Cargo.lock} Cargo.lock
26   '';
28   buildAndTestSubdir = "packages/pyo3";
30   nativeBuildInputs = [ rustPlatform.cargoSetupHook ];
32   buildInputs = [ libiconv ];
34   build-system = [ rustPlatform.maturinBuildHook ];
36   pythonImportsCheck = [ "graspologic_native" ];
38   nativeCheckInputs = [ pytestCheckHook ];
40   preCheck = ''
41     cd packages/pyo3
42   '';
44   meta = with lib; {
45     description = "Library of rust components to add additional capability to graspologic a python library for intelligently building networks and network embeddings, and for analyzing connected data";
46     homepage = "https://github.com/graspologic-org/graspologic-native";
47     license = licenses.mit;
48     maintainers = with maintainers; [ natsukium ];
49   };