1{
2 lib,
3 astropy,
4 bottleneck,
5 buildPythonPackage,
6 cython,
7 extension-helpers,
8 fetchFromGitHub,
9 gwcs,
10 matplotlib,
11 numpy,
12 pythonOlder,
13 rasterio,
14 scikit-image,
15 scikit-learn,
16 scipy,
17 setuptools-scm,
18 setuptools,
19 shapely,
20 tqdm,
21 wheel,
22}:
23
24buildPythonPackage rec {
25 pname = "photutils";
26 version = "2.3.0";
27 pyproject = true;
28
29 disabled = pythonOlder "3.11";
30
31 src = fetchFromGitHub {
32 owner = "astropy";
33 repo = "photutils";
34 tag = version;
35 hash = "sha256-VPiirM1eaIRnb0ED6ZyIgu1BLI3TKVtqCf7bDawC/kA=";
36 };
37
38 build-system = [
39 setuptools
40 setuptools-scm
41 wheel
42 ];
43
44 nativeBuildInputs = [
45 cython
46 extension-helpers
47 numpy
48 ];
49
50 dependencies = [
51 astropy
52 numpy
53 scipy
54 ];
55
56 optional-dependencies = {
57 all = [
58 bottleneck
59 gwcs
60 matplotlib
61 rasterio
62 scikit-image
63 scikit-learn
64 shapely
65 tqdm
66 ];
67 };
68
69 # With 1.12.0 tests have issues importing modules
70 doCheck = false;
71
72 pythonImportsCheck = [ "photutils" ];
73
74 meta = with lib; {
75 description = "Astropy package for source detection and photometry";
76 homepage = "https://github.com/astropy/photutils";
77 changelog = "https://github.com/astropy/photutils/blob/${version}/CHANGES.rst";
78 license = licenses.bsd3;
79 maintainers = with maintainers; [ fab ];
80 };
81}