1{
2 lib,
3 buildPythonPackage,
4 cryptography,
5 fetchPypi,
6 grequests,
7 hawkauthlib,
8 mock,
9 pybrowserid,
10 pyjwt,
11 pytestCheckHook,
12 pythonOlder,
13 requests,
14 responses,
15 setuptools,
16 six,
17}:
18
19buildPythonPackage rec {
20 pname = "pyfxa";
21 version = "0.7.8";
22 pyproject = true;
23
24 disabled = pythonOlder "3.7";
25
26 src = fetchPypi {
27 pname = "PyFxA";
28 inherit version;
29 hash = "sha256-DMFZl1hbYNaScOTWkAbK2nKti6wD5SS5A30q7TW5vO4=";
30 };
31
32 build-system = [ setuptools ];
33
34 dependencies = [
35 cryptography
36 hawkauthlib
37 pybrowserid
38 pyjwt
39 requests
40 setuptools # imports pkg_resources
41 six
42 ];
43
44 nativeCheckInputs = [
45 grequests
46 mock
47 responses
48 pytestCheckHook
49 ];
50
51 pythonImportsCheck = [ "fxa" ];
52
53 disabledTestPaths = [
54 # Requires network access
55 "fxa/tests/test_core.py"
56 "fxa/tests/test_oauth.py"
57 ];
58
59 meta = with lib; {
60 description = "Firefox Accounts client library";
61 mainProgram = "fxa-client";
62 homepage = "https://github.com/mozilla/PyFxA";
63 license = licenses.mpl20;
64 maintainers = with maintainers; [ ];
65 };
66}