Skip to content

Release 2026-03-03 - (expected chart version 5.28.0)#5080

Open
zebot wants to merge 73 commits intomasterfrom
release_2026-03-03_15_28
Open

Release 2026-03-03 - (expected chart version 5.28.0)#5080
zebot wants to merge 73 commits intomasterfrom
release_2026-03-03_15_28

Conversation

@zebot
Copy link
Contributor

@zebot zebot commented Mar 3, 2026

[2026-03-03] (Chart Release 5.28.0)

Release notes

  • The following Helm charts changed in this branch:

    • charts/demo-smtp
    • charts/fake-aws-ses
    • charts/fake-aws-sns
    • charts/legalhold

    Image field overrides are supported via split values (repository + tag) in the changed charts.
    There are backward incompatibilities if old string-style image overrides are still used. (WPB-18320 make hardcoded images in helm charts configurable via values yaml #5015)

  • Cassandra (brig.user) now keeps track of user types, only for newly created users. Read this paragraph if you have already created apps before their official support: For existing users and bots, the user type is inferred, but existing apps will show as regular users. Please remove those users from your team and create them again. ([WPB-22549] add type field to user #5022)

  • Starting in this version, wire-server is tested against cassandra (4.1.x). The codebase is compatible with cassandra 3.11, 4.0, and 4.1. But going forward, only 4.1 or newer will get tested. We recommend you eventually upgrade cassandra to 4.1.x. (Cassandra upgrade to 4.0 #5062)

API changes

Features

Bug fixes and other updates

Internal changes

Federation changes

  • Support external cert-manager issuers (e.g. AWS PCA) for federation TLS by adding optional group field to federator.tls.issuer and making certificate duration/renewBefore configurable via federator.tls.duration and federator.tls.renewBefore in nginx-ingress-services chart. (ingress-nginx: support for external cert-manager issuers #5025)

emil-wire and others added 30 commits February 2, 2026 18:18
This reverts commit 82c5e5e.
* Factor out proposal ref check

* Refactor proposal fetching method

* Improve proposal ref check

For each missing proposal, check if it is deleting an index which is
already deleted by an included proposal. If so, do not throw a missing
reference error.

* Add CHANGELOG entry

* Get rid of Ord instance for StoredProposal
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This is a pure refactoring. It enables usage of this effect by other effects in
the standard Wire way.
* Ignore partials for languages not in [en,de]

There are no team emails which may include them. Thus, we don't need
them in this repo.

* Move template fetch script to wire-subsystems

Otherwise, the templates are created in the abandonned brig folders.

This is probably a missing step of migrating email templating to
wire-subsystems.

* Ignore superfluous files in fetch.py

`index.html`, `index.txt` and `index-subject.txt` aren't needed here.
Look at the wire-emails project if you need them.

* Update email templates to v1.0.148.
* Add history metadata to conversation record

* Add history update action and event

* Add history update action

* Implement history DB write

* Store history config on conv creation

* Read history config from DB

* More history tests

* Add CHANGELOG entry

* Lint

* Update golden tests

* Fix federation golden tests

* Fix conversation create with history test on Cassandra

* Add history field to cassandra

* fixup! Add history field to cassandra

* More history setting tests
* Extend integration test coverage.

* Explanatory source comments.

* Fix: add apps as team members in galley.

* Changelog.

* Fixup

* Drive-by fixup
Co-authored-by: Sven Tennie <sven.tennie@wire.com>
* [drive-by] Clarify what toIdentity* do when user is inactive.

* Add user type (regular, app, bot) to `User`, `StoredUser`, ...
Setting this yaml

```
cannonArgs: ["+RTS", "-M2g", "-RTS"]
```

yields a process that looks like this when it runs:

```
tr '\0' ' ' < /proc/1/cmdline; echo
/nix/store/0424psvij1xlqnf4bw88pvrlirfj4mzd-dumb-init-1.2.5/bin/dumb-init -- /nix/store/zg65yxh6pll45hb8x87hmbfyjvy2qcik-cannon/bin/cannon +RTS -M2g -RTS
```

* Update charts/cannon/templates/statefulset.yaml

Co-authored-by: Leonhardt Wille <lwille@users.noreply.github.com>

* Update charts/cannon/templates/statefulset.yaml

Co-authored-by: Akshay Mankar <akshay@wire.com>

* Fix cannon resources indent

* Fix cannon chart YAML

* Tidy cannon args templating

* Render cannon args on new line

* tweak

---------

Co-authored-by: Leonhardt Wille <lwille@users.noreply.github.com>
Co-authored-by: Akshay Mankar <akshay@wire.com>
* ingress-nginx: support for external cert-manager issuers

* making federator ingress cert duration configurable
Send emails to team admins and owners when SAML IdP configurations are created,
updated, or deleted. These include details about certificate changes
(additions/removals) and configuration updates (issuer/endpoint changes).

Changes:
- Add SAMLEmailSubsystem effect and interpreter for IdP change emails
- Create email templates for IdP configuration change notifications
- Add Data.Hourglass.Const module with midnight constant
- Add unit tests for rendering the new templates
- Use schema-profunctor `ToSchema` to get `ToJSON`/`FromJSON` instances for
  `IdP`

This feature enables team administrators to be informed of security-relevant
changes to their SAML authentication configuration.
* update federated calling configuration

* better description for coturn abuse

* fix incorrect statement for coturn ratelimiting allowlist

* fix example list
Add the /sso/get-by-email endpoint to look the right IdPId for an email address
up, taking the multi-ingress domain host into account.

The whole feature is disabled by default, returning in HTTP 404s.
Take into account that different string representations may express the
same path. Thus, `normalise` all of them.
This broke API compatibility. Instead, reuse ModifyConversationAccess action permission. Permissions are only used internally and don't really affect the behaviour of the backend, anyway.
I had to tweak the renovate PR a bit:

- crate2nix wasn't executed (no nix, no effect :) )
- treefmt to format the changes

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Sven Tennie <sven.tennie@wire.com>
Switch to the nixpkgs release branch (from unstable).

Cleanup nix pins.

Fix `integration/scripts/integration-dynamic-backends-vhosts.sh`: `curl` was
complaining: "The file '/certs/rabbitmq-ca/ca.pem' provided to --cacert does
not exist." So, fix this path - though, I don't understand how it could have
ever worked before.
Manually executed `crate2nix generate` to reflect this change in Nix.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Sven Tennie <sven.tennie@wire.com>
Master->Develop after release
fisx and others added 26 commits February 24, 2026 11:42
* Rename ClientStore -> UserClientIndexStore

* Move UserClientIndexStore interpreter to wire-subsystems

* Remove action to get configuration from the store effect

* Expose `getBrigClients`  as `ConversationSubsystem.internalGetClientIds`
…2 namespace (#5058)

This will allow integration tests to cleanup after themselves
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Gautier DI FOLCO <gautier.difolco@wire.com>
* Repair user key inconsistency on registration

* Add CHANGELOG entry

* Restore activation check
* Add lower API version bounds.

* rm outdated TODO.
* Move getActivityTimestamps from UserStore to ClientStore

* UserSubsystem: Use ClientSubsystem instead of ClientStore
* Cassandra upgrade to 4.0

* use latest patch version of 4.0
* Cassandra 4.1

* Hi CI
@zebot zebot requested review from a team as code owners March 3, 2026 15:29
@zebot zebot added the ok-to-test Approved for running tests in CI, overrides not-ok-to-test if both labels exist label Mar 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ok-to-test Approved for running tests in CI, overrides not-ok-to-test if both labels exist

Projects

None yet

Development

Successfully merging this pull request may close these issues.