1{ lib
2, buildPythonPackage
3, fetchPypi
4, flake8
5, orderedmultidict
6, pytestCheckHook
7, six
8}:
9
10buildPythonPackage rec {
11 pname = "furl";
12 version = "2.1.3";
13
14 src = fetchPypi {
15 inherit pname version;
16 sha256 = "5a6188fe2666c484a12159c18be97a1977a71d632ef5bb867ef15f54af39cc4e";
17 };
18
19 # With python 3.11.4, invalid IPv6 address does throw ValueError
20 # https://github.com/gruns/furl/issues/164#issuecomment-1595637359
21 postPatch = ''
22 substituteInPlace tests/test_furl.py \
23 --replace '[0:0:0:0:0:0:0:1:1:1:1:1:1:1:1:9999999999999]' '[2001:db8::9999]'
24 '';
25
26 propagatedBuildInputs = [
27 orderedmultidict
28 six
29 ];
30
31 nativeCheckInputs = [
32 flake8
33 pytestCheckHook
34 ];
35
36 pythonImportsCheck = [ "furl" ];
37
38 meta = with lib; {
39 description = "Python library that makes parsing and manipulating URLs easy";
40 homepage = "https://github.com/gruns/furl";
41 license = licenses.unlicense;
42 maintainers = with maintainers; [ vanzef ];
43 };
44}