biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / development / python-modules / courlan / default.nix
blob3941911ac620593d5de3c0326d39cf51cc2eab6c
2   lib,
3   babel,
4   buildPythonPackage,
5   fetchPypi,
6   langcodes,
7   pytestCheckHook,
8   pythonOlder,
9   setuptools,
10   tld,
11   urllib3,
14 buildPythonPackage rec {
15   pname = "courlan";
16   version = "1.3.0";
17   pyproject = true;
19   disabled = pythonOlder "3.8";
21   src = fetchPypi {
22     inherit pname version;
23     hash = "sha256-OGjziBIvKwnRVIAgQ/6S39YsPqenAOquirwFGYz4vCU=";
24   };
26   # Tests try to write to /tmp directly. use $TMPDIR instead.
27   postPatch = ''
28     substituteInPlace tests/unit_tests.py \
29       --replace-fail "\"courlan --help\"" "\"$out/bin/courlan --help\"" \
30       --replace-fail "courlan_bin = \"courlan\"" "courlan_bin = \"$out/bin/courlan\"" \
31       --replace-fail "/tmp" "$TMPDIR"
32   '';
34   build-system = [ setuptools ];
36   dependencies = [
37     babel
38     langcodes
39     tld
40     urllib3
41   ];
43   nativeCheckInputs = [ pytestCheckHook ];
45   # disable tests that require an internet connection
46   disabledTests = [ "test_urlcheck" ];
48   pythonImportsCheck = [ "courlan" ];
50   meta = with lib; {
51     description = "Clean, filter and sample URLs to optimize data collection";
52     homepage = "https://github.com/adbar/courlan";
53     changelog = "https://github.com/adbar/courlan/blob/v${version}/HISTORY.md";
54     license = licenses.asl20;
55     maintainers = with maintainers; [ jokatzke ];
56     mainProgram = "courlan";
57   };