Merge pull request #307098 from r-ryantm/auto-update/cilium-cli
[NixPkgs.git] / pkgs / development / python-modules / sudachipy / default.nix
blob3e3bd5b4adf6504510d4c70295a17a3f3be93675
1 { lib
2 , stdenv
3 , buildPythonPackage
4 , cargo
5 , libiconv
6 , rustPlatform
7 , rustc
8 , sudachi-rs
9 , setuptools-rust
10 , pytestCheckHook
11 , sudachidict-core
12 , tokenizers
13 , sudachipy
16 buildPythonPackage rec {
17   pname = "sudachipy";
18   inherit (sudachi-rs) src version;
20   cargoDeps = rustPlatform.fetchCargoTarball {
21     inherit src;
22     name = "${pname}-${version}";
23     hash = "sha256-ARwvThfATDdzBTjPFr9yjbE/0eYvp/TCZOEGbUupJmU=";
24   };
26   nativeBuildInputs = [
27     cargo
28     rustPlatform.cargoSetupHook
29     rustc
30     setuptools-rust
31   ];
33   buildInputs = lib.optionals stdenv.isDarwin [
34     libiconv
35   ];
37   preBuild = ''
38     cd python
39   '';
41   # avoid infinite recursion due to sudachidict
42   doCheck = false;
44   nativeCheckInputs = [
45     pytestCheckHook
46     sudachidict-core
47     tokenizers
48   ];
50   pythonImportsCheck = [
51     "sudachipy"
52   ];
54   passthru = {
55     inherit (sudachi-rs) updateScript;
56     tests = {
57       pytest = sudachipy.overridePythonAttrs (
58         _: {
59           doCheck = true;
60           # avoid catchConflicts of sudachipy
61           # we don't need to install this package since it is just a test
62           dontInstall = true;
63         }
64       );
65     };
66   };
68   meta = sudachi-rs.meta // {
69     homepage = "https://github.com/WorksApplications/sudachi.rs/tree/develop/python";
70     mainProgram = "sudachipy";
71   };