linux_xanmod: 5.11.14 -> 5.11.15
[NixPkgs.git] / pkgs / development / python-modules / mail-parser / default.nix
blob94b575f3f468133c7ac5833b6edb0121ac8f055d
1 { lib, buildPythonPackage, python, pythonOlder, glibcLocales, fetchFromGitHub, ipaddress, six, simplejson }:
3 buildPythonPackage rec {
4   pname = "mail-parser";
5   version = "3.12.0";
7   # no tests in PyPI tarball
8   src = fetchFromGitHub {
9     owner = "SpamScope";
10     repo = pname;
11     rev = "v${version}";
12     sha256 = "0p851jlly6bzcs70kd1lcjwmg4scwh1icymfc0f2y6rkh4kfsdhk";
13   };
15   LC_ALL = "en_US.utf-8";
17   # remove version bounds
18   prePatch = ''
19     sed -i -e 's/==.*//g' requirements.txt
20   ''
21   # ipaddress is part of the standard library of Python 3.3+
22   + lib.optionalString (!pythonOlder "3.3") ''
23     substituteInPlace requirements.txt \
24       --replace "ipaddress" ""
25   '';
27   nativeBuildInputs = [ glibcLocales ];
28   propagatedBuildInputs = [ simplejson six ] ++ lib.optional (pythonOlder "3.3") ipaddress;
30   # Taken from .travis.yml
31   checkPhase = ''
32     ${python.interpreter} tests/test_main.py
33     ${python.interpreter} -m mailparser -v
34     ${python.interpreter} -m mailparser -h
35     ${python.interpreter} -m mailparser -f tests/mails/mail_malformed_3 -j
36     cat tests/mails/mail_malformed_3 | ${python.interpreter} -m mailparser -k -j
37   '';
39   meta = with lib; {
40     description = "A mail parser for python 2 and 3";
41     homepage = "https://github.com/SpamScope/mail-parser";
42     license = licenses.asl20;
43     maintainers = with maintainers; [ psyanticy ];
44   };