From bfdcefee938588e155d2b7fd3272f9917c427819 Mon Sep 17 00:00:00 2001 From: Infrahub Date: Fri, 28 Aug 2026 13:50:05 +0000 Subject: [PATCH 1/2] chore(release): add release notes for 1.23.1 Build the 1.23.1 changelog section from the two pending towncrier fragments and remove them. The package version is derived from the git tag by hatch-vcs, so there is nothing to bump in pyproject.toml or uv.lock - tagging v1.23.1 after this merges is what sets the version. Co-Authored-By: Claude Opus 5 (1M context) --- CHANGELOG.md | 7 +++++++ changelog/+relationship-peer-count.fixed.md | 1 - changelog/1263.fixed.md | 1 - 3 files changed, 7 insertions(+), 2 deletions(-) delete mode 100644 changelog/+relationship-peer-count.fixed.md delete mode 100644 changelog/1263.fixed.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 7e6a7ac06..3ff41d50b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,13 @@ This project uses [*towncrier*](https://towncrier.readthedocs.io/) and the chang +## [1.23.1](https://github.com/opsmill/infrahub-sdk-python/tree/v1.23.1) - 2026-08-28 + +### Fixed + +- Fixed `client.branch.validate()` and `infrahubctl branch validate`, which raised a `GraphQLError` against every supported Infrahub server because the mutation requested a `messages` field that was removed from `BranchValidate` in Infrahub 1.1.0. ([#1263](https://github.com/opsmill/infrahub-sdk-python/issues/1263)) +- The queries generated by `all()`, `filters()`, `get()` and relationship `fetch()` no longer request `count` on cardinality-many relationships. The SDK never read that value, and Infrahub resolved it with one extra database query per returned node and per relationship, on top of preventing the peer reads of those nodes from being batched into a single query. + ## [1.23.0](https://github.com/opsmill/infrahub-sdk-python/tree/v1.23.0) - 2026-08-19 ### Removed diff --git a/changelog/+relationship-peer-count.fixed.md b/changelog/+relationship-peer-count.fixed.md deleted file mode 100644 index 66b4a0480..000000000 --- a/changelog/+relationship-peer-count.fixed.md +++ /dev/null @@ -1 +0,0 @@ -The queries generated by `all()`, `filters()`, `get()` and relationship `fetch()` no longer request `count` on cardinality-many relationships. The SDK never read that value, and Infrahub resolved it with one extra database query per returned node and per relationship, on top of preventing the peer reads of those nodes from being batched into a single query. diff --git a/changelog/1263.fixed.md b/changelog/1263.fixed.md deleted file mode 100644 index f2a23fd7e..000000000 --- a/changelog/1263.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Fixed `client.branch.validate()` and `infrahubctl branch validate`, which raised a `GraphQLError` against every supported Infrahub server because the mutation requested a `messages` field that was removed from `BranchValidate` in Infrahub 1.1.0. From 66a2543a6e01084d71db2c9c4cc2e7fddd528460 Mon Sep 17 00:00:00 2001 From: Guillaume Mazoyer Date: Tue, 1 Sep 2026 21:34:47 +0200 Subject: [PATCH 2/2] Add the refresh tokens relationship to the account (#1307) Infrahub declares a `refresh_tokens` relationship on CoreGenericAccount, so that the delete of an account also removes its refresh tokens. This file is generated from that schema, so it needs the same relationship. --- infrahub_sdk/protocols.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/infrahub_sdk/protocols.py b/infrahub_sdk/protocols.py index a5a029c22..7b38f49a3 100644 --- a/infrahub_sdk/protocols.py +++ b/infrahub_sdk/protocols.py @@ -121,6 +121,7 @@ class CoreGenericAccount(CoreNode): account_type: Enum status: Dropdown tokens: RelationshipManager + refresh_tokens: RelationshipManager external_identities: RelationshipManager @@ -726,6 +727,7 @@ class CoreGenericAccountSync(CoreNodeSync): account_type: Enum status: Dropdown tokens: RelationshipManagerSync + refresh_tokens: RelationshipManagerSync external_identities: RelationshipManagerSync