1{
2 lib,
3 buildPythonPackage,
4 pythonOlder,
5 fetchPypi,
6 hatchling,
7 pyyaml,
8 more-itertools,
9 pytestCheckHook,
10}:
11let
12 version = "3.2.1";
13in
14buildPythonPackage {
15 pname = "tap.py";
16 inherit version;
17 pyproject = true;
18
19 disabled = pythonOlder "3.9";
20
21 src = fetchPypi {
22 pname = "tap_py";
23 inherit version;
24 hash = "sha256-0DyeavClb62ZTxxp8UBB5naBHXPu7vIL9Ad8Q9Yh1gg=";
25 };
26
27 build-system = [
28 hatchling
29 ];
30
31 optional-dependencies = {
32 yaml = [
33 pyyaml
34 more-itertools
35 ];
36 };
37
38 nativeCheckInputs = [ pytestCheckHook ];
39
40 pythonImportsCheck = [ "tap" ];
41
42 meta = {
43 description = "Set of tools for working with the Test Anything Protocol (TAP) in Python";
44 homepage = "https://github.com/python-tap/tappy";
45 changelog = "https://tappy.readthedocs.io/en/latest/releases.html";
46 mainProgram = "tappy";
47 license = lib.licenses.bsd2;
48 maintainers = with lib.maintainers; [ ];
49 };
50}