Conversation
* Remove Public import alias in galley routes * Test non-deprecated conversation rename endpoint * Servantify conversation rename * More conversation rename tests * Servantify deprecated conversation rename endpoint
…1739) * tasty-cannon: Add support for connecting as a specific client * Ensure clients only receive messages meant for them in remote convs This commit removes duplicated logic to push messages to clients by making logic in Galley.API.Message.sendLocalMessages accommodating to pushing messages for remote conversations, but still enforcing the recipients to be local. Using this function from federation endpoint of galley allows us to not duplicate the logic for how a message becomes an event and gets pushed to each client. The commit also moves this logic from Galley.API.Update to Galley.API.Federation as most of the logic to translate from inputs of the federation endpoint to inputs for Galley.API.Message.sendLocalMessages is very federation specific and doesn't need to live in the public API module. Co-authored-by: Paolo Capriotti <paolo@capriotti.io>
…eld (#1726) * Servantify `POST /connections` * Remove the `message` field in connection requests, as it has been long deprecated. Some clients may still send it (as it was a mandatory field), but it was never visible at UI level in the past years, so we can remove it. * fix an old TODO to make the 256 length check using the Range type, rather than doing it implicitly in the json parser. The main changeset to types is in libs/wire-api/src/Wire/API/Connection.hs Some golden tests have been removed as they are no longer relevant.
* Servantify conversation GET self endpoint * Servantify updateSelfMember * Add qualified updateSelfMember endpoint
* Initial certificate update monitor This uses inotify to set up watches listening for events about client certificates and remote CA. We set up watches on both the files specified by the configuration and their parent directories, in order to be able to react to both direct modifications and to the files being deleted and recreated, or symlink targets being swapped. * Also handle monitor events in a Sem monad * Make tls settings an MVar This will allow the monitor to update it when certificates change. * Reload client certificates when they change * Handle watched directories correctly * Log errors when updating certificates * Use error handling fix in hs-certificate wireapp/hs-certificate@e3ea2e1 * Split Monitor module into Internal and main * Add missing copyright header * Basic monitor test setup * Replace TLSSettings MVar with IORef * Add basic monitor unit tests * Remove unused needReload case * Replace file watches when a new file is created * Delete replaced watches when stopping monitor * Collect monitor state in a data structure * Add property tests for mergePaths * Also watch parent directories up to the fs root * Recreate directory watches recursively * Increase test timeout to 1 second * Ensure event handlers do not run concurrently * Remove monitor integration test stub * Remove unneded explicit quantification * Ensure watched paths are absolute * Add unit tests for directory traversal * Fix watch logic with symlinks When a watched file or any of its ancestor directories is a symlink, the symlink target needs to be recursively watched as well. * Fix resolution of relative symlinks * Always ignore errors when removing watches * Add link to hs-certificate PR * Do not expose IORef to Remote Instead, replace `Reader` effect with `Input`, and interpret it by reading the IORef every time.
* Document federation errors Co-authored-by: Marko Dimjašević <marko.dimjasevic@wire.com> * Remove `InvalidCertificate` federation error It is currently not so easy to distinguish this particular error from a generic TLS error (see #1662 for more context). Since `InvalidCertificate` is never thrown, this PR simply removes it. Note that this is a breaking change in the federation protobuf. * Remove labels from protobuf errors * Improve federation error descriptions Also suggest client behaviour in some cases. Co-authored-by: Marko Dimjašević <marko.dimjasevic@wire.com>
Co-authored-by: Akshay Mankar <akshay@wire.com>
* hscim: add TODO; tweak .gitignore * Improve test coverage. * Improve error response, simplify app logic. SAML auto-provisioning only works if scim is disabled. This commit makes the guard more straight-forward and provides a less confusing error message. * Whitespace. * Generate printable strings in arbitrary instance. * Bump saml2-web-sso dep. This introduces optionally case-insensitive emails. This patch keeps using case information, but it's now appearent where it could be ignored in the future, and how.
* Remove otr_muted from Member and related types This field has been deprecated for some time, and the clients do not need it. Note that the corresponding conversation field in the database is still present, and removing that is left to future work. * Restore muted status assertions Before these were assertions on the `otr_muted` field, but now that field has been removed, so we should assert on `otr_muted_status` instead.
* Removed mupConvRoleName and self role updates Updates to a member's role now always happen via `OtherMemberUpdate`, while `MemberUpdate` is used to change conversation self status (i.e. hidden/muted/archived). * Remove qualified GET conversation self This was a newly added qualified endpoint stub, which raised an error when used on a remote conversation. We are now deprecating fetching conversation self membership information altogether (since clients do not use it, and they can always get that information from the conversation itself), so this endpoint can simply be removed.
* Allow blacklisting rules to changing phone numbers * Hi CI Co-authored-by: jschaul <jschaul@users.noreply.github.com>
…o serve more than one team. (#1755) Co-authored-by: Julia Longtin <julia.longtin@wire.com> Co-authored-by: jschaul <jschaul@users.noreply.github.com>
zebot
approved these changes
Sep 13, 2021
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
API changes
messagefield inPOST /connections(Servantify POST /connections endpoint; remove deprecated 'message' field #1726)PUT /conversations/:domain/:cnv/name(Servantify conversation rename #1737)PUT /conversations/:cnv/name(Servantify conversation rename #1737)GET & PUT /conversations/:domain/:cnv/self(Servantify conversation self member endpoints #1740)GET & PUT /conversations/:cnv/self(Servantify conversation self member endpoints #1740)GET /conversations/:domain/:cnv/self(Remove self role updates #1752)otr_mutedfield inMemberandMemberUpdatehas been removed. (Remove otr_muted from Member and related types #1751)Features
Documentation
RangeandDomain#1748)RangeandDomain#1748)Internal changes
POST /connectionsendpoint to Servant (Servantify POST /connections endpoint; remove deprecated 'message' field #1726)Federation changes