1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 pythonOlder,
7 requests,
8 python-dateutil,
9 langcodes,
10 pgpy-dtc,
11 validators,
12 requests-mock,
13 pytestCheckHook,
14}:
15
16buildPythonPackage rec {
17 pname = "sectxt";
18 version = "0.9.7";
19 pyproject = true;
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchFromGitHub {
24 owner = "DigitalTrustCenter";
25 repo = "sectxt";
26 tag = version;
27 hash = "sha256-CDVfT3ANb4ugLEvrSRTbkZMvZA6rcEwBu2c3pnjsza8=";
28 };
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 requests
34 python-dateutil
35 langcodes
36 pgpy-dtc
37 validators
38 ];
39
40 nativeCheckInputs = [
41 pytestCheckHook
42 requests-mock
43 ];
44
45 pythonImportsCheck = [ "sectxt" ];
46
47 meta = {
48 homepage = "https://github.com/DigitalTrustCenter/sectxt";
49 changelog = "https://github.com/DigitalTrustCenter/sectxt/releases/tag/${src.tag}";
50 description = "Security.txt parser and validator";
51 license = lib.licenses.eupl12;
52 maintainers = with lib.maintainers; [ networkexception ];
53 };
54}