sharlatan pushed a commit to branch master in repository guix. commit 1d016797a3bd33deac24e07fad6d99247ecc5424 Author: Sharlatan Hellseher <sharlata...@gmail.com> AuthorDate: Wed May 7 23:17:20 2025 +0100
gnu: packages/astronomy: Sort. * gnu/packages/astronomy.scm (python-jwst, python-mpl-animators, python-stsynphot, python-sunkit-image, python-sunpy-soar): Sort variables alphabetically. Change-Id: I3a8afb736baa4e13d3a395205bf5354a03de7d3c --- gnu/packages/astronomy.scm | 570 ++++++++++++++++++++++----------------------- 1 file changed, 285 insertions(+), 285 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 05f94c0f76..1abc33caf4 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -3601,6 +3601,101 @@ semi-analytic models, to cosmological hydrodynamic simulations, and even observationally-derived galaxy merger catalogs.") (license license:expat))) +(define-public python-jwst + (package + (name "python-jwst") + (version "1.18.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jwst" version)) + (sha256 + (base32 "1r3gmlsirdf1l2m1z8sxzh6h668zvkjyr463zwp32f6wppcj286l")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Replace reference to external configobj. + (substitute* (find-files "." "\\.py$") + (("from astropy.extern import configobj") + "import configobj") + (("from astropy.extern.configobj import validate") + "import validate") + (("from astropy.extern.configobj.configobj import ") + "from configobj import ") + (("from astropy.extern.configobj.validate import ") + "from validate import ")))))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: Tests require access to https://jwst-crds-pub.stsci.edu server + ;; for getting data sets. + #:tests? #f + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'relax-requirements + (lambda _ + (substitute* "pyproject.toml" + ;; scipy>=1.14.1 + (("1.14.1") "1.12.0") + ;; XXX: Can't detect opencv-python version. The input opencv + ;; might not set the version correctly. + ((".*opencv-python-headless.*") "") + ;; Remove broken scripts, see + ;; <https://github.com/spacetelescope/jwst/issues/9401>. + (("asn_gather = .*") "") + (("create_data = .*") "") + (("csvconvert = .*") ""))))))) + (native-inputs + (list python-colorama + python-pytest + python-pytest-cov + python-pytest-doctestplus + python-pytest-openfiles + python-requests-mock + python-setuptools + python-setuptools-scm + python-wheel)) + (propagated-inputs + ;; opencv provides OpenCV-Python which is Listed as install requirement. + (list opencv + python-asdf + python-asdf-astropy + python-astropy + python-bayesicfitting + python-crds + python-drizzle + python-gwcs + python-importlib-metadata + python-jplephem + python-jsonschema + python-numpy + python-packaging + python-photutils + python-poppy + python-psutil + python-pyparsing + python-pysiaf + python-requests + python-scikit-image + python-scipy + python-spherical-geometry + python-stcal + python-stdatamodels + python-stpipe + python-stsci-imagestats + python-synphot + python-tweakwcs + python-wiimatch)) + (home-page "https://jwst-pipeline.readthedocs.io/en/latest/") + (synopsis "Science observations from the James Webb Space Telescope") + (description + "This package provides an access to the JWST Science Calibration Pipeline +processes data from all JWST instruments and observing modes by applying +various science corrections sequentially, producing both fully-calibrated +individual exposures and high-level data products (mosaics, extracted spectra, +etc.).") + (license license:bsd-3))) + (define-public python-libstempo (package (name "python-libstempo") @@ -3782,6 +3877,45 @@ on: @end itemize") (license license:bsd-2))) +(define-public python-mpl-animators + (package + (name "python-mpl-animators") + (version "1.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "mpl_animators" version)) + (sha256 + (base32 "1jscdgx1ynqvidh0kc6jxhjlp7lxhilwnp5pb6ddi7nb10as90kz")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home + (lambda _ + ;; Relax matplotlib warning: ... because the default path + ;; (/homeless-shelter/.config/matplotlib) is not a writable + ;; directory ... + (setenv "HOME" "/tmp")))))) + (native-inputs + (list python-pytest + python-pytest-doctestplus + python-pytest-mpl + python-setuptools + python-setuptools-scm-next + python-wheel)) + (propagated-inputs + (list python-astropy + python-matplotlib + python-numpy)) + (home-page "https://sunpy.org") + (synopsis "Interactive animations with matplotlib") + (description + "The @code{mpl_animators} package provides a set of classes which allow +the easy construction of interactive matplotlib widget based animations.") + (license license:bsd-3))) + (define-public python-naima (package (name "python-naima") @@ -4388,52 +4522,6 @@ instruments.") (license (list license:bsd-3 ; licenses/LICENSE.rst, same as python-astropy license:expat)))) ; licenses/KOSMOS_LICENSE -(define-public python-sunkit-image - (package - (name "python-sunkit-image") - (version "0.6.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sunkit_image" version)) - (sha256 - (base32 "0x8w87vwdr78vcq0zha2y7xyfy16amc5aym4v8127xvphq1ff4v3")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - #~(list "--numprocesses" (number->string (parallel-job-count)) - ;; One test fails with assertion, probably in NumPy array - ;; precision calculation: np.allclose and - ;; sunpy.map.mapbase.GenericMap are not matched. - "--deselect=sunkit_image/tests/test_radial.py::test_fnrgf") - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'set-home - (lambda _ - ;; For tests: Permission denied: '/homeless-shelter' - (setenv "HOME" "/tmp")))))) - (native-inputs - (list python-dask - python-pytest-astropy - python-pytest-mpl - python-pytest-xdist - python-setuptools - python-setuptools-scm-next - python-wheel)) - (propagated-inputs - (list python-astropy - python-matplotlib - python-numpy - python-scikit-image - python-scipy - python-sunpy)) - (home-page "https://github.com/sunpy/sunkit-image/") - (synopsis "Solar Physics image processing toolbox") - (description - "This package provides an image processing toolbox for Solar Physics.") - (license license:bsd-2))) - (define-public python-astropy-healpix (package (name "python-astropy-healpix") @@ -4721,101 +4809,6 @@ Astronomical Almanac to within 0.0005 arcseconds (half a @emph{mas} or milliarcsecond).") (license license:expat))) -(define-public python-jwst - (package - (name "python-jwst") - (version "1.18.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jwst" version)) - (sha256 - (base32 "1r3gmlsirdf1l2m1z8sxzh6h668zvkjyr463zwp32f6wppcj286l")) - (modules '((guix build utils))) - (snippet - #~(begin - ;; Replace reference to external configobj. - (substitute* (find-files "." "\\.py$") - (("from astropy.extern import configobj") - "import configobj") - (("from astropy.extern.configobj import validate") - "import validate") - (("from astropy.extern.configobj.configobj import ") - "from configobj import ") - (("from astropy.extern.configobj.validate import ") - "from validate import ")))))) - (build-system pyproject-build-system) - (arguments - (list - ;; XXX: Tests require access to https://jwst-crds-pub.stsci.edu server - ;; for getting data sets. - #:tests? #f - #:phases - #~(modify-phases %standard-phases - (add-before 'build 'relax-requirements - (lambda _ - (substitute* "pyproject.toml" - ;; scipy>=1.14.1 - (("1.14.1") "1.12.0") - ;; XXX: Can't detect opencv-python version. The input opencv - ;; might not set the version correctly. - ((".*opencv-python-headless.*") "") - ;; Remove broken scripts, see - ;; <https://github.com/spacetelescope/jwst/issues/9401>. - (("asn_gather = .*") "") - (("create_data = .*") "") - (("csvconvert = .*") ""))))))) - (native-inputs - (list python-colorama - python-pytest - python-pytest-cov - python-pytest-doctestplus - python-pytest-openfiles - python-requests-mock - python-setuptools - python-setuptools-scm - python-wheel)) - (propagated-inputs - ;; opencv provides OpenCV-Python which is Listed as install requirement. - (list opencv - python-asdf - python-asdf-astropy - python-astropy - python-bayesicfitting - python-crds - python-drizzle - python-gwcs - python-importlib-metadata - python-jplephem - python-jsonschema - python-numpy - python-packaging - python-photutils - python-poppy - python-psutil - python-pyparsing - python-pysiaf - python-requests - python-scikit-image - python-scipy - python-spherical-geometry - python-stcal - python-stdatamodels - python-stpipe - python-stsci-imagestats - python-synphot - python-tweakwcs - python-wiimatch)) - (home-page "https://jwst-pipeline.readthedocs.io/en/latest/") - (synopsis "Science observations from the James Webb Space Telescope") - (description - "This package provides an access to the JWST Science Calibration Pipeline -processes data from all JWST instruments and observing modes by applying -various science corrections sequentially, producing both fully-calibrated -individual exposures and high-level data products (mosaics, extracted spectra, -etc.).") - (license license:bsd-3))) - (define-public python-jwst-reffiles (package (name "python-jwst-reffiles") @@ -4932,45 +4925,6 @@ astronomical tables @end itemize") (license license:bsd-3))) -(define-public python-mpl-animators - (package - (name "python-mpl-animators") - (version "1.2.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "mpl_animators" version)) - (sha256 - (base32 "1jscdgx1ynqvidh0kc6jxhjlp7lxhilwnp5pb6ddi7nb10as90kz")))) - (build-system pyproject-build-system) - (arguments - (list - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'set-home - (lambda _ - ;; Relax matplotlib warning: ... because the default path - ;; (/homeless-shelter/.config/matplotlib) is not a writable - ;; directory ... - (setenv "HOME" "/tmp")))))) - (native-inputs - (list python-pytest - python-pytest-doctestplus - python-pytest-mpl - python-setuptools - python-setuptools-scm-next - python-wheel)) - (propagated-inputs - (list python-astropy - python-matplotlib - python-numpy)) - (home-page "https://sunpy.org") - (synopsis "Interactive animations with matplotlib") - (description - "The @code{mpl_animators} package provides a set of classes which allow -the easy construction of interactive matplotlib widget based animations.") - (license license:bsd-3))) - (define-public python-ndcube (package (name "python-ndcube") @@ -5425,71 +5379,6 @@ less than the 1–3 km/day by which satellites themselves deviate from the ideal orbits described in TLE files.") (license license:expat))) -(define-public python-sunpy-soar - (package - (name "python-sunpy-soar") - (version "1.11.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sunpy_soar" version)) - (sha256 - (base32 "04zdfxb0y7m94lna6bikdc4rwa8n11wh42jyha0fxc604xhy2b3l")))) - (build-system pyproject-build-system) - (arguments - (list - #:test-flags - ;; Disable tests requiring network access to download test data from - ;; <http://soar.esac.esa.int> and <http://docs.virtualsolar.org>. - #~(list "-k" (string-join - (list "not test_distance_out_of_bounds_warning" - "test_distance_search_insitu" - "test_distance_search_remote_sensing" - "test_distance_time_search" - "test_download_path" - "test_insitu_search" - "test_invalid_detector" - "test_no_instrument" - "test_no_results" - "test_search" - "test_search_detector_instrument_dimension_2" - "test_search_detector_instrument_dimension_4" - "test_search_low_latency" - "test_search_soop" - "test_search_wavelength_detector_column" - "test_wavelength_column_wavelength_exists" - "test_wavelength_range" - "test_wavelength_single" - "test_when_sdac_provider_passed" - "test_when_soar_provider_passed" - "test_when_wrong_provider_passed") - " and not ")) - #:phases - #~(modify-phases %standard-phases - (add-before 'check 'set-home-env - (lambda _ - ;; Tests require HOME to be set. - ;; Permission denied: '/homeless-shelter' - (setenv "HOME" "/tmp")))))) - (native-inputs - (list python-pytest - python-pytest-doctestplus - python-responses - python-setuptools - python-setuptools-scm-next - python-wheel)) - (propagated-inputs - (list python-astropy - python-matplotlib - python-requests - python-sunpy)) - (home-page "https://docs.sunpy.org/projects/soar") - (synopsis "Solar Orbiter Archive plugin for SunPy") - (description - "This package provides a @code{sunpy} FIDO plugin for accessing data in the -@acronym{Solar Orbiter Archive, SOAR}.") - (license license:bsd-2))) - (define-public python-spectral-cube (package (name "python-spectral-cube") @@ -5997,46 +5886,6 @@ implementing calibration pipeline software.") ;; LICENSE Association of Universities for Research in Astronomy (AURA) (license license:bsd-3))) -(define-public python-stsynphot - (package - (name "python-stsynphot") - (version "1.4.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "stsynphot" version)) - (sha256 - (base32 "02xaglg1kv3mk6gqjcs1283mmy9b42fgsga8g2z8768lkgwmmg9j")))) - (build-system pyproject-build-system) - (arguments - (list - ;; XXX: Tests fails on missing file, it might need to be downloaded, - ;; disable them for now. astropy.utils.exceptions.AstropyUserWarning: - ;; Failed to load Vega spectrum from - ;; /grp/redcat/trds/calspec/alpha_lyr_stis_010.fits; - #:tests? #f)) - (native-inputs - (list python-pytest - python-pytest-astropy - python-pytest-astropy-header - python-setuptools - python-setuptools-scm - python-wheel)) - (propagated-inputs - (list python-astropy - python-beautifulsoup4 - python-matplotlib - python-numpy - python-scipy - python-synphot)) - (home-page "https://github.com/spacetelescope/stsynphot_refactor") - (synopsis "Synthetic photometry using Astropy for HST and JWST") - (description - "This package provides a replacement for IRAF STSDAS SYNPHOT and ASTROLIB -PYSYNPHOT, utilizing Astropy covering instrument specific portions of the old -packages for HST.") - (license license:bsd-3))) - (define-public python-pyerfa (package (name "python-pyerfa") @@ -7270,6 +7119,46 @@ processing functions: @code{xyxymatch}, @code{geomap}.") Institute, STScI} utility functions.") (license license:bsd-3))) +(define-public python-stsynphot + (package + (name "python-stsynphot") + (version "1.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "stsynphot" version)) + (sha256 + (base32 "02xaglg1kv3mk6gqjcs1283mmy9b42fgsga8g2z8768lkgwmmg9j")))) + (build-system pyproject-build-system) + (arguments + (list + ;; XXX: Tests fails on missing file, it might need to be downloaded, + ;; disable them for now. astropy.utils.exceptions.AstropyUserWarning: + ;; Failed to load Vega spectrum from + ;; /grp/redcat/trds/calspec/alpha_lyr_stis_010.fits; + #:tests? #f)) + (native-inputs + (list python-pytest + python-pytest-astropy + python-pytest-astropy-header + python-setuptools + python-setuptools-scm + python-wheel)) + (propagated-inputs + (list python-astropy + python-beautifulsoup4 + python-matplotlib + python-numpy + python-scipy + python-synphot)) + (home-page "https://github.com/spacetelescope/stsynphot_refactor") + (synopsis "Synthetic photometry using Astropy for HST and JWST") + (description + "This package provides a replacement for IRAF STSDAS SYNPHOT and ASTROLIB +PYSYNPHOT, utilizing Astropy covering instrument specific portions of the old +packages for HST.") + (license license:bsd-3))) + (define-public python-stwcs (package (name "python-stwcs") @@ -7341,6 +7230,52 @@ transformation for the imaging instruments on the @acronym{Hubble Space Telescope, HST}).") (license license:bsd-3))) +(define-public python-sunkit-image + (package + (name "python-sunkit-image") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sunkit_image" version)) + (sha256 + (base32 "0x8w87vwdr78vcq0zha2y7xyfy16amc5aym4v8127xvphq1ff4v3")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--numprocesses" (number->string (parallel-job-count)) + ;; One test fails with assertion, probably in NumPy array + ;; precision calculation: np.allclose and + ;; sunpy.map.mapbase.GenericMap are not matched. + "--deselect=sunkit_image/tests/test_radial.py::test_fnrgf") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home + (lambda _ + ;; For tests: Permission denied: '/homeless-shelter' + (setenv "HOME" "/tmp")))))) + (native-inputs + (list python-dask + python-pytest-astropy + python-pytest-mpl + python-pytest-xdist + python-setuptools + python-setuptools-scm-next + python-wheel)) + (propagated-inputs + (list python-astropy + python-matplotlib + python-numpy + python-scikit-image + python-scipy + python-sunpy)) + (home-page "https://github.com/sunpy/sunkit-image/") + (synopsis "Solar Physics image processing toolbox") + (description + "This package provides an image processing toolbox for Solar Physics.") + (license license:bsd-2))) + (define-public python-sunkit-magex (package (name "python-sunkit-magex") @@ -7505,6 +7440,71 @@ to the SolarSoft data analysis environment.") python-mpl-animators python-pyerfa))))) +(define-public python-sunpy-soar + (package + (name "python-sunpy-soar") + (version "1.11.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sunpy_soar" version)) + (sha256 + (base32 "04zdfxb0y7m94lna6bikdc4rwa8n11wh42jyha0fxc604xhy2b3l")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + ;; Disable tests requiring network access to download test data from + ;; <http://soar.esac.esa.int> and <http://docs.virtualsolar.org>. + #~(list "-k" (string-join + (list "not test_distance_out_of_bounds_warning" + "test_distance_search_insitu" + "test_distance_search_remote_sensing" + "test_distance_time_search" + "test_download_path" + "test_insitu_search" + "test_invalid_detector" + "test_no_instrument" + "test_no_results" + "test_search" + "test_search_detector_instrument_dimension_2" + "test_search_detector_instrument_dimension_4" + "test_search_low_latency" + "test_search_soop" + "test_search_wavelength_detector_column" + "test_wavelength_column_wavelength_exists" + "test_wavelength_range" + "test_wavelength_single" + "test_when_sdac_provider_passed" + "test_when_soar_provider_passed" + "test_when_wrong_provider_passed") + " and not ")) + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-home-env + (lambda _ + ;; Tests require HOME to be set. + ;; Permission denied: '/homeless-shelter' + (setenv "HOME" "/tmp")))))) + (native-inputs + (list python-pytest + python-pytest-doctestplus + python-responses + python-setuptools + python-setuptools-scm-next + python-wheel)) + (propagated-inputs + (list python-astropy + python-matplotlib + python-requests + python-sunpy)) + (home-page "https://docs.sunpy.org/projects/soar") + (synopsis "Solar Orbiter Archive plugin for SunPy") + (description + "This package provides a @code{sunpy} FIDO plugin for accessing data in the +@acronym{Solar Orbiter Archive, SOAR}.") + (license license:bsd-2))) + (define-public python-sunraster (package (name "python-sunraster")