1{
2 lib,
3 attrs,
4 buildPythonPackage,
5 entry-points-txt,
6 fetchFromGitHub,
7 hatchling,
8 headerparser,
9 jsonschema,
10 packaging,
11 pytestCheckHook,
12 pytest-cov-stub,
13 pythonOlder,
14 readme-renderer,
15 setuptools,
16 wheel-filename,
17}:
18
19buildPythonPackage rec {
20 pname = "wheel-inspect";
21 version = "1.7.2";
22 pyproject = true;
23
24 disabled = pythonOlder "3.6";
25
26 src = fetchFromGitHub {
27 owner = "jwodder";
28 repo = "wheel-inspect";
29 tag = "v${version}";
30 hash = "sha256-Mdw9IlY/2qDlb5FumNH+VHmg7vrUzo3vn+03QsUGgo8=";
31 };
32
33 pythonRelaxDeps = [
34 "entry-points-txt"
35 "headerparser"
36 ];
37
38 nativeBuildInputs = [
39 hatchling
40 ];
41
42 propagatedBuildInputs = [
43 attrs
44 entry-points-txt
45 headerparser
46 packaging
47 readme-renderer
48 wheel-filename
49 ];
50
51 nativeCheckInputs = [
52 pytestCheckHook
53 pytest-cov-stub
54 ];
55
56 checkInputs = [
57 setuptools
58 jsonschema
59 ];
60
61 pythonImportsCheck = [ "wheel_inspect" ];
62
63 pytestFlagsArray = [
64 "-W"
65 "ignore::DeprecationWarning"
66 ];
67
68 meta = with lib; {
69 description = "Extract information from wheels";
70 mainProgram = "wheel2json";
71 homepage = "https://github.com/jwodder/wheel-inspect";
72 changelog = "https://github.com/wheelodex/wheel-inspect/releases/tag/v${version}";
73 license = with licenses; [ mit ];
74 maintainers = with maintainers; [ ayazhafiz ];
75 };
76}