23 buildPythonPackage rec {
24 pname = "dns_lexicon";
28 disabled = pythonOlder "3.8";
30 src = fetchFromGitHub {
33 rev = "refs/tags/v${version}";
34 hash = "sha256-79/zz0TOCpx26TEo6gi9JDBQeVW2azWnxAjWr/FGRLA=";
41 propagatedBuildInputs = [
48 ] ++ lib.optionals (pythonOlder "3.10") [
52 passthru.optional-dependencies = {
84 ] ++ passthru.optional-dependencies.full;
91 # Needs network access
92 "tests/providers/test_auto.py"
93 # Needs network access (and an API token)
94 "tests/providers/test_namecheap.py"
98 # Tests want to download Public Suffix List
99 "test_client_legacy_init"
100 "test_client_basic_init"
102 "test_client_parse_env"
104 "action_is_correctly"
107 pythonImportsCheck = [
112 description = "Manipulate DNS records on various DNS providers in a standardized way";
113 mainProgram = "lexicon";
114 homepage = "https://github.com/AnalogJ/lexicon";
115 changelog = "https://github.com/AnalogJ/lexicon/blob/v${version}/CHANGELOG.md";
116 license = with licenses; [ mit ];
117 maintainers = with maintainers; [ aviallon ];