nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 hatchling,
6 pytest-asyncio,
7 pytest-mock,
8 pytestCheckHook,
9 python-dateutil,
10 python-socks,
11 tldextract,
12 whodap,
13}:
14
15buildPythonPackage rec {
16 pname = "asyncwhois";
17 version = "1.1.12";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "pogzyb";
22 repo = "asyncwhois";
23 tag = "v${version}";
24 hash = "sha256-bi8tBT6htxEgE/qoDID2GykCrHVfpe8EcH/Mbq9B0T4=";
25 };
26
27 build-system = [ hatchling ];
28
29 dependencies = [
30 python-dateutil
31 python-socks
32 tldextract
33 whodap
34 ]
35 ++ python-socks.optional-dependencies.asyncio;
36
37 nativeCheckInputs = [
38 pytest-asyncio
39 pytest-mock
40 pytestCheckHook
41 ];
42
43 disabledTests = [
44 # Tests require network access
45 "test_pywhois_aio_get_hostname_from_ip"
46 "test_pywhois_get_hostname_from_ip"
47 "test_pywhois_aio_lookup_ipv4"
48 "test_not_found"
49 "test_aio_from_whois_cmd"
50 "test_aio_get_hostname_from_ip"
51 "test_from_whois_cmd"
52 "test_get_hostname_from_ip"
53 "test_whois_query_run"
54 "test_whois_query_create_connection"
55 "test_whois_query_send_and_recv"
56 "test_input_parameters_for_domain_query"
57 "test__get_top_level_domain"
58 ];
59
60 pythonImportsCheck = [ "asyncwhois" ];
61
62 meta = {
63 description = "Python module for retrieving WHOIS information";
64 homepage = "https://github.com/pogzyb/asyncwhois";
65 changelog = "https://github.com/pogzyb/asyncwhois/releases/tag/v${version}";
66 license = lib.licenses.asl20;
67 maintainers = with lib.maintainers; [ fab ];
68 };
69}