1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8 setuptools-scm,
9
10 # optional-dependencies
11 numpy,
12
13 # tests
14 pytestCheckHook,
15}:
16
17buildPythonPackage rec {
18 pname = "uncertainties";
19 version = "3.2.3";
20 pyproject = true;
21
22 src = fetchFromGitHub {
23 owner = "lmfit";
24 repo = "uncertainties";
25 tag = version;
26 hash = "sha256-YapujmwTlmUfTQwHsuh01V+jqsBbTd0Q9adGNiE8Go0=";
27 };
28
29 build-system = [
30 setuptools
31 setuptools-scm
32 ];
33
34 optional-dependencies.arrays = [ numpy ];
35
36 nativeCheckInputs = [
37 pytestCheckHook
38 ]
39 ++ optional-dependencies.arrays;
40
41 pythonImportsCheck = [ "uncertainties" ];
42
43 meta = {
44 homepage = "https://uncertainties.readthedocs.io/";
45 description = "Transparent calculations with uncertainties on the quantities involved (aka error propagation)";
46 maintainers = with lib.maintainers; [
47 rnhmjoj
48 doronbehar
49 ];
50 license = lib.licenses.bsd3;
51 };
52}