1{ lib
2, buildPythonPackage
3, fetchPypi
4, calver
5, pytestCheckHook
6, pythonOlder
7}:
8
9let
10 self = buildPythonPackage rec {
11 pname = "trove-classifiers";
12 version = "2023.8.7";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.7";
16
17 src = fetchPypi {
18 inherit pname version;
19 hash = "sha256-yfKgqF1UXlNi6Wfk8Gn1b939kSFeIv+kjGb7KDUhMZo=";
20 };
21
22 postPatch = ''
23 substituteInPlace setup.py \
24 --replace '"calver"' ""
25 '';
26
27 nativeBuildInputs = [
28 calver
29 ];
30
31 doCheck = false; # avoid infinite recursion with hatchling
32
33 nativeCheckInputs = [
34 pytestCheckHook
35 ];
36
37 pythonImportsCheck = [ "trove_classifiers" ];
38
39 passthru.tests.trove-classifiers = self.overridePythonAttrs { doCheck = true; };
40
41 meta = {
42 description = "Canonical source for classifiers on PyPI";
43 homepage = "https://github.com/pypa/trove-classifiers";
44 changelog = "https://github.com/pypa/trove-classifiers/releases/tag/${version}";
45 license = lib.licenses.asl20;
46 maintainers = with lib.maintainers; [ dotlambda ];
47 };
48 };
49in
50 self