`buildDotnetModule`: add support for installing pre-release tools (#374663)
[NixPkgs.git] / pkgs / development / python-modules / pdm-build-locked / default.nix
blobdb6929aa35b56aff44d22614ff41e3d4e76f24cf
2   lib,
3   buildPythonPackage,
4   fetchFromGitHub,
5   pythonOlder,
6   pdm-backend,
7   tomli,
8   build,
9   hatchling,
10   pkginfo,
11   pytestCheckHook,
14 buildPythonPackage rec {
15   pname = "pdm-build-locked";
16   version = "0.3.4";
17   pyproject = true;
19   src = fetchFromGitHub {
20     owner = "pdm-project";
21     repo = "pdm-build-locked";
22     tag = version;
23     hash = "sha256-22p9QQZOiDp4IlMK7tn4eSws3lKcThcHvIQpIX/cYrU=";
24   };
26   postPatch = ''
27     substituteInPlace tests/conftest.py \
28       --replace-fail '"pdm.pytest"' ""
29     sed -i "/addopts/d" pyproject.toml
30   '';
32   build-system = [ pdm-backend ];
34   dependencies = lib.optionals (pythonOlder "3.11") [ tomli ];
36   pythonImportsCheck = [ "pdm_build_locked" ];
38   nativeCheckInputs = [
39     build
40     hatchling
41     pkginfo
42     pytestCheckHook
43   ];
45   disabledTestPaths = [
46     # circular import of pdm
47     "tests/unit/test_build_command.py"
48   ];
50   meta = {
51     description = "Pdm-build-locked is a pdm plugin to publish locked dependencies as optional-dependencies";
52     homepage = "https://github.com/pdm-project/pdm-build-locked";
53     changelog = "https://github.com/pdm-project/pdm-build-locked/releases/tag/${version}";
54     license = lib.licenses.mit;
55     maintainers = with lib.maintainers; [ natsukium ];
56   };