1{ stdenv, fetchPypi, buildPythonPackage, pip, pytest, click, six, first
2, setuptools_scm, git, glibcLocales, mock }:
3
4buildPythonPackage rec {
5 pname = "pip-tools";
6 version = "3.8.0";
7
8 src = fetchPypi {
9 inherit pname version;
10 sha256 = "1vwh3hx4jrzf51yj9h31nk9ji53lqaq63mlqd7n84hcmfwy3rwz4";
11 };
12
13 LC_ALL = "en_US.UTF-8";
14 checkInputs = [ pytest git glibcLocales mock ];
15 propagatedBuildInputs = [ pip click six first setuptools_scm ];
16
17 disabledTests = stdenv.lib.concatMapStringsSep " and " (s: "not " + s) [
18 # Depend on network tests:
19 "test_allow_unsafe_option" #paramaterized, but all fail
20 "test_annotate_option" #paramaterized, but all fail
21 "test_editable_package_vcs"
22 "test_editable_top_level_deps_preserved" # can't figure out how to select only one parameter to ignore
23 "test_filter_pip_markers"
24 "test_filter_pip_markes"
25 "test_generate_hashes_all_platforms"
26 "test_generate_hashes_verbose"
27 "test_generate_hashes_with_editable"
28 "test_generate_hashes_with_url"
29 "test_generate_hashes_without_interfering_with_each_other"
30 "test_get_hashes_local_repository_cache_miss"
31 "test_realistic_complex_sub_dependencies"
32 "test_stdin"
33 "test_upgrade_packages_option"
34 "test_url_package"
35 # Expect specific version of "six":
36 "test_editable_package"
37 "test_input_file_without_extension"
38 "test_locally_available_editable_package_is_not_archived_in_cache_dir"
39 "test_no_candidates"
40 "test_no_candidates_pre"
41 ];
42
43 checkPhase = ''
44 export HOME=$(mktemp -d) VIRTUAL_ENV=1
45 py.test -k "${disabledTests}"
46 '';
47
48 meta = with stdenv.lib; {
49 description = "Keeps your pinned dependencies fresh";
50 homepage = https://github.com/jazzband/pip-tools/;
51 license = licenses.bsd3;
52 maintainers = with maintainers; [ zimbatm ];
53 broken = true;
54 };
55}