Releases: blaylockbk/SynopticPy
2024.12.0
What's Changed
- More efficient parsing by @blaylockbk in #63
- Added method to write ascii file for MET's ASCII2NC tool by @blaylockbk in #65
Full Changelog: 2024.11.0...2024.12.0
SynopticPy 2024.11.0 -- The Polars Re-write
As promised, I re-wrote SynopticPy from the ground up using Polars.
Caution
⚠️ This is a 100% breaking change from the legacy SynopticPy
Why a complete re-write?
- I learned lots about Polars.
- I had fun re-writing it.
- Not perfect, but everything is just organized better.
- Extensive testing.
- The package is easier to use.
- The package will tell users when they use an unexpected parameter.
- The returned data as a long-form DataFrame can be efficiently and immediately archived locally with
df.write_parquet()
Tip
Check out the updated Documentation: https://synopticpy.readthedocs.io/en/latest/
What's Changed
- Rewrite SynopticPy using Polars by @blaylockbk in #58
- Warn when user gives an unknown parameter by @blaylockbk in #60
- Huge shoutout to @ngblaylock for inspiration on the new SynopticPy Logo.
Full Changelog: 2024.9.0...2024.11.0
SynopticPy 2024.9.0 -- Last version before a MAJOR upgrade
Dear SynopticPy users,
SynopticPy has helped people load Synoptic's Weather API JSON data into Pandas DataFrames for several years. Originally written in grad school, I still find this tool helpful for my casual weather exploring and my day job. There are things I like about the package and things I don't like and wanted to change. I decided to re-write SynopticPy from the ground up. I have been using the Polars DataFrame library for over a year and LOVE it. Re-writing SynopticPy using Polars was an opportunity for me to apply what I've learned about Polars, gain even more experience using Polars, and get more experience developing a Python library.
Since this is the last version of SynopticPy before I release a MAJOR update, I wanted to close any open commits in this last "legacy" release. I won't add any new features or fixes to the legacy, Pandas-based code (I just don't have that kind of free time). I apologize for any open issues or bugs, but I hope you like what I have coming next. I don't know of many regular users of SynopticPy, but if you do, make sure you pin your dependencies to this specific version if you don't want to use the new Polars-based package.
What's Next?
I'm re-writing SynopticPy using Polars. You can see what I've got so far here:
- GitHub Branch: https://github.com/blaylockbk/SynopticPy/tree/56-rewrite-using-polars
- ReadTheDocs: https://synopticpy.readthedocs.io/en/56-rewrite-using-polars/
Included in this last "legacy" release
- added feature to show city names on map by @blaylockbk in #36
- Add Theme Switcher button by @ngblaylock in #39
- Auto light/dark theme and button toggle to change theme by @blaylockbk in #38
- Use 11ty for web app by @blaylockbk in #41
- App updates by @ngblaylock in #44
- Use github actions to deploy main branch. by @blaylockbk in #45
- New page "Latest": displays table of latest observations from stations by @blaylockbk in #46
- lots of stuff I was playing with by @blaylockbk in #51
New Contributors
- @ngblaylock made their first contribution in #39
Full Changelog: 2023.3.0...2024.9.0
SynopticPy 2023.3.0
What's Changed
- Install: Modernize install setup by @blaylockbk in #15
- Documentation: Documentation was moved to ReadTheDocs https://synopticpy.readthedocs.io/
- API Token in env-variable by @Weidav in #20
New Contributors
Full Changelog: 0.0.7...2023.3.0
SynopticPy 0.0.7
SynopticPy 0.0.6
Changelog
- Updated config file to TOML format and included additional configurable settings. da51690
- Adopt Black formatting
Welcome to the world, SynopticPy 🎂
Be aware, this is v0.0.5, meaning it is subject to change at my leisure. The purpose of this repository is to serve as an example of how you can access data from the Synoptic API, but I try to keep this package in a workable state that might be useful for you.