mbox series

[bug#68641,00/19] gnu: Astronomy 2024/01 updates.

Message ID cover.1705854493.git.sharlatanus@gmail.com
Headers show
Series gnu: Astronomy 2024/01 updates. | expand

Message

Sharlatan Hellseher Jan. 21, 2024, 4:51 p.m. UTC
Hi Guix,

The first update for this year including new packages, updates and refactoring
of exiting ones.

I'd like to highlight archived milestones:
* Each of disabled test has annotation
* All packages use G-Expression and no label style
* The number of packages using python-build-system reduced to 7
* Nearly all of the packages are on the latest upstream release versions
* There is non failing packages
* Number of packages are 107

In the next update cycle, I would add more new packages and update
python-astropy to the latest upstream release. Astropy v6.0.0 dropped support
for setup.py and now completely relies on pyproject.toml, which may require
additional work to build extensions. There is a known issue in the Python
community, which can be found at
https://github.com/pypa/setuptools/discussions/3388.

--8<---------------cut here---------------start------------->8---
libnova stackistry libpasastro python-stsynphot python-skyfield python-tweakwcs
python-synphot python-specutils python-dust-extinction python-ndcube
python-sunpy python-stcal python-pyvo python-drms python-crds libxisf gpredict
indi stellarium

/gnu/store/zqml8n4y02xrcmw01q8i06d46fddcrir-stellarium-23.4
/gnu/store/h497aylqnzrjpjz3lzafzxjaqi6fbwy5-indi-2.0.5
/gnu/store/ghi0f9bhx2wkp072jk4xz2lixbj26x4i-gpredict-2.2.1
/gnu/store/s0y47lhicvl476zy86rj5rnmzf0r37p3-libxisf-0.2.11
/gnu/store/148r3c1jrqgg8gshbm577q3gdmla0akg-python-crds-11.17.14
/gnu/store/aldzlx6w565l2adzs2632nlv4wlcxjx6-python-drms-0.7.1
/gnu/store/am0f5282zp58apvayy1jsqbqahk2vrh8-python-pyvo-1.5
/gnu/store/5himf99l9vhx6z0h39vdnsa5b92v1s3p-python-stcal-1.5.2
/gnu/store/rwfb964c13jlsqmm2v7g8rnx7djiigz7-python-sunpy-5.1.1
/gnu/store/yxzpzdvzi1p15pja4czfks1fjp7rylx2-python-ndcube-2.2.0
/gnu/store/xdbw1rinfvi8f5w37v6spav7g01wcv57-python-dust-extinction-1.3
/gnu/store/iyr84yl0bm287nfwhpjy8q9nvcc5d329-python-specutils-1.12.0
/gnu/store/2v7kh2c60gxj1anmn6b51mj3bdpnaqh1-python-synphot-1.3.0
/gnu/store/qf4k5699ff7fn94rh8wb7p124cnhdngx-python-tweakwcs-0.8.6
/gnu/store/lqpm8vb7mc0n1xln3ih3a6sjbvyw765c-python-skyfield-1.47
/gnu/store/kxaki362px06kkyl8d1nbd3gvyw5ryhq-python-stsynphot-1.3.0
/gnu/store/g1vkwl86rlk36kkghs9vgjygcxbjhz67-libpasastro-1.4.2
/gnu/store/8fmrj122s2gs4b3vzxr6zn9m8dzzqcj7-stackistry-0.3.0
/gnu/store/vwsjcr1pmbfkqx67mwpbb5kprhs576rj-libnova-0.16
--8<---------------cut here---------------end--------------->8---


Building the following 8 packages would ensure 57 dependent packages are
rebuilt: indi@2.0.5 phd2@2.6.12 stellarium@23.4 xygrib@1.2.6.1
python-cesium@0.12.1 python-astroalign@2.5.1 python-poliastro@0.17.0
python-jwst@1.12.5

--8<---------------cut here---------------start------------->8---
/gnu/store/b865hysxypywkjp56h5g9v5fd64bxcmc-python-jwst-1.12.5
/gnu/store/r93h0ciq8h643rzikgsszgpaba348v0w-python-poliastro-0.17.0
/gnu/store/5y1kdnhjia4icpklbxx06kcwql2ryr50-python-astroalign-2.5.1
/gnu/store/s46jrzyrk3h7zvdg43wmpivyzwrzqf4i-python-cesium-0.12.1
/gnu/store/bcdmgdd1darhlwbchybc0fbhhd7il5j3-xygrib-1.2.6.1
/gnu/store/zqml8n4y02xrcmw01q8i06d46fddcrir-stellarium-23.4
/gnu/store/m5bbkyaz2ndgq3qqw3g65zjxa66wqfi3-phd2-2.6.12
/gnu/store/h497aylqnzrjpjz3lzafzxjaqi6fbwy5-indi-2.0.5
--8<---------------cut here---------------end--------------->8---

Sharlatan Hellseher (19):
  gnu: stellarium: Update to 23.4.
  gnu: indi-2.0: Update to 2.0.5.
  gnu: gpredict: Update home-page and description.
  gnu: libxisf: Update to 0.2.11.
  gnu: python-crds: Update to 11.17.14.
  gnu: python-drms: Update to 0.7.1.
  gnu: python-pyvo: Update to 1.5.
  gnu: python-stcal: Update to 1.5.2.
  gnu: python-sunpy: Update to 5.1.1.
  gnu: Add python-ndcube.
  gnu: Add python-dust-extinction.
  gnu: Add python-specutils.
  gnu: python-synphot: Enable more options.
  gnu: python-tweakwcs: Update to 0.8.6.
  gnu: python-skyfield: Update to 1.47.
  gnu: python-stsynphot: Fix build.
  gnu: libpasastro: Use G-Expressions.
  gnu: stackistry: Use G-Expressions.
  gnu: libnova: Use G-Expressions.

 gnu/packages/astronomy.scm | 398 ++++++++++++++++++++++++++-----------
 1 file changed, 281 insertions(+), 117 deletions(-)


base-commit: 121de47decc1029c06f6e46e5f06d7fefe8e85ec

Comments

Maxim Cournoyer Jan. 24, 2024, 2:20 p.m. UTC | #1
Hello Sharlatan!

Sharlatan Hellseher <sharlatanus@gmail.com> writes:

> Hi Guix,
>
> The first update for this year including new packages, updates and refactoring
> of exiting ones.
>
> I'd like to highlight archived milestones:
> * Each of disabled test has annotation
> * All packages use G-Expression and no label style
> * The number of packages using python-build-system reduced to 7
> * Nearly all of the packages are on the latest upstream release versions
> * There is non failing packages
> * Number of packages are 107
>
> In the next update cycle, I would add more new packages and update
> python-astropy to the latest upstream release. Astropy v6.0.0 dropped support
> for setup.py and now completely relies on pyproject.toml, which may require
> additional work to build extensions. There is a known issue in the Python
> community, which can be found at
> https://github.com/pypa/setuptools/discussions/3388.

Thank you!  This is all very neatly crafted and tested.  The attention
to detail is much appreciated.

[...]

> Sharlatan Hellseher (19):
>   gnu: stellarium: Update to 23.4.
>   gnu: indi-2.0: Update to 2.0.5.
>   gnu: gpredict: Update home-page and description.
>   gnu: libxisf: Update to 0.2.11.
>   gnu: python-crds: Update to 11.17.14.
>   gnu: python-drms: Update to 0.7.1.
>   gnu: python-pyvo: Update to 1.5.
>   gnu: python-stcal: Update to 1.5.2.
>   gnu: python-sunpy: Update to 5.1.1.
>   gnu: Add python-ndcube.
>   gnu: Add python-dust-extinction.
>   gnu: Add python-specutils.
>   gnu: python-synphot: Enable more options.
>   gnu: python-tweakwcs: Update to 0.8.6.
>   gnu: python-skyfield: Update to 1.47.
>   gnu: python-stsynphot: Fix build.
>   gnu: libpasastro: Use G-Expressions.
>   gnu: stackistry: Use G-Expressions.
>   gnu: libnova: Use G-Expressions.
>

I've added a few mostly innocuous comments in one or two of the series.
Feel free to adjust as you see fit and push the series.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
Sharlatan Hellseher Jan. 24, 2024, 10:19 p.m. UTC | #2
Hi Efraim,

Thank you for the review and feedback!

> This package compiles just fine for riscv64 so there's no reason to
> limit it to only certain architectures.

That's is a great new, I did not try to build it on any other OS or
platform. The reason I've add that flags is not a standard Makfile
coming with the project.

https://github.com/pchev/libpasastro/blob/master/Makefile

--8<---------------cut here---------------start------------->8---
all:
ifeq ($(OS_TARGET),win32)
	$(MAKE) -C getdss -f Makefile.win32 all
	$(MAKE) -C plan404 -f Makefile.win32 all
	$(MAKE) -C wcs -f Makefile.win32 all
 else
 ifeq ($(OS_TARGET),win64)
	$(MAKE) -C getdss -f Makefile.win64 all
	$(MAKE) -C plan404 -f Makefile.win64 all
	$(MAKE) -C wcs -f Makefile.win64 all
 else
 ifeq ($(CPU_TARGET),i386)
	$(MAKE) -C getdss all arch_flags=-m32
	$(MAKE) -C plan404 all arch_flags=-m32
	$(MAKE) -C wcs all arch_flags=-m32
 else
 ifeq ($(CPU_TARGET),x86_64)
	$(MAKE) -C getdss all arch_flags=-m64
	$(MAKE) -C plan404 all arch_flags=-m64
	$(MAKE) -C wcs all arch_flags=-m64
 else
	$(MAKE) -C getdss all
	$(MAKE) -C plan404 all
	$(MAKE) -C wcs all
 endif
 endif
 endif
endif

clean:
ifeq ($(OS_TARGET),win32)
        $(MAKE) -C getdss -f Makefile.win32 clean
        $(MAKE) -C plan404 -f Makefile.win32 clean
        $(MAKE) -C wcs -f Makefile.win32 clean
else
ifeq ($(OS_TARGET),win64)
        $(MAKE) -C getdss -f Makefile.win64 clean
        $(MAKE) -C plan404 -f Makefile.win64 clean
        $(MAKE) -C wcs -f Makefile.win64 clean
else
	$(MAKE) -C getdss clean
	$(MAKE) -C plan404 clean
	$(MAKE) -C wcs clean
endif
endif

ifeq ($(OS_TARGET),darwin)
install:
	./install_darwin.sh $(PREFIX)
else
install:
	./install.sh $(PREFIX) $(CPU_TARGET)
install_win:
	./install_win.sh win32 $(PREFIX)
install_win64:
	./install_win.sh win64 $(PREFIX)
endif
--8<---------------cut here---------------end--------------->8---

> (%current-target-system) returns i686-linux-gnu for the first one, so
> it'd probably be better to use cond and (target-x86-32?) for the first
> one.
>
> I'm not actually convinced you need any of the flags for OS_TARGET or
> CPU_TARGET (except perhaps for cross-compiling), does it make a
> difference between compiled with or without?

I would dedicate some time to figure out how to satisfy custom Makefile
to be compatible for larger range of systems available in Guix. Putting
to my TODO for 2024/02 updates.

Regards,
Oleg
Sharlatan Hellseher Jan. 24, 2024, 10:37 p.m. UTC | #3
Hi Maxim,

> This is all very neatly crafted and tested. The attention to detail is
> much appreciated.
Thank you for worm feedback!

I've amended mentioned commit log and comments. Pushed as
2266754382..8f86cbd5e9 to master.

Regards,
Oleg
Sharlatan Hellseher Jan. 24, 2024, 11:27 p.m. UTC | #4
worm -> wArm =)

It was long day....

Thanks,
Oleg

-- 
VCS: https://github.incerto.xyz/; https://git.sr.ht/~hellseher/
GPG: 9847 81DE 689C 21C2 6418 0867 76D7 27BF F62C D2B5

… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.