Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2024-07-08 - (expected chart version 5.4.0) #4126

Merged
merged 65 commits into from
Jul 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
c3204ac
Merge pull request #4054 from wireapp/master
elland May 21, 2024
7b3c83f
Add conversations to full ejpd info. (#3945)
fisx May 21, 2024
b279582
WPB-8757 Port flaky legalhold test from galley to integration (#4057)
battermann May 22, 2024
5af4c29
Update docs: Migrated Helm charts (#3931) (#4058)
smatting May 22, 2024
0e8437d
Treat pending legalhold devices as not having a legalhold device (#4056)
fisx May 23, 2024
5d6494e
Update k8ssandra test cluster chart (#4011)
amitsagtani97 May 23, 2024
693d66b
Increase test coverage ever so slightly. (#4061)
fisx May 25, 2024
352fbda
[WPB-6718] Implement TLS support in Wire's Redis interface (#4016)
mdimjasevic May 27, 2024
478d218
[fix] fix sbom generation as deptrack now does validation (#4066)
MangoIV May 28, 2024
39a35d3
[docs] clarify the behaviour of search by exact handle (#4068)
marcoconti83 May 28, 2024
9719470
[feat] add more metadata in nix to own code (#4069)
MangoIV May 29, 2024
cde14a9
WPB-8824 MLS E2EID CRL proxy flag (#4051)
battermann May 29, 2024
1bfc105
WPB-6442 migrate all team feature tests to integration package part 1…
battermann May 29, 2024
44dfa39
Update email templates to v1.0.121. (#4064)
fisx May 29, 2024
1bff352
[WPB-7161] Fix Request ID logging in all services (#4059)
mdimjasevic May 30, 2024
04e6c2a
Make flaky test more robust. (#4065)
fisx May 31, 2024
d66df38
Do not set update origin "scim" in public brig api. (#4072)
fisx Jun 3, 2024
5c59628
[feat] include meate.homepage for the purl (#4075)
MangoIV Jun 3, 2024
357aab6
dockerephemeral environment: give ES an http interface (needed for ol…
fisx Jun 5, 2024
6b59c4f
WPB-9062 Provider API asset upload (#4082)
battermann Jun 5, 2024
f7e669b
WPB-9102 gundeck: Better tolerance for redis-cluster restarts (#4084)
battermann Jun 5, 2024
5d37f6c
User subsystem: add profile update operations (#4046)
pcapriotti Jun 6, 2024
520964b
Make Handle newtype abstract (#4076)
fisx Jun 6, 2024
99c4092
WPB-9495: nginz: add allowlisted_fqdn_origins override (#4087)
lwille Jun 10, 2024
30abe72
federator: Expect a client certificate to be the certificate chain (#…
akshaymankar Jun 13, 2024
6cdef20
gh-actions: Upgrade nix and cachix installation actions to fix builds…
akshaymankar Jun 13, 2024
b30fc9d
Add more fingerprint verification tests for bots (#4027)
akshaymankar Jun 13, 2024
36b2406
change externallyCreated to useFakeS3 and change its depth (#3895)
arthurwolf Jun 13, 2024
c2bb1a2
Define metrics using `Prometheus.unsafeRegister` instead of having th…
akshaymankar Jun 17, 2024
5ef2be0
Add weeder (dead code elimination tool) to dev environment (#4088)
fisx Jun 17, 2024
c4830f1
Rewrite certificate generation script (#4093)
pcapriotti Jun 19, 2024
0ab0e86
[WPB-8943] ghc 9.4 -> 9.6, nixpkgs bump (#4071)
MangoIV Jun 19, 2024
0d87411
[chore] update warp
MangoIV Jun 19, 2024
2f2f13e
Revert "[chore] update warp"
MangoIV Jun 19, 2024
8d69025
[fix] remove redundant MonadMonitor constraint in brig (#4095)
MangoIV Jun 19, 2024
10f7a65
moving docker images from Julia's private repo to quay (#4099)
jschumacher-wire Jun 20, 2024
5b1e57c
WPB 2690 (#4098)
smatting Jun 20, 2024
5b2df31
WPB-9677 fix stern endpoint `/i/users/meta-info` (#4101)
battermann Jun 21, 2024
e01888a
RabbitMQ TLS (#4094)
pcapriotti Jun 21, 2024
48d0d8e
coturn: Add IP configuration options (#4083)
smatting Jun 21, 2024
b9a9fbc
[feat] clean up the haskell pins and update http2 and warp (#4096)
MangoIV Jun 24, 2024
87b8f96
[WPB-9685] don't answer with "204 - legalhold already disabled" when …
MangoIV Jun 24, 2024
d3f64ea
Only resend proposals once after external commit (#4103)
pcapriotti Jun 24, 2024
5c37a0b
Allow nil rabbitmq CA in integration charts (#4106)
pcapriotti Jun 24, 2024
4374eda
Make error messages in scim user create more helpful. (#4105)
fisx Jun 24, 2024
c798b58
Add subconversation test (#4102)
pcapriotti Jun 25, 2024
cdd6e0d
catchErrors middleware: Don't create responses for ThreadKilled error…
akshaymankar Jun 27, 2024
57ef069
what do you think CI?
fisx Jun 28, 2024
99e6f00
Revert "what do you think CI?"
fisx Jun 28, 2024
7174748
Haddocks
fisx Jun 28, 2024
cc59adc
Roll back from argon2id to scrypt.
fisx Jun 28, 2024
3e4a446
Revert accidental commits
fisx Jun 28, 2024
6056721
Move password reset code to AuthenticationSubsystem (#4086)
battermann Jul 1, 2024
16161c6
Introduce EmailSmsSubsystem, use it for a few emails and password res…
battermann Jul 2, 2024
67a5f68
WPB-5491 Log password reset errors instead of propagating them (#4114)
battermann Jul 2, 2024
8561a01
WPB-6954 Set SFT username's shared field according to team setting (#…
battermann Jul 2, 2024
4cf6310
Fix repeated with-rtsopts option (#4118)
pcapriotti Jul 3, 2024
99d546e
reject MLS messages for future epochs (#4110)
stefanwire Jul 3, 2024
d1f4b1f
[WPB-9065] Stop supporting phone numbers in supported client API vers…
mdimjasevic Jul 3, 2024
b690486
[chore] replace cabal.project.local template and update cabal.project…
MangoIV Jul 3, 2024
506a880
Fix scim logic: delete dangling external_ids if they happen. (#4120)
fisx Jul 5, 2024
a497b48
Introduce VerificationCodeSubsystem (#4121)
akshaymankar Jul 8, 2024
f2150bd
Rename effect EmailSmsSubsystem to EmailSubsystem (#4123)
mdimjasevic Jul 8, 2024
b85a018
Add changelog for Release 2024-07-08
zebot Jul 8, 2024
3b3be5f
[fix] charts/gundeck: reference correct value for tlsCa (#4127) (#4128)
elland Jul 8, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
- uses: actions/checkout@v2
with:
submodules: true
- uses: cachix/install-nix-action@v20
- uses: cachix/cachix-action@v12
- uses: cachix/install-nix-action@v27
- uses: cachix/cachix-action@v15
with:
name: wire-server
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
Expand Down
2 changes: 1 addition & 1 deletion .hlint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
- error: { name: Use shutdown, lhs: runSettings, rhs: runSettingsWithShutdown }
- ignore: { name: Use shutdown, within: [
Network.Wai.Utilities.Server, # this is the implementation 'runSettingsWithShutdown'
Federator.Response, # this is just a naming conincidence
Federator.Interpreter, # this is just a naming coincidence
Cannon.Run # we do something similar, but not identical here by hand
] }

Expand Down
12 changes: 11 additions & 1 deletion .ormolu
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
infixr 10 .=
module Imports exports Prelude
infixl 9 .=
infixl 9 .:
infixr 4 ?~
infixr 4 .~
infixl 1 &
infix 4 ===
infix 4 =/=
infixr 3 !!!
infixr 3 <!!
infixr 3 &&~
infixr 2 ||~
infix 4 <$$>
infix 4 <$$$>
infixl 1 `bindResponse`
151 changes: 151 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,154 @@
# [2024-07-08] (Chart Release 5.4.0)

## Release notes


* Phone registration and login is not supported anymore. All API endpoints dealing with phone numbers and phone activation codes now fail with a 400 error. Brig options related to phone number support have now been deleted, namely:
- `setTwilio`
- `setNexmo`
- `setAllowlistPhonePrefixes`. (#4045)


## API changes


* Internal API endpoints related to phone numbers have been removed.

In brig:
- `iGetPhonePrefix`
- `iDeletePhonePrefix`
- `iPostPhonePrefix`.

In stern:
- `get-users-by-phone`
- `put-phone`. (#4045)


## Features


* charts/coturn: support putting coturn into 'drain' mode when terminating pods, denying new incoming client connections. This speeds up graceful coturn restarts significantly. (#4098)

* Set SFT usernames's `shared` field according to team settings (#4117)

* Updated the `mlsE2EId` feature config with two additional fields `crlProxy` and `useProxyOnMobile` (#4051)

* reject MLS messages for future epochs (#4110)

* Introduce more configuration options to the `coturn` helm chart (#4083)

* Update email templates to v1.0.121. (#4064)

* Support connecting to RabbitMQ over TLS. See "Configure RabbitMQ" section in the documentation for details. (#4094)

* Support connecting to Redis over TLS

It can be enabled by setting these options on the wire-server helm chart:

```yaml
gundeck:
config:
redis:
enableTls: true

# When custom CAs are required, one of these must be set:
tlsCa: <PEM encoded CA certificates>
tlsCaSecretRef:
name: <Name of the secret>
key: <Key in the secret containing pem encoded CA Cert>

# When TLS needs to be used without verification:
insecureSkipVerifyTls: true
```
(#4016)


## Bug fixes and other updates


* fixed stern endpoint `/i/users/meta-info` (#4101)

* Log password reset errors instead of propagating them (#4114)

* Log request ids in brig. (#4086)

* Do not set update origin "scim" in public brig api. (#4072)

* Disabling legalhold before user's approval doesn't result in an error (#4104)

* Make scim-delete-user idempotent. Hide information about existing users (make delete idempotent) (#4120)

* Expose /providers/assets via nginz (#4082)

* federator: Expect a client certificate to be the certificate chain

Without this openssl doesn't forward to whole chain causing mTLS to not succeed. (#4089)

* Only resend proposals once after external commit (#4103)

* gundeck: Better tolerance for redis-cluster restarts (#4084)

* GHC does not support repeated --with-rtsopts options, and it simply applies the last one. This means many of the baked-in options were actually not being passed, including -N for some of the services and -T for cannon. (#4118)

* Ensure that a Request ID is logged whenever unexpected errors are caught in any service (#4059)

* charts/coturn: use allowed dir to write PID file (#4098)

* Make pending LH requests (with no LH devices listening yet) not throw LH policy errors. This helps eg. in cases where a LH request is issued to the wrong user by accident, and the user can clear up the mistake. (#4056)


## Documentation


* Adjust documentation for migrated helm charts (#4058)


## Internal changes


* Adapt EJPD data to current requirements. (#3945)

* Port team feature tests to the `integration` package (#4063)

* Ported flaky legalhold test to the new integration test suite (#4057)

* Added profile update operations to the user subsystem. (#4046)

* Introduce authentication subsystem with password reset. (#4086)

* update nixpkgs and hence GHC version as well as some other tooling. (#4071)

* nginz: Added `allowlisted_fqdn_origins` to `nginx_conf` value (#4087)

* Add weeder for dead code elimination. (#4088)

* Introduce email subsystem (#4111)

* replace cabal.project.local template and update cabal.project (#4119)

* Add HTTP proxy in the local setup for elasticsearch in federation-v0. This makes it possible to use a single elasticsearch instance for both the main backends and federation-v0. (#4062)

* federator: Add metrics for garbage collections and unexpected errors that were caught (#4085)

* federator: Simplify polysemy setup to make it similar to other services so the
interpreter is only used for hoisting the servant application and not explicitly
inside handler of an endpoint (#4059)

* Added prometheus enable and datacenter size variables for k8ssandra-test-cluster helm chart. (#4011)

* Make `Handle` type abstract to guarantee it always contains *valid* Handles. (#4076)

* metrics-core: Delete `Data.Metrics` in favour of defining metrics closer to where they are being emitted (#4085)

* add more metadata into the meta attribute of all nix derivations produced locally (#4069)

* Do not log anything when warp kills a worker thread. (#4112)

* Introduce VerificationCodSubsystem (#4121)

* add tests for bots that use self-signed certs and add documentation on why we cannot test the bots to work with PKI (#4027)


# [2024-05-21] (Chart Release 5.3.0)

## API changes
Expand Down
30 changes: 22 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,7 @@ clean-hint:

.PHONY: cabal.project.local
cabal.project.local:
echo "optimization: False" > ./cabal.project.local
./hack/bin/cabal-project-local-template.sh "ghc-options: -O0" >> ./cabal.project.local
cp ./hack/bin/cabal.project.local.template ./cabal.project.local

# Usage: make c package=brig test=1
.PHONY: c
Expand Down Expand Up @@ -127,11 +126,8 @@ devtest:
ghcid --command 'cabal repl integration' --test='Testlib.Run.mainI []'

.PHONY: sanitize-pr
sanitize-pr:
./hack/bin/generate-local-nix-packages.sh
make formatf
make hlint-inplace-pr
make hlint-check-pr # sometimes inplace has been observed not to do its job very well.
sanitize-pr:
make lint-all-shallow
make git-add-cassandra-schema
@git diff-files --quiet -- || ( echo "There are unstaged changes, please take a look, consider committing them, and try again."; exit 1 )
@git diff-index --quiet --cached HEAD -- || ( echo "There are staged changes, please take a look, consider committing them, and try again."; exit 1 )
Expand All @@ -155,7 +151,25 @@ ghcid:

# Used by CI
.PHONY: lint-all
lint-all: formatc hlint-check-all check-local-nix-derivations treefmt-check
lint-all: formatc hlint-check-all lint-common

# For use by local devs.
#
# This is not safe for CI because files not changed on the branch may
# have been pushed to develop, or caused by merging develop into the
# branch implicitly on github.
#
# The extra 'hlint-check-pr' has been witnessed to be necessary due to
# some bu in `hlint-inplace-pr`. Details got lost in history.
.PHONY: lint-all-shallow
lint-all-shallow: formatf hlint-inplace-pr hlint-check-pr lint-common

.PHONY: lint-common
lint-common: check-local-nix-derivations treefmt-check # weeder (does not work on CI yet)

.PHONY: weeder
weeder:
weeder -N

.PHONY: hlint-check-all
hlint-check-all:
Expand Down
113 changes: 1 addition & 112 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ packages:
, libs/metrics-core/
, libs/metrics-wai/
, libs/polysemy-wire-zoo/
, libs/ropes/
, libs/schema-profunctor/
, libs/sodium-crypto-sign/
, libs/ssl-util/
Expand Down Expand Up @@ -62,117 +61,7 @@ packages:
tests: True
benchmarks: True

package assets
ghc-options: -Werror
package auto-whitelist
ghc-options: -Werror
package background-worker
ghc-options: -Werror
package bilge
ghc-options: -Werror
package brig
ghc-options: -Werror
package brig-types
ghc-options: -Werror
package cannon
ghc-options: -Werror
package cargohold
ghc-options: -Werror
package cargohold-types
ghc-options: -Werror
package cassandra-util
ghc-options: -Werror
package deriving-swagger2
ghc-options: -Werror
package dns-util
ghc-options: -Werror
package extended
ghc-options: -Werror
package federator
ghc-options: -Werror
package find-undead
ghc-options: -Werror
package galley
ghc-options: -Werror
package galley-types
ghc-options: -Werror
package gundeck
ghc-options: -Werror
package gundeck-types
ghc-options: -Werror
package hscim
ghc-options: -Werror
package http2-manager
ghc-options: -Werror
package inconsistencies
ghc-options: -Werror
package integration
ghc-options: -Werror
package imports
ghc-options: -Werror
package jwt-tools
ghc-options: -Werror
package metrics-core
ghc-options: -Werror
package metrics-wai
ghc-options: -Werror
package migrate-sso-feature-flag
ghc-options: -Werror
package mlsstats
ghc-options: -Werror
package move-team
ghc-options: -Werror
package polysemy-wire-zoo
ghc-options: -Werror
package proxy
ghc-options: -Werror
package mlsstats
ghc-options: -Werror
package phone-users
ghc-options: -Werror
package rabbitmq-consumer
ghc-options: -Werror
package repair-handles
ghc-options: -Werror
package rex
ghc-options: -Werror
package ropes
ghc-options: -Werror
package schema-profunctor
ghc-options: -Werror
package service-backfill
ghc-options: -Werror
package sodium-crypto-sign
ghc-options: -Werror
package spar
ghc-options: -Werror
package ssl-util
ghc-options: -Werror
package stern
ghc-options: -Werror
package tasty-cannon
ghc-options: -Werror
package test-stats
ghc-options: -Werror
package types-common
ghc-options: -Werror
package types-common-aws
ghc-options: -Werror
package types-common-journal
ghc-options: -Werror
package wai-utilities
ghc-options: -Werror
package wire-api
ghc-options: -Werror
package wire-api-federation
ghc-options: -Werror
package wire-message-proto-lens
ghc-options: -Werror
package wire-subsystems
ghc-options: -Werror
package zauth
ghc-options: -Werror
package fedcalls
program-options
ghc-options: -Werror

-- NOTE:
Expand Down
2 changes: 2 additions & 0 deletions cassandra-schema.cql
Original file line number Diff line number Diff line change
Expand Up @@ -1205,9 +1205,11 @@ CREATE TABLE galley_test.team_features (
mls_default_ciphersuite int,
mls_default_protocol int,
mls_e2eid_acme_discovery_url blob,
mls_e2eid_crl_proxy blob,
mls_e2eid_grace_period int,
mls_e2eid_lock_status int,
mls_e2eid_status int,
mls_e2eid_use_proxy_on_mobile boolean,
mls_e2eid_ver_exp timestamp,
mls_lock_status int,
mls_migration_finalise_regardless_after timestamp,
Expand Down
Loading
Loading