What's Changed
Updated supported dependency versions [#419]:
- Python >= 3.9
- numpy >= 1.26
- scipy >= 1.10
New Features
sbpy.activity.gas
- Added active and quiet sun photolysis rates for H2O and CO2 from Huebner &
Mukherjee 2015 tosbpy.activity.gas.photo_timescale. [#425]
sbpy.names
- Added functionality to
sbpy.Names.from_packed()and
sbpy.Names.to_packed()to handle new extended provisional designations
to be implemented by the MPC in anticipation of higher asteroid discovery
rates in the LSST survey era. [#406]
sbpy.data.ephem
- New command-line script:
sbpy-ephem. [#396]
API Changes
sbpy.activity.gas
- Data source is now a required parameter for
sbpy.activity.gas.photo_lengthscaleandsbpy.activity.gas.photo_timescale.
If the data source isNone, then a table of sources will be printed.
[#425]
sbpy.activity.gas.productionrate
- Data source is now a required parameter for
sbpy.activity.gas.productionrate.beta_factor. [#425]
sbpy.ginga_plugins
- Deprecated
sbpy.ginga_pluginsin favor of usingsbpy-gingaat
https://github.com/NASA-Planetary-Science/sbpy-ginga [#413]
Other Changes and Additions
sbpy.activity.gas
- Replaced calls to the deprecated function
scipy.integrate.rombergwith
scipy.integrate.quad. [#412]
sbpy.names
-
Fixed
sbpy.Names.to_packed()to raise an error in cases of invalid
cometary designations with fragment specifiers (e.g., "2024 A-A" and
"2024 A-AA" now correctly raise TargetNameParseError exceptions) [#417] -
Fixed
sbpy.Names.parse_comet()to raise an error in cases of a
provisional asteroid designation submitted with no space after the
year (e.g., "2015XN77"), which was previously being interpreted as a
well-formed comet designation (i.e., with number=2015, type=X, and
name=N77), but now raises a TargetNameParseError [#422] -
Fixed
sbpy.Names.parse_asteroid()to raise an error in cases of a
provisional comet designation submitted with no forward slash between
the lead character and the year, and no space after the year (e.g.,
"P2015XN77"), which was previously being interpreted as a packed
asteroid designation, but now raises a TargetNameParseError [#422]