Closed renovate[bot] closed 1 year ago
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 2.x releases. But if you manually upgrade to 2.x then Renovate will re-enable minor
and patch
updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.
This PR contains the following updates:
<2
-><3
Release Notes
canonical/operator
### [`v2.3.0`](https://togithub.com/canonical/operator/releases/tag/2.3.0): : Fix planned_units to exclude dying [Compare Source](https://togithub.com/canonical/operator/compare/2.2.0...2.3.0) This release includes only one minor functional changes: a fix to `Application.planned_units` to exclude dying units from the total ([#936](https://togithub.com/canonical/operator/issues/936)). Also included is a type annotation fix to an internal testing method ([#926](https://togithub.com/canonical/operator/issues/926)). To use this version, update the `ops` line in your `requirements.txt` to `ops==2.3.0`. ### [`v2.2.0`](https://togithub.com/canonical/operator/releases/tag/2.2.0): : Harness.add_network, simplified "import ops" [Compare Source](https://togithub.com/canonical/operator/compare/2.1.1...2.2.0) This is version 2.1.0 of ops, which includes the following changes: ##### Harness.add_network In [#846](https://togithub.com/canonical/operator/issues/846) we added [Harness.add_network](https://ops.readthedocs.io/en/latest/#ops.testing.Harness.add_network), which allows developers who write charm unit tests to easily add simulated data for the bind address and network information. This is a small but long-requested feature that will avoid charmers patching internal ops methods. Fixes [#456](https://togithub.com/canonical/operator/issues/456). ##### Simplified way to `import ops` In [#910](https://togithub.com/canonical/operator/pull/910) we added a simplified way to `import ops`: it pulls most of the names in the various `ops.foo` sub-modules into the top-level `ops` module so that charmers don’t have to remember which sub-module each class comes from. This also makes the various ops classes more discoverable with an IDE’s autocomplete. Fixes [#731](https://togithub.com/canonical/operator/issues/731). ##### Other minor changes There are also a few other minor changes, including the addition of `Layer.__eq__` to allow you to compare `pebble.Layer` objects with the `==` operator. See the [full list of commits in this release](https://togithub.com/canonical/operator/compare/2.1.1...2.2.0). ### [`v2.1.1`](https://togithub.com/canonical/operator/releases/tag/2.1.1): (fixes install issues with 2.1.0) [Compare Source](https://togithub.com/canonical/operator/compare/2.1.0...2.1.1) This patch release fixes issues with the missing `requirements.txt` file during `pip install`: [https://github.com/canonical/operator/pull/914](https://togithub.com/canonical/operator/pull/914). ### [`v2.1.0`](https://togithub.com/canonical/operator/releases/tag/2.1.0) [Compare Source](https://togithub.com/canonical/operator/compare/2.0.0...2.1.0) This is version 2.1.0 of `ops`, which includes the following changes: ##### Open-port support We added Pythonic APIs to interface to the `open-port`, `close-port`, and `opened-ports` hook tools in PR [#905](https://togithub.com/canonical/operator/issues/905). This allows charms to ask Juju to open ports in VM charms and in K8s sidecar charms (with some issues in the latter being fixed in [https://github.com/juju/juju/pull/15225](https://togithub.com/juju/juju/pull/15225)). See the [`Unit.open_port()` API reference](https://ops.readthedocs.io/en/latest/#ops.model.Unit.open_port). ##### Other minor changes - Use f-strings (almost) everywhere ([#889](https://togithub.com/canonical/operator/issues/889)) - Un-vendor websocket library ([#891](https://togithub.com/canonical/operator/issues/891)) -- thanks [@tinvaan](https://togithub.com/tinvaan) - A few minor tweaks now that we're on Python 3.8 ([#890](https://togithub.com/canonical/operator/issues/890)) - Define all dependences in requirements files ([#894](https://togithub.com/canonical/operator/issues/894)) -- thanks [@tinvaan](https://togithub.com/tinvaan) - Make testing pull() raise pebble.PathError and improve docs ([#897](https://togithub.com/canonical/operator/issues/897)) - Don't call secret-info-get with both ID and label ([#900](https://togithub.com/canonical/operator/issues/900)) - Add ops.lib deprecation notice ([#901](https://togithub.com/canonical/operator/issues/901)) - Add debug logging for custom events ([#843](https://togithub.com/canonical/operator/issues/843)) -- thanks [@PietroPasotti](https://togithub.com/PietroPasotti) - Replace "# type: T" comments with proper variable type annotations ([#904](https://togithub.com/canonical/operator/issues/904)) View the [full list of commits between 2.0.0 and 2.1.0](https://togithub.com/canonical/operator/compare/2.0.0...34e5dfb). ### [`v2.0.0`](https://togithub.com/canonical/operator/releases/tag/2.0.0): final [Compare Source](https://togithub.com/canonical/operator/compare/1.5.5...2.0.0) This is version 2.0.0 of `ops`, which includes the following changes: ##### Major changes - **APIs to interact with Juju Secrets**, along with a testing harness. [Read the tutorial](https://juju.is/docs/sdk/add-a-secret-to-a-charm) or the [code (#861)](https://togithub.com/canonical/operator/pull/861). - **Ops 2.0.0 requires Python 3.8+** (ops 1.5.x works down to Python 3.5). Note that Python 3.8 is the version installed by default on Ubuntu 20.04 (Focal), where Python 3.5 was installed on Ubuntu 16.04 (Xenial). As a result, ops 2.0.0 is intended for use with Juju 3.0+, which only supports Ubuntu 20.04 and above. We started using some Python 3.8 features in [#871](https://togithub.com/canonical/operator/issues/871), and plan to use more in future ops 2.x releases. - **Removed `SIMULATE_CAN_CONNECT`** from the testing harness ([#871](https://togithub.com/canonical/operator/issues/871)). When we introduced `can_connect` it would have been a breaking change to enable it by default, so we added the `SIMULATE_CAN_CONNECT` global to enable it, with a warning that we'd enable it by default in a future release. This release removes the global flag and enables simulation by default. - **Made `begin_with_initial_hooks()` trigger pebble-ready** in the testing harness ([#871](https://togithub.com/canonical/operator/issues/871)). The default value of `container.can_connect()` is still False when using `begin()` ("manual mode"), but this release updates `begin_with_initial_hooks()` to set `can_connect` to True and fire pebble-ready for all containers in the charm's metadata. Note that the `SIMULATE_CAN_CONNECT` and `begin_with_initial_hooks()` changes won't change or break your charms, however, they may break charm *tests* -- for example, tests that aren't expecting `pebble-ready` to be fired when calling `begin_with_initial_hooks()`. ##### Other breaking changes - Deprecate controller storage: [#882](https://togithub.com/canonical/operator/issues/882). This deprecate `use_juju_for_storage=True` (it's intended for pod-spec charms). - Remove Windows support: [#872](https://togithub.com/canonical/operator/issues/872). Juju 3.0 no longer supports Windows deployments, so ops doesn't need to either. ##### Minor changes - Fix logging in can_connect, add tests; remove pebble.Error methods: [#860](https://togithub.com/canonical/operator/issues/860). This fixes a couple of logging calls, but also removes the `name()` and `message()` methods from the `ops.pebble.Error` exception subclass. This is theoretically a breaking change, but it is very unlikely these methods were used by charms. - Add ErrorStatus [#875](https://togithub.com/canonical/operator/issues/875). This adds a missing unit status value, `error`. - Add Pebble idempotency behavior [#876](https://togithub.com/canonical/operator/issues/876). This makes the testing harness's emulated versions of `start()` and `stop()` match Pebble's current behaviour, which makes them idempotent: `start()` now does nothing if the service is already started, and similarly `stop()` does nothing if the service is already stopped. - Clarifies the warning message when local storage is chosen: "not a Kubernetes *podspec* charm" instead of "not a kubernetes charm" (the latter is incorrect). This was done in [#882](https://togithub.com/canonical/operator/issues/882). - Removes the long-deprecated `key` argument to charm's `__init__`. This was done in [#882](https://togithub.com/canonical/operator/issues/882). - Removes the deprecated (and private!) `Harness._oci_resources` attribute. This was done in [#882](https://togithub.com/canonical/operator/issues/882).Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.