1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, setuptools
6, wheel
7}:
8
9buildPythonPackage rec {
10 pname = "dllogger";
11 version = "1.0.0";
12 pyproject = true;
13
14 disabled = pythonOlder "3.5";
15
16 src = fetchFromGitHub {
17 owner = "NVIDIA";
18 repo = "dllogger";
19 rev = "refs/tags/v${version}";
20 hash = "sha256-Hpr4yeRl+Dyaz6lRyH/5P6UQT184JEHPqgVlf4qHvOg=";
21 };
22
23 nativeBuildInputs = [
24 setuptools
25 wheel
26 ];
27
28 # use examples as smoke tests since upstream has no tests
29 checkPhase = ''
30 runHook preCheck
31
32 python examples/dllogger_example.py
33 python examples/dllogger_singleton_example.py
34
35 runHook postCheck
36 '';
37
38 pythonImportsCheck = [ "dllogger" ];
39
40 meta = with lib; {
41 description = "A logging tool for deep learning";
42 homepage = "https://github.com/NVIDIA/dllogger";
43 changelog = "https://github.com/NVIDIA/dllogger/releases/tag/v${version}";
44 license = licenses.asl20;
45 maintainers = with maintainers; [ natsukium ];
46 };
47}