← Back to team overview

charmcraft team mailing list archive

Version 0.10.0 of ops released!

 

ops, the Operator Framework, provides a simple, lightweight, and powerful
way of
writing Juju charms, the best way to encapsulate operational experience in
code.

The framework will help you to:

   - model the integration of your services
   - manage the lifecycle of your application
   - create reusable and scalable components
   - keep your code simple and readable

You can read more about the project, including how to get involved, on
github <https://github.com/canonical/operator>.

Release highlights:

   -

   deleting a non-existent key from relation data will no longer fail.
   Thanks to @stub42 for the fix.
   -

   calling begin_with_initial_hooks() on the testing harness of a charm
   that has a relation that isn’t set up before the call will no longer
   fail.
   Thanks to @zzehring for the fix.
   -

   the testing harness now starts with default config values, specified in
   the
   same way as for actions.yaml and metadata.yaml (i.e. snippets if given,
   otherwise from the canonical yaml file).
   Thanks to @johnsca for the work.
   -

   some classes now have custom __repr__ methods that should aid debugging.
   -

   event deferral and reëmission is now logged (at DEBUG).
   -

   if use_juju_for_storage is specified for a charm running in a Juju that
   does
   not support this feature, a clear and explicit error is raised.
   -

   the public attributes of model are now immutable. This is to discourage
   people from overwriting these attributes in tests, given there is a fair
   amount of internal state. Please use the harness instead (or mocking if
   you
   must).
   -

   the test suite now passes on Windows, and we run the full suite on
   Windows for
   every commit, as we do for linux and macos.