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

Conversation

zebot
Copy link
Contributor

@zebot zebot commented Jul 8, 2024

[2024-07-08] (Chart Release 5.4.0)

Release notes

API changes

Features

Bug fixes and other updates

Documentation

Internal changes

elland and others added 30 commits May 21, 2024 15:50
Master->Develop after release
Co-authored-by: Magnus Viernickel <[email protected]>
Co-authored-by: Leif Battermann <[email protected]>
Co-authored-by: Stefan Berthold <[email protected]>
* Refactor.

* Refactor.

* Refactor.

* Make test case fail where it should pass.

* Cleanup failing test cases.

- add old run traces (with approved device) back

* FUTUREWORK.

* Changelog.

* Make failing test case pass.

Pending LH devices means user *has* given consent, not the opposite!

* Fix terminology.

* Make default settings explicit.

* Renames; fix more LH logic.

transitioning from disabled to pending doesn't block any connections,
but from pending to active does.

* Rename.

* Fixup HEAD~2

* Remove dead code.

* testLHMessageExchange: Assert that message exchange works during all stages of multiple people approving the device

* Fix comment wording

* Delete redundant constraints

* testLHMessageExchange: Ensure correct client is used to send messages

* testLHNoConsentBlockOne2OneConv: Break the test in 2 for simplicity

Also fix assertions about what happens when LH devices are pending

* brig: Do not cause LH conflict when a user has pending device while creating connections

* testLHPreventAddingNonConsentingUsers: Users are only kicked after approving the LH device

* hlint

* integration/connectTwoUsers: Don't worry too much if users are already connected

* galley: Allow non-lh-consenting users to be added to a conv when lh is pending on a member

---------

Co-authored-by: Akshay Mankar <[email protected]>
* create variables for configs in on-prem env

* add changelog

* fix linting issues
* dockerephemeral: Run redis-cluster with TLS

* Update hedis pin to support TLS with all nodes of a redis-cluster

* gundeck.integration.yaml: Use IP address of the redis cluster node

The certificates are valid only for IP addresses

* Use fork of crypton-x509-validation to support IP Address validation

* charts/{gundeck,integration}: Support TLS for redis

hack: Enable TLS on redis and configure gundeck to not verify CA

hack: Configure custom CA for redis in gundeck

---------

Co-authored-by: Akshay Mankar <[email protected]>
Co-authored-by: Paolo Capriotti <[email protected]>
* [docs] clarify the behaviour of search by exact handle

* Update docs/src/understand/searchability.md

Co-authored-by: Igor Ranieri Elland <[email protected]>

---------

Co-authored-by: Igor Ranieri Elland <[email protected]>
* [feat] add more metadata in nix to own code
Co-authored-by: Igor Ranieri <[email protected]>
Co-authored-by: Akshay Mankar <[email protected]>
Co-authored-by: Leif Battermann <[email protected]>
Co-authored-by: Stefan Berthold <[email protected]>
…d brig) (#4062)

* dockerephemeral: add nginz rule to give ES an http interface

* Whitespace and typos

* Fix elasticsearch proxy

* Add CHANGELOG entry

* Update deploy/dockerephemeral/federation-v0/brig.yaml

---------

Co-authored-by: Paolo Capriotti <[email protected]>
* hedis: Upgrade to fix connection timeout issues with cluster

Upstream PR: informatikr/hedis#227

* changelog
* UpdateUser operation; work on Error sub-effects.

* Fix build

* Rename onUserEvent → generateUserEvent

* Use state effect for local users in mini backends

* Implement user update in mini backends

* Add user update property test

* [feat] rethrow errors as wai errors

* [feat] test behaviour if user is managed by scim

* [feat] set galley api access

* [feat] test all of the update record members

* [feat] interpret user events

* Use MiniBackend state effect in mini-backend stack

* Add fake event interpreter

* Add Arbitrary instance for AllowSCIMUpdates

* Replace UserUpdate with a new type

* Use update functionality in brig

* Add locale update to user subsystem

* Move allowScim argument to update structure

* Add handle update functionality to UserSubsystem

Some of the functions in brig now have a UserStore constraint. This is
only temporary until all the user-related functionality has been
migrated to subsystems.

* Make sure NotPending users have an identity

* Check claimed handles

* Implement handle lookup in mini backend

* Add DeleteUser action to UserStore

* Add some TODOs

* Lint and format

* Added missing where clause.

* Fixed tombstone.

* Renamed cql query function for clarity.

* usersubsystems: added handle parsing text.

* Formatting.

* UserSubsystems: Added prop tests for handles.

* lint

* UserSubsystem: added scim handle update tests.

* added changelog

* Added update supported protocols.

* Fix 2 test cases.

* Fixed property test.

* Deleted repeated lines.

* Regen nix.

* Removed ambiguity.

* Updated call sites.

* Remove bogus (and unnecessary) -Wwarn pragma.

* explicit imports, exports.

* Removed outdated FUTUREWORK.

* Typo.

* Make leaking interpreter implementation into brig more explicit.

* Drive-by fix.

* Send handle update events.

* Test for update supportedProtocols.

* Update supportedProtocols [wip]

* Fixed test for supported protocols.

* WIP: fix permission checks

* Move BadHandle type and qc generator to types-common.

* Fix handle update for blocklisted handles.

* Make supported-protocols update test a property.

* Fix more failing test cases (same pattern as before).

* Simplify checkHandle test

* UserSubsystem: Implement GetSelfProfile

* UserSubsystem.updateUserProfile: Add assertion for updating locale

* Remove TODO deemed requiring discussion

* UserSubsystem: Implement GetSelfProfile

Needed for testing updates to locale

* Rename names.

* Re-align userstore and user subsystem interfaces around handle.

* Rm some boolean blindness.

* Rename names (really bad ones this time...).

* Fix UpdateOriginType values in brig api.

* rm TODO.

* Add TODOs.

* Fix TODO syntax :)

* Deprioritize TODO.

* Haddocs.

* Improve error message for invalid handles.

* Rename names.

* Note on db performance.

* Remove unproducable error.

* Haddocks.

* Remove misguided TODOs.

claimHandle is not exported, it's just the cassandra-specific part of
updateHandle; errors are handled in user subsystem.

* Fix: update locale by client not allowed if user is managed by scim.

* Fix names.

* remove more low-prio TODOs.

* Resolve TODO.

* Add test for locale update under scim management.

* Fix test.

* Fix tests, add happy path for profile update.

* Fixup

* Fix locale update.

* Rm dead code.

* Typo

* Fix compiler errors.

* Rm dead code.

* Test coverage.

* Fix missing fields in update event.

* Dry-by fix: make responseJsonUnsafe more helpful when crashing.

* hlint.

* hlint.  (?!)

* Polish haddocks.

* Changelog.

* Make Handle data type abstract.

* Revert "Make Handle data type abstract."

This reverts commit 459e966.

* Move local function in where block.

* Remove FUTUREWORK

(misplaced by ormolu, also self-evident.)

* Rename local function.

* Fix test case.

* remove obsolete changelog entry (this has been fixed in WPB-9488).

* Rm dead code from rest api.

* Revert "Rm dead code from rest api."

This reverts commit 8c66230.

(maybe this is used elsewhere?  also the removal wasn't complete.)

* Update services/brig/test/integration/API/UserPendingActivation.hs

* Update services/brig/src/Brig/User/Auth.hs

* More guards in unit tests against invalid arbitrary values.

* Fixup

* Fix test case.

* Improve error message for `*ManagedByScim`.

* Revert "Fix test case."

This reverts commit 4059bf9.

* Fix application logic around blocking updates because scim or e2eid.

* hlint.

* failed attempt to port a galley test to /integration

* Revert "failed attempt to port a galley test to /integration"

This reverts commit c40670e.

* I think I found the problem with this test!  (fix coming up)

* Small fix for legacy integration test.

---------

Co-authored-by: Magnus Viernickel <[email protected]>
Co-authored-by: Igor Ranieri <[email protected]>
Co-authored-by: Matthias Fischmann <[email protected]>
Co-authored-by: Akshay Mankar <[email protected]>
* add allowlisted_fqdn_origins override
* this is required to get CORS to work with additional developer domains
* included a test to prevent usage of allowlisted_fqdn_origins in non-staging environments

related to WPB-9495
…4089)

Without this openssl doesn't forward to whole chain causing mTLS to not succeed.
---------

Co-authored-by: Magnus Viernickel <[email protected]>
Co-authored-by: Stefan Berthold <[email protected]>
Co-authored-by: Paolo Capriotti <[email protected]>
* change externallyCreated to useFakeS3 and change its depth

* fix chart values and doc

---------

Co-authored-by: Amit Sagtani <[email protected]>
…e metrics-core wrapper (#4085)

* catchErrors middleware: Always record metrics

Instead of relying on `Metrics`, use top-level metric registered using
`unsafeRegister`.

* Use `unsafeRegister` for metrics instead of bunch of IORef HashMaps

* federator: Enable GC metrics
battermann and others added 10 commits July 2, 2024 16:56
* Fix repeated with-rtsopts option

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.
* [chore] make federatore run with -N

---------

Co-authored-by: Magnus Viernickel <[email protected]>
…ions (#4045)

* Deny registering a new user with a phone number

* Update user registration documentation

* Update the user activation documentation

* Disable user activation via a phone code

* Ignore the voice_call field in POST /activation/send

* stern-test: fail to get users by phone with error

* stern: prevent updating phone numbers, clean up some brig.

* brig: WIP clean up phone-related tests.

* brig: updated failing test.

* Migrate a test: POST /activate/send: invalid phone

* brig: change error label and msg for invalid phone errors

* Update SendActivationCode golden tests

* Make `PUT i/users/:uid/sso-id` not fail

* Fix `POST /activate/send - 403 prefix excluded`

* Fix more tests

* Remove more phone-related code

* Fix Stern calls to internal Brig API

* Drop phones from Brig.Code

* Remove brig phone modules

* Restore public API

* Revert brig phone middleware hack

* Remove all references to Twilio and Nexmo

* Fix test send-phone-code

* Fix test "post /register - 201 existing activation"

* Fix test for registering w/o email and password

* Revert "Ignore the voice_call field in POST /activation/send"

This reverts commit c5992c5.

* Revert changes to golden tests for NewUser type

This undoes the changes to the tests that expected a failure while
parsing. Instead, we rely on failing at the handler execution time.

* Remove phone and full identity constructor

* Fix Cassandra queries in Brig (no phone selection)

* Fix spar tests

* Remove phone prefix code

* Remove PhoneBudgetTimeout

* Remove BlacklistedPhone error

* Add CHANGELOG entries

* Fix last TODOs

* Drop "phone" from an identity error message

* Fix user identity and activation response unit and golden tests

* Remove unused golden test files

* Fix NewUser golden tests

* Stern: remove tests for removed endpoints

* brig-types golden test: use email instead of phone

* Drop the excluded_phones DB table

* Revert "Drop the excluded_phones DB table"

This reverts commit 6174f1b.

* Make new Ormolu happy

* Align with fisx'es changes

Remove some unused phone types

* Brig: fix dependency on wire-subsystems

* Hi CI

---------

Co-authored-by: Igor Ranieri <[email protected]>
Co-authored-by: Paolo Capriotti <[email protected]>
…#4119)

* replace cabal.project.local template and update cabal.project
* use program-options instead of package *
@echoes-hq echoes-hq bot added echoes: unplanned Any work item that isn’t part of the product or technical roadmap. echoes: technical-roadmap/throughput Changes intended at preserving our ability to evolve the software safely and effectively echoes: technical-roadmap/security Security related changes or defects echoes: product-roadmap Work aligned with the customer-announced roadmap, targeting a specific release date. echoes: technical-roadmap/technical-debt Changes intended at mitigating risks echoes: throughput/ci-maintenance labels Jul 8, 2024
@zebot zebot added the ok-to-test Approved for running tests in CI, overrides not-ok-to-test if both labels exist label Jul 8, 2024
@lwille
Copy link
Contributor

lwille commented Jul 8, 2024

⚠️ setting gundeck.config.redis.tlsCa leads to error:

 Error: template: wire-server/charts/gundeck/templates/redis-ca-secret.yaml:14:20: executing "wire-server/charts/gundeck/templates/redis-ca-secret.yaml" at <.Values.redis.tlsCa>: nil pointer evaluating interface {}.tlsCa

this is because charts/gundeck/templates/redis-ca-secret.yaml references .Values.redis.tlsCa instead of .Values.config.redis.tlsCa. Fix is underway.

charts/gundeck/templates/redis-ca-secret.yaml Outdated Show resolved Hide resolved
charts/gundeck/templates/redis-ca-secret.yaml Outdated Show resolved Hide resolved
@elland elland merged commit 7bd6faf into master Jul 8, 2024
3 checks passed
@elland elland deleted the release_2024-07-08_09_28 branch July 8, 2024 14:31
@b1pb1p b1pb1p removed echoes: unplanned Any work item that isn’t part of the product or technical roadmap. echoes: technical-roadmap/security Security related changes or defects echoes: technical-roadmap/technical-debt Changes intended at mitigating risks echoes/initiative: wpb-4387-remove-phone-number... labels Jul 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
echoes: product-roadmap Work aligned with the customer-announced roadmap, targeting a specific release date. echoes: technical-roadmap/throughput Changes intended at preserving our ability to evolve the software safely and effectively 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.