* Make server.prepare idempotent, don't cleanup containers on server.start
* Implement rolling upgrade E2E tests
* Apply Akis' suggestions from code review
* Apply Saturn's suggestions from review
* Communicate RollingRelease on GHA and test automation results channel
* Implement E2E test case versioning for rolling release tests
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Akis Maziotis <akis.maziotis@mattermost.com>
* [MM-59911] Force individual users to receive the `user_added` and `group_added` events instead of relying on the channel membership
* Fix redundant JSON serializing
* Remove makeGetPostIdsAroundPost and makeGetPostsAroundPost
* Remove formatPostInChannel and the one place it is unnecessarily used
* Remove makeGetPostsInChannel
* Update comment for getPostsInCurrentChannel
* Change addUserIdsForStatusAndProfileFetchingPoll to only ever receive arrays of user IDs
* Remove bufferCounter in favour of measuring array length
* Split addUserIdsForStatusAndProfileFetchingPoll into two separate actions
* Slightly simplify getPendingStatusesById
* Add DataLoaderInterval and use in actions/status_profile_polling
* Add tests for IntervalDataLoader
* Start adding DelayedDataLoader
* Updated DelayedDataLoader to split requested data into batches and made addIdsToLoad not return a promise by default
* Modify getMissingProfilesForIds to use a DataLoader and attach DataLoaders to the store
* Add tests for getMissingProfilesByIds loading statuses
* Revert change that defined getMissingProfilesByIds in a closure
* Change getMissingProfilesByUsernames to also use a DelayedDataLoader and add tests
* Pass extra argument into mocked version of Thunk
* Rename DataLoader.addIdsToLoad to DataLoader.queueForLoading
* Rename things and address feedback
* [MM-58492] Remove subsequent check for team permissions on open channels
* Removed extra check for open channel for webhooks as well
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Cleanup post embed for WebSocket payload
* Removing post embeds in create post API
* Fixed a nil check:
* Removed a now-irrelavent test
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Refactored channel saving logic
The code for saving channels has been refactored handling different database drivers. The query string is now dynamically generated based on the driver in use. Additionally, error handling has been improved to account for cases where no rows are affected by the insert operation. Because a conflict should be detected due to the complex flow under the call of the function.
* Refactor variable name and error handling in channel store
The variable 'q' has been renamed to 'insert' for better readability. Error handling after executing the insert statement has been improved by checking for errors immediately after execution, rather than waiting until rows affected are checked. This provides a more immediate response to potential issues during the insert operation.
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Add isPostFlagged selector
* Remove unused code for actions_menu preferences
* Improve types of Preference and getPreference
* MM-58111 Change makeGetCategory to take category name once
* Use shouldShowJoinLeaveMessages everywhere
* Change makeGetCategory to better memoize its result
* Fix test that needs EnableJoinLeaveMessageByDefault to be set
* Remove more references to action_menu preferences
Overall, there is no bug here. But opportunities for
improvement.
- Used the maps.Clone function.
- Handled the error while writing to the network.
https://mattermost.atlassian.net/browse/MM-59283
```release-note
NONE
```
* Remove profile__icon onHover style in status__dropdown.scss
* Remove profile__icon class in status__dropdown.tsx for AccountOutlineIcon
* Update status_dropdown snapshot test
* Remove trailing space in status_dropdown snapshot test for AccountOutlineIcon
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* MM-59875: default apps enabled false
We stopped prepackaging the apps framework and stopped supporting it in
Mattermost Cloud a year ago. As part of v10, we're formally deprecating
it, while making allowances for customers who still need to transition
by not making this a breaking change immediately. To help prevent new
adoption, let's ensure the feature flag is disabled by default.
Fixes: https://mattermost.atlassian.net/browse/MM-59875
* fix tests