1.5.3
What's Changed
This is a bug-fix/patch release for ops 1.5
advancing the Operator Framework in a number of key areas including:
Typing
Typing is now complete for all ops
modules and static checks for all using pyright
.
- Typing framework.py by @PietroPasotti in #772
- Typed ops.pebble.py by @PietroPasotti in #773
- Typing charm.py by @PietroPasotti in #791
- Fix model types by @PietroPasotti in #810
- Typing main by @PietroPasotti in #811
- Typed
ops/testing.py
by @PietroPasotti in #828
Documentation
Various documentation improvements.
- Update docs for unset param in update_config by @swalladge in #768
- cleaned up logging output by @PietroPasotti in #797
- Fix docstring by @zmraul in #802
- Added further documentation to define_event function in framework.py #830 by @nishant-dash in #831
- Documented and checked ActionEvent.set_results with "Stdout" key by @PietroPasotti in #809
- doc fix for config-changed by @PietroPasotti in #804
Testing
The Harness now tries harder to behave like production code would.
- Make Harness more strict in validating relation data contents (on write) by @PietroPasotti in #786
- Address storage testing quirks by @rwcarlsen in #763
- fixed issues with relation data read by @PietroPasotti in #795
- Remove overzealous Harness.add_storage error check. by @rwcarlsen in #781
- added config backend to simulate more closely juju's own by @PietroPasotti in #787
- Include departing unit info for harness-initiated events by @rwcarlsen in #790
Improved error reporting
- Improved error message for invalid storage key usage by @rwcarlsen in #771
- Better error for relation data access in relation-broken events by @rwcarlsen in #765
- downgrade breaking-change exception to just a warning by @rwcarlsen in #822
Bugfixes
- Fix incorrect kwarg handling in testing backend storage_list by @rwcarlsen in #820
- Allow network-get to return hostnames where previously IPaddr were expected by @PietroPasotti in #823
- Use --file for relation-set; avoid shell argument length limits by @rbarry82 in #805
- Fixed bug in ops.Model where non-string keys could be used to write relation data by @PietroPasotti in #788
Misc
- Added a very basic smoke test. Run it with
tox -e smoke
by @pengale in #800 - require tests to pass on a commit before we publish it to pypi by @rwcarlsen in #815
- Remove harcoded value for self.model_uuid by @Abuelodelanada in #782
- Test observe(decorated-method) by @PietroPasotti in #808
New Contributors
- @swalladge made their first contribution in #768
- @zmraul made their first contribution in #802
- @nishant-dash made their first contribution in #831
Full Changelog: 1.5.2...1.5.3