at master 1.7 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 formulaic, 7 frozendict, 8 click, 9 num2words, 10 numpy, 11 scipy, 12 pandas, 13 nibabel, 14 bids-validator, 15 sqlalchemy, 16 universal-pathlib, 17 pytestCheckHook, 18 versioneer, 19}: 20 21buildPythonPackage rec { 22 pname = "pybids"; 23 version = "0.20.0"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "bids-standard"; 28 repo = "pybids"; 29 tag = version; 30 hash = "sha256-e1uD9rNs50GP8myNY+5VbcdRKlLykSTd9ESKrhSW+r8="; 31 }; 32 33 postPatch = '' 34 substituteInPlace pyproject.toml \ 35 --replace-fail 'dynamic = ["version"]' 'version = "${version}"' 36 ''; 37 38 pythonRelaxDeps = [ 39 "formulaic" 40 "sqlalchemy" 41 ]; 42 43 build-system = [ 44 setuptools 45 versioneer 46 ] 47 ++ versioneer.optional-dependencies.toml; 48 49 dependencies = [ 50 bids-validator 51 click 52 formulaic 53 frozendict 54 nibabel 55 num2words 56 numpy 57 pandas 58 scipy 59 sqlalchemy 60 universal-pathlib 61 ]; 62 63 pythonImportsCheck = [ "bids" ]; 64 65 nativeCheckInputs = [ pytestCheckHook ]; 66 67 disabledTestPaths = [ 68 # Could not connect to the endpoint URL 69 "src/bids/layout/tests/test_remote_bids.py" 70 ]; 71 72 disabledTests = [ 73 # Regression associated with formulaic >= 0.6.0 74 # (see https://github.com/bids-standard/pybids/issues/1000) 75 "test_split" 76 ]; 77 78 meta = { 79 description = "Python tools for querying and manipulating BIDS datasets"; 80 homepage = "https://github.com/bids-standard/pybids"; 81 changelog = "https://github.com/bids-standard/pybids/blob/${version}/CHANGELOG.rst"; 82 license = lib.licenses.mit; 83 maintainers = with lib.maintainers; [ wegank ]; 84 mainProgram = "pybids"; 85 }; 86}