{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":212098176,"defaultBranch":"main","name":"operator","ownerLogin":"canonical","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-10-01T13:06:11.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/53057619?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726554398.0","currentOid":""},"activityList":{"items":[{"before":"4bb92dd898bfd0ebaac4ba5890d007fb4d279776","after":"98a4e4f44d37d3361a253bc1eff49eee2ca6d140","ref":"refs/heads/main","pushedAt":"2024-09-23T00:08:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"james-garner-canonical","name":"James Garner","path":"/james-garner-canonical","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/178745938?s=80&v=4"},"commit":{"message":"refactor: deprecate StatusBase.register decorator (#1384)\n\nAs `StatusBase.__init_subclass__` is now used to automatically register\r\nstatus classes by name, and the old `StatusBase.register` decorator\r\nshouldn't have been public in the first place, it is now deprecated.","shortMessageHtmlLink":"refactor: deprecate StatusBase.register decorator (#1384)"}},{"before":"20c962360d19f0802c98bbf1878631e4f9122bcb","after":"4bb92dd898bfd0ebaac4ba5890d007fb4d279776","ref":"refs/heads/main","pushedAt":"2024-09-22T23:10:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"test: properly mock the environment (#1385)\n\nThese two tests change `os.environ` without restoring it afterwards,\r\nwhich means that the changes leak into other tests. Change that by using\r\n`monkeypatch.setenv`.","shortMessageHtmlLink":"test: properly mock the environment (#1385)"}},{"before":"454e19769688eadab2d38ccd541af09fc8a2342e","after":"20c962360d19f0802c98bbf1878631e4f9122bcb","ref":"refs/heads/main","pushedAt":"2024-09-22T21:46:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"james-garner-canonical","name":"James Garner","path":"/james-garner-canonical","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/178745938?s=80&v=4"},"commit":{"message":"fix: use StatusBase.__init_subclass__ instead of decorator to avoid obscuring subclass type (#1383)\n\nPreviously, StatusBase.register obscured the type of decorated classes.\r\nThe classes would all end up typed as Type[StatusBase], and when instantiated\r\nthey would be typed as StatusBase instead of their actual class (see #1380).\r\nInstead we now register subclasses automatically in __init_subclass__,\r\nno longer using StatusBase.register as a decorator, which avoids\r\nobscuring the type of subclasses.","shortMessageHtmlLink":"fix: use StatusBase.__init_subclass__ instead of decorator to avoid o…"}},{"before":"516acb91b8f82bf37f00a995f5cf78c0649b54a4","after":"454e19769688eadab2d38ccd541af09fc8a2342e","ref":"refs/heads/main","pushedAt":"2024-09-20T00:28:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"docs: add top-level intro and module-level intros (#1320)\n\nDocs: Ops: Add top-level intro, clean up ops.module intro in light of\r\nthat, flesh out ops.pebble and ops.testing intros a bit more\r\n\r\nhttps://warthogs.atlassian.net/browse/CHARMTECH-183\r\n\r\n- [x] \"home page\" library reference\r\n- [x] ops module\r\n- [x] ops.main entry point\r\n- [x] ops.pebble module\r\n- [x] ops.testing module","shortMessageHtmlLink":"docs: add top-level intro and module-level intros (#1320)"}},{"before":"94bf413d3593badfb3f9aa29cb2fdbbfff418d0f","after":"516acb91b8f82bf37f00a995f5cf78c0649b54a4","ref":"refs/heads/main","pushedAt":"2024-09-19T07:37:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"feat: add a JujuVersion property for Pebble log forwarding to Loki (#1370)\n\nAdds a new property to `JujuVersion` indicating if the version of Pebble\r\nbundled with Juju supports log forwarding to Loki, with labels.\r\n\r\nSee discussion in #1230 around which version of log forwarding should be\r\nthe cutoff for support, which landed on when labels were added.\r\n\r\nFixes #1230","shortMessageHtmlLink":"feat: add a JujuVersion property for Pebble log forwarding to Loki (#…"}},{"before":"84ad4b06c3cc09a76bd5e25ed83f7a35e7c4ff01","after":"94bf413d3593badfb3f9aa29cb2fdbbfff418d0f","ref":"refs/heads/main","pushedAt":"2024-09-18T07:50:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"chore: generate warnings for events that will be removed in Juju 4.0 (#1374)\n\nA `DeprecationWarning` is emitted whenever an instance of\r\n`CollectMetricsEvent`, `PreSeriesUpgradeEvent`, or\r\n`PostSeriesUpgradeEvent` is created (which should only be whenever there\r\nis an observed event of that type).\r\n\r\nDocumentation warnings were already added in an earlier PR.\r\n\r\nFixes #1280","shortMessageHtmlLink":"chore: generate warnings for events that will be removed in Juju 4.0 (#…"}},{"before":"483579ad8069cc9c79c21310f97cad307f26b1ec","after":"84ad4b06c3cc09a76bd5e25ed83f7a35e7c4ff01","ref":"refs/heads/main","pushedAt":"2024-09-18T03:39:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"refactor: keep the unittest.mock names in the 'mock' namespace (#1379)\n\nNo functional changes (including to the tests) - this just adjusts the\r\nimports so that the names from `unittest.mock` are imported into a\r\n`mock` namespace, rather than all into the module namespace.\r\n\r\nPrimarily, this ensures that `typing.Any` and `unittest.mock.ANY` are\r\nclearly distinguished by more than case, but it's also generally tidier\r\n(\"Namespaces are one honking great idea\").\r\n\r\nSee discussion in #1373.","shortMessageHtmlLink":"refactor: keep the unittest.mock names in the 'mock' namespace (#1379)"}},{"before":"fdb2338d2cec5caed8b0445f824c3dfa55dab2dc","after":"483579ad8069cc9c79c21310f97cad307f26b1ec","ref":"refs/heads/main","pushedAt":"2024-09-18T03:21:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"james-garner-canonical","name":"James Garner","path":"/james-garner-canonical","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/178745938?s=80&v=4"},"commit":{"message":"chore: Document and validate settable status values in _ModelBackend.set_status (#1354)\n\nDocument the status values that are valid arguments for\r\n`_ModelBackend.status_set`, as requested in #1343, via type annotation.\r\nThe `status` argument was previously type hinted only as `str`. However,\r\nthis argument can really only be one of four valid statuses that Juju's\r\n`status-set` will accept `('active', 'blocked', 'maintenance',\r\n'waiting')`.\r\n\r\nSince the arguments to `status_set` are already partially validated,\r\n(`is_app` being a bool in `status_set`, `status` and `message` being\r\nstrings in `Application.status` and `Unit.status`), and and the valid\r\nvalues for `status` are now encoded and associated with this method, we\r\ncan check that `status` is valid in `status_set` and raise an\r\n`InvalidStatusError` immediately if not, rather than catching `status-set`'s\r\nexit code and only then raising a `ModelError`.\r\n\r\nTests are updated to account for this (`test_collect_status_priority`\r\nsplit into `test_collect_status_priority_valid` and\r\n`test_collect_status_priority_invalid` since `status-set` isn't called\r\nin the invalid case, and `test_local_set_invalid_status` is updated to\r\naccount for this too).\r\n\r\nSince `is_app` and `status` are both validated in `status_set`, it makes\r\nsense to also validate the type of `message` here, removing redundant\r\nchecks in `Application.status` and cleaning up a `fixme` in\r\n`Unit.status`. A test is added to cover this\r\n(`test_status_set_message_not_str_raises`).\r\n\r\n`StatusBase.name` is also now annotated as only being one of the six valid\r\nJuju statuses, and the type alias for this literal (`StatusName`) is\r\nexposed in the public api.\r\n\r\nFinally, a couple of broken unit tests that interact with\r\n`StatusBase` and `status_set` (`test_base_status_instance_raises` and\r\n`test_status_set_is_app_not_bool_raises` respectively) are now fixed.","shortMessageHtmlLink":"chore: Document and validate settable status values in _ModelBackend.…"}},{"before":"cae9cef401ec2d1f83b6eaddb31475def5304d9a","after":"fdb2338d2cec5caed8b0445f824c3dfa55dab2dc","ref":"refs/heads/main","pushedAt":"2024-09-17T22:03:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"ci: periodically run the unit tests of all GitHub-hosted published charms (#1365)\n\nOnce a month, before the typical release time, run a workflow that tests\r\nall charms published on CharmHub where the source location is in the\r\ncharm metadata and that location is in a `canonical` GitHub repository.\r\n\r\nThis is much the same as the existing data, hello, and observability\r\ntests, but at a larger scale and without the expectation that all of the\r\ntests would pass in every PR. The intention is that this gives us an\r\ninsight into when ops changes break the most important charms - not that\r\nwe would necessarily ensure that the tests were always passing (but we\r\nwould at least look into it).\r\n\r\nThis also tests the `charmcraft init` profiles (other than the framework\r\nprofiles, which don't start out with usable tests) to detect breakage\r\nthere.\r\n\r\nTo avoid manually maintaining the list of charms, a script is added that\r\nwill update the workflow file with the latest list, pulled from\r\nCharmHub. This is not currently automatically run.\r\n\r\n---------\r\n\r\nCo-authored-by: Ben Hoyt ","shortMessageHtmlLink":"ci: periodically run the unit tests of all GitHub-hosted published ch…"}},{"before":"3cf559a349f92d7c8530ce0fee825b6d5a08453b","after":"cae9cef401ec2d1f83b6eaddb31475def5304d9a","ref":"refs/heads/main","pushedAt":"2024-09-17T22:03:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"refactor: move the content of ops.testing to ops._private.harness (#1369)\n\nMoves the content of `ops/testing.py` to `ops/_private/harness.py`, and\r\nthen re-exposes all the names in the `ops.testing` namespace (other than\r\nstandard library and third-party modules).\r\n\r\nThis allows other testing frameworks (such as Scenario) to be exposed in\r\nthe `ops.testing` namespace while also building on top of the existing\r\ntesting code.","shortMessageHtmlLink":"refactor: move the content of ops.testing to ops._private.harness (#1369"}},{"before":"44b3158a995b455c97555dd384be6e1b52db1774","after":null,"ref":"refs/heads/auto-update-external-charm-pins","pushedAt":"2024-09-17T06:26:38.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"}},{"before":"d3b878e222e89f427527ef64c194129f40e1e928","after":"3cf559a349f92d7c8530ce0fee825b6d5a08453b","ref":"refs/heads/main","pushedAt":"2024-09-17T06:26:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: update charm pins (#1375)\n\nThis is an automated PR to update pins of the external repositories that\r\nthe operator framework is tested against\r\n\r\nCo-authored-by: github-actions ","shortMessageHtmlLink":"chore: update charm pins (#1375)"}},{"before":null,"after":"c9c74b385da19db91b6844eeca927d70b0373ef9","ref":"refs/heads/dimaqq-patch-ruff","pushedAt":"2024-09-17T05:53:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: ruff setting renamed\n\n> Remapped rules\r\n> The following rules have been remapped to new rule codes:\r\n> unnecessary-dict-comprehension-for-iterable: RUF025 to C420\r\n\r\nhttps://github.com/astral-sh/ruff/blob/main/CHANGELOG.md#remapped-rules\r\n\r\nhttps://docs.astral.sh/ruff/rules/unnecessary-dict-comprehension-for-iterable/","shortMessageHtmlLink":"chore: ruff setting renamed"}},{"before":null,"after":"44b3158a995b455c97555dd384be6e1b52db1774","ref":"refs/heads/auto-update-external-charm-pins","pushedAt":"2024-09-17T03:54:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"benhoyt","name":"Ben Hoyt","path":"/benhoyt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/999033?s=80&v=4"},"commit":{"message":"chore: update charm pins","shortMessageHtmlLink":"chore: update charm pins"}},{"before":"f43ac8097beacefcb4ea3b212004cc4e1e2a67e5","after":"d3b878e222e89f427527ef64c194129f40e1e928","ref":"refs/heads/main","pushedAt":"2024-09-10T06:42:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"docs: note about repeatedly setting secret value in Juju 3.6 (#1366)\n\nhttps://warthogs.atlassian.net/browse/CHARMTECH-171\r\n\r\n---------\r\n\r\nCo-authored-by: Tony Meyer ","shortMessageHtmlLink":"docs: note about repeatedly setting secret value in Juju 3.6 (#1366)"}},{"before":"e89e2da399efe317101d0dc824645555dbd87106","after":"f43ac8097beacefcb4ea3b212004cc4e1e2a67e5","ref":"refs/heads/main","pushedAt":"2024-09-10T00:30:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"feat: expand the secret ID out to the full URI when only given the ID (#1358)\n\nAdjust the rules for getting the 'canonical' form of the Secret URI:\r\n* If the passed ID starts with `secret:`, leave it as-is (unchanged)\r\n* Otherwise, if the model UUID is unknown, add the `secret:` prefix to\r\nend up with the form `secret:id` (unchanged)\r\n* Otherwise, change to the full `secret://{model UUID}/{secret ID` form\r\n(new)\r\n\r\nAlso adjust the code that calls the canonicalization [sic] method so\r\nthat the model UUID is always available in regular ops use. If someone\r\nis creating `SecretInfo` objects themselves then a `None` value for the\r\nUUID is the default, for backwards compatibility (but a warning is\r\nissued in that case).\r\n\r\nFixes #1312.","shortMessageHtmlLink":"feat: expand the secret ID out to the full URI when only given the ID ("}},{"before":"107fdd78b013ff96c4b3d4b2f359b627fb405142","after":"e89e2da399efe317101d0dc824645555dbd87106","ref":"refs/heads/main","pushedAt":"2024-09-09T09:35:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"chore: re-enable test now that Pebble directory permissions are fixed (#1363)\n\nhttps://github.com/canonical/pebble/issues/80 is fixed (almost three\r\nyears ago!) so we should enable this test again, as far as I can\r\nunderstand.","shortMessageHtmlLink":"chore: re-enable test now that Pebble directory permissions are fixed ("}},{"before":"7c51afae2452e91991fe00fec7edbcc02f1411a2","after":"107fdd78b013ff96c4b3d4b2f359b627fb405142","ref":"refs/heads/main","pushedAt":"2024-09-09T09:30:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"ci: update the TIOBE reporting for the changes in coverage calculation (#1367)\n\nWe recently changed `tox -e unit` to not produce a coverage report. This\r\nPR adjust the TIOBE workflow to account for that - running `tox -e\r\ncoverage` instead.\r\n\r\nSince this will now be one of the main uses for that command, I've also\r\nmoved the `coverage xml` command into the tox steps rather than being in\r\nthe workflow, and adjusted the `.gitignore` accordingly.","shortMessageHtmlLink":"ci: update the TIOBE reporting for the changes in coverage calculation ("}},{"before":"e79446071040a3f20817c7b499c40f68c3dd3c60","after":"7c51afae2452e91991fe00fec7edbcc02f1411a2","ref":"refs/heads/main","pushedAt":"2024-09-09T00:25:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"docs: update the links to the Pebble docs (#1362)\n\nChange the links to the Pebble README to the Pebble docs site where the\r\ncontent now lives.","shortMessageHtmlLink":"docs: update the links to the Pebble docs (#1362)"}},{"before":"e302b6308d047f209ec4e7139e0080d93d58c4a8","after":"1719d1ea2f7faafdd137eed253fb1d2353cc30be","ref":"refs/heads/2.16-maintenance","pushedAt":"2024-09-05T06:11:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: changelog and version bump for 2.16.1 (#1361)\n\nNormal preparation for a release, but for a maintenance branch - to get\r\nthe os.environ change out.","shortMessageHtmlLink":"chore: changelog and version bump for 2.16.1 (#1361)"}},{"before":"8578bdd5cf007aab4e86a81bddd66360ce02bff2","after":"e79446071040a3f20817c7b499c40f68c3dd3c60","ref":"refs/heads/main","pushedAt":"2024-09-05T04:46:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"docs: config-changed is triggered by Juju trust (#1357)\n\nNote that `juju trust` changes will trigger a config-changed event.\r\n\r\nI couldn't find any other cases that aren't already mentioned in the\r\n`ConfigChangedEvent` doc that would trigger config-changed, so I hope\r\nthis is all.\r\n\r\nFixes #1211.","shortMessageHtmlLink":"docs: config-changed is triggered by Juju trust (#1357)"}},{"before":null,"after":"e302b6308d047f209ec4e7139e0080d93d58c4a8","ref":"refs/heads/2.16-maintenance","pushedAt":"2024-09-05T04:39:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tonyandrewmeyer","name":"Tony Meyer","path":"/tonyandrewmeyer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/826522?s=80&v=4"},"commit":{"message":"fix: avoid changing os.environ in Harness (#1359)\n\nHarness needs to provide a `JUJU_VERSION` value to set up the\r\n`_JujuContext`, but it doesn't have to be in `os.environ`, it can just\r\nbe in the dictionary passed to create the `_JujuContext` object.\r\n\r\nIn production, `os.environ` would actually have this, so it's more\r\nrealistic for it to be present, but it would also have lots of the other\r\n`JUJU_` environment variables as well, and we don't want to have Harness\r\nsimulate all those in the environment - we want people working with the\r\nops tools to access those, not the environment directly.\r\n\r\nThis change [broke the tests of at least one\r\ncharm](https://github.com/canonical/charm-simple-streams/pull/22)\r\nbecause it patches the environment to have specific values, and then\r\ncreating the `Harness` object changes that. It seems better for us to\r\nnot do this - if we did want to populate the environment to mimic Juju\r\nthen we'd likely want that to be explicit, or done around the event\r\nemitting. It was also an accidental backwards compatiblity break.","shortMessageHtmlLink":"fix: avoid changing os.environ in Harness (#1359)"}},{"before":"c40c25b2f3c4fe13f3ebde8e898b3f9dde8917d1","after":"8578bdd5cf007aab4e86a81bddd66360ce02bff2","ref":"refs/heads/main","pushedAt":"2024-09-05T04:34:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"fix: avoid changing os.environ in Harness (#1359)\n\nHarness needs to provide a `JUJU_VERSION` value to set up the\r\n`_JujuContext`, but it doesn't have to be in `os.environ`, it can just\r\nbe in the dictionary passed to create the `_JujuContext` object.\r\n\r\nIn production, `os.environ` would actually have this, so it's more\r\nrealistic for it to be present, but it would also have lots of the other\r\n`JUJU_` environment variables as well, and we don't want to have Harness\r\nsimulate all those in the environment - we want people working with the\r\nops tools to access those, not the environment directly.\r\n\r\nThis change [broke the tests of at least one\r\ncharm](https://github.com/canonical/charm-simple-streams/pull/22)\r\nbecause it patches the environment to have specific values, and then\r\ncreating the `Harness` object changes that. It seems better for us to\r\nnot do this - if we did want to populate the environment to mimic Juju\r\nthen we'd likely want that to be explicit, or done around the event\r\nemitting. It was also an accidental backwards compatiblity break.","shortMessageHtmlLink":"fix: avoid changing os.environ in Harness (#1359)"}},{"before":"cdfd10f34f2d8338fb18dea1185cdd70ea082252","after":"c40c25b2f3c4fe13f3ebde8e898b3f9dde8917d1","ref":"refs/heads/main","pushedAt":"2024-09-05T03:28:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: note juju version on legacy workaround (#1355)\n\nSo that it's easier to remove one day.","shortMessageHtmlLink":"chore: note juju version on legacy workaround (#1355)"}},{"before":"e56686444e3d1504c1785262a1bb3610e1c5182a","after":"cdfd10f34f2d8338fb18dea1185cdd70ea082252","ref":"refs/heads/main","pushedAt":"2024-09-03T06:01:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"fix: rework ops.main type hints to allow different flavours (callable class) (#1345)\n\nMerge readiness check\r\n- [x] implementation\r\n- [x] tests\r\n- [x] docs\r\n- [x] re-export some symbols\r\n\r\nRelease readiness check\r\n- [ ] full super-tox\r\n- [ ] jhack PR or decision to re-export symbols + small PR\r\n- [ ] 2 Scenario PRs or decision to re-export symbols\r\n- [ ] `canonical/hardware-observer-operator` PR\r\n\r\nSlated for ops==2.17.0\r\n\r\nhttps://warthogs.atlassian.net/browse/CHARMTECH-232","shortMessageHtmlLink":"fix: rework ops.main type hints to allow different flavours (callable…"}},{"before":"d42957a00d919998673f523553eedff91618798d","after":null,"ref":"refs/heads/dependabot/github_actions/actions/attest-build-provenance-1.4.2","pushedAt":"2024-09-02T02:24:20.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"}},{"before":"e8f9abb915ac92b2e7e33a5cf19604e67caa97bd","after":"e56686444e3d1504c1785262a1bb3610e1c5182a","ref":"refs/heads/main","pushedAt":"2024-09-02T02:24:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: bump actions/attest-build-provenance from 1.4.0 to 1.4.2 (#1351)\n\nBumps\r\n[actions/attest-build-provenance](https://github.com/actions/attest-build-provenance)\r\nfrom 1.4.0 to 1.4.2.\r\n
\r\nRelease notes\r\n

Sourced from actions/attest-build-provenance's\r\nreleases.

\r\n
\r\n

v1.4.2

\r\n

What's Changed

\r\n
    \r\n
  • Bump actions/attest from 1.4.0 to 1.4.1 by @​bdehamer in actions/attest-build-provenance#209\r\n
      \r\n
    • Includes bug fix for issue with authenticated proxies (actions/toolkit#1798)
    • \r\n
    \r\n
  • \r\n
\r\n

Full Changelog: https://github.com/actions/attest-build-provenance/compare/v1.4.1...v1.4.2

\r\n

v1.4.1

\r\n

What's Changed

\r\n
    \r\n
  • Update predicate action to 1.1.2 by @​bdehamer in actions/attest-build-provenance#197\r\n
      \r\n
    • Dynamic construction of oidc issuer by @​bdehamer in actions/attest-build-provenance#195
    • \r\n
    \r\n
  • \r\n
\r\n

Full Changelog: https://github.com/actions/attest-build-provenance/compare/v1.4.0...v1.4.1

\r\n
\r\n
\r\n
\r\nCommits\r\n
    \r\n
  • 6149ea5\r\nbump actions/attest from 1.4.0 to 1.4.1 (#209)
  • \r\n
  • 3eb3242\r\nBump super-linter/super-linter from 6 to 7 (#205)
  • \r\n
  • 399bb17\r\nBump @​types/node from 22.2.0 to 22.4.0 in the\r\nnpm-development group (#203)
  • \r\n
  • 9f60666\r\nBump the npm-development group with 2 updates (#199)
  • \r\n
  • 310b0a4\r\nupdate predicate action to 1.1.2 (#197)
  • \r\n
  • d58ddf9\r\ndynamic construction of oidc issuer (#195)
  • \r\n
  • f9d4126\r\nBump @​typescript-eslint/parser from 7.17.0 to 7.18.0 (#188)
  • \r\n
  • 588eda3\r\nBump the npm-development group with 3 updates (#187)
  • \r\n
  • 48f71d5\r\ndisable typescript-standard super linter (#191)
  • \r\n
  • See full diff in compare\r\nview
  • \r\n
\r\n
\r\n
\r\n\r\n\r\n[![Dependabot compatibility\r\nscore](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/attest-build-provenance&package-manager=github_actions&previous-version=1.4.0&new-version=1.4.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\r\n\r\nDependabot will resolve any conflicts with this PR as long as you don't\r\nalter it yourself. You can also trigger a rebase manually by commenting\r\n`@dependabot rebase`.\r\n\r\n[//]: # (dependabot-automerge-start)\r\n[//]: # (dependabot-automerge-end)\r\n\r\n---\r\n\r\n
\r\nDependabot commands and options\r\n
\r\n\r\nYou can trigger Dependabot actions by commenting on this PR:\r\n- `@dependabot rebase` will rebase this PR\r\n- `@dependabot recreate` will recreate this PR, overwriting any edits\r\nthat have been made to it\r\n- `@dependabot merge` will merge this PR after your CI passes on it\r\n- `@dependabot squash and merge` will squash and merge this PR after\r\nyour CI passes on it\r\n- `@dependabot cancel merge` will cancel a previously requested merge\r\nand block automerging\r\n- `@dependabot reopen` will reopen this PR if it is closed\r\n- `@dependabot close` will close this PR and stop Dependabot recreating\r\nit. You can achieve the same result by closing it manually\r\n- `@dependabot show ignore conditions` will show all\r\nof the ignore conditions of the specified dependency\r\n- `@dependabot ignore this major version` will close this PR and stop\r\nDependabot creating any more for this major version (unless you reopen\r\nthe PR or upgrade to it yourself)\r\n- `@dependabot ignore this minor version` will close this PR and stop\r\nDependabot creating any more for this minor version (unless you reopen\r\nthe PR or upgrade to it yourself)\r\n- `@dependabot ignore this dependency` will close this PR and stop\r\nDependabot creating any more for this dependency (unless you reopen the\r\nPR or upgrade to it yourself)\r\n\r\n\r\n
\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore: bump actions/attest-build-provenance from 1.4.0 to 1.4.2 (#1351)"}},{"before":"8ae42c3d2215339c02d25ce40320fd13dfea693c","after":null,"ref":"refs/heads/dependabot/github_actions/canonical/setup-lxd-8fb85546a934dfb994becf81341dd387ffe6aabb","pushedAt":"2024-09-02T02:22:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"}},{"before":"512f1e298e17cad36d2ae7e06cbe5a0f4f648a02","after":"e8f9abb915ac92b2e7e33a5cf19604e67caa97bd","ref":"refs/heads/main","pushedAt":"2024-09-02T02:22:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dimaqq","name":"Dima Tisnek","path":"/dimaqq","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/662249?s=80&v=4"},"commit":{"message":"chore: bump canonical/setup-lxd version (#1350)\n\nBumps [canonical/setup-lxd](https://github.com/canonical/setup-lxd) from\r\nce8decb3609c0a03c5abd5034d02a6c145e2076f to\r\n8fb85546a934dfb994becf81341dd387ffe6aabb.\r\n
\r\nCommits\r\n
    \r\n
  • 8fb8554\r\nREADME: replace Jordan Barrett (thank you) as maintainer (#21)
  • \r\n
  • 886cfe1\r\nREADME: replace Jordan Barrett (thank you) as maintainer
  • \r\n
  • 2aa6f7c\r\nHandle case where docker not installed (#20)
  • \r\n
  • c4158ed\r\nHandle case where docker not installed
  • \r\n
  • See full diff in compare\r\nview
  • \r\n
\r\n
\r\n
\r\n\r\n\r\nDependabot will resolve any conflicts with this PR as long as you don't\r\nalter it yourself. You can also trigger a rebase manually by commenting\r\n`@dependabot rebase`.\r\n\r\n[//]: # (dependabot-automerge-start)\r\n[//]: # (dependabot-automerge-end)\r\n\r\n---\r\n\r\n
\r\nDependabot commands and options\r\n
\r\n\r\nYou can trigger Dependabot actions by commenting on this PR:\r\n- `@dependabot rebase` will rebase this PR\r\n- `@dependabot recreate` will recreate this PR, overwriting any edits\r\nthat have been made to it\r\n- `@dependabot merge` will merge this PR after your CI passes on it\r\n- `@dependabot squash and merge` will squash and merge this PR after\r\nyour CI passes on it\r\n- `@dependabot cancel merge` will cancel a previously requested merge\r\nand block automerging\r\n- `@dependabot reopen` will reopen this PR if it is closed\r\n- `@dependabot close` will close this PR and stop Dependabot recreating\r\nit. You can achieve the same result by closing it manually\r\n- `@dependabot show ignore conditions` will show all\r\nof the ignore conditions of the specified dependency\r\n- `@dependabot ignore this major version` will close this PR and stop\r\nDependabot creating any more for this major version (unless you reopen\r\nthe PR or upgrade to it yourself)\r\n- `@dependabot ignore this minor version` will close this PR and stop\r\nDependabot creating any more for this minor version (unless you reopen\r\nthe PR or upgrade to it yourself)\r\n- `@dependabot ignore this dependency` will close this PR and stop\r\nDependabot creating any more for this dependency (unless you reopen the\r\nPR or upgrade to it yourself)\r\n\r\n\r\n
\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore: bump canonical/setup-lxd version (#1350)"}},{"before":null,"after":"d42957a00d919998673f523553eedff91618798d","ref":"refs/heads/dependabot/github_actions/actions/attest-build-provenance-1.4.2","pushedAt":"2024-09-01T22:02:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"chore: bump actions/attest-build-provenance from 1.4.0 to 1.4.2\n\nBumps [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance) from 1.4.0 to 1.4.2.\n- [Release notes](https://github.com/actions/attest-build-provenance/releases)\n- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)\n- [Commits](https://github.com/actions/attest-build-provenance/compare/v1.4.0...v1.4.2)\n\n---\nupdated-dependencies:\n- dependency-name: actions/attest-build-provenance\n dependency-type: direct:production\n update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"chore: bump actions/attest-build-provenance from 1.4.0 to 1.4.2"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yM1QwMDowODoyMi4wMDAwMDBazwAAAAS9bQyq","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yM1QwMDowODoyMi4wMDAwMDBazwAAAAS9bQyq","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wMVQyMjowMjoyNC4wMDAwMDBazwAAAASqCYMw"}},"title":"Activity · canonical/operator"}