Skip to content

Commit

Permalink
Merge pull request #199 from lsst-sqre/tickets/DM-40676
Browse files Browse the repository at this point in the history
DM-40676: Prepare 4.4.0 release
  • Loading branch information
rra authored Sep 8, 2023
2 parents badc653 + 8c81d38 commit 0846030
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 19 deletions.
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,25 @@ Changes for the upcoming release can be found in [changelog.d](https://github.co

<!-- scriv-insert-here -->

<a id='changelog-4.4.0'></a>
## 4.4.0 (2023-09-07)

### New features

- Add a `safir.click.display_help` helper function that implements a `help` command for Click-based command-line interfaces, with support for nested subcommands.
- Add a new `safir.asyncio.AsyncMultiQueue` data structure, which is an asyncio multi-reader queue that delivers all messages to each reader independently.
- Add `read_` methods for the Kubernetes object types for which the mock provided `create_` methods (`NetworkPolicy` and `PersistentVolumeClaim`).

### Bug fixes

- Fix typing of the `safir.asyncio.run_with_asyncio` decorator so that it doesn't mask the type of the underlying function.
- Kubernetes objects included in events are now serialized properly using the Kubernetes camel-case field names instead of the Python snake-case names. In addition to matching Kubernetes behavior more closely, this allows a watch configured with the Kubernetes model type to deserialize the object in the `object` key of the event dictionary. The type must be passed explicitly to the `Watch` constructor, since kubernetes_asyncio's type autodetection does not work with Safir's mock.
- `safir.testing.kubernetes.patch_kubernetes` no longer mocks the entire `ApiClient` class since it is required for deserialization of objects in Kubernetes events. It instead mocks the `request` method of that class for safety, to prevent any network requests to Kubernetes clusters when Kubernetes is mocked.

### Other changes

- Safir now uses the [Ruff](https://beta.ruff.rs/docs/) linter instead of flake8 and isort.

<a id='changelog-4.3.1'></a>
## 4.3.1 (2023-07-17)

Expand Down
3 changes: 0 additions & 3 deletions changelog.d/20230830_155927_rra_DM_40567.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20230905_084310_rra_DM_40628.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20230905_090034_rra_DM_40638.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20230905_090226_rra_DM_40638a.md

This file was deleted.

4 changes: 0 additions & 4 deletions changelog.d/20230907_110606_rra_DM_40638b.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20230907_135241_rra_DM_40638b.md

This file was deleted.

0 comments on commit 0846030

Please sign in to comment.