1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 looseversion,
7 mmtf-python,
8 numpy,
9 pandas,
10 pynose,
11 pytestCheckHook,
12 pythonRelaxDepsHook,
13}:
14
15buildPythonPackage rec {
16 pname = "biopandas";
17 version = "0.5.0";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "BioPandas";
22 repo = "biopandas";
23 rev = "refs/tags/v${version}";
24 hash = "sha256-1c78baBBsDyvAWrNx5mZI/Q75wyXv0DAwAdWm3EwX/I=";
25 };
26
27 nativeBuildInputs = [ pythonRelaxDepsHook ];
28
29 pythonRelaxDeps = [ "looseversion" ];
30
31 build-system = [ setuptools ];
32
33 dependencies = [
34 numpy
35 pandas
36 mmtf-python
37 looseversion
38 ];
39
40 nativeCheckInputs = [
41 pynose
42 pytestCheckHook
43 ];
44
45 disabledTests = [
46 # require network access
47 "test_mmcif_pdb_conversion"
48 "test_fetch_pdb"
49 "test_write_mmtf_bp"
50 "test_write_mmtf"
51 "test_b_factor_shift"
52 ];
53
54 pythonImportsCheck = [ "biopandas" ];
55
56 meta = {
57 description = "Working with molecular structures in pandas DataFrames";
58 homepage = "https://github.com/BioPandas/biopandas";
59 changelog = "https://github.com/BioPandas/biopandas/releases/tag/${src.rev}";
60 license = lib.licenses.bsd3;
61 maintainers = with lib.maintainers; [ natsukium ];
62 };
63}