Changelog
[1] Planned Features
- Breaking changes
- (None currently planned)
- Major features
- Plotting (with hillshade background...?)
- Heat flow & Curie depths
- Add MAVEN magnetometer module
- Known bugs
- boug data has weird wraparound at lon 180 -- reproduce, run
import redplanet as rp; rp.Crust.boug.load('Genova2016'); d = 1.e-6; print(rp.Crust.boug.get(-180 + d, 0)); print(rp.Crust.boug.get( 180 - d, 0))- although I'm pretty sure this is a bug in the data itself, not in the code...?
- boug data has weird wraparound at lon 180 -- reproduce, run
- Minor functional changes/updates
- Update crater database with new IAU additions
- Redplanet currently uses a database up to 2024-11-26 with 1218 craters -- as of 2025-02-27, there are 1231 craters (13 additions).
- Update crater database with new IAU additions
- Software changes
- Auto-generated changelogs from "conventional commits" standard
- "commitizen" seems promising
- thoughts of a robot
- Publish to conda forge (tutorial)
- I think it needs to be added/approved manually first, then I can automate it with a GH action
- Add GitHub actions for CI/CD
- Specifically, GH actions for running tests with uv, and publishing the site (see justfile for more specific commands!)
- Website: fix
mkdocstringsconfig so it selectively inspects objects with the@substitute_docstringdecorator, instead of forcing dynamic analysis for everything - Website: find a way to do citations via bibtex in the website itself, preferrably with footnotes
- maybe use
shyamd-mkdocs-bibtex?
- maybe use
- Switch from
pandastopolarsto save a lot of space and slight performance improvements (move pandas to optional dependecy group) - Change all
loadermodules so they have an additional semi-private method which returns the respectiveGriddedDataobject, which is then assigned to the global variable by theload()/load(...)/_load()method. This is more clean and extensible in edge cases, e.g.Crust.mohowants the pysh topo model to make a crthick model (kind of). - Move
DatasetManagertoredplanet.helper_functions? - Add
plotlyas an alternative engine forredplanet.plot(...).
- Auto-generated changelogs from "conventional commits" standard
[2] Changelog
RedPlanet follows the Semantic Versioning standard. In short, this means that version numbers follow the pattern MAJOR.MINOR.PATCH, where MAJOR is incremented for breaking changes (i.e. not backwards compatible), MINOR is incremented for new features, and PATCH is incremented for bug fixes.
Complete rewrite in 2024 September & deleting v1.0.0
I completely rewrote this project in 2024 September, erasing the entire git history and restarting from scratch. On PyPI, I deleted the only version which which was ever published (v1.0.0), so it's impossible to download now (as opposed to "yanking" which would allow for downloading if the exact version were accidentally requested). An archive of the old repo is available here: https://github.com/Humboldt-Penguin/redplanet_archive-240910
self note:
- Take inspiration from the following:
- mihon (this is much more comprehensible)
- shtools
- uv (but this is only on github) — but tbh, i don't really love these...? it's always been a bit confusing to parse
Bonus: These badges track PyPI downloads, but they're quite misleading since I'm pretty sure my automated tests with GitHub actions, my online Google Colab demo, and/or some other source are wildly inflating the download count. Still fun to see though :)