evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / by-name / ma / maturin / package.nix
blob482861c75067e0ce30bfe594c1529bc9bf072395
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   rustPlatform,
6   darwin,
7   libiconv,
8   testers,
9   nix-update-script,
10   maturin,
11   python3,
14 rustPlatform.buildRustPackage rec {
15   pname = "maturin";
16   version = "1.7.4";
18   src = fetchFromGitHub {
19     owner = "PyO3";
20     repo = "maturin";
21     rev = "v${version}";
22     hash = "sha256-Zephf4mB3RI5YIAOIjfqIfgVANefkH63OQoPPMe417E=";
23   };
25   cargoHash = "sha256-yLKt/Xml7ig6QG3T5Qn39tW7U5NIN1hSOaLiSRMiy5I=";
27   buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
28     darwin.apple_sdk.frameworks.Security
29     libiconv
30   ];
32   # Requires network access, fails in sandbox.
33   doCheck = false;
35   passthru = {
36     tests = {
37       version = testers.testVersion { package = maturin; };
38       pyo3 = python3.pkgs.callPackage ./pyo3-test {
39         format = "pyproject";
40         buildAndTestSubdir = "examples/word-count";
41         preConfigure = "";
43         nativeBuildInputs = with rustPlatform; [
44           cargoSetupHook
45           maturinBuildHook
46         ];
47       };
48     };
50     updateScript = nix-update-script { };
51   };
53   meta = {
54     description = "Build and publish Rust crates Python packages";
55     longDescription = ''
56       Build and publish Rust crates with PyO3, rust-cpython, and
57       cffi bindings as well as Rust binaries as Python packages.
59       This project is meant as a zero-configuration replacement for
60       setuptools-rust and Milksnake. It supports building wheels for
61       Python and can upload them to PyPI.
62     '';
63     homepage = "https://github.com/PyO3/maturin";
64     changelog = "https://github.com/PyO3/maturin/blob/v${version}/Changelog.md";
65     license = with lib.licenses; [
66       asl20 # or
67       mit
68     ];
69     maintainers = with lib.maintainers; [ getchoo ];
70     mainProgram = "maturin";
71   };