Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
126 commits
Select commit Hold shift + click to select a range
556fe19
Add docs for creating diagrams in markdown files
battermann Feb 22, 2023
bbb3aeb
Add a client API version bump checklist (#3135)
Mar 7, 2023
4456e29
Introduce VersionNumber newtype. (#3075)
fisx Mar 7, 2023
6bb0a24
Bump swagger2 (#3061)
fisx Mar 9, 2023
c57f255
chore: [charts] Update webapp version (#3133)
zebot Mar 9, 2023
06e61ea
FS-51 Report unavailable clients for Proteus messages (#3097)
lepsa Mar 9, 2023
02ba744
Downgrade to our fork of http2 (#3141)
pcapriotti Mar 13, 2023
2e94ee8
Add release note (#3146)
smatting Mar 13, 2023
839760b
Merge pull request #3147 from wireapp/master
smatting Mar 13, 2023
c97b712
Fix gundeck leak (#3136)
isovector Mar 13, 2023
a4eb62d
Fix ES reset command in Makefile (#3114)
pcapriotti Mar 13, 2023
d55a21a
Upgrade cachix to 1.3.1 (#3144)
smatting Mar 13, 2023
615404b
Revert "Use openssl instead of tls in federator http2 client (#3051)"…
smatting Mar 13, 2023
26dd4ee
Add `flakyTestCase` command and use it. (#3143)
fisx Mar 13, 2023
4b198b1
Merge pull request #3098 from wireapp/diagram-in-md
arthurwolf Mar 14, 2023
d4426d1
FS-1530 Suppress federated errors when removing users from conversati…
lepsa Mar 14, 2023
fe78d07
[SQSERVICES-1942] Fix DPoP access token error propagation (2/2) (#3142)
battermann Mar 14, 2023
7c1349b
OAuth (#2989)
fisx Mar 14, 2023
cad8b61
Set versions in Helm charts for Frida (BUND release)
supersven Mar 15, 2023
44ce854
Revert "Set versions in Helm charts for Frida (BUND release)"
supersven Mar 15, 2023
1cb370d
[SQSERVICES-1931] wire server allow backend to enforce stronger passw…
battermann Mar 15, 2023
816b3d3
fix paths in stern (#3153)
battermann Mar 16, 2023
684fcd3
[SQSERVICES-1911] Team features MLS E2E ID (2/2) (#3155)
battermann Mar 16, 2023
f87b4ee
fix: make nginz OAuth secret optional (#3159)
battermann Mar 16, 2023
1fb33a7
inbucket Helm chart: TLS and basic authentication (#3161)
supersven Mar 17, 2023
96360fb
PKCE code verifier and challenge in authorization request
battermann Mar 20, 2023
b9992aa
fix brig
battermann Mar 21, 2023
b781d61
added code_challenge to auth_code table
battermann Mar 21, 2023
dc6b306
update tests - wip
battermann Mar 21, 2023
64d8156
try recreating ARN when token exists in Cassandra (#3162)
stefanwire Mar 21, 2023
12a758f
wip
battermann Mar 21, 2023
e164fb8
record dot syntax and overloaded record fields (#3166)
battermann Mar 21, 2023
414f260
verifying the code verifier
battermann Mar 21, 2023
723dd6d
Merge remote-tracking branch 'origin/develop' into SQSERVICES-1953-su…
battermann Mar 21, 2023
ec8a479
return 201 instead of 302 auth code response (#3167)
battermann Mar 21, 2023
a2f3477
Merge remote-tracking branch 'origin/develop' into SQSERVICES-1953-su…
battermann Mar 21, 2023
ebc6469
changelog
battermann Mar 21, 2023
2106a61
Use openssl instead of tls in federator http2 client (#3154)
akshaymankar Mar 21, 2023
eccf052
old-ingress-stop-logging-query-parameters (#3139)
jschaul Mar 21, 2023
adb0b6d
Update docs/src/developer/reference/oauth.md
battermann Mar 22, 2023
678e36b
Fixed typo.
elland Mar 22, 2023
186146e
making ttl a query parameter
battermann Mar 22, 2023
856b0f8
clean up
battermann Mar 22, 2023
94808d1
New ingress controller chart (#3140)
jschaul Mar 22, 2023
32bec2e
[FS-1147] Proteus: Support creating a conversation when remote backen…
Mar 23, 2023
9c276d3
Scaffolding for notifying users of unreachable backends
elland Feb 13, 2023
de404e9
Add unreachable users to response of sending messages.
elland Feb 15, 2023
cbc6765
Flattened JSON output
elland Feb 16, 2023
56fc345
Removed dead code + wrong error
elland Feb 16, 2023
95b0b10
Ignore unreachable users in unrelated test
elland Feb 20, 2023
66519a0
Remove unreachables from v1 calls
elland Feb 20, 2023
f213b8a
Added futurework about happy test
elland Mar 15, 2023
785d13d
Added changelog
elland Mar 20, 2023
661f1dd
Added golden tests, fixed typo
elland Mar 20, 2023
fc22e5f
Unified two functions
elland Mar 21, 2023
9a4abb3
Simplified user creation for a test
elland Mar 21, 2023
9411f57
Removed passing around redundant value
elland Mar 21, 2023
743a05f
Format
elland Mar 22, 2023
ffcdcdc
Update of sso integration documentation
mnimac Mar 23, 2023
80f61b2
Added test again mocked unreachable backend.
elland Mar 23, 2023
1b4cdee
Apply Pr sanitisation
elland Mar 23, 2023
877a483
Removed dead code
elland Mar 23, 2023
64f5212
Merge pull request #3081 from wireapp/elland/report-federated-unreach…
elland Mar 23, 2023
491c1c5
galley/brig/spar: launch pods with decent starting cpu/memory resourc…
jschaul Mar 23, 2023
512a5f1
Update main.md
mnimac Mar 23, 2023
a724263
Merge pull request #3165 from wireapp/SQSERVICES-1953-support-o-auth-…
flokli Mar 23, 2023
3848c90
Add flaky_tests.py and flaky-tests.yaml (#3180)
smatting Mar 24, 2023
49e89e3
Hopefully fix flake test (#3181)
smatting Mar 24, 2023
3f61eb5
flaky_tests.py add --discover option (#3182)
smatting Mar 24, 2023
82bdaab
fix unexpected notification received in test (#3183)
stefanwire Mar 24, 2023
ed6e491
Add -l option (#3184)
smatting Mar 24, 2023
665bf61
Fix bug in data fetching function (#3187)
smatting Mar 27, 2023
e9fc0b9
fix unexpected notification received in test (#3186)
stefanwire Mar 27, 2023
f3a4277
fix flaky test: increase timeout (#3188)
smatting Mar 27, 2023
e1584a1
removed lang specifier from fenced code block
battermann Mar 27, 2023
2ad89de
Merge pull request #3189 from wireapp/battermann/fix-oauth-docs
arthurwolf Mar 27, 2023
4f2bc27
chore: [charts] Update webapp version (#3190)
zebot Mar 27, 2023
ecc603d
chore: [charts] Update webapp version (#3191)
zebot Mar 27, 2023
96ad271
use standard pager and more stable flake order (#3185)
stefanwire Mar 27, 2023
73f18a3
Merge pull request #3175 from mnimac/update-of-sso-okta-documentation
Veki301 Mar 28, 2023
b5afd86
[SQSERVICES-1693] Guest links with passwords (#3149)
battermann Mar 28, 2023
4c39f7d
nginz: enable unlimited_requests_endpoint for authenticated requests,…
jschaul Mar 28, 2023
2c319dd
Unclutter ormolu script (#3193)
fisx Mar 28, 2023
e3f8b9c
Fix version paths (#3152)
fisx Mar 28, 2023
c23773d
New record syntax (#3192)
fisx Mar 28, 2023
0186894
Tweak docs.wire.com re. swagger (#3195)
fisx Mar 28, 2023
b75b5c2
Upload test results to AWS (#3169)
supersven Mar 29, 2023
d3f488f
Fix syntax for disabelling versions in docs and comments. (#3197)
fisx Mar 29, 2023
b6d2ad8
Allow swagger on disabled versions. (#3196)
fisx Mar 29, 2023
5894e75
Revert "Downgrade to our fork of http2 (#3141)" (#3170)
akshaymankar Mar 29, 2023
ead7bcf
Nginz: rate-limiting follow-up to #3138 (#3201)
jschaul Mar 29, 2023
d3d275c
chore: [charts] Update webapp version (#3205)
zebot Mar 29, 2023
41d5e7f
niv: bump nixpkgs
flokli Mar 29, 2023
679f6cc
nix/wire-server: fix typo in comment
flokli Mar 29, 2023
ff3b8c0
nix: undo nixpkg-cachix checkout
flokli Mar 29, 2023
839df6e
nix/manual-overrides: jailbreak aeson
flokli Mar 29, 2023
e978cda
add changelog
flokli Mar 29, 2023
9b2a6ea
Expose internal verification-code endpoint in QA envs (#3207)
smatting Mar 30, 2023
4b482bc
cabal.project: update ghc version there
flokli Mar 30, 2023
ebb937f
Merge pull request #3206 from wireapp/bump-nixpkgs
flokli Mar 30, 2023
baeeb9b
cabal.project: drop with-compiler statement
flokli Mar 30, 2023
c1f21cd
Merge pull request #3209 from wireapp/cabal-project-drop-ghc-version
flokli Mar 30, 2023
c47df87
rusty_jwt_tools_ffi: bump + fix build (#3194)
battermann Mar 30, 2023
2336f85
fix: updated OAuth test script for PKCE (#3212)
battermann Mar 31, 2023
52fe694
Un-version internal apis (#3200)
fisx Mar 31, 2023
8eea95e
Nit picks (#3211)
fisx Mar 31, 2023
3a8a19e
[SQSERVICES-1980] Guest Links Password Retry Limit (#3202)
battermann Apr 3, 2023
4c62b60
Fs 897 partial success for list users (#3117)
lepsa Apr 3, 2023
42676d5
remove version from internal path (#3215)
battermann Apr 4, 2023
6f1cbab
Coturn helm chart: Increase liveness timeout (#3218)
jschaul Apr 5, 2023
8bc4cea
coturn helm chart: use a memory-backed mount (#3220)
jschaul Apr 6, 2023
8a5843a
Stern Integration Tests (#3216)
battermann Apr 6, 2023
6fe8477
FS-1517 Partial success on fetch prekeys (#3108)
lepsa Apr 11, 2023
d66c74b
docs: render plantuml
flokli Apr 11, 2023
c8fd3c7
Merge pull request #3226 from wireapp/docs-plantuml
arthurwolf Apr 11, 2023
2401e50
Corrected a spelling mistake in docs-sso-okta
mnimac Apr 11, 2023
cd641e5
upgrade kubectl images (#3221)
jschaul Apr 12, 2023
1db36e1
[FS-51] Fix Swagger for failed_to_send in Proteus (#3223)
Apr 12, 2023
f0e93ec
avoid overlapping versions (#3228)
stefanwire Apr 12, 2023
611053e
Merge pull request #3227 from mnimac/update-of-sso-okta
Veki301 Apr 17, 2023
f455630
Documentation: references for refactoring galley for large convs (#3204)
smatting Apr 17, 2023
0b624b6
[SQSERVICES-1619] Tech Debt Remove Non Binding Teams Code (#3213)
battermann Apr 17, 2023
561ed46
chore: [charts] Update webapp version (#3225)
zebot Apr 17, 2023
867a5de
Add changelog for Release 2023-04-17
zebot Apr 17, 2023
8020137
Update CHANGELOG.md
elland Apr 17, 2023
42963f5
Update CHANGELOG.md
elland Apr 17, 2023
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
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ target
*.tar
*.asc
*.tmp
.vs
*~
.#*
*#*#
Expand Down
161 changes: 158 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,160 @@
# [2023-04-17] (Chart Release 4.35.0)

## Release notes


* Wire cloud operators only: Before deploying apply the changes from https://github.com/zinfra/cailleach/pull/1586 to production as well. (#3146)

* New 'ingress-nginx-controller' wrapper chart compatible with kubernetes versions [1.23 - 1.26]. The old one 'nginx-ingress-controller' (compatible only up to k8s 1.19) is now DEPRECATED.
We advise to upgrade your version of kubernetes in use to 1.23 or higher (we tested on kubernetes version 1.26), and to make use of the new ingress controller chart. Main features:
- up-to-date nginx version ('1.21.6')
- TLS 1.3 support (including allowing specifying which cipher suites to use)
- security fixes
- no more accidental logging of Wire access tokens under specific circumstances

The 'kind: Ingress' resources installed via 'nginx-ingress-services' chart remain compatible with both the old and the new ingress controller, and k8s versions [1.18 - 1.26]. In case you upgrade an existing kubernetes cluster (not recommended), you may need to first uninstall the old controller before installing the new controller chart.

In case you have custom overrides, you need to modify the directory name and top-level configuration key:

```diff
# If you have overrides for the controller chart (such as cipher suites), ensure to rename file and top-level key:
-# nginx-ingress-controller/values.yaml
+# ingress-nginx-controller/values.yaml
-nginx-ingress:
+ingress-nginx:
controller:
# ...
```

and double-check if all overrides you use are indeed provided under the same name by the upstream chart. See also the default overrides in [the default values.yaml](https://github.com/wireapp/wire-server/blob/develop/charts/ingress-nginx-controller/values.yaml).

In case you use helmfile change your ingress controller like this:

```diff
# helmfile.yaml
releases:
- - name: 'nginx-ingress-controller'
+ - name: 'ingress-nginx-controller'
namespace: 'wire'
- chart: 'wire/nginx-ingress-controller'
+ chart: 'wire/ingress-nginx-controller'
version: 'CHANGE_ME'
```

For more information read the documentation under https://docs.wire.com/how-to/install/ingress.html (or go to https://docs.wire.com and search for "ingress-nginx-controller") (#3140)

* If you are using OAuth (`optSettings.setOAuthEnabled: true` in brig config): before the deployment of wire-server the private and public keys for OAuth have to be provided for `brig` and `nginz` (see `docs/src/developer/reference/oauth.md` for more information) (#2989)

* Upgrade webapp version to 2023-04-11-production.0-v0.31.13-0-bb91157 (#2302)


## API changes


* Adding a new version of /list-users that allows for partial success. (#3117)

* Added a `failed_to_send` field to response when sending mls messages. (#3081)

* List failed-to-add remote users in response to `POST /conversations` (#3150)

* Updating the V4 version of /users/list-prekeys to return partial successes, listing users that could not be listed. (#3108)

* Non-binding team endpoints are removed from API version V4 (#3213)


## Features


* Add TLS and basic authentication to the inbucket (fake webmailer) ingress. (#3161)

* OAuth support for authorization of a curated list of 3rd party applications (see <https://docs.wire.com/developer/reference/oauth.html> for details) (#2989)

* Enforce a minimum length of 8 characters when setting a new password (#3137)

* Optional password for guest links (#3149)

* Authorization Code Flow with PKCE support (#3165)

* `conversations/join` endpoint rate limited per IP address (#3202)


## Bug fixes and other updates


* coturn helm chart: use a memory-backed folder to store sqllite DB to improve performance (#3220)

* Coturn helm chart: Increase the default timeout of liveness/readiness probe and make it configurable (#3218)

* When using the (now deprecated) ingress controller on older versions of kubernetes, ensure query parameters are not logged in the ingress logs (#3139)

* Fix version parsing in swagger-ui end-points (#3152)

* Fix a rate-limit exemption whereby authenticated endpoints did not get the unlimited_requests_endpoint, if set, applied. This is a concern for the webapp and calls to /assets, which can happen in larger numbers on initial loading. A previous change in [this PR](https://github.com/wireapp/wire-server/pull/2786) had no effect. This PR also increases default rate limits, to compensate for [new ingress controller chart](https://github.com/wireapp/wire-server/pull/3140)'s default topologyAwareRouting. (#3138, #3201)


## Documentation


* Add a client API version bump checklist (#3135)

* Fix the Swagger documentation for the failed_to_send field in the response of the Proteus message sending endpoint (#3223)

* Extend docs to support render plantuml directly, rewrote the saml flow diagram in plantuml (#3226)

* Allow swagger on disabled versions. (#3196)

* Documentation of setting up SSO integration with Okta was outdated with images from Okta Classic UI, the new version was updated using Oktas latest design. (#3175)


## Internal changes


* When sending a push message, stop deleting the push token and start recreating
ARN when ARN is reported as invalid on AWS, but push token still is present in
Cassandra. This allows on-demand migrations from one AWS account used for push
notifications to another one. (#3162)

* We don't explicitly set with-compiler inside the cabal.project file anymore, because the version of GHC is controlled by Nix, and our nixpkgs pin. (#3209)

* - integration tests on CI will use either the old or the new ingress controller; depending on which kubernetes version they run on.
- upgrade `kubectl` to default from the nixpkgs channel (currently `1.26`) by removing the manual version pin on 1.19
- upgrade `helmfile` to default from the nixpkgs channel by removing the manual version pin
- upgrade `helm` to default from the nixpkgs channel by removing the manual version pin
- add `kubelogin-oidc` so the kubectl in this environment can also talk to kubernetes clusters using OIDC (#3140)

* Make new record syntax a language default (#3192)

* nixpkgs has been bumped to a more recent checkout (8c619a1f3cedd16ea172146e30645e703d21bfc1 -> 402cc3633cc60dfc50378197305c984518b30773, 2023-02-12 -> 2023-03-28). (#3206)

* Introduce VersionNumber newtype (see `/libs/wire-api/src/Wire/API/Routes/Version.hs` for explanation) (#3075)

* Fix a memory leak in `gundeck` when Redis is offline (#3136)

* Rust library `rusty-jwt-tools` upgraded to latest version (#3142)

* Updated rusty-jwt-tools to version 0.3.4 (#3194)

* Integration tests for backoffice/stern (#3216)

* ormolu: don't redundantly add language extensions from dead package-defaults.yaml (#3193)

* Stop support for versions on internal APIs (#3200)

* helm charts: bump kubectl docker images from 1.19.7 to 1.24.12 (#3221)

* Add an option (`UPLOAD_LOGS`) to upload integration test logs to AWS S3. (#3169)


## Federation changes


* Do not cause denial of service when creating a conversation with users from an unreachable backend (#3150)

* Report federated Proteus message sending errors to clients (#3097)

* Fix bug with asset downloads and large federated responses (#3154)


# [2023-03-06] (Chart Release 4.34.0)

## Release notes
Expand Down Expand Up @@ -71,8 +228,6 @@

* Deflake integration test: metrics (#3053)

* Document in code a function that sends remote Proteus messages (#PR_NOT_FOUND)

* Lower the log level of federator inotify (#3056)

* use Wai's settings for graceful shutdown (#3069)
Expand Down Expand Up @@ -442,7 +597,7 @@

* Fix copyright date on docs.wire.com (#2792)

* Improve and cross-link documentation on SNS / push notifications. (#PR_NOT_FOUND)
* Improve and cross-link documentation on SNS / push notifications. (#2781)

* Add extension sphinx-reredirects and configuration to generate simple JavaScript based redirects to new locations of previously inconsistently named files/URLs. (#2811)

Expand Down
27 changes: 18 additions & 9 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ DOCKER_TAG ?= $(USER)
# default helm chart version must be 0.0.42 for local development (because 42 is the answer to the universe and everything)
HELM_SEMVER ?= 0.0.42
# The list of helm charts needed on internal kubernetes testing environments
CHARTS_INTEGRATION := wire-server databases-ephemeral redis-cluster fake-aws nginx-ingress-controller nginx-ingress-services fluent-bit kibana sftd restund coturn
CHARTS_INTEGRATION := wire-server databases-ephemeral redis-cluster fake-aws ingress-nginx-controller nginx-ingress-controller nginx-ingress-services fluent-bit kibana sftd restund coturn
# The list of helm charts to publish on S3
# FUTUREWORK: after we "inline local subcharts",
# (e.g. move charts/brig to charts/wire-server/brig)
Expand All @@ -17,7 +17,7 @@ CHARTS_RELEASE := wire-server redis-ephemeral redis-cluster databases-ephemeral
fake-aws fake-aws-s3 fake-aws-sqs aws-ingress fluent-bit kibana backoffice \
calling-test demo-smtp elasticsearch-curator elasticsearch-external \
elasticsearch-ephemeral minio-external cassandra-external \
nginx-ingress-controller nginx-ingress-services reaper sftd restund coturn \
nginx-ingress-controller ingress-nginx-controller nginx-ingress-services reaper sftd restund coturn \
inbucket k8ssandra-test-cluster postgresql
KIND_CLUSTER_NAME := wire-server
HELM_PARALLELISM ?= 1 # 1 for sequential tests; 6 for all-parallel tests
Expand Down Expand Up @@ -94,11 +94,16 @@ ci: c db-migrate
.PHONY: sanitize-pr
sanitize-pr:
./hack/bin/generate-local-nix-packages.sh
make formatf-all
make hlint-inplace-all
make formatf
make hlint-inplace-pr
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 )
make list-flaky-tests

list-flaky-tests:
@echo -e "\n\nif you want to run these, set RUN_FLAKY_TESTS=1\n\n"
@git grep -Hn '\bflakyTestCase \"'

.PHONY: cabal-fmt
cabal-fmt:
Expand Down Expand Up @@ -159,7 +164,7 @@ services: init install
format:
./tools/ormolu.sh

# formats all Haskell files even if local changes are not committed to git
# formats all Haskell files changed in this PR, even if local changes are not committed to git
.PHONY: formatf
formatf:
./tools/ormolu.sh -f pr
Expand Down Expand Up @@ -216,7 +221,7 @@ upload-hoogle-image:
## cassandra management

.PHONY: git-add-cassandra-schema
git-add-cassandra-schema: db-reset git-add-cassandra-schema-impl
git-add-cassandra-schema: db-migrate git-add-cassandra-schema-impl

.PHONY: git-add-cassandra-schema-impl
git-add-cassandra-schema-impl:
Expand Down Expand Up @@ -270,8 +275,8 @@ ifeq ($(INTEGRATION_FEDERATION_TESTS), 1)
$(EXE_SCHEMA) --keyspace $(package)_test2 --replication-factor 1 --reset
endif
endif
./dist/brig-index reset --elasticsearch-index directory_test --elasticsearch-server http://localhost:9200 > /dev/null
./dist/brig-index reset --elasticsearch-index directory_test2 --elasticsearch-server http://localhost:9200 > /dev/null
./dist/brig-index reset --elasticsearch-index-prefix directory --elasticsearch-server http://localhost:9200 > /dev/null
./dist/brig-index reset --elasticsearch-index-prefix directory2 --elasticsearch-server http://localhost:9200 > /dev/null

# Usage:
#
Expand Down Expand Up @@ -340,7 +345,11 @@ kube-integration-setup: charts-integration

.PHONY: kube-integration-test
kube-integration-test:
export NAMESPACE=$(NAMESPACE); export HELM_PARALLELISM=$(HELM_PARALLELISM); ./hack/bin/integration-test.sh
export NAMESPACE=$(NAMESPACE); \
export HELM_PARALLELISM=$(HELM_PARALLELISM); \
export VERSION=${DOCKER_TAG}; \
export UPLOAD_LOGS=${UPLOAD_LOGS}; \
./hack/bin/integration-test.sh

.PHONY: kube-integration-teardown
kube-integration-teardown:
Expand Down
2 changes: 0 additions & 2 deletions cabal.project
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
with-compiler: ghc-9.2.4

packages:
libs/api-bot/
, libs/api-client/
Expand Down
Loading