* Marks the RemoteTeamId field of RemoteClusters as deprecated
The `RemoteTeamId` was used both in the `RemoteCluster` model and as
part of remote invites. It existed so two different remotes could have
multiple secure connections between them, and have each of those
connections scoped to a team, sharing through each only the channels
that belong to their corresponding team.
The way that we're thinking on the feature currently only contemplates
one secure connection between two servers, and shares all the
channels through that secure connection, so this field is no longer
needed.
As we don't have a system in place for the user to choose in which
team a channel should be created from an invite, this change adds a
mechanism that checks the invite for a teamId, and if it's not
present, fetches a team from the database to create the channel
into. This makes the change backwards compatible for secure
connections that already have an established behavior and allows us to
move forward with the implementation of an alternative.
* Mark invite teamId field as deprecated
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Currently, if you're building under aarch64 and have cppflags set in your environment as such:
`CPPFLAGS="-O2 -Wall -fomit-frame-pointer -march=armv8-a -mtune=neoverse-n1 -Wp,-D_FORTIFY_SOURCE=3"`
This will result in `-DPNG_ARM_NEON_OPT=0` being improperly applied:
`CPPFLAGS="-O2 -Wall -fomit-frame-pointer -march=armv8-a -mtune=neoverse-n1 -Wp,-D_FORTIFY_SOURCE=3 " -DPNG_ARM_NEON_OPT=0""`
As a result, when npm install is ran, it will fail. To fix this, we remove the quotes around the appended cppflags
Signed-off-by: RJ Sampson <rj.sampson@chainguard.dev>
* mm-57988: Allowing for channel admins to move thread
* Fix the MoveThread team admin unit test that was introduced
* Renaming the hasPermittedRole function to hasPermittedWranglerRole
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Remove t from utils/utils
* Remove t from utils/url
* Remove t from utils/constants
* Remove t from components/widgets
* Remove t from components/copy_button
* Remove t from components/searchable_channel_list
* Fix mocking of React in some tests
* Rewrite static assets only if needed
Refactor UpdateAssetsSubpathInDir so that the actual rewriting of files
happen in two different functions: one for root.html, another for
manifest.json and *.css files.
I would have wanted to simply do a
if pathToReplace == newPath { return nil }
when those two variables are defined, but the logic for root.html is not
that simple, and that may miss some edge cases, so I opted out for
simply moving the actual rewriting to individual functions, which check
for their corresponding conditions to perform the update:
1. for root.html, check that the edited file is indeed different than
the original one
2. for manifest.json and *.css files, rewrite them only if
pathToReplace != newPath, which in this case is clear that that's the
only modification we do
* Fix expected error msg in test
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* check user visibility when accepting channel invites for DMs
* stronger visibility checking for DM users
* check for correct remoteid for remote user in DM invite
* fix unit test
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* - ensure that posts and reactions can only be added via sync when coming from a remote that the target channel is shared with.
- ensure that posts and reactions are only modified/deleted by the remote that owns them.
* check that reaction belongs to post that belongs to channel that is shared with remote; check that posts belong to channel shared with remote
* check for correct error type in unit test
* tweak unit test
* check for path when number of object is one
* add test and updated condition to check for path
* updated test and removed string trim
* using exported method
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
A new method, GetPluginID, has been added to the Manifest model. This function returns the ID of a plugin. Corresponding unit tests have also been implemented to ensure that this function works as expected. The test cases cover scenarios where IDs are the same and different.
* [MM-58355] Send invalidate cache message across the cluster so that websocket connections on other instances are invalidated correctly
* Add suggestion to clear the session cache on the local node as well
* Force read from master DB when gettting channel members for websocket to avoid any DB sync issues
* PR feedback
* Missed generated files
* prevent webapp from erasing new mobile notify props
* allow blank, will be used on mobile to default to desktop setting
* update snapshots
* Revert "update snapshots"
This reverts commit 0bcd515de87e2e3fdd8a87e73f52c845577eddab.
* Revert "allow blank, will be used on mobile to default to desktop setting"
This reverts commit 56e16e887ff7bfbf3751778cc31cdd9e0e0f8086.
* Revert "prevent webapp from erasing new mobile notify props"
This reverts commit e983d7b8f4dbd92b12eeb312cdf64ec45cd2d6ec.
* simplify how we handle mobile notification props
* linting
---------
Co-authored-by: Mattermost Build <build@mattermost.com>