Charm Tech Pulse 2024#9

Pulse #9 saw the Charm Tech welcome our newest member, Dima Tisnek, as well as the release of ops 2.13.0 and Pebble 1.11. We had a quieter pulse with all of the team having some time off, and we’ll all be at the sprints for the next two weeks, so will be back with a report on Pulse #11 at the end of the month.

The ops library

  • We released ops 2.13.0 - the main improvement this time is support for user secrets in Harness.
  • We continued working on converting tests in the ops framework from unittest to pytest style. A significant amount of work has been completed, we’ve got a few PRs in progress, and once that’s done we’ll evaluate how much more time we’ll invest in this at the moment.

Charming

  • We continued identifying gaps in Juju API to release a version of python-libjuju without the AllWatcher.
  • We published guidance on “holistic” vs “delta” approaches to charming.
  • We looked into how charmers are writing unit tests for charm libs that don’t have an associated charm - we found that generally Harness with mock/stub charms in the test code satisfy the needs here, but that most also have some form of tracking to ensure that custom events are emitted when expected. We’ll publish some guidance soon on how Scenario is a good fit for these tests.
  • Speaking of Scenario, we continued work on PRs to get a 7.0 branch ready - we’re aiming to have a version for you to try out later this month.

Pebble

  • We released Pebble 1.11 - the main change here is reimplementing health checks via changes and tasks.
  • @benhoyt continued working with @hpidcock on the spec of Pebble API authentication (JU092).