NASA-Planetary-Science / sbpy

A Python package for small bodies research
https://sbpy.org/
Other
66 stars 34 forks source link

Setup updates 202304 #370

Closed mkelley closed 1 year ago

mkelley commented 1 year ago

Drop Python 3.7.

numpy -> 1.18 astropy -> 4.3 synphot -> 1.1 astroquery -> 4.6

Update CI scripts.

codecov[bot] commented 1 year ago

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@997d64d). Click here to learn what that means. The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #370   +/-   ##
=======================================
  Coverage        ?   75.65%           
=======================================
  Files           ?       78           
  Lines           ?     6795           
  Branches        ?        0           
=======================================
  Hits            ?     5141           
  Misses          ?     1654           
  Partials        ?        0           
mkelley commented 1 year ago

I think this is waiting for old tests to run, but I've replaced those tests. So, ready for review @jianyangli

jianyangli commented 1 year ago

@mkelley Can you remind me the motivation for this update? My philosophy is that we want to support the minimum versions of dependence packages that can satisfy the requirements of sbpy, although this philosophy could be too simplified. Do we have to require the upgrade of those packages you changed the version requirement here? Thanks.

mkelley commented 1 year ago

I should have provided the justification with my PR notes. I understand the need to support a broad set of versions for the users, but that also puts a larger burden on the developers and the testing resources. I recall that we set out to always support astropy's long-term support (LTS) and current versions, which I think are 5.0 and 5.3. However, I don't know where that is documented, and we have to revisit this anyway given that astropy no longer has LTS versions: https://github.com/astropy/astropy-APEs/blob/main/APE21.rst

So, I have some inconsistencies here to fix. Do recommend we stick with astropy 4.3 and set numpy to 1.17, or move to astropy 5.0?

mkelley commented 1 year ago

Ah, numpy 1.17 does not support Python 3.8.

And looking at astroquery's release notes, perhaps we can pin that to 0.4.5?

jianyangli commented 1 year ago

Thanks Mike for the detailed rationales! It's great to document it here. I agree with all of them. I think we can stick to astropy 4.3 and astroquery 0.4.5. I don't see strong reasons for lifting the bar further up for these two packages for now.

mkelley commented 1 year ago

sbpy now requires astroquery>=0.4.5 (down from 0.4.6)

Tests that use from_jplspec now require astroquery 0.4.7, see astropy/astroquery#2717

astropy 5.3 changed how unit strings are represented, which broke some documentation tests. These test now require astropy 5.3, or else they are skipped.

mkelley commented 1 year ago

@jianyangli finally back to successful builds! Let me know if it is ready to go.