-
Notifications
You must be signed in to change notification settings - Fork 121
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: adjust change log entries, and update HACKING.md to match (#1159)
Minor adjustments to the way that we record changes: * Add more structure to [CHANGES](CHANGES.md): group changes by the same types of groups as in our conventional commit messages (but with full words rather than abbreviations), and add the GitHub PR number that introduced the change * Include all non-internal changes in [CHANGES](CHANGES.md) * Remove "New in" notes from the API documentation (we want everyone to regularly update to the latest version, not pick a version that has whatever they need, and work hard to make this as easy as possible) * Update [HACKING](HACKING.md) to reflect these process changes These changes are backported to ops 2.7, which is where the CHANGES file started.
- Loading branch information
1 parent
e8305f6
commit d4eb977
Showing
5 changed files
with
168 additions
and
54 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,40 +1,133 @@ | ||
# 2.12.0 | ||
# Next - TBD | ||
|
||
* Updated Pebble Notices `get_notices` parameter name to `users=all` (previously `select=all`). | ||
* Added `Model.get_cloud_spec` which uses the `credential-get` hook tool to get details of the cloud where the model is deployed. | ||
* Fixed an issue where `pebble.Client.exec` might leak a `socket.timeout` (`builtins.TimeoutError`) exception. | ||
* Updated code examples in the docstring of `ops.testing` from unittest to pytest style. | ||
* Refactored main.py, creating a new `_Manager` class. | ||
## Features | ||
|
||
# 2.11.0 | ||
* Added `Model.get_cloud_spec` which uses the `credential-get` hook tool to get details of the cloud where the model is deployed (#1152) | ||
|
||
* `StopEvent`, `RemoveEvent`, and all `LifeCycleEvent`s are no longer deferrable, and will raise a `RuntimeError` if `defer()` is called on the event object. | ||
* The remote app name (and its databag) is now consistently available in relation-broken events. | ||
* Added `ActionEvent.id`, exposing the JUJU_ACTION_UUID environment variable. | ||
* Added support for creating `pebble.Plan` objects by passing in a `pebble.PlanDict`, the | ||
ability to compare two `Plan` objects with `==`, and the ability to create an empty Plan with `Plan()`. | ||
## Fixes | ||
|
||
# 2.10.0 | ||
* Update Pebble Notices `get_notices` parameter name to `users=all` (previously `select=all`) (#1146) | ||
* Warn when an observer weakref is lost (#1142) | ||
* More robust validation of observer signatures (#1147) | ||
* Change `Model.relation.app` type from `Application|None` to `Application` (#1151) | ||
* Fix attaching storage in Harness before `begin` (#1150) | ||
* Fixed an issue where `pebble.Client.exec` might leak a `socket.timeout` (`builtins.TimeoutError`) exception (#1155) | ||
|
||
* Added support for Pebble Notices (`PebbleCustomNoticeEvent`, `get_notices`, and so on) | ||
* Added `Relation.active`, and excluded inactive relations from `Model.relations` | ||
* Added full support for charm metadata v2 (in particular, extended `ContainerMeta`, | ||
and various info links in `CharmMeta`) | ||
## Refactoring | ||
|
||
# 2.9.0 | ||
* Refactor main.py, creating a new `_Manager` class (#1085) | ||
|
||
* Added log target support to `ops.pebble` layers and plans | ||
* Added `Harness.run_action()`, `testing.ActionOutput`, and `testing.ActionFailed` | ||
## Documentation | ||
|
||
# 2.8.0 | ||
* Use "integrate with" rather than "relate to" (#1145) | ||
* Updated code examples in the docstring of `ops.testing` from unittest to pytest style (#1157) | ||
|
||
# 2.11.0 - 29 Feb 2024 | ||
|
||
## Features | ||
|
||
* `StopEvent`, `RemoveEvent`, and all `LifeCycleEvent`s are no longer deferrable, and will raise a `RuntimeError` if `defer()` is called on the event object (#1122) | ||
* Add `ActionEvent.id`, exposing the JUJU_ACTION_UUID environment variable (#1124) | ||
* Add support for creating `pebble.Plan` objects by passing in a `pebble.PlanDict`, the | ||
ability to compare two `Plan` objects with `==`, and the ability to create an empty Plan with `Plan()` (#1134) | ||
|
||
## Fixes | ||
|
||
* The remote app name (and its databag) is now consistently available in relation-broken events (#1130) | ||
|
||
## Documentation | ||
|
||
* Improve the `can_connect()` API documentation (#1123) | ||
|
||
## Tooling | ||
|
||
* Use ruff for linting (#1120, #1139, #1114) | ||
|
||
# 2.10.0 - 31 Jan 2024 | ||
|
||
## Features | ||
|
||
* Add support for Pebble Notices (`PebbleCustomNoticeEvent`, `get_notices`, and so on) (#1086, #1100) | ||
* Add `Relation.active`, and excluded inactive relations from `Model.relations` (#1091) | ||
* Add full support for charm metadata v2 (in particular, extended `ContainerMeta`, | ||
and various info links in `CharmMeta`) (#1106) | ||
* When handling actions, print uncaught exceptions to stderr (#1087) | ||
* Raise `ModelError` in Harness if an invalid status is set (#1107) | ||
|
||
## Fixes | ||
|
||
* Add Pebble log targets and checks to testing plans (#1111) | ||
* CollectStatusEvent is now a LifecycleEvent (#1080) | ||
|
||
## Documentation | ||
|
||
* Update README to reflect charmcraft init changes (#1089) | ||
* Add information on pushing locked/bind-mount files (#1094) | ||
* Add instructions for using a custom version of ops to HACKING (#1092) | ||
|
||
## Tooling | ||
|
||
* Use pyproject.toml for building (#1068) | ||
* Update to the latest version of Pyright (#1105) | ||
|
||
# 2.9.0 - 30 Nov 2023 | ||
|
||
## Features | ||
|
||
* Add log target support to `ops.pebble` layers and plans (#1074) | ||
* Add `Harness.run_action()`, `testing.ActionOutput`, and `testing.ActionFailed` (#1053) | ||
|
||
## Fixes | ||
|
||
* Secret owners no longer auto-peek, and can use refresh, in Harness, and corrected secret access for non-leaders (#1067, #1076) | ||
* Test suite adjustments to pass with Python 3.12 (#1081) | ||
|
||
## Documentation | ||
|
||
* Refresh README (#1052) | ||
* Clarify how custom events are emitted (#1072) | ||
* Fix the `Harness.get_filesystem_root` example (#1065) | ||
|
||
# 2.8.0 - 25 Oct 2023 | ||
|
||
## Features | ||
|
||
* Add `Unit.reboot()` and `Harness.reboot_count` (#1041) | ||
* Add `RelationMeta.optional` (#1038) | ||
* Raise a clearer exception when the Pebble socket is missing (#1049) | ||
|
||
## Fixes | ||
|
||
* Added `Unit.reboot()` and `Harness.reboot_count`` | ||
* Added `RelationMeta.optional` | ||
* The type of a `Handle`'s `key` was expanded from `str` to `str|None` | ||
* Narrowed types of `app` and `unit` in relation events to exclude `None` where applicable | ||
* Narrow types of `app` and `unit` in relation events to exclude `None` where applicable | ||
* `push_path` and `pull_path` now include empty directories (#1024) | ||
* Harness's `evaluate_status` resets collected statuses (#1048) | ||
|
||
# 2.7.0 | ||
## Documentation | ||
|
||
* Added Unit.set_ports() | ||
* Notes that status changes are immediate (#1029) | ||
* Clarifies `set_results` maximum size (#1047) | ||
* Expands documentation on when exceptions may be raised (#1044) | ||
* Makes `pebble.Client.remove_path` and `Container.remove_path` docs consistent (#1031) | ||
|
||
## Tooling | ||
|
||
* Adds type hinting across the test suite (#1017, #1015, #1022, #1023, #1025, #1028, #1030, #1018, #1034, #1032) | ||
|
||
# 2.7.0 - 29 Sept 2023 | ||
|
||
## Features | ||
|
||
* Adds Unit.set_ports() (#1005) | ||
* Type checks now allow comparing a `JujuVersion` to a `str` | ||
* Renamed `OpenPort` to `Port` (`OpenPort` remains as an alias) | ||
* Rename `OpenPort` to `Port` (`OpenPort` remains as an alias) | ||
|
||
## Documentation | ||
|
||
* Reduces the amount of detail in open/close port methods (#1006) | ||
* Removes you/your from docstrings (#1003) | ||
* Minor improvements to HACKING (#1016) | ||
|
||
## Tooling | ||
|
||
* Extends the use of type hints in the test suite (#1008, #1009, #1011, #1012, #1013, #1014, #1004) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters