1415 Коммитов

Автор SHA1 Сообщение Дата
Vishal
fa1ba4717b [MM-52527] (#23519)
* limit markdown size
2023-05-29 19:02:22 +05:30
Agniva De Sarker
289a855330 MM-52898: WS fix (#23489)
https://mattermost.atlassian.net/browse/MM-52898

```release-note
NONE
```
2023-05-24 23:40:12 +05:30
Agniva De Sarker
88d1743191 MM-52325: Bump morph (#23394)
This is needed to implement non-transactional migrations

https://mattermost.atlassian.net/browse/MM-52325
```release-note
NONE
```

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-24 15:53:04 +05:30
Amy Blais
cfa5be4d3e Revert "Revert "[MM-51274] Remove deprecated PermissionUseSlashCommands (#22819)" (#23405)" (#23463)
Automatic Merge
2023-05-20 02:04:28 +03:00
Amy Blais
aef0f3c1bf Revert "[MM-51274] Remove deprecated PermissionUseSlashCommands (#22819)" (#23405)
Automatic Merge
2023-05-19 21:04:30 +03:00
Vishal
9399ce8637 [MM-47751][MM-48102] MPA: Send Persistent Notifications (#21619)
* MM-46410: adds urgency on mention counts

We have introduced priority for posts in
https://github.com/mattermost/mattermost-webapp/pull/10951.
We do need to color the mention badges in the webapp with a prominent
color when a mention is posted in an urgent message.
A thread has urgent mentions if the root post is marked as urgent, and
the replies contain mentions to the user viewing the thread.

This PR adds two columns, urgentmentioncount, and isurgent, in
channelmembers, and threads tables respectively.
Furthermore when asking for team/thread mention counts, we also return
urgent mention counts for the user.

* Adds PostAcknowledgements table and apis

* job init and fetch mentions

* add-migrations

* delete-expired

* send-notifications

* Fetches post priority in batches

* stop-notifications

* stop-notification-on-reply

* MM-47750: Adds PostAcknowledgements table and apis

- Adds post acknowledgement api/app/store methods to be able to save and
delete post acknowledgements by users.
- Adds wesbsocket events for acknowledgement created/deleted
- Returns post acknowledgements in the post's metadata

* add-license-check

* add-pagination

* delete on channel and team

* validate guests

* add configs

* move create priority post check from app to api

* Add desktop notifications

* check status

* use config in job

* add IsUrgent check

* Add last-sent-at

* validate max recipients

* Update lastSentAt

* Validate min. recipient

* send email notification only once

* remove email notifications

* use latest time from config to run job

* Add notifications counter

* publish events to mentioned users only

* pickup license updates in scheduler

* don't allow post owner to stop notifications

* follow normal notifications behaviour

* Validates persistent notifications interval

* move logic of handling valid and expired posts into sql

* Adds persistent notifications in the webapp

---------

Co-authored-by: koox00 <3829551+koox00@users.noreply.github.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-18 23:44:12 +05:30
Harshil Sharma
da3dcf737c Fixed hashtag search for DB search (#23313)
* Fixed hashtag search for DB search

* Fixed typo

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-17 12:01:31 +05:30
Harrison Healey
4cbf6e93d2 Remove Webpack dev servers for Boards/Playbooks (#23378)
* Add option to run web app build without dev servers

* Completely remove product dev servers

* Update unit test

* Fix another test
2023-05-15 16:18:10 -04:00
Scott Bishel
355bc6502c MM-52477 - remove recovery tokens when creating a new one (#23171)
* remove recovery tokens when creating a new one

* add app layers, unit test, i18 extract

* lint fixes

* fix unit test
2023-05-15 11:28:54 -06:00
Doug Lauder
e4075dae18 MM-43077 Allow inline JSON in config.json for advanced logging config (#23324)
* add AdvancedLoggingJSON to LogSettings and deprecate AdvancedLoggingConfig
* allow embedded JSON in config for advanced logging.
2023-05-15 10:37:48 -04:00
Agniva De Sarker
0818bf448c MM-52743: Skip racy test Test_SendNotifyAdminPosts (#23360)
https://mattermost.atlassian.net/browse/MM-52743
```release-note
NONE
```
2023-05-15 10:41:17 +02:00
Juho Nurminen
fc46a296ce MM-52720: use an io.LimitedReader in gif frame counting (#23372)
* MM-52720: use an io.LimitedReader in gif frame counting

* Address review feedback

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-11 12:47:07 +03:00
Jesse Hallam
bb02b35048 Expose public/ API as submodule (#23345)
* model -> public/model

* plugin -> public/plugin

* public/model/utils -> public/utils

* platform/shared/mlog -> public/shared/mlog

* platform/shared/i18n -> public/shared/i18n

* platform/shared/markdown -> public/shared/markdown

* platform/services/timezones -> public/shared/timezones

* channels/einterfaces -> einterfaces

* expose public/ submodule

* go mod tidy

* .github: cache-dependency-path, setup-go-work

* modules-tidy for public/ too

* remove old gomodtidy
2023-05-10 13:07:02 -03:00
Agniva De Sarker
a3e4ea2e7a MM-52679: Bump up minimum postgres version to 11 (#23315)
https://mattermost.atlassian.net/browse/MM-52679
```release-note
NONE
```

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-10 08:26:59 +05:30
Jesse Hallam
f28a2bcca7 server/public/ -- pre-requisite changes (#23278)
* invert depdendency: filestore -> model

* markdown: nolint:misspell

* inline jsonutils within model

* push model.GetInfoForBytes -> channels/app

* push channel/utils.CompileGo* -> plugin/utils

* push plugin/scheduler -> channels/jobs/plugins

* push utils.Copy(File|Dir) -> model

* oauthproiders/gitlab -> channels/app/oauthproviders/gitlab

* decouple plugin from einterfaces.MetricsInterface

* fix TestGetInfoForFile

* Revert "Run golangci in server CI (#23240)"

This reverts commit 349e5d4573.

* add model/utils

---------

Co-authored-by: Agniva De Sarker <agnivade@yahoo.co.in>
2023-05-09 13:30:02 -03:00
Julien Tant
d40689466d [MM-51854] Onboarding Role selection screen (#23121)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-08 13:57:41 -07:00
Agniva De Sarker
9f1796f98b Remove unnecessary blank imports (round 2) (#23310)
I mistakenly assumed that those packages are naturally imported.

And also atleast one test would have broken.

None of them are true. :)

So we just import it again at a better place

This reverts commit 30a053314b.

```release-note
NONE
```
2023-05-05 19:44:02 +05:30
Ibrahim Serdar Acikgoz
d030f681eb [MM-52550] platform/web_conn: fix a possible data race issue (#23255)
* platform/web_conn: fix a possible data race issue

* reflect review comments

---------

Co-authored-by: Ibrahim Serdar Acikgoz <ibrahim@ibrahims-mac.local>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-05 10:01:18 +02:00
Vishal
d860548a76 [MM-37933] Channel preference to auto-follow all threads in the channel (#21430)
* Add auto-follow feature
---------

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-05 12:09:00 +05:30
Jesse Hallam
30a053314b Revert "Remove unnecessary blank imports (#23283)" (#23302)
This reverts commit 76ad948b80.
2023-05-04 16:33:05 -03:00
Nathan
670b0e4c9f [MM-44954] Regenerate default avatar (#22871)
* Regenerate default profile picture if username has changed

- Only actions is profile picture has not been changed
- Adjusts ResetLastPictureUpdate store function to store
-curTime instead of 0
    - This is to support updating the default picture while still
    retaining the ability to discern a default image from a set one.
- Changes SetDefaultProfileImage to leverage UpdateDefaultProfileImage
- Test updates around updating user default profile pictures

* App interface updates

* Only display picture update date if non-negative

- Ensures we don't display negative timestamps (default images)
- Change ported for mono-repo changes

* Remove duplicate test assertion

---------

Co-authored-by: Nathan Geist <ngeist@spiria.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-04 10:14:26 -04:00
Agniva De Sarker
76ad948b80 Remove unnecessary blank imports (#23283)
They aren't necessary after the monorepo

```release-note
NONE
```
2023-05-04 19:36:41 +05:30
Agniva De Sarker
efbee8ad56 MM-37691: Harden interactive dialog action (#22783)
We strengthen some checks, forcing them to be changed
only via config.

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

```release-note
NONE
```

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-04 15:08:55 +05:30
Ibrahim Serdar Acikgoz
b2e0aa7088 server/utils: verify trusted ip headers are valid ip addresses (#23140)
Co-authored-by: Ibrahim Serdar Acikgoz <ibrahim@ibrahims-mac.local>
2023-05-04 09:29:21 +03:00
na
60234d0880 [MM-47492] - Don't count system messages as replies to a thread (#23022)
* [MM-47492] - Don't count system messages as replies to a thread

* Add test assertion

* revert store changes`

---------

Co-authored-by: Nevyana Angelova <nevyangelova@Nevyanas-MacBook-Pro.local>
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-04 13:24:14 +07:00
Harrison Healey
d001994ef9 MM-52282 Remove ExperimentalSettings.PatchPluginsReactDOM (#23172)
* MM-52282 Remove ExperimentalSettings.PatchPluginsReactDOM

* Fix missing file from last commit

* Fix test usage of plugin.NewEnvironment
2023-05-03 15:04:10 -04:00
Vishal
698613c002 [MM-51517] Sentry crash fix (#22985)
* add cloud limit check

* add test

* add warning for the inaccessible root-post

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-05-03 16:12:57 +05:30
Ben Cooke
5adbf6c612 [MM-52288] Oauth2 postgres migration issue (#23036)
* fixing migrations that caused some oauth2 issues
2023-05-02 12:32:30 -04:00
Nathaniel Allred
a34d873acb update test public key (#22835)
* update test public key
2023-04-28 09:20:12 -05:00
Harshil Sharma
3db6bb016e Channel index fix (#22947)
* WIP

* Fetched ES index for type checking

* WIP

* Moved migration key to model

* CI

* CI

* Fixed existing tests

* Updated einterface mocks

* CI

* WIP

* Reverted test makefile changes

* Fixed error level

* CI

* Not attempting to launch job if not enterprise ready

* CI

* Fixing job trigger condition

* CI

* Updated eemocks

* CI
2023-04-28 11:11:34 +05:30
Julian Mondragón
1051925eec MM-51482_Create Apps Category and link to bots DM (#22918) 2023-04-27 19:44:14 -05:00
Mattermost Build
a599a5feab Merge branch 'master' into MM-51858-fix-workspace-deletion-telemetry 2023-04-27 17:36:11 +03:00
Ben Schumacher
f9836ee26a [MM-51274] Remove deprecated PermissionUseSlashCommands (#22819)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-04-25 00:04:17 +02:00
Ben Schumacher
e8915b3182 [MM-45296] Fix installation of pre-packaged plugins that are not in the Marketplace (#21895)
Co-authored-by: Jesse Hallam <jesse.hallam@gmail.com>
2023-04-25 00:02:51 +02:00
Julien Tant
94cb2867a7 [MM-52271] Add recommended tag to Work Template integrations (#23016) 2023-04-24 09:59:01 -07:00
Conor Macpherson
405b2091d6 lint. 2023-04-24 09:48:01 -04:00
Agniva De Sarker
94de9c8175 MM-52352: Limit channel search results (#23070)
https://mattermost.atlassian.net/browse/MM-52352

```release-note
NONE
```
2023-04-22 10:14:54 +05:30
Agniva De Sarker
67735be261 MM-52216: Trim errors (#23040)
https://mattermost.atlassian.net/browse/MM-52216
```release-note
NONE
```
2023-04-21 22:23:56 +05:30
Conor Macpherson
c98c43456e Merge pull request #22657 from mattermost/MM-50966-in-product-expansion-backend
MM-50966 - In Product Expansion Backend
2023-04-20 10:38:47 -04:00
Allan Guwatudde
87555aa242 [MM-52158] - Don't show deprecation/move to annual banners to some clients (#22963)
* [MM-52158] - Don't show deprecation/move to annual banners to some clients

* create const

* feedback impl

* update test names

* update banner text

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-04-20 17:04:41 +03:00
Jesse Hallam
89f2ebc836 Channels/api4 testing improvements (#22938)
* api4/post_test: fix missing TearDown

* api4/plugin_test: dont test timeout, saving 120s

* api4/channel_test: dont try to delete town square

* api4/channel_test: check public channel names deterministically

* api4/file_test: fix darwin assertions on go files

* api4/notify_admin_test: fix expect/actual order

* api4/team_test: make TestGetAllTeams deterministic

* api4/plugin_test: avoid nested test helpers

* api4/post_test: avoid nested test helpers

* api4/websocket_test: externalize log buffer

* testlib/helper: unset common env

* linting issues

* simplify TestGetFileHeaders

* team_test: leverage ElementsMatch
2023-04-20 09:52:59 -03:00
Julien Tant
0a2a39773c [MM-52152] Expose license SkuShortName to all users (#22955) 2023-04-19 10:38:56 -07:00
Tanmay Datta
1f57819054 [MM-51089] Fix sorting value of category in CreateSidebarCategoryForTeamForUser (#22455)
Co-authored-by: Mattermost Build <build@mattermost.com>
2023-04-19 09:59:49 -04:00
Pablo Andrés Vélez Vidal
b5c48e75b3 MM 50960 - Add company name and invite members pages to preparing-workspace for self-hosted (#22838)
* MM-50960 - store system organization name

* restore the preparing workspace plugins and invite screens

* add back the page lines for the design

* add lines back and organize styles

* set back documentation to monorepo style and disable board as a product

* fix organization link and style skip button

* create team on organization name screen continue button click

* make sure there are not already created team and if so just update team name

* update the team display name if team has already been created

* cover error scenarios during team creation

* add pr feedback and add a couple of unit tests

* fix translation server error; make sure only update display name if it has changed in the form

* temp advances

* rewrite unit tests using react-testing library; fix unit tests

* fix translations

* make sure the launching workspace finish in cloud installations

* remove redundant validation

* fix unit tests

* remove unintended config value left after merge conflict
2023-04-19 15:31:47 +02:00
Conor Macpherson
3ca789979a remove other use of relfection to determine error. 2023-04-19 09:23:45 -04:00
Kyriakos Z
a24111f9bd MM-45009: Delete ThreadMemberships from "left" channels (#22559)
* MM-50550: Filter out threads from "left" channels v2

Currently leaving a channel doesn't affect the thread memberships of
that user/channel combination.
This PR aims to filter out all threads from those channels for the user.

Adds a DeleteAt column in the ThreadMemberships table, and filter out
all thread memberships that are "deleted".
Each time a user leaves a channel all thread memberships are going to be
marked as deleted, and when a user joins a channel again all those
existing thread memberships will be re-instantiated.

Adds a migration to mark all existing thread memberships as deleted
depending on whether there exists a channel membership for that
channel/user.

* Added migration files into list

* Fixes tests

* Fixes case where DeleteAt would be null

* Guard thread API endpoints with appropriate perms

* Deletes ThreadMembership rows upon leaving channel

* Minor style changes

* Use NoTranslation error

* Refactors tests

* Adds API tests to assert permissions on Team

* Adds tests, and fixes migrations

* Fixes test description

* Fix test

* Removes check on DM/GMs

* Change the MySQL query in the migration

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-04-19 15:20:34 +03:00
Agniva De Sarker
c34a50a6c7 MM-50427: Make MM survive DB replica outage (#22888)
We monitor the health of DB replicas, and on a fatal error,
take them out of the pool.

On a separate goroutine, we keep pinging the unhealthy replicas,
and on getting a good response back, we add them back to the pool.

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

```release-note
Mattermost is now resilient against DB replica outages and will
dynamically choose a replica if it's alive.

Also added a config parameter ReplicaMonitorIntervalSeconds
whose default value is 5. This controls how frequently unhealthy
replicas will be monitored for liveness check.
```

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-04-19 17:03:18 +05:30
Ben Schumacher
84a3042249 Update slash command permission (#22468)
* Update slash command permission

* Fix permission
2023-04-18 21:54:20 +02:00
Conor Macpherson
f0ed400732 remove use of reflection to detect app err. 2023-04-18 13:47:35 -04:00
Conor Macpherson
adb4ef04c1 Merge branch 'master' into MM-50966-in-product-expansion-backend 2023-04-18 12:07:48 -04:00