nav: init at 1.2.1 (#356071)
[NixPkgs.git] / pkgs / development / python-modules / sudachipy / default.nix
blob57dda97d467d8f1d99f9a60876fb83fff39ff480
2   lib,
3   stdenv,
4   buildPythonPackage,
5   cargo,
6   libiconv,
7   rustPlatform,
8   rustc,
9   sudachi-rs,
10   setuptools-rust,
11   pytestCheckHook,
12   sudachidict-core,
13   tokenizers,
14   sudachipy,
17 buildPythonPackage rec {
18   pname = "sudachipy";
19   inherit (sudachi-rs) src version;
21   cargoDeps = rustPlatform.fetchCargoTarball {
22     inherit src;
23     name = "${pname}-${version}";
24     hash = "sha256-vYn1dWu87ruEGT/9QVIvxY21LzesVyq1VPaLcTrDKvY=";
25   };
27   nativeBuildInputs = [
28     cargo
29     rustPlatform.cargoSetupHook
30     rustc
31     setuptools-rust
32   ];
34   buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
36   preBuild = ''
37     cd python
38   '';
40   # avoid infinite recursion due to sudachidict
41   doCheck = false;
43   nativeCheckInputs = [
44     pytestCheckHook
45     sudachidict-core
46     tokenizers
47   ];
49   pythonImportsCheck = [ "sudachipy" ];
51   passthru = {
52     inherit (sudachi-rs) updateScript;
53     tests = {
54       pytest = sudachipy.overridePythonAttrs (_: {
55         doCheck = true;
56         # avoid catchConflicts of sudachipy
57         # we don't need to install this package since it is just a test
58         dontInstall = true;
59       });
60     };
61   };
63   meta = sudachi-rs.meta // {
64     homepage = "https://github.com/WorksApplications/sudachi.rs/tree/develop/python";
65     mainProgram = "sudachipy";
66   };