nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 fetchpatch,
6
7 setuptools,
8
9 pytestCheckHook,
10}:
11
12buildPythonPackage rec {
13 pname = "python-idzip";
14 version = "0.3.10";
15 pyproject = true;
16
17 src = fetchFromGitHub {
18 owner = "bauman";
19 repo = "python-idzip";
20 tag = version;
21 hash = "sha256-LAai0yRenGhBRdgTKA/T0bBrL0Aq+idFHt0NDMSLHMk=";
22 };
23
24 patches = [
25 # fix collision
26 # https://github.com/bauman/python-idzip/pull/23
27 (fetchpatch {
28 name = "fix-bin-folder-collisions.patch";
29 url = "https://patch-diff.githubusercontent.com/raw/bauman/python-idzip/pull/23.patch";
30 hash = "sha256-4fPhLdY9MaH1aX6tqMT+NNNNDsyv87G0xBh4MC+5yQE=";
31 })
32 ];
33
34 nativeBuildInputs = [ setuptools ];
35
36 nativeCheckInputs = [ pytestCheckHook ];
37
38 disabledTestPaths = [
39 # need third-party files
40 # https://github.com/bauman/python-idzip/blob/master/.github/workflows/test.yaml#L2https://github.com/bauman/python-idzip/blob/master/.github/workflows/test.yaml#L288
41 "test/test_compressor.py"
42 "test/test_decompressor.py"
43 "test/test_lucky_cache.py"
44 "test/test_readline.py"
45 "test/test_seek_read_behavior.py"
46 "test/test_zero_cache.py"
47 ];
48
49 disabledTests = [
50 # Terminated
51 # pop_var_context: head of shell_variables not a function context
52 "test_bufferedio_compat"
53 ];
54
55 meta = {
56 description = "Seekable, gzip compatible, compression format";
57 mainProgram = "idzip";
58 homepage = "https://github.com/bauman/python-idzip";
59 changelog = "https://github.com/bauman/python-idzip/releases/tag/${src.tag}";
60 license = lib.licenses.mit;
61 maintainers = with lib.maintainers; [ vizid ];
62 };
63}