1{ lib 2, stdenv 3, buildPythonPackage 4, fetchPypi 5, h5py 6, hickle 7, hypothesis 8, ipython 9, lazy-loader 10, matplotlib 11, numpy 12, pandas 13, pyqt5 14, pyqtgraph 15, pytest-mock 16, pytest-xdist 17, pytestCheckHook 18, pythonOlder 19, qcodes 20, setuptools 21, slack-sdk 22, versioningit 23, wheel 24, xarray 25}: 26 27buildPythonPackage rec { 28 pname = "qcodes-loop"; 29 version = "0.1.2"; 30 pyproject = true; 31 32 disabled = pythonOlder "3.8"; 33 34 src = fetchPypi { 35 inherit version; 36 pname = "qcodes_loop"; 37 hash = "sha256-TizNSC49n4Xc2BmJNziARlVXYQxp/LtwmKpgqQkQ3a8="; 38 }; 39 40 nativeBuildInputs = [ 41 setuptools 42 versioningit 43 wheel 44 ]; 45 46 propagatedBuildInputs = [ 47 qcodes 48 h5py 49 lazy-loader 50 matplotlib 51 numpy 52 pandas 53 xarray 54 hickle 55 ipython 56 ]; 57 58 passthru.optional-dependencies = { 59 qtplot = [ 60 pyqtgraph 61 ]; 62 slack = [ 63 slack-sdk 64 ]; 65 }; 66 67 nativeCheckInputs = [ 68 pytestCheckHook 69 hypothesis 70 pytest-xdist 71 pytest-mock 72 pyqt5 73 ]; 74 75 pythonImportsCheck = [ 76 "qcodes_loop" 77 ]; 78 79 postInstall = '' 80 export HOME="$TMPDIR" 81 ''; 82 83 disabledTests = [ 84 # AssertionError: False is not true 85 "TestHDF5_Format" 86 ]; 87 88 meta = with lib; { 89 description = "Features previously in QCoDeS"; 90 homepage = "https://github.com/QCoDeS/Qcodes_loop"; 91 changelog = "https://github.com/QCoDeS/Qcodes_loop/releases/tag/v${version}"; 92 license = licenses.mit; 93 maintainers = with maintainers; [ evilmav ]; 94 # Some tests fail on this platform 95 broken = stdenv.isDarwin; 96 }; 97}