about summary refs log tree commit diff
path: root/pkgs/development/python-modules/treq/default.nix
blob: 37f9e3324c7ede4a3b1fe56251ed1d2236f3f9bb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{ stdenv, fetchurl, buildPythonPackage, service-identity, requests2,
  six, mock, twisted, incremental, coreutils, gnumake, pep8, sphinx,
  openssl, pyopenssl }:

buildPythonPackage rec {
  name = "${pname}-${version}";
  pname = "treq";
  version = "16.12.0";

  src = fetchurl {
    url = "mirror://pypi/t/${pname}/${name}.tar.gz";
    sha256 = "1aci3f3rmb5mdf4s6s4k4kghmnyy784cxgi3pz99m5jp274fs25h";
  };

  buildInputs = [
    pep8
    mock
  ];

  propagatedBuildInputs = [
    service-identity
    requests2
    twisted
    incremental
    sphinx
    six
    openssl
    pyopenssl
  ];

  checkPhase = ''
    ${pep8}/bin/pep8 --ignore=E902 treq
    trial treq
  '';

  doCheck = false;
  # Failure: twisted.web._newclient.RequestTransmissionFailed: [<twisted.python.failure.Failure OpenSSL.SSL.Error: [('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')]>]

  postBuild = ''
    ${coreutils}/bin/mkdir -pv treq
    ${coreutils}/bin/echo "${version}" | ${coreutils}/bin/tee treq/_version
    cd docs && ${gnumake}/bin/make html && cd ..
  '';

  meta = with stdenv.lib; {
    homepage = http://github.com/twisted/treq;
    description = "A requests-like API built on top of twisted.web's Agent";
    license = licenses.mit;
    maintainers = with maintainers; [ nand0p ];
  };
}