- Make
Context
andManager
variadic types by @Batalex (#1445)
- Raise
ModelError
on unknown/error status set (#1417) - Require the same object to be in the testing state as in the event (#1468)
- Fix the testing src-layout structure and use relative imports (#1431)
- Use
_JujuContext
(#1459)
- Use a slightly more strict type for
AnyJson
- Add a
py.typed
file
ops.Model.get_relation
should not raise when a relation with the specified ID does not exist
- Adjustments to handle the upcoming release of ops 2.17
- Fix broken Python 3.8 compatibility.
- Support for testing Pebble check events
- Container exec mocking can match against a command prefix
- Inspect a list of the commands that a charm has
exec
'd in a container - Add consistency checks for
StoredState
- Specifying your event is now done via
ctx.on
attributes - The context manager is accessed via the
Context
object - State collections are frozensets instead of lists
- Most classes now expect at least some arguments to be passed as keywords
- Secret tests are much simpler - particularly, revision numbers do not need to be managed