Skip to content

Conversation

zebot
Copy link
Contributor

@zebot zebot commented May 18, 2022

[2022-05-18] (Chart Release 4.12.0)

Release notes

API changes

  • Start version 2 of the public API. Main changes:

    • Asset endpoints have lost their v3 and v4 suffixes. So for example
      /assets/v3 has been replaced by /assets.
    • GET /conversations/:conv/assets/:id and GET /conversations/:conv/otr/assets/:id have been removed.
    • GET /assets/:key/v3 has been removed. Use the qualified endpoint GET /assets/:domain/:key instead.
    • DELETE /assets/:key/v3 has been removed. Use the qualified endpoint
      DELETE /assets/:domain/:key instead.
    • GET /connections has been removed. Use POST /list-connections instead.
    • POST /connections has been removed. Use POST /connections/:domain/:user instead.
    • PUT /connections/:domain/:user has been removed: use POST instead.
    • GET /conversations has been removed. Use POST /conversations/list-ids
      followed by POST /conversations/list instead.
    • POST /conversations/list/v2 has been replaced by POST /conversations/list.
    • POST /conversations/:domain/:conv/members/v2 has lost its v2 suffix, so
      it is now POST /conversations/:domain/:conv/members.
    • GET /users, GET /users/by-handle and GET /users/handles have been
      removed. Use POST /search/contacts instead.
    • GET /users/:id has been removed. Use the qualified endpoint GET /users/:domain/:id instead.
    • GET /users/:id/clients has been removed. Use the qualified endpoint GET /users/:domain/:id/clients instead.
    • GET /users/:id/clients/:client has been removed. Use the qualified
      endpoint GET /users/:domain/:id/clients/:client instead.

    Swagger documentation for the previous version of the API can be accessed at
    /v1/api/swagger-ui. (API versioning #2297)

  • A new field development has been added to the object returned by GET /api-version. Versions listed there are considered in flux, meaning that the
    corresponding API contracts can change arbitrarily over time. Clients are free
    to use development versions, as long as they are also listed in supported,
    and failures due to incompatibilities are acceptable (e.g. in testing
    environments). Backends are the authoritative source on whether a development
    version can be used at all. If a development version should not be used, the
    backend will not list it among the supported versions at all. (API versioning #2297)

Features

Bug fixes and other updates

Documentation

Internal changes

Federation changes

comawill and others added 30 commits April 22, 2022 11:45
* Prevent PROXY protocol clients from accessing metrics endpoint.

* Update changelog for nginz configuration change.
Merge master back to develop for release 2022-04-25
* Apply versionMiddleware last

This makes sure that every other middleware sees the rewritten
(unversioned) path. In particular, the prometheus middleware will now
only see paths it knows about, which prevents it from reporting "N/A" as
the path.
This PR:

* allows to configure gundeck to write to an additional redis (cluster or master mode); optionally. Reads will happen from the main redis.
* adds a test for the redis-migration scenario: configure to write to two redises (old and new); insert some data; configure only the new redis as default redis, read, ensure data is present.
* adds redis-cluster in docker-compose for local integration tests (a little more CPU/RAM needed)
* adds redis-cluster wrapper helm chart for CI/kubernetes-based integration tests (and more generally also for on-premise deployments). redis-cluster requires dynamic persistent volume provisioning present on the cluster; which was introduced in our kube-ci cluster with zinfra/cailleach#1037

Drive-by refactoring change (not strictly needed on this PR):

* [Move cannon's internal API type to wire-api](7ace63f)

Related to zinfra/cailleach#1021

This is needed to perform a smooth no-downtime migration from one redis to another as detailed in https://github.com/zinfra/cailleach/blob/master/targets/wire/notes-redis-migration.md#how-to-migrate-traffic-from-redis-in-ec2classic-to-redis-in-eks

Co-authored-by: Akshay Mankar <[email protected]>
* Move old /docs to /docs/legacy, leaving symlinks behind.

* Link every file individually, making sure URLs into github keep working.

* Fixup

* Special case: cassandra-dump.cql

* Special case: wire_scim_token.py

* Changelog
Fix markdown links in RST changelog
…#2306)

* Generalise the Spar.Sem.Logger effect

- The logging level in the log action is not SAML-specific anymore

* Move the Logger effect into polysemy-wire-zoo

* Use the new Logger effect in Galley and Federator
It's needed by hack/bin/serve-charts.sh .
If the FEATURE_ENABLE_PAYMENT feature flag is set by envVars, do not
render it again. Otherwise, we might end up in confusing cases like: The
flag was set to true, but it's additionally rendered with a default to
false.
Actually, this redis runs in "master" mode on that port (from docker-compose). There are other redises launched on other parts that run in cluster mode.

Redis part of cluster:
https://github.com/wireapp/wire-server/blob/develop/deploy/dockerephemeral/docker-compose.yaml#L98
(ports 6373 - 6378)

Redis standalone in master mode on port 6379
https://github.com/wireapp/wire-server/blob/develop/deploy/dockerephemeral/docker-compose.yaml#L77
Add back x86_64-darwin builds, so we can ensure the dev-env builds on
MacOS, and devs on Mac have a cache to substitute from, instead of
waiting for builds to finish locally.
pcapriotti and others added 22 commits May 11, 2022 17:44
The assertion was (very rarely) picking up a connection event between
alice and bob, and failing. Since bob is irrelevant to the test, this
commit removes bob and the related assertion altogether.
* Log IO exceptions in brig

* Log IO exceptions in Galley
* Use a new internal endpoint to insert a key package ref for a remote client

Co-authored-by: Stefan Matting <[email protected]>
* Brig: Start turn discovery when the App start

Instead of starting it when the `Env` is created. This aligns the service
discovery of TURN with that of SFT. In next commits, SRV based discovery for
TURN will be implemented.

* Brig: Refactor SFT discovery to extract generic SRV discovery code

* Brig: Refactor SFT Discovery tests

* Simplify sftDiscoveryLoop tests and make them srvDiscoveryLoop tests

Introduce a Delay Effect to deal with threadDelay and mock it to get rid of
wait loop in tests

* CHANGELOG
Added convert-to-cabal and stern docs to /docs.
Instead of generating `String` values, which might be invalid for the
file system encoding in some locales, generate bytestrings directy and
encode them as paths.
We were previously using IN queries when fetching multiple
conversations. This can cause performance issues, as cassandra needs to
contact all nodes.
…d configurability (#2401)

* Allow more fine-grained control over what services are installed. (e.g. allow webapp/fakeS3 to not be installed, and federator dns name to not be set if not using federator)
* Upgrade Certificate/Issuer resources: If using [cert-manager](https://github.com/cert-manager/cert-manager), you need to have least version 1.0.0 installed (0.15.X will no longer work).

Related to zinfra/cailleach#1079

Co-authored-by: Akshay Mankar <[email protected]>
@zebot zebot temporarily deployed to cachix May 18, 2022 13:33 Inactive
@sysvinit sysvinit temporarily deployed to cachix May 18, 2022 13:41 Inactive
@sysvinit sysvinit requested review from battermann and fisx May 18, 2022 14:34
@sysvinit sysvinit merged commit b0f0bbc into master May 19, 2022
@sysvinit sysvinit deleted the release_2022-05-18_13_33 branch May 19, 2022 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.