Commit Graph

17159 Commits

Author SHA1 Message Date
Elias Nahum
66c2837d2c Fix add command in backstage (#24043) 2023-07-18 09:03:52 -04:00
Miguel de la Cruz
150c6e7aef Remove boards product references (#23855)
Automatic Merge
2023-07-18 15:17:29 +03:00
mattermod
62495f16bd Update latest version to 8.0.0 2023-07-18 08:19:15 +00:00
Devin Binnie
823ef27d6c Revert "[MM-37984] Allow Desktop App to authenticate via external providers outside of the app on supported servers (#23795)" (#24039)
This reverts commit abdf4e58c3.
2023-07-17 10:54:53 -04:00
Ibrahim Serdar Acikgoz
38fd8cd6aa tools/mmgotool: move into monorepo (#24010) 2023-07-17 16:15:58 +03:00
Veronica Dip
8ee38ee644 MM-53564 : Multi-line channel header preview is narrow on web (#24029) 2023-07-17 15:09:16 +05:30
Agniva De Sarker
b20ef95b91 MM-42810: Introduce a channel hook for a websocket event (#23812)
Sometimes a broad distinction of just a channelID or a userID
is not enough to efficiently send a websocket event to users.

In several cases, depending on the user and channel, we might
need to modify the message. Therefore, we introduce the
concept of a channel hook that will get executed if the scope
is set to a channel. This hook can be populated at the app layer
to perform any application specific logic to the event.

Care must be taken to avoid race conditions as the passed event
is not deep copied. It is left to the user to treat it carefully.

For this issue, the main problem was that since we don't know
which users have permissions to which channels, we had to go through
_all_ members of a channel to figure that out. This was redundant
since a large portion of those users might not even be connected
at that time.

We solve this with the channel hook where we push this check
to be performed later while actually sending the event. This
reduces the computation to be done only for _connected_ users
rather than _all_ users of a channel.

The next iteration of this should be to use websocket subscriptions
to monitor exactly which users are on that channel to even
trim down that list. That is a larger initiative to be taken later.

Tested locally with a channel of 50 users. Here are rough results:
```
With PR:
patchPost 97ms
createPost 90ms

Master:
patchPost 306ms
createPost - 298ms
```

https://mattermost.atlassian.net/browse/MM-42810

```release-note
Improve  performance while sending messages
with permalinks to channels with large number of users.
```
2023-07-15 08:14:16 +05:30
Mattermod
40ff77c9c6 Update minor version to 8.1.0 (#24016)
Automatic Merge
2023-07-13 20:17:29 +03:00
Scott Bishel
993ce5a5cc prepackage boards v7.11.1 (#23991)
Co-authored-by: Mattermost Build <build@mattermost.com>
server/public/v0.0.6
2023-07-13 15:50:26 +02:00
Daniel Espino García
cb47d4fb7f Fix New Messages toast showing when it should not (#23995) 2023-07-13 13:28:44 +02:00
mvitale1989
b00bb20d89 Debug smoketests (#23982)
* Add MM_SERVICEENVIRONMENT to config_generator
2023-07-13 13:28:11 +02:00
Sinan Sonmez (Chaush)
e1aa7b21ac MM-52944: Fix profile popover view issue on RHS when searching channel member (#23930) 2023-07-13 16:24:54 +05:30
mattermod
1f235ba064 Update latest version to 7.10.4 2023-07-13 10:19:19 +00:00
Pablo Andrés Vélez Vidal
632f629663 MM-51849 - some non latin words were not getting highlighted (#23987)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-13 10:04:17 +02:00
Doug Lauder
a8244e9d10 MM-53147 Support for embedding Mattermost in an MSTeams iframe (#23776)
* add teams to allowed frame-ancestors

* fix unit tests

* set SameSite attribute for session cookie

* further restrict ancestors

* skip landing page if in iframe

* Only set cookie SameSite=None if embedded in iframe

* don't set MMEMBED cookie on landing page (check only)

* fully parse MMEMBED cookie

* add comment

* more comments

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-12 17:55:13 -04:00
M-ZubairAhmed
cc6de45bde Removed unneeded optional prop 'type' from 'admin_console/password_settings' (#24004) 2023-07-12 22:42:53 +05:30
Ibrahim Serdar Acikgoz
51c6e77972 [MM-53407] server/user_store: avoid antijoin for AnalyticsActiveCount query (#23993) 2023-07-12 17:40:34 +03:00
Devin Binnie
abdf4e58c3 [MM-37984] Allow Desktop App to authenticate via external providers outside of the app on supported servers (#23795)
* WIP

* Add rate limiting for desktop token API

* Missing mocks

* Style fixes

* Update snapshots

* Maybe use an actual redirect link :P

* Refactoring for tests

* Add tests for server

* Fix lint issue

* Fix tests

* Fix lint

* Add front-end screen component

* Component logic

* Style changes

* Quick style fix

* Lint fixes

* Initial PR feedback

* Enable logging into the browser as well when completing the login process

* Refactor to push more logic to the other component

* Remove unnecessary helper code

* Fix i18n

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-12 09:25:05 -04:00
M-ZubairAhmed
5e3c03a0a8 Fix component types of 'components/widgets/settings/text_setting.tsx' (#23919) 2023-07-12 16:25:05 +05:30
Antonis Stamatiou
98da282f7c fix: Add e2e-tests paths for tests trigger (#23894) 2023-07-12 10:52:05 +03:00
Christopher Poile
46a659e06d MM-53340 - Create registerDesktopNotificationHook for plugins, e.g. Calls (#23884)
* calls will notify in GM/DM channels for call started posts

* fix types

* add registerDesktopNotificationHook

* remove callsWillNotify

* cleanup unused types

* use an args object to shorten params

* add CUSTOM_CALLS_RECORDING to constants
2023-07-11 22:46:59 -04:00
Scott Bishel
f45f774ece update for guest demotion and sysadmin edits (#23920)
* update for guest demotion and sysadmin edits

* update unit test

* update unit test

* use existing disabled flag

* remove commented line

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-11 16:10:44 -06:00
Harrison Healey
2672af30ea MM-53467 Unrevert changes that update current user object (#23928)
* Revert "Revert "[MM-52547] Include current user profile in every redux action (#23219)""

This reverts commit 8f96888b1a.

* Revert "Revert "[MM-52546] webapp/channels : Update current user and status on WebSocket reconnect (#23071)""

This reverts commit 69ee162a6e.

* MM-53647 Fix overwriting the current user with sanitized data
2023-07-11 09:51:02 -07:00
Devin Binnie
116728424c [MM-53124] Add optional Forgot Password custom link to override the default flow on the login page (#23831)
* [MM-53124] Add optional Forgot Password custom link to override the default flow on the login page

* Fix i18n

* Fix test

* Added the enable/disable flag

* Fix test

* Fix e2e

* Add blockable link for the Customization navigation
2023-07-11 09:04:39 -04:00
Harrison Healey
b59cba7e63 Re-add package target to web app Makefile (#23960) 2023-07-11 11:58:29 +05:30
Scott Bishel
30140c0a27 MM-53098 Fix for checking bot and user permissions on shared endpoints (#23751)
* temp commit

* update test to allow bot creation

* add bot check to updateUser and deleteUser

* add more unit tests

* lint fixes

* lint fix

* update based on doc

* add more unit tests

* lint fixes

* fix unit tests

* fix unit tests

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-10 13:28:40 -06:00
Devin Binnie
2abcdfe76a [MM-53430] Don't stop the isDraftSubmitting flow when the notification modal is popped (#23962)
* [MM-53430] Don't stop the `isDraftSubmitting` flow when the notification modal is popped

* Reset to false if the modal closes without confirming
2023-07-10 08:33:32 -04:00
Agniva De Sarker
da3d5c73fe MM-53406: Fix userstore.count to avoid antijoin (#23953)
For MySQL, a query for type LEFT JOIN .. IS NULL
leads to a nested antijoin which leads to poor performance.

We fix this by rewriting the query to avoid the antijoin.

See the JIRA epic for more context behind this.

We also make another improvement to remove the DISTINCT
clause. It didn't serve any purpose since userids would
already be unique.

https://mattermost.atlassian.net/browse/MM-53406

```release-note
NONE
```
2023-07-10 10:19:44 +05:30
Agniva De Sarker
49e1d039f5 Reduce number of calls to IsCRTEnabled (#23963)
In a single createPost flow, there were
3 separate calls to App.IsCRTEnabled. This
showed up very slightly in the CPU profiles.

Not a big deal, but good to get it out of
the way.

```release-note
NONE
```
2023-07-10 10:18:55 +05:30
Christopher Poile
b5a3eee739 calls -> v0.17.0 (#23975) 2023-07-09 20:41:45 -06:00
Maria A Nunez
62c83863a2 Remove bold markdown in translations strings (#23922)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-09 21:59:36 -04:00
Maria A Nunez
96d3e5864f Removed Post Priority feature flag (#23735)
* Removed post priority feature flag

* linting

* Update feature_flags.go
2023-07-07 11:42:57 -04:00
Maria A Nunez
3f126905c5 Fix icon for private channels in channel suggestion list (#23921) 2023-07-07 10:54:01 -04:00
Jesse Hallam
dd4f71b2b6 add Apache 2.0 license to public submodule (#23945) 2023-07-07 10:56:42 -03:00
notlelouch
c59c2eafe3 MM-47275 : Migrate 'header_footer_template_route.jsx' to TypeScript (#23791)
* header_footer_template_route.jsx to tsx

* extended Props to RouteProps

* removed Component checks

* changed "ComponentType<RouteComponentProps>" to "ComponentType<any>"

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-06 16:41:01 -04:00
Jesse Hallam
82b3b67e63 secrets: inherit, to fix flaky tests report (#23961) 2023-07-06 14:03:14 -03:00
Saturnino Abril
44a95d9f69 chore: add @plugins_uninstall metadata to sort it last during test (#23926) 2023-07-05 18:17:55 -04:00
Scott Bishel
739fc8edf1 links now add utm_ data added cannot do exact match (#23885)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-05 15:09:22 -06:00
Harrison Healey
f7e87bfe29 MM-53377 Revert "[MM-52547] Include current user profile in every redux action (#23219)" (#23912)
* Revert "[MM-52547] Include current user profile in every redux action (#23219)"

This reverts commit a85c0b87b8.

* Revert "[MM-52546] webapp/channels : Update current user and status on WebSocket reconnect (#23071)"

This reverts commit 6d3354266a.
2023-07-05 16:43:51 -04:00
Hideaki Matsunami
3f7efe2df8 types: Add 'id' to AppExpandLevel (#23813)
Added properties that were omitted from the implementation.
ref: https://github.com/mattermost/mattermost/issues/23512

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-05 16:43:04 -04:00
Maria A Nunez
5779bd49d5 Remove Global Drafts Feature Flag (#23767)
* Remove global draft feature flag

* More removal - in progress

* Removed the rest in webapp

* Removed the rest in webapp

* Fix tests

* Update feature_flags.go

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-05 12:18:30 -04:00
Ben Cooke
bf0e0ed45a [MM-53466] Remove concurrency from data retention delete batching (#23927)
* Add TimeBetweenBatches config value for data retention

* adding feature flag for data retention concurrency
---------

Co-authored-by: Julien Tant <julien@craftyx.fr>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-07-05 11:09:03 -04:00
Agniva De Sarker
15eac83923 MM-52646: Fix data race on product notices (#23910)
The UpdateProductNotices method runs in a separate goroutine
which modifies a global structure called noticesCache.
This creates race condition when one test finishes
but the goroutine hasn't finished running.

To fix this, we simply prevent the spawning of the goroutine
by disabling the feature in the config.

Ideally, we'd not have global state in the first place.
But that's a separate matter.

https://mattermost.atlassian.net/browse/MM-52646

```release-note
NONE
```
2023-07-05 20:36:14 +05:30
Harshal sanghvi
fcb322b8f2 MM-52827, MM-52840 : Migrate "components/admin_console/session_length_settings.jsx" & "components/admin_console/cluster_table_container.jsx" to Typescript (#23509) 2023-07-05 19:50:41 +05:30
Hamza
2bb6830242 MM-52082 : Emoji Picker doesn't appear when clicking on Add Reaction from post menu in mobile view (#23174) 2023-07-05 19:45:12 +05:30
M-ZubairAhmed
b153a39d3e [MM-53127] e2e-tests : Drafts badge doesn't clear when parent message deleted and removed (#23705) 2023-07-05 17:13:55 +05:30
Agniva De Sarker
33565dc118 MM-52168: Bump dependencies (#23917)
https://mattermost.atlassian.net/browse/MM-52168

```release-note
NONE
```
2023-07-05 09:08:36 +05:30
Sai Deepesh
70d0a0fe70 [MM-47090]: Migrate "components/integrations/abstract_command.jsx" to Typescript (#23325) 2023-07-02 12:25:10 +05:30
Jesse Hallam
8abc8ed65c MM-53358: Revert Threads Everywhere (#23882)
Remove changes related to the unshipped threads everywhere feature, including commits b8da473da7 and 9f9e19e05d.

Since a version of Playbooks shipped calling this experimental API, keep a `nil` implementation to avoid breaking compatibility. We remove the hooks altogether, but keep the numbering again to avoid breaking compatbility.

Fixes: https://mattermost.atlassian.net/browse/MM-53358
2023-06-30 15:31:25 -03:00
Jesse Hallam
c506e01a97 server: automatically retry CI testing failures (#23820)
* server: --rerun-fails=3 for test-server(-race)?

* --rerun-fails=3 for IS_CI=true and -race as well
2023-06-30 15:00:37 -03:00