From 9ffa453e7418e5c68fb8ab4898aaed0441202727 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:20:03 +0200 Subject: [PATCH 01/40] Update mattermost-server-releases.md --- source/about/mattermost-server-releases.md | 1 + 1 file changed, 1 insertion(+) diff --git a/source/about/mattermost-server-releases.md b/source/about/mattermost-server-releases.md index 1db952de699..74d10bdfe3a 100644 --- a/source/about/mattermost-server-releases.md +++ b/source/about/mattermost-server-releases.md @@ -19,6 +19,7 @@ Mattermost releases a new server version on the 16th of each month in [binary fo | **Release** | **Released on** | **Support ends** | |:---|:---|:---| +| v10.5 [Download](https://releases.mattermost.com/10.5.0/mattermost-10.5.0-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2025-02-16 | 2025-11-15 {ref}`EXTENDED ` | | v10.4 [Download](https://releases.mattermost.com/10.4.1/mattermost-10.4.1-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2025-01-16 | 2025-04-15 | | v10.3 [Download](https://releases.mattermost.com/10.3.2/mattermost-10.3.2-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2024-12-16 | 2025-03-15 | | v10.2 [Download](https://releases.mattermost.com/10.2.2/mattermost-10.2.2-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2024-11-15 | 2025-02-15 | From d2ef01d42bbcc705307eb430e8b327a310761721 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:21:18 +0200 Subject: [PATCH 02/40] Update open-source-components.rst --- source/upgrade/open-source-components.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/upgrade/open-source-components.rst b/source/upgrade/open-source-components.rst index 08c9dfafb62..b92836e5264 100644 --- a/source/upgrade/open-source-components.rst +++ b/source/upgrade/open-source-components.rst @@ -9,6 +9,7 @@ The following open source components are used to provide the full benefits of Ma Desktop -------- +- Mattermost Desktop v5.11.0 - `View Open Source Components `__. - Mattermost Desktop v5.10.0 - `View Open Source Components `__. - Mattermost Desktop v5.9.0 - `View Open Source Components `__. - Mattermost Desktop v5.8.0 - `View Open Source Components `__. @@ -33,6 +34,7 @@ Desktop Mobile ------- +- Mattermost Mobile v2.25.0 - `View Open Source Components `__. - Mattermost Mobile v2.24.0 - `View Open Source Components `__. - Mattermost Mobile v2.23.0 - `View Open Source Components `__. - Mattermost Mobile v2.22.0 - `View Open Source Components `__. @@ -118,6 +120,7 @@ Mobile Server ------------------------------ +- Mattermost Enterprise Edition v10.5.0 - `View Open Source Components `__. - Mattermost Enterprise Edition v10.4.0 - `View Open Source Components `__. - Mattermost Enterprise Edition v10.3.0 - `View Open Source Components `__. - Mattermost Enterprise Edition v10.2.0 - `View Open Source Components `__. From 1cc57fbbd693c02220d3b40f77ced956e74aff1e Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:21:52 +0200 Subject: [PATCH 03/40] Update download-latest-tarball.rst --- source/install/download-latest-tarball.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/install/download-latest-tarball.rst b/source/install/download-latest-tarball.rst index 85f3b0f2e37..cafcd4facb0 100644 --- a/source/install/download-latest-tarball.rst +++ b/source/install/download-latest-tarball.rst @@ -9,13 +9,13 @@ Using ``wget``, download the Mattermost Server release you want to install. .. code-block:: sh - wget https://releases.mattermost.com/10.4.1/mattermost-10.4.1-linux-amd64.tar.gz + wget https://releases.mattermost.com/10.5.0/mattermost-10.5.0-linux-amd64.tar.gz .. tab:: Current ESR .. code-block:: sh - wget https://releases.mattermost.com/9.11.7/mattermost-9.11.7-linux-amd64.tar.gz + wget https://releases.mattermost.com/10.5.0/mattermost-10.5.0-linux-amd64.tar.gz .. tab:: Older releases From 236aa8d418091a9a0bc00401048cadd71f32b8ba Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:23:06 +0200 Subject: [PATCH 04/40] Update deprecated-features.rst --- source/about/deprecated-features.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/about/deprecated-features.rst b/source/about/deprecated-features.rst index aed46ddaec0..9398b96d6ea 100644 --- a/source/about/deprecated-features.rst +++ b/source/about/deprecated-features.rst @@ -6,19 +6,19 @@ This page describes features that are removed from support for Mattermost, or wi Removed features in upcoming versions ------------------------------------- +Removed features by Mattermost version +---------------------------------------- + Mattermost Mobile App v2.25.0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- In the Mattermost Mobile App v2.25, Mattermost will stop supporting iOS versions 13 and 14. Users should update their iOS version to v15.1 or newer before February 14, 2025. See more details in `this forum post `__. +- In the Mattermost Mobile App v2.25, Mattermost has stopped supporting iOS versions 13 and 14. Users should update their iOS version to v15.1 or newer before February 14, 2025. See more details in `this forum post `__. Mattermost Server v10.5.0 ~~~~~~~~~~~~~~~~~~~~~~~~~ -- The Mattermost server will stop supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. -- Mattermost will stop providing official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. - -Removed features by Mattermost version ----------------------------------------- +- The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. +- Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. Mattermost Server v10.4.0 ~~~~~~~~~~~~~~~~~~~~~~~~~ From 7454fd576ab32de81859fb2d5b1045527724cf36 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 12:30:49 +0200 Subject: [PATCH 05/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 68 ++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 16ffc24cfbd..e657c54fcf1 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -7,6 +7,74 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte - See the [changelog in progress](https://bit.ly/2nK3cVf) for details about the upcoming release. ``` +(release-v10.5-extended-support-release)= +## Release v10.5 - [Extended Support Release](https://docs.mattermost.com/about/release-policy.html#release-types) + +**Release Day: Februrary 14, 2025** + +```{Important} +If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). +``` + +### Improvements + +#### User Interface (UI) + - Pre-packaged Calls plugin [v1.5.0](https://github.com/mattermost/mattermost-plugin-calls/releases/tag/v1.5.0). + - Pre-packaged MS Teams plugin [v2.1.0](https://github.com/mattermost/mattermost-plugin-msteams/releases/tag/v2.1.0). + - Pre-packaged Channel Export plugin [v1.2.1](https://github.com/mattermost/mattermost-plugin-channel-export/releases/tag/v1.2.1). + - Added the ability to modify post attachments during edit. + - The channel bookmarks bar is now hidden when there are no bookmarks in the channel. Bookmarks can now be added from the channel menu. + - Removed the video from the onboarding checklist. + - Improved accessibility of many form labels throughout the app. + +#### Administration + - Added the migrations, store layer and service for the Property System Architecture. + - Added the Custom Profile Attribute fields store, app and API endpoints. + - Added the **System Console** user interface for managing Custom Profile Attributes (User Properties). + - Added a compliance export overhaul. See announcement: . + - Introduced V2 of the Support Packet, containing improvement diagnosis information for high-availability deployments. + - Added a new ``Fallback`` field to ``PluginSettingsSection`` that controls whether the settings defined under the section should still render as fallback when the plugin is disabled. + - Improved plugins’ link tooltip component’s internal architecture without any user interface changes. + - Updated the library used for tooltips throughout the app to fix a memory leak. + - Reduced the volume of unnecessary debug logs generated during scheduled post job execution. + - Removed ``form-data`` from @mattermost/client. + +### Bug Fixes + - Fixed archived filter behavior in System Console > User Management > Channels to restore the ability to exclude archived channels. + - Fixed an issue where DMs/GMs with a `DeleteAt` flag in the database might cause issues with a couple APIs. + - Fixed an issue where the team sidebar's mention count could be out of sync with the thread count. + - Fixed an issue where replies with props could not be imported. + - Fixed an issue where ``pluginapi.store.GetReplicaDB`` returned nil if masterDB was not initialized. + - Fixed an issue in ``SqlPostStore.PermanentDeletebyUser`` where no error was returned when 10K posts were exceeded. + - Fixed an issue where a channel would no longer be exported for Bulk Export workflow if any of the users of a Direct or Group Message channel were permanently deleted. + - Fixed an issue where the scroll position reset when custom emojis were requested. + +### config.json +New setting options were added to ``config.json``. Below is a list of the additions and their default values on install. The settings can be modified in ``config.json``, or the System Console when available. + +#### Changes to all plans: +- + +#### Changes to Enterprise plans: + - + +### API Changes + - + +### Websocket Event Changes + - + +### Go Version + - v10.5 is built with Go ``v1.22.6``. + +### Known Issues + - Setting the license file location through an envvar still gives the option to upload a new license through the System Console, resulting in the license being overwritten by the one set through the envvar. See this [knowledge base article](https://support.mattermost.com/hc/en-us/articles/33911983851284-System-console-still-displays-old-license-after-uploading-a-new-one) on how to resolve this issue. + - Searching stop words in quotation marks with Elasticsearch enabled returns more than just the searched terms. + - Slack import through the CLI fails if email notifications are enabled. + +### Contributors + - + (release-v10.4-feature-release)= ## Release v10.4 - [Feature Release](https://docs.mattermost.com/about/release-policy.html#release-types) From f603b942081bc5d775e96646b997dc9af22567dc Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:03:05 +0200 Subject: [PATCH 06/40] Update software-hardware-requirements.rst --- source/install/software-hardware-requirements.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/install/software-hardware-requirements.rst b/source/install/software-hardware-requirements.rst index 8713847511c..74a50262d71 100644 --- a/source/install/software-hardware-requirements.rst +++ b/source/install/software-hardware-requirements.rst @@ -46,8 +46,8 @@ PC web :header: "Browser", "Self-Hosted Technical Requirement", "Cloud Technical Requirement" "Chrome", "v130+", "v130+" - "Firefox", "v115+", "v115+" - "Safari", "v17+", "v17+" + "Firefox", "v119+", "v119+" + "Safari", "v17.4+", "v17.4+" "Edge", "v130+", "v130+" `*` Internet Explorer (IE11) is no longer supported. We recommend using the `Mattermost desktop app `_ or another supported browser. See `this forum post `__ to learn more. @@ -72,7 +72,7 @@ Mobile web .. csv-table:: :header: "Browser", "Technical Requirement" - "iOS", "iOS 13.4+ with Safari 17+ or Chrome 130+" + "iOS", "iOS 13.4+ with Safari 17.4+ or Chrome 130+" "Android", "Android 7+ with Chrome 130+" Email client From 57164b0487f6cde26549a00b8d5fe5d2683e4da0 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:03:14 +0200 Subject: [PATCH 07/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index e657c54fcf1..b4ca1d16fb5 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -16,6 +16,9 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). ``` +### Compatibility + - Updated minimum Safari version to 17.4+ and minimum Firefox version to 119+. + ### Improvements #### User Interface (UI) @@ -59,10 +62,10 @@ New setting options were added to ``config.json``. Below is a list of the additi - ### API Changes - - - -### Websocket Event Changes - - + - ``GetUsersInChannelDuring`` now accepts a slice; added ``GetChannelsWithActivityDuring``. + - Two new boolean query parameters were added to the ``api/v4/config`` endpoint: + - ``remove_defaults`` (filters out default values). + - ``remove_masked`` (removes masked fields). ### Go Version - v10.5 is built with Go ``v1.22.6``. From 6426983922e1f1be5eb68fed8ba7402b9e2b2b65 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:34:58 +0200 Subject: [PATCH 08/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index b4ca1d16fb5..18bf92b2e26 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -55,11 +55,9 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa ### config.json New setting options were added to ``config.json``. Below is a list of the additions and their default values on install. The settings can be modified in ``config.json``, or the System Console when available. -#### Changes to all plans: -- - #### Changes to Enterprise plans: - - + - Under ``essageExportSettings`` in ``config.json``: + - Added ``ComplianceExportDirectoryFormat``, ``ComplianceExportPath``, ``ComplianceExportPathCLI``, ``ComplianceExportChannelBatchSizeDefault``, and ``ComplianceExportChannelHistoryBatchSizeDefault`` for compliance export overhaul. ### API Changes - ``GetUsersInChannelDuring`` now accepts a slice; added ``GetChannelsWithActivityDuring``. From 569b15a2b029507e991c9433742c229af0230811 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:51:19 +0200 Subject: [PATCH 09/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 138 +++++++++++++++++++++ 1 file changed, 138 insertions(+) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 33c80e38a87..1c85970fb8c 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,6 +16,144 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ +| v10.5 | This migration only creates new tables and indexes, so there is no impact on preexisting data. As part of the Property System Architecture feature, Mattermost | +| | v10.5 is going to run a set of migrations to add new tables to the schema. | +| | | +| | A new table ``PropertyGroups`` is going to be created. | +| | | +| | A new table ``PropertyFields`` is going to be created. | +| | | +| | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the Type column of the PropertyFields table. | +| | | +| | The PropertyFields table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | +| | this constraint. +| | | +| | A new table PropertyValues is going to be created. | +| | | +| | The PropertyValues table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | +| | this constraint. +| | | +| | A new index idx_propertyvalues_targetid_groupid will be created for the PropertyValues table. +| | | +| | The migration is only creating new tables with no data. | +| | | +| | Backwards-compatibility - Yes - a previous version of Mattermost can run with the new schema changes +| | | +| | No table locks or existing operations on the table are impacted by this upgrade. +| | | +| | Zero downtime is possible when upgrading to this release. | +| | | +| | What are the SQL queries included in the schema changes? | +| | | +| | MySQL +| | | +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( +| | ID varchar(26) PRIMARY KEY, +| | Name varchar(64) NOT NULL, +| | UNIQUE(Name) +| | ); +| | | +| | CREATE TABLE IF NOT EXISTS PropertyFields ( +| | ID varchar(26) PRIMARY KEY, +| | GroupID varchar(26) NOT NULL, +| | Name varchar(255) NOT NULL, +| | Type enum('text', 'select', 'multiselect', 'date', 'user', 'multiuser'), | +| | Attrs json, +| | TargetID varchar(255), +| | TargetType varchar(255), +| | CreateAt bigint(20), +| | UpdateAt bigint(20), +| | DeleteAt bigint(20), +| | UNIQUE(GroupID, TargetID, Name, DeleteAt) +| | ); +| | | +| | CREATE TABLE IF NOT EXISTS PropertyValues ( +| | ID varchar(26) PRIMARY KEY, +| | TargetID varchar(255) NOT NULL, +| | TargetType varchar(255) NOT NULL, +| | GroupID varchar(26) NOT NULL, +| | FieldID varchar(26) NOT NULL, +| | Value json, +| | CreateAt bigint(20), +| | UpdateAt bigint(20), +| | DeleteAt bigint(20), +| | UNIQUE(GroupID, TargetID, FieldID, DeleteAt) +| | ); +| | | +| | SET @preparedStatement = (SELECT IF( +| | ( +| | SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS +| | WHERE table_name = 'PropertyValues' +| | AND table_schema = DATABASE() +| | AND index_name = 'idx_propertyvalues_targetid_groupid' +| | ) > 0, +| | 'SELECT 1', +| | 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);' +| | )); +| | | +| | PREPARE createIndexIfNotExists FROM @preparedStatement; +| | EXECUTE createIndexIfNotExists; +| | DEALLOCATE PREPARE createIndexIfNotExists; | +| | | +| | PostgreSQL +| | | +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( +| | ID varchar(26) PRIMARY KEY, +| | Name varchar(64) NOT NULL, +| | UNIQUE(Name) +| | ); +| | | +| | DO | +| | $$ | +| | BEGIN | +| | IF NOT EXISTS (SELECT * FROM pg_type typ | +| | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace +| | WHERE nsp.nspname = current_schema() +| | AND typ.typname = 'property_field_type') THEN +| | CREATE TYPE property_field_type AS ENUM ( | +| | 'text', | +| | 'select', | +| | 'multiselect', | +| | 'date', | +| | 'user', | +| | 'multiuser' | +| | ); | +| | END IF; | +| | END; | +| | $$ | +| | LANGUAGE plpgsql; +| | | +| | CREATE TABLE IF NOT EXISTS PropertyFields ( | +| | ID varchar(26) PRIMARY KEY, | +| | GroupID varchar(26) NOT NULL, | +| | Name varchar(255) NOT NULL, | +| | Type property_field_type, | +| | Attrs jsonb, | +| | TargetID varchar(255), | +| | TargetType varchar(255), | +| | CreateAt bigint NOT NULL, | +| | UpdateAt bigint NOT NULL, | +| | DeleteAt bigint NOT NULL | +| | ); | +| | | +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0; +| | | +| | CREATE TABLE IF NOT EXISTS PropertyValues ( | +| | ID varchar(26) PRIMARY KEY, | +| | TargetID varchar(255) NOT NULL, | +| | TargetType varchar(255) NOT NULL, | +| | GroupID varchar(26) NOT NULL, | +| | FieldID varchar(26) NOT NULL, | +| | Value jsonb NOT NULL, | +| | CreateAt bigint NOT NULL, | +| | UpdateAt bigint NOT NULL, | +| | DeleteAt bigint NOT NULL | +| | ); | +| | | +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; +| | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); +| | | ++----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | v10.3 | The Classic Mobile App has been phased out. Please download the new v2 Mobile App from the | | | `Apple App Store `_ or | | | `Google Play Store `_. See more details | From 16ce8e035e33daf6f326061ebcc962ab9b6ff0ce Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:57:46 +0200 Subject: [PATCH 10/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 129 ++++++++++----------- 1 file changed, 64 insertions(+), 65 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 1c85970fb8c..6c87570139c 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -26,90 +26,90 @@ Important Upgrade Notes | | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the Type column of the PropertyFields table. | | | | | | The PropertyFields table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | -| | this constraint. +| | this constraint. | | | | | | A new table PropertyValues is going to be created. | | | | | | The PropertyValues table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | -| | this constraint. +| | this constraint. | | | | -| | A new index idx_propertyvalues_targetid_groupid will be created for the PropertyValues table. +| | A new index idx_propertyvalues_targetid_groupid will be created for the PropertyValues table. | | | | | | The migration is only creating new tables with no data. | | | | -| | Backwards-compatibility - Yes - a previous version of Mattermost can run with the new schema changes +| | Backwards-compatibility - Yes - a previous version of Mattermost can run with the new schema changes | | | | -| | No table locks or existing operations on the table are impacted by this upgrade. +| | No table locks or existing operations on the table are impacted by this upgrade. | | | | | | Zero downtime is possible when upgrading to this release. | | | | | | What are the SQL queries included in the schema changes? | | | | -| | MySQL +| | MySQL | | | | -| | CREATE TABLE IF NOT EXISTS PropertyGroups ( -| | ID varchar(26) PRIMARY KEY, -| | Name varchar(64) NOT NULL, -| | UNIQUE(Name) -| | ); -| | | -| | CREATE TABLE IF NOT EXISTS PropertyFields ( -| | ID varchar(26) PRIMARY KEY, -| | GroupID varchar(26) NOT NULL, -| | Name varchar(255) NOT NULL, +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | +| | ID varchar(26) PRIMARY KEY, | +| | Name varchar(64) NOT NULL, | +| | UNIQUE(Name) | +| | ); | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyFields ( | +| | ID varchar(26) PRIMARY KEY, | +| | GroupID varchar(26) NOT NULL, | +| | Name varchar(255) NOT NULL, | | | Type enum('text', 'select', 'multiselect', 'date', 'user', 'multiuser'), | -| | Attrs json, -| | TargetID varchar(255), -| | TargetType varchar(255), -| | CreateAt bigint(20), -| | UpdateAt bigint(20), -| | DeleteAt bigint(20), -| | UNIQUE(GroupID, TargetID, Name, DeleteAt) -| | ); -| | | -| | CREATE TABLE IF NOT EXISTS PropertyValues ( -| | ID varchar(26) PRIMARY KEY, -| | TargetID varchar(255) NOT NULL, -| | TargetType varchar(255) NOT NULL, -| | GroupID varchar(26) NOT NULL, -| | FieldID varchar(26) NOT NULL, -| | Value json, -| | CreateAt bigint(20), -| | UpdateAt bigint(20), -| | DeleteAt bigint(20), -| | UNIQUE(GroupID, TargetID, FieldID, DeleteAt) -| | ); -| | | -| | SET @preparedStatement = (SELECT IF( -| | ( -| | SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS -| | WHERE table_name = 'PropertyValues' -| | AND table_schema = DATABASE() -| | AND index_name = 'idx_propertyvalues_targetid_groupid' -| | ) > 0, -| | 'SELECT 1', -| | 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);' -| | )); -| | | -| | PREPARE createIndexIfNotExists FROM @preparedStatement; -| | EXECUTE createIndexIfNotExists; +| | Attrs json, | +| | TargetID varchar(255), | +| | TargetType varchar(255), | +| | CreateAt bigint(20), | +| | UpdateAt bigint(20), | +| | DeleteAt bigint(20), | +| | UNIQUE(GroupID, TargetID, Name, DeleteAt) | +| | ); | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyValues ( | +| | ID varchar(26) PRIMARY KEY, | +| | TargetID varchar(255) NOT NULL, | +| | TargetType varchar(255) NOT NULL, | +| | GroupID varchar(26) NOT NULL, | +| | FieldID varchar(26) NOT NULL, | +| | Value json, | +| | CreateAt bigint(20), | +| | UpdateAt bigint(20), | +| | DeleteAt bigint(20), | +| | UNIQUE(GroupID, TargetID, FieldID, DeleteAt) | +| | ); | +| | | +| | SET @preparedStatement = (SELECT IF( | +| | ( | +| | SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS | +| | WHERE table_name = 'PropertyValues' | +| | AND table_schema = DATABASE() | +| | AND index_name = 'idx_propertyvalues_targetid_groupid' | +| | ) > 0, | +| | 'SELECT 1', | +| | 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);' | +| | )); | +| | | +| | PREPARE createIndexIfNotExists FROM @preparedStatement; | +| | EXECUTE createIndexIfNotExists; | | | DEALLOCATE PREPARE createIndexIfNotExists; | | | | -| | PostgreSQL +| | PostgreSQL | | | | -| | CREATE TABLE IF NOT EXISTS PropertyGroups ( -| | ID varchar(26) PRIMARY KEY, -| | Name varchar(64) NOT NULL, -| | UNIQUE(Name) -| | ); +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | +| | ID varchar(26) PRIMARY KEY, | +| | Name varchar(64) NOT NULL, | +| | UNIQUE(Name) | +| | ); | | | | | | DO | | | $$ | | | BEGIN | | | IF NOT EXISTS (SELECT * FROM pg_type typ | -| | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace -| | WHERE nsp.nspname = current_schema() -| | AND typ.typname = 'property_field_type') THEN +| | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace | +| | WHERE nsp.nspname = current_schema() | +| | AND typ.typname = 'property_field_type') THEN | | | CREATE TYPE property_field_type AS ENUM ( | | | 'text', | | | 'select', | @@ -121,7 +121,7 @@ Important Upgrade Notes | | END IF; | | | END; | | | $$ | -| | LANGUAGE plpgsql; +| | LANGUAGE plpgsql; | | | | | | CREATE TABLE IF NOT EXISTS PropertyFields ( | | | ID varchar(26) PRIMARY KEY, | @@ -136,7 +136,7 @@ Important Upgrade Notes | | DeleteAt bigint NOT NULL | | | ); | | | | -| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0; +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0; | | | | | | CREATE TABLE IF NOT EXISTS PropertyValues ( | | | ID varchar(26) PRIMARY KEY, | @@ -150,9 +150,8 @@ Important Upgrade Notes | | DeleteAt bigint NOT NULL | | | ); | | | | -| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; -| | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); -| | | +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; | +| | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); | +----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | v10.3 | The Classic Mobile App has been phased out. Please download the new v2 Mobile App from the | | | `Apple App Store `_ or | From 101e07e6bb8f9a9e10bc50304b0d58b5e24d39e1 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:59:49 +0200 Subject: [PATCH 11/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 18bf92b2e26..cf9148dbe06 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -12,13 +12,18 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte **Release Day: Februrary 14, 2025** +### Compatibility + - Updated minimum Safari version to 17.4+ and minimum Firefox version to 119+. + +### Upgrade + - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. + - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. + - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. + ```{Important} If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). ``` -### Compatibility - - Updated minimum Safari version to 17.4+ and minimum Firefox version to 119+. - ### Improvements #### User Interface (UI) From 27a94d54799d6ad16fdd0d6a894f7f8fa71bbc3f Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 15:06:45 +0200 Subject: [PATCH 12/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 6c87570139c..c6c738fdc41 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -25,15 +25,15 @@ Important Upgrade Notes | | | | | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the Type column of the PropertyFields table. | | | | -| | The PropertyFields table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | -| | this constraint. | +| | The ``PropertyFields`` table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a ``UNIQUE INDEX`` | +| | to enforce this constraint. | | | | -| | A new table PropertyValues is going to be created. | +| | A new table ``PropertyValues`` is going to be created. | | | | -| | The PropertyValues table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a UNIQUE INDEX to enforce | -| | this constraint. | +| | The ``PropertyValues`` table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a ``UNIQUE INDEX`` | +| | to enforce this constraint. | | | | -| | A new index idx_propertyvalues_targetid_groupid will be created for the PropertyValues table. | +| | A new index ``idx_propertyvalues_targetid_groupid`` will be created for the ``PropertyValues`` table. | | | | | | The migration is only creating new tables with no data. | | | | @@ -46,7 +46,9 @@ Important Upgrade Notes | | What are the SQL queries included in the schema changes? | | | | | | MySQL | -| | | +| | | +| | .. code-block:: sql | +| | | | | CREATE TABLE IF NOT EXISTS PropertyGroups ( | | | ID varchar(26) PRIMARY KEY, | | | Name varchar(64) NOT NULL, | @@ -93,9 +95,12 @@ Important Upgrade Notes | | | | | PREPARE createIndexIfNotExists FROM @preparedStatement; | | | EXECUTE createIndexIfNotExists; | -| | DEALLOCATE PREPARE createIndexIfNotExists; | +| | DEALLOCATE PREPARE createIndexIfNotExists; | +| | `` | | | | | | PostgreSQL | +| | | +| | .. code-block:: sql | | | | | | CREATE TABLE IF NOT EXISTS PropertyGroups ( | | | ID varchar(26) PRIMARY KEY, | @@ -152,6 +157,7 @@ Important Upgrade Notes | | | | | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; | | | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); | +| | `` | +----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | v10.3 | The Classic Mobile App has been phased out. Please download the new v2 Mobile App from the | | | `Apple App Store `_ or | From 75bdb0ec64cfd82b7ed2aaa1a5c3da407aeea6d4 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 15:12:44 +0200 Subject: [PATCH 13/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 26 ++++++---------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index c6c738fdc41..7c4a7931699 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -19,31 +19,19 @@ Important Upgrade Notes | v10.5 | This migration only creates new tables and indexes, so there is no impact on preexisting data. As part of the Property System Architecture feature, Mattermost | | | v10.5 is going to run a set of migrations to add new tables to the schema. | | | | -| | A new table ``PropertyGroups`` is going to be created. | +| | New tables ``PropertyGroups``, ``PropertyFields`` and ``PropertyValues`` are going to be created. | | | | -| | A new table ``PropertyFields`` is going to be created. | +| | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the ``Type`` column of the ``PropertyFields`` table. | | | | -| | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the Type column of the PropertyFields table. | -| | | -| | The ``PropertyFields`` table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a ``UNIQUE INDEX`` | -| | to enforce this constraint. | -| | | -| | A new table ``PropertyValues`` is going to be created. | -| | | -| | The ``PropertyValues`` table has a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, it directly uses a ``UNIQUE INDEX`` | -| | to enforce this constraint. | +| | The ``PropertyFields`` and ``PropertyValues`` tables have a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, they directly | +| | use a ``UNIQUE INDEX`` to enforce this constraint. | | | | | | A new index ``idx_propertyvalues_targetid_groupid`` will be created for the ``PropertyValues`` table. | | | | -| | The migration is only creating new tables with no data. | -| | | -| | Backwards-compatibility - Yes - a previous version of Mattermost can run with the new schema changes | -| | | -| | No table locks or existing operations on the table are impacted by this upgrade. | -| | | -| | Zero downtime is possible when upgrading to this release. | +| | The migration is only creating new tables with no data. The migration is backwards-compatible, and a previous version of Mattermost can run with the new schema | +| | changes. No table locks or existing operations on the table are impacted by this upgrade. Zero downtime is possible when upgrading to this release. | | | | -| | What are the SQL queries included in the schema changes? | +| | Below are the SQL queries included in the schema changes: | | | | | | MySQL | | | | From 4acacbe305e1f672805a6f62e2c426c08f5eb2ae Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 15:14:18 +0200 Subject: [PATCH 14/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 7c4a7931699..cafe4b0954c 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,8 +16,8 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ -| v10.5 | This migration only creates new tables and indexes, so there is no impact on preexisting data. As part of the Property System Architecture feature, Mattermost | -| | v10.5 is going to run a set of migrations to add new tables to the schema. | +| v10.5 | As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only | +| | creates new tables and indexes, so there is no impact on preexisting data. | | | | | | New tables ``PropertyGroups``, ``PropertyFields`` and ``PropertyValues`` are going to be created. | | | | From 659b331ef59b4ad8fa0909c940fb7ca21d9b4af5 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 16 Jan 2025 16:24:22 +0200 Subject: [PATCH 15/40] Update deprecated-features.rst --- source/about/deprecated-features.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/deprecated-features.rst b/source/about/deprecated-features.rst index 9398b96d6ea..5bcc38403f0 100644 --- a/source/about/deprecated-features.rst +++ b/source/about/deprecated-features.rst @@ -12,7 +12,7 @@ Removed features by Mattermost version Mattermost Mobile App v2.25.0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- In the Mattermost Mobile App v2.25, Mattermost has stopped supporting iOS versions 13 and 14. Users should update their iOS version to v15.1 or newer before February 14, 2025. See more details in `this forum post `__. +- In the Mattermost Mobile App v2.25 release, Mattermost has stopped supporting iOS versions 13 and 14. Users should update their iOS version to v15.1 or newer before February 14, 2025. See more details in `this forum post `__. Mattermost Server v10.5.0 ~~~~~~~~~~~~~~~~~~~~~~~~~ From b5518a549ff2522b7bc2e84f7dbdc93b187cd620 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 17 Jan 2025 09:12:42 +0200 Subject: [PATCH 16/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index cafe4b0954c..f7e6accdeac 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,7 +16,15 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ -| v10.5 | As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only | +| v10.5 | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | +| | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | +| | prepackage the plugin bundles. See more details in `this forum post `__. | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| | Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server | +| | installations to use the official Linux builds. See more details in | +| | `this forum post `__. | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| | As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only | | | creates new tables and indexes, so there is no impact on preexisting data. | | | | | | New tables ``PropertyGroups``, ``PropertyFields`` and ``PropertyValues`` are going to be created. | From 827345617193f0a8201478d85bd2ecc024fe5c97 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 17 Jan 2025 09:23:57 +0200 Subject: [PATCH 17/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index cf9148dbe06..af5c5db4492 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -17,6 +17,7 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Upgrade - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. + - Improved plugins’ link tooltip component’s internal architecture without any user interface changes. - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. @@ -42,7 +43,6 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Added a compliance export overhaul. See announcement: . - Introduced V2 of the Support Packet, containing improvement diagnosis information for high-availability deployments. - Added a new ``Fallback`` field to ``PluginSettingsSection`` that controls whether the settings defined under the section should still render as fallback when the plugin is disabled. - - Improved plugins’ link tooltip component’s internal architecture without any user interface changes. - Updated the library used for tooltips throughout the app to fix a memory leak. - Reduced the volume of unnecessary debug logs generated during scheduled post job execution. - Removed ``form-data`` from @mattermost/client. From 37102052d63ec2caa5a038e45c9bfac75d318a56 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 17 Jan 2025 09:24:36 +0200 Subject: [PATCH 18/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index f7e6accdeac..47204b2cf7e 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,7 +16,9 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ -| v10.5 | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | +| v10.5 | Improved plugins’ link tooltip component’s internal architecture without any user interface changes. | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | | | prepackage the plugin bundles. See more details in `this forum post `__. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ From 0aa021618dd704469d4b254da5f8c54f6da6d51b Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 17 Jan 2025 09:47:18 +0200 Subject: [PATCH 19/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index af5c5db4492..a096c950ba1 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -56,6 +56,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Fixed an issue in ``SqlPostStore.PermanentDeletebyUser`` where no error was returned when 10K posts were exceeded. - Fixed an issue where a channel would no longer be exported for Bulk Export workflow if any of the users of a Direct or Group Message channel were permanently deleted. - Fixed an issue where the scroll position reset when custom emojis were requested. + - Fixed a panic during LDAP syncing. ### config.json New setting options were added to ``config.json``. Below is a list of the additions and their default values on install. The settings can be modified in ``config.json``, or the System Console when available. From 293bb860bb988a04989e1ea76b0b8ff513b23840 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 17 Jan 2025 16:30:24 +0200 Subject: [PATCH 20/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index a096c950ba1..9ebe0045958 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -18,8 +18,8 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Upgrade - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. - Improved plugins’ link tooltip component’s internal architecture without any user interface changes. - - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. - - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. + - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). + - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). ```{Important} If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). From ef8a374138e44b2dddc7f3f34b517f762235f8f4 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Mon, 20 Jan 2025 15:13:39 +0200 Subject: [PATCH 21/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 9ebe0045958..a7aca445a13 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -17,7 +17,7 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Upgrade - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. - - Improved plugins’ link tooltip component’s internal architecture without any user interface changes. + - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle mounting and unmounting scenarios. - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). From 48e072fcbcc82c239b780ef5f7661dc22a5cfd6b Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Mon, 20 Jan 2025 15:14:21 +0200 Subject: [PATCH 22/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 47204b2cf7e..b16ae944b0f 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,7 +16,10 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ -| v10.5 | Improved plugins’ link tooltip component’s internal architecture without any user interface changes. | +| v10.5 | The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using | +| | ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly | +| | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle | +| | mounting and unmounting scenarios. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | From 47e808117374eacebf4350f5867d391f85b94c20 Mon Sep 17 00:00:00 2001 From: "Carrie Warner (Mattermost)" <74422101+cwarnermm@users.noreply.github.com> Date: Mon, 20 Jan 2025 11:44:55 -0500 Subject: [PATCH 23/40] Removed tab spaces & added code-block indentation --- source/upgrade/important-upgrade-notes.rst | 232 ++++++++++----------- 1 file changed, 116 insertions(+), 116 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index b16ae944b0f..e78739d755b 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -23,143 +23,143 @@ Important Upgrade Notes | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | -| | prepackage the plugin bundles. See more details in `this forum post `__. | +| | prepackage the plugin bundles. See more details in `this forum post `_. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server | | | installations to use the official Linux builds. See more details in | -| | `this forum post `__. | +| | `this forum post `_. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only | | | creates new tables and indexes, so there is no impact on preexisting data. | -| | | +| | | | | New tables ``PropertyGroups``, ``PropertyFields`` and ``PropertyValues`` are going to be created. | -| | | +| | | | | In the case of PostgreSQL, a new enum type ``property_field_type`` is going to be created, to be used in the ``Type`` column of the ``PropertyFields`` table. | -| | | +| | | | | The ``PropertyFields`` and ``PropertyValues`` tables have a unique constraint that will generate an index in MySQL, and in the case of PostgreSQL, they directly | | | use a ``UNIQUE INDEX`` to enforce this constraint. | -| | | +| | | | | A new index ``idx_propertyvalues_targetid_groupid`` will be created for the ``PropertyValues`` table. | -| | | +| | | | | The migration is only creating new tables with no data. The migration is backwards-compatible, and a previous version of Mattermost can run with the new schema | | | changes. No table locks or existing operations on the table are impacted by this upgrade. Zero downtime is possible when upgrading to this release. | | | | | | Below are the SQL queries included in the schema changes: | | | | -| | MySQL | -| | | +| | **MySQL**: | +| | | | | .. code-block:: sql | -| | | -| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | -| | ID varchar(26) PRIMARY KEY, | -| | Name varchar(64) NOT NULL, | -| | UNIQUE(Name) | -| | ); | -| | | -| | CREATE TABLE IF NOT EXISTS PropertyFields ( | -| | ID varchar(26) PRIMARY KEY, | -| | GroupID varchar(26) NOT NULL, | -| | Name varchar(255) NOT NULL, | -| | Type enum('text', 'select', 'multiselect', 'date', 'user', 'multiuser'), | -| | Attrs json, | -| | TargetID varchar(255), | -| | TargetType varchar(255), | -| | CreateAt bigint(20), | -| | UpdateAt bigint(20), | -| | DeleteAt bigint(20), | -| | UNIQUE(GroupID, TargetID, Name, DeleteAt) | -| | ); | -| | | -| | CREATE TABLE IF NOT EXISTS PropertyValues ( | -| | ID varchar(26) PRIMARY KEY, | -| | TargetID varchar(255) NOT NULL, | -| | TargetType varchar(255) NOT NULL, | -| | GroupID varchar(26) NOT NULL, | -| | FieldID varchar(26) NOT NULL, | -| | Value json, | -| | CreateAt bigint(20), | -| | UpdateAt bigint(20), | -| | DeleteAt bigint(20), | -| | UNIQUE(GroupID, TargetID, FieldID, DeleteAt) | -| | ); | -| | | -| | SET @preparedStatement = (SELECT IF( | -| | ( | -| | SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS | -| | WHERE table_name = 'PropertyValues' | -| | AND table_schema = DATABASE() | -| | AND index_name = 'idx_propertyvalues_targetid_groupid' | -| | ) > 0, | -| | 'SELECT 1', | -| | 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);' | -| | )); | -| | | -| | PREPARE createIndexIfNotExists FROM @preparedStatement; | -| | EXECUTE createIndexIfNotExists; | -| | DEALLOCATE PREPARE createIndexIfNotExists; | -| | `` | | | | -| | PostgreSQL | -| | | +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | +| | ID varchar(26) PRIMARY KEY, | +| | Name varchar(64) NOT NULL, | +| | UNIQUE(Name) | +| | ); | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyFields ( | +| | ID varchar(26) PRIMARY KEY, | +| | GroupID varchar(26) NOT NULL, | +| | Name varchar(255) NOT NULL, | +| | Type enum('text', 'select', 'multiselect', 'date', 'user', 'multiuser'), | +| | Attrs json, | +| | TargetID varchar(255), | +| | TargetType varchar(255), | +| | CreateAt bigint(20), | +| | UpdateAt bigint(20), | +| | DeleteAt bigint(20), | +| | UNIQUE(GroupID, TargetID, Name, DeleteAt) | +| | ); | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyValues ( | +| | ID varchar(26) PRIMARY KEY, | +| | TargetID varchar(255) NOT NULL, | +| | TargetType varchar(255) NOT NULL, | +| | GroupID varchar(26) NOT NULL, | +| | FieldID varchar(26) NOT NULL, | +| | Value json, | +| | CreateAt bigint(20), | +| | UpdateAt bigint(20), | +| | DeleteAt bigint(20), | +| | UNIQUE(GroupID, TargetID, FieldID, DeleteAt) | +| | ); | +| | | +| | SET @preparedStatement = (SELECT IF( | +| | ( | +| | SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS | +| | WHERE table_name = 'PropertyValues' | +| | AND table_schema = DATABASE() | +| | AND index_name = 'idx_propertyvalues_targetid_groupid' | +| | ) > 0, | +| | 'SELECT 1', | +| | 'CREATE INDEX idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID);' | +| | )); | +| | | +| | PREPARE createIndexIfNotExists FROM @preparedStatement; | +| | EXECUTE createIndexIfNotExists; | +| | DEALLOCATE PREPARE createIndexIfNotExists; | +| | | +| | | +| | **PostgreSQL**: | +| | | | | .. code-block:: sql | | | | -| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | -| | ID varchar(26) PRIMARY KEY, | -| | Name varchar(64) NOT NULL, | -| | UNIQUE(Name) | -| | ); | -| | | -| | DO | -| | $$ | -| | BEGIN | -| | IF NOT EXISTS (SELECT * FROM pg_type typ | -| | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace | -| | WHERE nsp.nspname = current_schema() | -| | AND typ.typname = 'property_field_type') THEN | -| | CREATE TYPE property_field_type AS ENUM ( | -| | 'text', | -| | 'select', | -| | 'multiselect', | -| | 'date', | -| | 'user', | -| | 'multiuser' | -| | ); | -| | END IF; | -| | END; | -| | $$ | -| | LANGUAGE plpgsql; | -| | | -| | CREATE TABLE IF NOT EXISTS PropertyFields ( | -| | ID varchar(26) PRIMARY KEY, | -| | GroupID varchar(26) NOT NULL, | -| | Name varchar(255) NOT NULL, | -| | Type property_field_type, | -| | Attrs jsonb, | -| | TargetID varchar(255), | -| | TargetType varchar(255), | -| | CreateAt bigint NOT NULL, | -| | UpdateAt bigint NOT NULL, | -| | DeleteAt bigint NOT NULL | -| | ); | -| | | -| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0; | -| | | -| | CREATE TABLE IF NOT EXISTS PropertyValues ( | -| | ID varchar(26) PRIMARY KEY, | -| | TargetID varchar(255) NOT NULL, | -| | TargetType varchar(255) NOT NULL, | -| | GroupID varchar(26) NOT NULL, | -| | FieldID varchar(26) NOT NULL, | -| | Value jsonb NOT NULL, | -| | CreateAt bigint NOT NULL, | -| | UpdateAt bigint NOT NULL, | -| | DeleteAt bigint NOT NULL | -| | ); | -| | | -| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; | -| | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); | +| | CREATE TABLE IF NOT EXISTS PropertyGroups ( | +| | ID varchar(26) PRIMARY KEY, | +| | Name varchar(64) NOT NULL, | +| | UNIQUE(Name) | +| | ); | +| | | +| | DO | +| | $$ | +| | BEGIN | +| | IF NOT EXISTS (SELECT * FROM pg_type typ | +| | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace | +| | WHERE nsp.nspname = current_schema() | +| | AND typ.typname = 'property_field_type') THEN | +| | CREATE TYPE property_field_type AS ENUM ( | +| | 'text', | +| | 'select', | +| | 'multiselect', | +| | 'date', | +| | 'user', | +| | 'multiuser' | +| | ); | +| | END IF; | +| | END; | +| | $$ | +| | LANGUAGE plpgsql; | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyFields ( | +| | ID varchar(26) PRIMARY KEY, | +| | GroupID varchar(26) NOT NULL, | +| | Name varchar(255) NOT NULL, | +| | Type property_field_type, | +| | Attrs jsonb, | +| | TargetID varchar(255), | +| | TargetType varchar(255), | +| | CreateAt bigint NOT NULL, | +| | UpdateAt bigint NOT NULL, | +| | DeleteAt bigint NOT NULL | +| | ); | +| | | +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyfields_unique ON PropertyFields (GroupID, TargetID, Name) WHERE DeleteAt = 0; | +| | | +| | CREATE TABLE IF NOT EXISTS PropertyValues ( | +| | ID varchar(26) PRIMARY KEY, | +| | TargetID varchar(255) NOT NULL, | +| | TargetType varchar(255) NOT NULL, | +| | GroupID varchar(26) NOT NULL, | +| | FieldID varchar(26) NOT NULL, | +| | Value jsonb NOT NULL, | +| | CreateAt bigint NOT NULL, | +| | UpdateAt bigint NOT NULL, | +| | DeleteAt bigint NOT NULL | +| | ); | +| | | +| | CREATE UNIQUE INDEX IF NOT EXISTS idx_propertyvalues_unique ON PropertyValues (GroupID, TargetID, FieldID) WHERE DeleteAt = 0; | +| | CREATE INDEX IF NOT EXISTS idx_propertyvalues_targetid_groupid ON PropertyValues (TargetID, GroupID); | | | `` | -+----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | v10.3 | The Classic Mobile App has been phased out. Please download the new v2 Mobile App from the | | | `Apple App Store `_ or | | | `Google Play Store `_. See more details | From 4963387a63d1d3d2f33648ef62bf564aadac24df Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Tue, 21 Jan 2025 10:26:17 +0200 Subject: [PATCH 24/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index e78739d755b..066e508fe37 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -110,7 +110,6 @@ Important Upgrade Notes | | ); | | | | | | DO | -| | $$ | | | BEGIN | | | IF NOT EXISTS (SELECT * FROM pg_type typ | | | INNER JOIN pg_namespace nsp ON nsp.oid = typ.typnamespace | @@ -126,7 +125,6 @@ Important Upgrade Notes | | ); | | | END IF; | | | END; | -| | $$ | | | LANGUAGE plpgsql; | | | | | | CREATE TABLE IF NOT EXISTS PropertyFields ( | From 234f6de7fe05ed6c4ac833b14ead4f70229594de Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 23 Jan 2025 10:55:56 +0200 Subject: [PATCH 25/40] Apply suggestions from code review Co-authored-by: Doug Lauder --- source/about/deprecated-features.rst | 2 +- source/about/mattermost-v10-changelog.md | 4 ++-- source/upgrade/important-upgrade-notes.rst | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source/about/deprecated-features.rst b/source/about/deprecated-features.rst index 5bcc38403f0..a7dc900bbbb 100644 --- a/source/about/deprecated-features.rst +++ b/source/about/deprecated-features.rst @@ -17,7 +17,7 @@ Mattermost Mobile App v2.25.0 Mattermost Server v10.5.0 ~~~~~~~~~~~~~~~~~~~~~~~~~ -- The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. +- The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in `this forum post `__. - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in `this forum post `__. Mattermost Server v10.4.0 diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index a7aca445a13..1ff9d0f6aa2 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -18,7 +18,7 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Upgrade - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle mounting and unmounting scenarios. - - The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). + - The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). ```{Important} @@ -49,7 +49,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa ### Bug Fixes - Fixed archived filter behavior in System Console > User Management > Channels to restore the ability to exclude archived channels. - - Fixed an issue where DMs/GMs with a `DeleteAt` flag in the database might cause issues with a couple APIs. + - Fixed an issue where DMs/GMs with a `DeleteAt` non-zero value in the database might cause issues with several APIs. - Fixed an issue where the team sidebar's mention count could be out of sync with the thread count. - Fixed an issue where replies with props could not be imported. - Fixed an issue where ``pluginapi.store.GetReplicaDB`` returned nil if masterDB was not initialized. diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 066e508fe37..4d193bca118 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -21,7 +21,7 @@ Important Upgrade Notes | | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle | | | mounting and unmounting scenarios. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| | The Mattermost server has stopped supporting manual plugin deployment. Plugins are deployed manually when an administrator or some deployment automation copies | +| | The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | | | prepackage the plugin bundles. See more details in `this forum post `_. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ From 225a1a9cac393dd05014ddb51794c10cd7327326 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 23 Jan 2025 10:56:33 +0200 Subject: [PATCH 26/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 4d193bca118..c449cc86551 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -21,7 +21,7 @@ Important Upgrade Notes | | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle | | | mounting and unmounting scenarios. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| | The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies | +| | The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead | | | prepackage the plugin bundles. See more details in `this forum post `_. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ From ddb0dbd709a0515f965fa0c402fe163753e211d8 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 23 Jan 2025 10:57:31 +0200 Subject: [PATCH 27/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 1ff9d0f6aa2..8b689f9f45f 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -15,12 +15,14 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Compatibility - Updated minimum Safari version to 17.4+ and minimum Firefox version to 119+. -### Upgrade +### Important Upgrade Notes - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. - - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle mounting and unmounting scenarios. - The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). +### Breaking Changes + - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle mounting and unmounting scenarios. + ```{Important} If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). ``` From d7fb8c0c4883d191554ae36265111a30bc39bad8 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 23 Jan 2025 11:27:09 +0200 Subject: [PATCH 28/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index baa9a94bdca..4d29dfcce71 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -30,7 +30,8 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa ### Improvements #### User Interface (UI) - - Pre-packaged Calls plugin [v1.5.0](https://github.com/mattermost/mattermost-plugin-calls/releases/tag/v1.5.0). + - Pre-packaged Boards plugin [v9.0.5](https://github.com/mattermost/mattermost-plugin-boards/releases/tag/v9.0.5). + - Pre-packaged Calls plugin [v1.5.1](https://github.com/mattermost/mattermost-plugin-calls/releases/tag/v1.5.1). - Pre-packaged MS Teams plugin [v2.1.0](https://github.com/mattermost/mattermost-plugin-msteams/releases/tag/v2.1.0). - Pre-packaged Channel Export plugin [v1.2.1](https://github.com/mattermost/mattermost-plugin-channel-export/releases/tag/v1.2.1). - Added the ability to modify post attachments during edit. @@ -58,7 +59,8 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Fixed an issue in ``SqlPostStore.PermanentDeletebyUser`` where no error was returned when 10K posts were exceeded. - Fixed an issue where a channel would no longer be exported for Bulk Export workflow if any of the users of a Direct or Group Message channel were permanently deleted. - Fixed an issue where the scroll position reset when custom emojis were requested. - - Fixed a panic during LDAP syncing. + - Fixed a panic during LDAP synchronization. + - Fixed an issue where the bulk export retention job would accidentally delete non-bulk export files and directories [MM-60888](https://mattermost.atlassian.net/browse/MM-60888). ### config.json New setting options were added to ``config.json``. Below is a list of the additions and their default values on install. The settings can be modified in ``config.json``, or the System Console when available. From 6ff8468a1f3d4c6048cc6eb2eaae966bf5f0822b Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 24 Jan 2025 10:20:10 +0200 Subject: [PATCH 29/40] Update mattermost-server-releases.md --- source/about/mattermost-server-releases.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-server-releases.md b/source/about/mattermost-server-releases.md index 9eed885a43a..0419211d776 100644 --- a/source/about/mattermost-server-releases.md +++ b/source/about/mattermost-server-releases.md @@ -19,7 +19,7 @@ Mattermost releases a new server version on the 16th of each month in [binary fo | **Release** | **Released on** | **Support ends** | |:---|:---|:---| -| v10.5 [Download](https://releases.mattermost.com/10.5.0/mattermost-10.5.0-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2025-02-16 | 2025-11-15 {ref}`EXTENDED ` | +| v10.5 [Download](https://releases.mattermost.com/10.5.0/mattermost-10.5.0-linux-amd64.tar.gz) \| {ref}`Changelog ` \| [SBOM download](https://github.com/mattermost/mattermost/releases/download/v10.5.0/sbom-mattermost-v10.5.0.json) | 2025-02-16 | 2025-11-15 {ref}`EXTENDED ` | | v10.4 [Download](https://releases.mattermost.com/10.4.2/mattermost-10.4.2-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2025-01-16 | 2025-04-15 | | v10.3 [Download](https://releases.mattermost.com/10.3.3/mattermost-10.3.3-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2024-12-16 | 2025-03-15 | | v10.2 [Download](https://releases.mattermost.com/10.2.3/mattermost-10.2.3-linux-amd64.tar.gz) \| {ref}`Changelog ` | 2024-11-15 | 2025-02-15 | From f6ca3c7a482f8cb58e0b6a36e65c79f5db878ece Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 24 Jan 2025 14:02:26 +0200 Subject: [PATCH 30/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 4d29dfcce71..9f047734342 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -17,6 +17,7 @@ Support for Mattermost Server v9.5 [Extended Support Release](https://docs.matte ### Important Upgrade Notes - v10.5 introduces Property System Architecture schema migration. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. + - The Compliance Export system has been overhauled. See the [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html) for details. - The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead prepackage the plugin bundles. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-manual-plugin-deployment/21192). - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). @@ -43,7 +44,6 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Added the migrations, store layer and service for the Property System Architecture. - Added the Custom Profile Attribute fields store, app and API endpoints. - Added the **System Console** user interface for managing Custom Profile Attributes (User Properties). - - Added a compliance export overhaul. See announcement: . - Introduced V2 of the Support Packet, containing improvement diagnosis information for high-availability deployments. - Added a new ``Fallback`` field to ``PluginSettingsSection`` that controls whether the settings defined under the section should still render as fallback when the plugin is disabled. - Updated the library used for tooltips throughout the app to fix a memory leak. From d9a03d634836b884d5a257c0de7a6bde9297f8cd Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 24 Jan 2025 14:07:19 +0200 Subject: [PATCH 31/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index c449cc86551..90829ca1a3b 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -29,6 +29,22 @@ Important Upgrade Notes | | installations to use the official Linux builds. See more details in | | | `this forum post `_. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| | v10.5 introduces updates to the Compliance Export functionality, which will modify how exported data is structured, stored and processed. These changes | +| | primarily affect System Administrators and the main changes are outlined below. See more details in | +| | the `Compliance Export documentation `_. | +| | | +| | Output files and directories have changed - Previously we were exporting a single zip containing all the batch directories. Now we will export a single | +| | directory, and under that directory each batch will be its own zip. | +| | | +| | Compliance exports performance improvements - Compliance exports should now be at least 50% faster, and possibly more. | +| | | +| | Logic improvements - We’ve made improvements and fixed bugs that we found. | +| | | +| | Changes specific to each Export Type - The export output formats have been changed. Some fields’ semantic meaning has been clarified, and there are a number of | +| | new fields. Our goal was to maintain backwards compatibility while fixing the logic bugs. | +| | | +| | See the :doc:`compliance export product documentation for details. | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | As part of the Property System Architecture feature, Mattermost v10.5 is going to run a set of migrations to add new tables to the schema. This migration only | | | creates new tables and indexes, so there is no impact on preexisting data. | | | | From be9fc662926532267281284df448af8228dfbc58 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Tue, 28 Jan 2025 07:59:23 +0200 Subject: [PATCH 32/40] Update source/about/mattermost-v10-changelog.md Co-authored-by: Doug Lauder --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 4e47fafd1c4..e269cf9decb 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -22,7 +22,7 @@ Support for Mattermost Server v9.11 [Extended Support Release](https://docs.matt - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). ### Breaking Changes - - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle mounting and unmounting scenarios. + - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle mounting and unmounting scenarios. ```{Important} If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). From 35d86388b6f2615af9900d436534cfc08ca94749 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Tue, 28 Jan 2025 07:59:54 +0200 Subject: [PATCH 33/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index 98d5c08d735..e87228a949c 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -18,7 +18,7 @@ Important Upgrade Notes +====================================================+==================================================================================================================================================================+ | v10.5 | The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using | | | ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly | -| | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins need to update their components to properly handle | +| | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle | | | mounting and unmounting scenarios. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies | From 4dbcd695b41bf5b7af5b8fad30294e0fff7f4715 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Wed, 29 Jan 2025 09:39:47 +0200 Subject: [PATCH 34/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index e269cf9decb..5feb179bfca 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -60,7 +60,8 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Fixed an issue where a channel would no longer be exported for Bulk Export workflow if any of the users of a Direct or Group Message channel were permanently deleted. - Fixed an issue where the scroll position reset when custom emojis were requested. - Fixed a panic during LDAP synchronization. - - Fixed an issue where the bulk export retention job would accidentally delete non-bulk export files and directories [MM-60888](https://mattermost.atlassian.net/browse/MM-60888). + - Fixed an issue where the bulk export retention job would accidentally delete non-bulk export files and directories. + - Fixed an issue where archived channels were not searchable with Elasticsearch/OpenSearch if ``TeamSettings.ExperimentalViewArchivedChannels`` was enabled. If there are old channels which were archived before a bulk index was run, users would need to purge indexes, and do bulk index again. Because those old archived channels are removed from the index when a bulk index is run. ### config.json New setting options were added to ``config.json``. Below is a list of the additions and their default values on install. The settings can be modified in ``config.json``, or the System Console when available. From 791c64daa3a0b86f6fa6f8bf166dd10a4109e93d Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Thu, 30 Jan 2025 09:18:04 +0200 Subject: [PATCH 35/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 5feb179bfca..4f95229f1a4 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -35,6 +35,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Pre-packaged Calls plugin [v1.5.1](https://github.com/mattermost/mattermost-plugin-calls/releases/tag/v1.5.1). - Pre-packaged MS Teams plugin [v2.1.0](https://github.com/mattermost/mattermost-plugin-msteams/releases/tag/v2.1.0). - Pre-packaged Channel Export plugin [v1.2.1](https://github.com/mattermost/mattermost-plugin-channel-export/releases/tag/v1.2.1). + - Pre-packaged Jira plugin [v4.2.0](https://github.com/mattermost/mattermost-plugin-jira/releases/tag/v4.2.0). - Added the ability to modify post attachments during edit. - The channel bookmarks bar is now hidden when there are no bookmarks in the channel. Bookmarks can now be added from the channel menu. - Removed the video from the onboarding checklist. From ff4d8b1ee3d9be62e9bfaf0c8d6807a483c76dd6 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 31 Jan 2025 14:34:47 +0200 Subject: [PATCH 36/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index 4f95229f1a4..fa96fe8421d 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -31,7 +31,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa ### Improvements #### User Interface (UI) - - Pre-packaged Boards plugin [v9.0.5](https://github.com/mattermost/mattermost-plugin-boards/releases/tag/v9.0.5). + - Pre-packaged Boards plugin [v9.1.0](https://github.com/mattermost/mattermost-plugin-boards/releases/tag/v9.1.0). - Pre-packaged Calls plugin [v1.5.1](https://github.com/mattermost/mattermost-plugin-calls/releases/tag/v1.5.1). - Pre-packaged MS Teams plugin [v2.1.0](https://github.com/mattermost/mattermost-plugin-msteams/releases/tag/v2.1.0). - Pre-packaged Channel Export plugin [v1.2.1](https://github.com/mattermost/mattermost-plugin-channel-export/releases/tag/v1.2.1). From a60b96aa6096068f3d5abcb1b4375c39f1927e75 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Mon, 3 Feb 2025 13:42:11 +0200 Subject: [PATCH 37/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index fa96fe8421d..f93238d3f7e 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -86,7 +86,7 @@ New setting options were added to ``config.json``. Below is a list of the additi - Slack import through the CLI fails if email notifications are enabled. ### Contributors - - + - [agarciamontoro](https://github.com/agarciamontoro), [agardelein](https://github.com/agardelein), [agnivade](https://github.com/agnivade), [amyblais](https://github.com/amyblais), [andrleite](https://github.com/andrleite), [angeloskyratzakos](https://github.com/angeloskyratzakos), [Aryakoste](https://github.com/Aryakoste), [asaadmahmood](https://github.com/asaadmahmood), [AulakhHarsh](https://github.com/AulakhHarsh), [ayush-chauhan233](https://github.com/ayush-chauhan233), [BenCookie95](https://github.com/BenCookie95), [bshumylo](https://translate.mattermost.com/user/bshumylo), [calebroseland](https://github.com/calebroseland), [code1492](https://github.com/code1492), [cpoile](https://github.com/cpoile), [crspeller](https://github.com/crspeller), [ctlaltdieliet](https://translate.mattermost.com/user/ctlaltdieliet), [cwarnermm](https://github.com/cwarnermm), [devinbinnie](https://github.com/devinbinnie), [dmanpearl](https://github.com/dmanpearl), [Dschoordsch](https://github.com/Dschoordsch), [ebuildy](https://github.com/ebuildy), [Eleferen](https://translate.mattermost.com/user/Eleferen), [emmapeel2](https://github.com/emmapeel2), [enahum](https://github.com/enahum), [enzowritescode](https://github.com/enzowritescode), [esarafianou](https://github.com/esarafianou), [fmartingr](https://github.com/fmartingr), [frankps](https://translate.mattermost.com/user/frankps), [fsilye](https://github.com/fsilye), [fume4mattermost](https://github.com/fume4mattermost), [gabrieljackson](https://github.com/gabrieljackson), [hannaparks](https://github.com/hannaparks), [hanzei](https://github.com/hanzei), [harshilsharma63](https://github.com/harshilsharma63), [henrique](https://translate.mattermost.com/user/henrique), [hmhealey](https://github.com/hmhealey), [Honsei901](https://github.com/Honsei901), [hpflatorre](https://github.com/hpflatorre), [ifoukarakis](https://github.com/ifoukarakis), [isacikgoz](https://github.com/isacikgoz), [jespino](https://github.com/jespino), [johnsonbrothers](https://github.com/johnsonbrothers), [jprusch](https://github.com/jprusch), [juliemanalo](https://github.com/juliemanalo), [JulienTant](https://github.com/JulienTant), [jure](https://translate.mattermost.com/user/jure), [jwilander](https://github.com/jwilander), [kaakaa](https://github.com/kaakaa), [kasyap1234](https://github.com/kasyap1234), [kayazeren](https://translate.mattermost.com/user/kayazeren), [kondo97](https://github.com/kondo97), [Kshitij-Katiyar](https://github.com/Kshitij-Katiyar), [larkox](https://github.com/larkox), [lieut-data](https://github.com/lieut-data), [lynn915](https://github.com/lynn915), [M-ZubairAhmed](https://github.com/M-ZubairAhmed), [majo](https://translate.mattermost.com/user/majo), [marianunez](https://github.com/marianunez), [master7](https://translate.mattermost.com/user/master7), [matthewbirtch](https://github.com/matthewbirtch), [MattSilvaa](https://github.com/MattSilvaa), [mgdelacroix](https://github.com/mgdelacroix), [Morgansvk](https://github.com/Morgansvk), [mvitale1989](https://github.com/mvitale1989), [NadavTasher](https://github.com/NadavTasher), [narutoxboy](https://translate.mattermost.com/user/narutoxboy), [NCPSNetworks](https://github.com/NCPSNetworks), [nickmisasi](https://github.com/nickmisasi), [otbutz](https://github.com/otbutz), [pvev](https://github.com/pvev), [rahimrahman](https://github.com/rahimrahman), [Rajat-Dabade](https://github.com/Rajat-Dabade), [Reinkard](https://github.com/Reinkard), [robregonm](https://github.com/robregonm), [sarthak0714](https://github.com/sarthak0714), [saturninoabril](https://github.com/saturninoabril), [SaurabhSharma-884](https://github.com/SaurabhSharma-884), [sbishel](https://github.com/sbishel), [Sharuru](https://github.com/Sharuru), [stafot](https://github.com/stafot), [streamer45](https://github.com/streamer45), [svelle](https://github.com/svelle), [ThrRip](https://github.com/ThrRip), [toninis](https://github.com/toninis), [tormi](https://translate.mattermost.com/user/tormi), [uday-rana](https://github.com/uday-rana), [unode](https://github.com/unode), [varghesejose2020](https://github.com/varghesejose2020), [Victor-Nyagudi](https://github.com/Victor-Nyagudi), [vish9812](https://github.com/vish9812), [wetneb](https://github.com/wetneb), [wiggin77](https://github.com/wiggin77), [Willyfrog](https://github.com/Willyfrog), [willypuzzle](https://github.com/willypuzzle), [X1Vi](https://github.com/X1Vi), [yasserfaraazkhan](https://github.com/yasserfaraazkhan) (release-v10.4-feature-release)= ## Release v10.4 - [Feature Release](https://docs.mattermost.com/about/release-policy.html#release-types) From d0ac4fe333436bd39ca0d5e73b11cf1351f24484 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 7 Feb 2025 18:40:47 +0200 Subject: [PATCH 38/40] Apply suggestions from code review Co-authored-by: Maria A Nunez --- source/about/mattermost-v10-changelog.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index f93238d3f7e..cb4ef96d8f6 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -22,7 +22,7 @@ Support for Mattermost Server v9.11 [Extended Support Release](https://docs.matt - Mattermost has stopped official Mattermost server builds for the Microsoft Windows operating system. Administrators should migrate existing Mattermost server installations to use the official Linux builds. See more details in [this forum post](https://forum.mattermost.com/t/deprecation-notice-server-builds-for-microsoft-windows/21498). ### Breaking Changes - - The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle mounting and unmounting scenarios. + - The internal workings of the ``PluginLinkComponent`` in the webapp have been changed to unmounted link tooltips from the DOM by default, significantly improving performance. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. They are only mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle mounting and unmounting scenarios. ```{Important} If you upgrade from a release earlier than v10.3, please read the other [Important Upgrade Notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html). @@ -39,7 +39,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Added the ability to modify post attachments during edit. - The channel bookmarks bar is now hidden when there are no bookmarks in the channel. Bookmarks can now be added from the channel menu. - Removed the video from the onboarding checklist. - - Improved accessibility of many form labels throughout the app. + - Improved accessibility throughout the webapp by fixing several issues around keyboard navigation and screen reader focused on modals, RHS and core chat functionality. #### Administration - Added the migrations, store layer and service for the Property System Architecture. From 7cac7db562315a425ec20951695f930f5878a047 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 7 Feb 2025 18:41:53 +0200 Subject: [PATCH 39/40] Update mattermost-v10-changelog.md --- source/about/mattermost-v10-changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/about/mattermost-v10-changelog.md b/source/about/mattermost-v10-changelog.md index cb4ef96d8f6..f5bfc9f66d5 100644 --- a/source/about/mattermost-v10-changelog.md +++ b/source/about/mattermost-v10-changelog.md @@ -39,7 +39,7 @@ If you upgrade from a release earlier than v10.3, please read the other [Importa - Added the ability to modify post attachments during edit. - The channel bookmarks bar is now hidden when there are no bookmarks in the channel. Bookmarks can now be added from the channel menu. - Removed the video from the onboarding checklist. - - Improved accessibility throughout the webapp by fixing several issues around keyboard navigation and screen reader focused on modals, RHS and core chat functionality. + - Improved accessibility throughout the webapp by fixing several issues around keyboard navigation and screen reader focused on modals, right-hand side and core chat functionality. #### Administration - Added the migrations, store layer and service for the Property System Architecture. From eece287bc48f93d9bf50289579a1c0552234da38 Mon Sep 17 00:00:00 2001 From: Amy Blais <29708087+amyblais@users.noreply.github.com> Date: Fri, 7 Feb 2025 18:42:49 +0200 Subject: [PATCH 40/40] Update important-upgrade-notes.rst --- source/upgrade/important-upgrade-notes.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/source/upgrade/important-upgrade-notes.rst b/source/upgrade/important-upgrade-notes.rst index e87228a949c..4fec2af89d7 100644 --- a/source/upgrade/important-upgrade-notes.rst +++ b/source/upgrade/important-upgrade-notes.rst @@ -16,10 +16,9 @@ Important Upgrade Notes | If you’re upgrading | Then... | | from a version earlier than... | | +====================================================+==================================================================================================================================================================+ -| v10.5 | The internal workings of the ``PluginLinkComponent`` in the webapp have been improved. Plugins that register link tooltips using | -| | ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. Link tooltips are now unmounted from the DOM by default, significantly | -| | improving performance. They are only mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle | -| | mounting and unmounting scenarios. | +| v10.5 | The internal workings of the ``PluginLinkComponent`` in the webapp have been changed to unmounted link tooltips from the DOM by default, significantly improving | +| | performance. Plugins that register link tooltips using ``registerLinkTooltipComponent`` will see changes in how tooltip components are managed. They are only | +| | mounted when a link is hovered over or focused. As a result, plugins may need to update their components to properly handle mounting and unmounting scenarios. | | +------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | The Mattermost server has stopped supporting manual plugin deployment. Plugins were deployed manually when an administrator or some deployment automation copies | | | the contents of a plugin bundle into the server's working directory. If a manual or automated deployment workflow is still required, administrators can instead |