v9 changelog#
Important
Support for Mattermost Server v9.5 Extended Support Release is coming to the end of its life cycle on November 15, 2024. Upgrading to Mattermost Server v9.11 or later is recommended.
Upgrading from ESR-to-ESR (
major
->major_next
) is fully supported and tested. However, upgrading from ESR-to-ESR (major
tomajor+2
) is supported, but not tested. If you plan to upgrade across multiple releases, we strongly recommend upgrading from an ESR to another ESR. For example, if you’re upgrading from the v8.1 ESR, upgrade to the v9.5 ESR or the v9.11 ESR.See the Important Upgrade Notes documentation for details on upgrading to a newer release.
See the changelog in progress for details about the upcoming release.
Release v9.11 - Extended Support Release#
Release day: 2024-08-16
Important Upgrade Notes#
Added support for Elasticsearch v8. Also added Beta support for Opensearch. A new config setting
ElasticsearchSettings.Backend
has been added to differentiate between Elasticsearch and Opensearch. The default value is Elasticsearch. Note that this will break support for AWS Elasticsearch v7.10. The official v8 client only works from Elasticsearch v7.10+ versions. Customers using AWS Elasticsearch are requested to upgrade to AWS Opensearch for future compatibility. Upgrade steps can be found here: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/version-migration.html.Note: The value cannot be dynamically changed from the System Console while the server is running. One needs to shut down the server, manually edit the config, and then restart the server when switching from one backend to another, and either use mmctl or edit the config manually.
If you are using Opensearch, you must set the backend to opensearch. Otherwise Mattermost will not work.
If you are using Elasticsearch v8, be sure to set
action.destructive_requires_name
tofalse
inelasticsearch.yml
to allow for wildcard operations to work.For AWS customers on Opensearch, do not enable “compatibility mode”.
Compatibility#
Updated minimum Edge and Chrome versions to 126+.
Added Ubuntu Noble support.
Important
If you upgrade from a release earlier than v9.5, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged Calls version v0.29.1.
Pre-packaged GitHub plugin version v2.3.0.
Added user interface improvements to the keyboard shortcuts modal.
Added a message “Editing this message with an
@mention
will not notify the recipient” in the post edit dialog.Made the appearance of several tooltips more consistent.
Updated the help text in the Direct Messages modal.
Emojis are now placed at cursor position while editing messages.
Made keyboard shortcuts modal content DIV-accessible via the keyboard.
Added Channel Bookmarks user interface (disabled by default and behind a feature flag).
Administration#
Added a new feature where an admin with user management permission can now edit a user’s settings in System Console > Users.
Added download functionality for admins to download server logs from Server Logs page in the System Console.
LDAP vendor errors are now included in the Support Packet.
Added metadata to the Support Packet.
We are now adding the user’s ID and session ID to the audit log’s Actor field for the login event, to match what we provide for the logout event.
Added support for custom status in bulk export/import.
Marked the
RemoteTeamId
field of theRemoteCluster
entity as deprecated.Added log
Name
andDisplayName
of groups.Logged fields of users are now updated.
Performance#
Added platform related information to the notification metrics.
Added additional information to INP and LCP client metrics.
Added minor performance improvements to webapp initialization.
mmctl#
Added two new commands to mmctl,
mmctl job list
andmmctl job update
.Panic message is now printed when mmctl panics.
Setting
AdvancedLoggingJSON
via mmctl is now supported.
Bug Fixes#
Fixed an issue that displayed a wrong count for custom group members on the notification warning.
Fixed a panic when the password was too long.
Fixed an issue where configuration patches through mmctl did not correctly merge plugin configuration values.
Fixed issues with the OpenID local development.
Fixed an issue where Latex was not rendered in a code block as code when Latex rendering was disabled.
Fixed an issue with saving custom roles.
Fixed an issue with the left-hand side scrollbar auto-hide functionality for Chrome and Safari.
Fixed Group Message to private channel conversion edge cases.
Fixed an issue where users with the user management permission were unable to view the list of users in the System Console > Users page.
Fixed more web app performance reports being marked as outdated after a user’s computer woke up from sleep.
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:#
Under
ServiceSettings
inconfig.json
:Added
TerminateSessionsOnPasswordChange
to configure the sessions revocation during password resets.
Changes to the Enterprise plan:#
Under
ElasticsearchSettings
inconfig.json
:Added
Backend
to differentiate between Elasticsearch and Opensearch. The default value is Elasticsearch.
API Changes#
Added new API endpoints to manage remote clusters.
Added two new query parameters to
GET /api/v4/jobs, job_type
and status.Added a new endpoint
PATCH /api/v4/jobs/{job_id}/status
.Updated
AddChannelMember
to accept a list of userIds.Added six new permissions to manage the status of particular jobs:
PermissionManagePostBleveIndexesJob
PermissionManageDataRetentionJob
PermissionManageComplianceExportJob
PermissionManageElasticsearchPostIndexingJob
PermissionManageElasticsearchPostAggregationJob
PermissionManageLdapSyncJob
Go Version#
v9.11 is built with Go
v1.21.8
.
Open Source Components#
Removed
stylelint
, and addedelastic/go-elasticsearch
to https://github.com/mattermost/mattermost/.
Known Issues#
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.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
agarciamontoro, agnivade, amyblais, andreabia, andrleite, angeloskyratzakos, Aryakoste, asaadmahmood, AshishDhama, ayusht2810, bbodenmiller, BenCookie95, BrandonS09, calebroseland, Camillarhi, catalintomai, Celeo, chessmadridista, ckaznable, cpoile, crspeller, ctlaltdieliet, cwarnermm, danielsischy, devinbinnie, Eleferen, enahum, enzowritescode, ewwollesen, fmartingr, frankps, gabrieljackson, Gesare5, grinapo, hanzei, harmeet01singh, harshilsharma63, hmhealey, ifoukarakis, imanmagomedov.said, isacikgoz, jespino, jprusch, JulienTant, jwilander, kaakaa, kalil0321, KellieSue, Kshitij-Katiyar, larkox, lieut-data, M-ZubairAhmed, majo, marianunez, master7, matt-w99, matthewbirtch, matthew-w, MeHow25, mgdelacroix, mickmister, milotype, Mohamed-sobhi95, mvitale1989, natalie-hub, nickmisasi, ningthoujamSwamikumar, Pawel1894, phoinixgrr, poppfredslund, pvev, raghavaggarwal2308, rahimrahman, Rajat-Dabade, recontech404, rOt779kVceSgL, sadohert, saturninoabril, sbishel, shaon72, Sharuru, shieldsjared, stafot, streamer45, suraj-anthwal, svelle, ThrRip, tnir, toninis, varghesejose2020, vhaska, wiersgallak, wiggin77, yasserfaraazkhan, yomiadetutu1, ythosa, zenocode-org, ZubairImtiaz3
Release v9.10 - Feature Release#
9.10.1, released 2024-07-22
Mattermost v9.10.1 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Pre-packaged Mattermost Copilot plugin version v0.8.3.
Ensured that the web app only requests notification permissions when needed. Fixed an issue with desktop notifications not being sent on Safari MM-59416.
Fixed an issue where the app crashed on iOS Safari MM-59296.
Mattermost v9.10.1 contains no database or functional changes.
9.10.0, released 2024-07-16
Original 9.10.0 release.
Important
If you upgrade from a release earlier than v9.5, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged GitLab plugin version v1.9.1.
Pre-packaged Mattermost Copilot plugin version v0.8.1.
Pre-packaged Calls plugin version v0.28.2.
Re-designed the user profile popover and improved its performance.
Added banner to prompt users to give desktop notification permissions when opening the app.
Increased the width of the profile picture setting to match other user settings.
Improved screen reader support for the emoji picker.
Improved the accessibility of plugin buttons in the channel header.
Administration#
Extended
PluginSiteStatsHandler
to support more advanced visualization types.Stopped broadcasting
channel_deleted/channel_restored
messages from private channels to non-members.
Performance#
Added page load time to client performance metrics.
Added a metric to track time it takes for the Threads view to load.
Added support for mobile client metrics.
Increased the range of LCP metrics that can be measured.
Added polling of
getStatusesByIds
andgetProfilesByIds
network calls. The interval of which is configurable with theUsersStatusAndProfileFetchingPollIntervalMilliseconds
configuration variable.Added defer loading plugins scripts.
Bug Fixes#
Fixed an issue where the
RefreshPostStats
job could fail.Fixed an issue where attempting to create a team with the URL of an existing team showed the wrong error message.
Fixed an issue where
visibilitychange
JavaScript browser event had not been added for updating the user’s current timezone.Fixed an issue where the last admin in the system was allowed to be demoted.
Fixed an issue where banners set by system administrators did not stack below system banners, and appeared underneath them instead. Existing system banners have remained unchanged.
Fixed an issue with an incorrect wrapping of long words in numbered lists.
Fixed an incorrect behavior of the image proxy when site URL is changed.
Fixed an issue where cache invalidation messages for websocket connections were not being sent across the cluster, causing missed websocket events.
Fixed
EnableClientMetrics
setting not being available in the System Console.
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:#
Under
ExperimentalSettings
inconfig.json
:Added
UsersStatusAndProfileFetchingPollIntervalMilliseconds
to configure the interval ofgetStatusesByIds
andgetProfilesByIds
network calls.
API Changes#
Added a new plugin API endpoint
GetUsersByIds
to retrieve a list of users by their ids.
Go Version#
v9.10 is built with Go
v1.21.8
.
Known Issues#
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
abhijit-singh, aeomin, agarciamontoro, agnivade, ahmadJT, amyblais, andrleite, apshada, Aryakoste, asaadmahmood, AshishDhama, BenCookie95, BillAnderson304, Boruus, BrandonS09, bruno-keiko, calebroseland, Camillarhi, catalintomai, chessmadridista, ckaznable, coltoneshaw, cpoile, crspeller, ctlaltdieliet, cwarnermm, devinbinnie, DHaussermann, DSchalla, Eleferen, emdecr, enahum, enzowritescode, esarafianou, EyeCantCU, ezekielchow, fmartingr, frankps, gabrieljackson, Gesare5, hanzei, harshilsharma63, hmhealey, homerCOD, ifoukarakis, isacikgoz, jasonblais, jespino, johnsonbrothers, jprusch, JtheBAB, JulienTant, kaakaa, kayazeren, Kshitij-Katiyar, larkox, lieut-data, lindalumitchell, lynn915, M-ZubairAhmed, majo, marianunez, maruTA-bis5, master7, matt-w99, matthew-w, matthewbirtch, MattSilvaa, mgdelacroix, mickmister, mojahani, mvitale1989, nbruneau71250, nickmisasi, phoinixgrr, pvev, raghavaggarwal2308, Rajat-Dabade, sadohert, saturninoabril, sbishel, sri-byte, stafot, streamer45, ThrRip, tnir, toninis, varghesejose2020, wiggin77, willypuzzle, yasserfaraazkhan, yomiadetutu1, zenocode-org
Release v9.9 - Feature Release#
9.9.2, released 2024-07-22
Mattermost v9.9.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.9.2 contains no database or functional changes.
9.9.1, released 2024-07-02
Mattermost v9.9.1 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue where banners set by system administrators did not stack below system banners, but rather appeared underneath them. Existing system banners have remained unchanged.
Removed feature flag which prevented enabling
MetricsSettings.EnableClientMetrics
MM-58823.Added a page load time to the client performance metrics MM-58359.
Fixed web app performance reports being marked as outdated after the user’s computer woke up from sleep MM-58772.
Increased range of LCP metrics and Load Event End metrics that can be measured MM-59033.
Fixed an error caused by performance telemetry when using Firefox with
beacon.enabled
set tofalse
MM-58777.Mattermost v9.9.1 contains no database or functional changes.
9.9.0, released 2024-06-14
Original 9.9.0 release.
Compatibility#
Updated minimum macOS version to 12+ and minimum Safari version to 17+.
Important
If you upgrade from a release earlier than v9.5, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged Calls plugin version v0.27.0.
Pre-packaged Jira plugin version v4.1.1.
Pre-packaged GitLab plugin version v1.9.0.
Pre-packaged Zoom plugin version v1.8.0.
Updated the default themes to reduce eye strain (particularly on the dark themes).
Added UI improvements to the core layout.
Improved error text when inviting guests to a team.
Increased the visibility Mattermost edition in-product when using the free edition.
Added an Unsupported label to the Team/E0 editions in the product menu.
Improved the look and feel of the True/False selector in the System Console.
Updated the channel header layout to reduce height and simplify the UI.
Administration#
Removed safety limit error message in compiled Team Edition and unlicensed Enterprise Edition deployments when message count exceeds 5 million posts.
Adjusted safety limit error message to show when users exceed 5,000 in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are unavailable.
ERROR_SAFE_LIMITS_EXCEEDED
.Improved the message length validation step in the
mmctl import validate
command.Added shell completion to
mmctl user active
andmmctl user deactivate
.Removed support for self-serve purchases of Mattermost Subscriptions in various flows, throughout Cloud and Self Hosted environments.
Removed support for self-serve true up review submission in the System Console.
Added streaming support to the file attachments import process.
Added LDAP job command to mmctl.
Made LDAP sync jobs more resilient against errors.
Removed the
PostPriority
feature flag.Improved the error message of
NotFound
errors in store.Added support for post priority to incoming webhooks and outgoing webhook responses.
Added a validation that the payload for an open Interactive Dialog request is valid according to the rules at https://developers.mattermost.com/integrate/plugins/interactive-dialogs/.
Unblocked notification calls by using usernames instead of full names in case of a missing user profile.
Increased the maximum password limit from 64 to 72 characters (
PasswordMaximumLength
).
Performance#
Added the initial version of new client-side performance metrics to track web app performance and can be monitored in new Grafana board.
Added a metric to track time it takes for the right-hand side to load.
Improved js memory profile of status’s reducers.
When a user receives a new post that is part of a thread from a root post in a channel they are not currently viewing, we do not fetch the complete root post and its thread posts immediately. However, we still store the newly received post. The root post and its thread posts are only fetched when the user navigates to that specific channel.
Bug Fixes#
Fixed an issue with
aria-label
for sidebar channel buttons.Fixed an issue where any remaining unclosed database RPC connections were not closed after a plugin shut down.
Fixed an issue where the right-hand side stole the focus when coming back from threads or drafts.
Fixed an issue where a proxy link was copied instead of the original image link when copying a post that included an embedded image.
Fixed an issue where the user status would incorrectly get stuck to online after the user closed the tab.
Fixed an issue where on some servers the user could not see the member count in the Browse Channels dialog.
Fixed an issue with inline display of WebP images accessed through the public-link feature.
Fixed an issue where it wasn’t clear that the
mmctl import process --bypass-upload --local
doesn’t work if the server is in High Availability.Fixed an issue where the user status would incorrectly be set to offline without checking for connections in other nodes in an High Availability cluster.
Fixed a longstanding issue where the @mention auto-complete could erase post text following the auto-completed @mention.
Fixed an issue with status management to avoid missing notifications.
Fixed an issue where audit events were not added for OAuth logins.
Fixed an issue with the error check in the message export process.
Fixed an issue where pasting in the post text box could not always paste without formatting.
Fixed some plugin settings with defaults not changing value.
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:#
Under
ExperimentalSettings
inconfig.json
:Added
DisableWakeUpReconnectHandler
to disable the wake up on reconnect handler.
Removed
SelfHostedPurchase
setting.
Changes to the Enterprise plan:#
Under
MetricsSettings
inconfig.json
:Added a feature flag and a setting
EnableClientMetrics
to control new client performance metrics.Added a setting for notification metrics
EnableNotificationMetrics
.
Self-hosted system administrators can now configure all
ExperimentalAuditSettings
through the user interface in theSystem Console
. Cloud administrators can now change theAdvancedLoggingJSON
value for theExperimentalAuditSettings
. This is the only configuration that Cloud administrators are able to adjust. Feature flagExperimentalAuditSettingsSystemConsoleUI
must be enabled in order to leverage this new user interface.
Websocket Event Changes#
Changed the semantics of the
mattermost_http_websockets_total
metric to track all open WebSocket connections, regardless of whether they are authenticated.Added a
origin_client
label to themattermost_http_websockets_total
Prometheus metric.
Go Version#
v9.9 is built with Go
v1.21.8
.
Open Source Components#
Removed
@stripe/react-stripe-js
and@stripe/stripe-js
, and addedweb-vitals
at https://github.com/mattermost/mattermost.
Known Issues#
Some Cloud workspaces unexpectedly received emails about license expiration.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
agarciamontoro, agnivade, amyblais, andrleite, arush-vashishtha, asaadmahmood, ayusht2810, azigler, BenCookie95, bndn, calebroseland, coltoneshaw, cpoile, crspeller, ctlaltdieliet, cwarnermm, devinbinnie, DHaussermann, Eleferen, emdecr, enahum, enzowritescode, fasal26, fmartingr, gabrieljackson, grundleborg, hanzei, harshilsharma63, hmhealey, ifoukarakis, isacikgoz, jespino, joakim.rivera, johnsonbrothers, jprusch, JulienTant, kaakaa, Kshitij-Katiyar, larkox, lieut-data, M-ZubairAhmed, majo, marianunez, marlenekoh, master7, matt-w99, matthew-w, matthewbirtch, MeHow25, mgdelacroix, mickmister, mojahani, morgancz, mvitale1989, nickmisasi, nixusUM, orimaimon, phoinixgrr, piotr-lasota, pjenicot, pmokeev, rOt779kVceSgL, saturninoabril, sbishel, spirosoik, sri-byte, stafot, streamer45, stylianosrigas, svelle, tarrow, ThrRip, tnir, toninis, umrkhn, varghesejose2020, vish9812, wiggin77, yasserfaraazkhan, yomiadetutu1, zsrv
Release v9.8 - Feature Release#
9.8.3, released 2024-07-22
Mattermost v9.8.3 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.8.3 contains no database or functional changes.
9.8.2, released 2024-07-02
Mattermost v9.8.2 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue where banners set by system administrators did not stack below system banners, but rather appeared underneath them. Existing system banners have remained unchanged.
Mattermost v9.8.2 contains no database or functional changes.
9.8.1, released 2024-06-03
Mattermost v9.8.1 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Removed a safety limit error message in compiled Team Edition and unlicensed Enterprise Edition deployments when message count exceeds 5 million posts.
Fixed an issue with some plugin settings with defaults not changing value.
Mattermost v9.8.1 contains no database or functional changes.
9.8.0, released 2024-05-16
Original 9.8.0 release.
Compatibility#
Updated minimum required Edge and Chrome versions to 122+.
Important
If you upgrade from a release earlier than v9.7, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged Playbooks version v1.39.3.
Pre-packaged GitLab plugin version v1.8.1.
Pre-packaged Calls version v0.26.2.
Combined Desktop and Mobile notifications in the user settings modal.
Added a Don’t Clear option for Do Not Disturb.
Enhanced the user interface for channel introductions.
Added an ephemeral message for non-team member mentions in channels.
Added emoji tooltips on hover in post message.
Made the appearance of several tooltips more consistent.
Updated theme colors for onboarding tour points.
Updated the right-hand side Thread view to use relative timestamps to be more consistent with the global Threads view.
Added a total reply count to the right-hand side thread view.
Administration#
Added safety limit error message in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are unavailable, and message count exceeds 5 million posts. ERROR_SAFE_LIMITS_EXCEEDED.
Downloading a support packet is now extensible with plugins. If a plugin can add content to the support packet, it will be displayed in the commercial support modal. Administrators will have the option to include/exclude that from the support package.
Upgraded Nodejs to v20.11.
Added the backend for Channel Bookmarks (disabled by default). Added Channel Bookmarks permissions to the channel user role and to the channel moderation system.
Added Channel Bookmarks permissions to the channel user role and to the channel moderation system.
Added progress logs for attachments in bulk exports.
Added a System Console option to rebuild Elasticsearch channels indexes.
Obfuscated
ReplicaLagSettings
in the Support Packet.Improved license loading errors.
Updated the keycloak docker configs and added a
make
command.Removed unused
IsOAuth
field fromAppError
.bool
is now used forlicense_is_trial
in the Support Packet.Bulk export: added functionality to export roles and permissions schemes.
A new flag (
extract-content
) was added to the mmctl import process that allows the server to skip content extraction during the import phase.
API Changes#
Added a create channel bookmark endpoint at
/api/v4/channels/{channel_id}/bookmarks
.Added additional query params to channel endpoints to include channel bookmarks.
Added update channel bookmark endpoint at
/api/v4/channels/{channel_id}/bookmarks/{bookmark_id}
.Added list channel bookmarks endpoint at
/api/v4/channels/{channel_id}/bookmarks
.Added delete channel bookmark endpoint at
/api/v4/channels/{channel_id}/bookmarks/{bookmark_id}
.Added update channel bookmark sort order endpoint at
/api/v4/channels/{channel_id}/bookmarks/{bookmark_id}/sort_order
.Exposed a local-mode only API for reattaching plugins, primarily to facilitate mock-free unit testing.
Exposed
UpdateUserRoles
inpluginapi
.Exposed
pluginapi.ProfileImageBytes
to simplify bot setup from a plugin.For
POST /channels
, added a validation fordisplay_name
to not pass validation if the display name is empty.
Bug Fixes#
Fixed an issue with context cancellation for integration requests.
Fixed an issue preventing the retrieval of SAML metadata.
Fixed an issue causing an empty channel switcher after converting a group message to a private channel.
Fixed an issue where System Admins were not allowed to LDAP sync SAML users when
SamlSettings.EnableSyncWithLdap
was set to true.Fixed an issue with markdown in the AD job status table.
Fixed an issue with a control character in the group list modal.
Fixed an issue where the auto-complete channels API returned archived channels in response.
Fixed a crash issue in the System Console.
Fixed an issue where links included in notifications were truncated and not clickable.
Fixed using local requests instead of HTTP requests in the flow library.
Fixed an issue where
support_packet.yaml
wasn’t generated even if an error occurred.Fixed an issue where outgoing webhooks did not trigger when using multiple callback URLs.
Fixed an issue where it was not possible to clear plugin settings with a default value in the System Console.
Fixed an issue where
MaxUsersForStatistics
wasn’t ignored when generating a Support Packet.Fixed an issue where the
EnsureBot
function did not recreate the bot if it had been manually deleted.Fixed an issue where users couldn’t look up a user by their ID in the System Console anymore.
Fixed an accessibility issue where the focus didn’t go back to the originating button when a modal was closed.
Fixed an issue where end users were not allowed to fetch the group members list of groups that allow
@-mentions
.
config.json#
New setting option 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:#
Under
FileSettings
inconfig.json
:Added
AmazonS3UploadPartSizeBytes
andExportAmazonS3UploadPartSizeBytes
to control the part size used to upload files to an S3 store.
Under
ServiceSettings
inconfig.json
:Increased the default payload size limit (
MaximumPayloadSizeBytes
) from 100 kB to 300 kB. Existing servers need to manually update this value.
Under
ClusterSettings
inconfig.json
:Removed unused settings
StreamingPort
,MaxIdleConns
,MaxIdleConnsPerHost
andIdleConnTimeoutMilliseconds
.
Changes to Professional and Enterprise plans:#
Under
ExperimentalSettings
inconfig.json
:Removed the
UseNewSAMLLibrary
experimental setting.
Go Version#
v9.8 is built with Go
v1.21.8
.
Known Issues#
Status may sometimes get stuck as Away or Offline with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
agarciamontoro, agnivade, Amir-Helali, amyblais, andrleite, angeloskyratzakos, annaos, apshada, Aryakoste, asaadmahmood, aszakacs, BarbUk, BenCookie95, Blaieet, calebroseland, coltoneshaw, cpoile, crspeller, ctlaltdieliet, cwarnermm, cyrusjc, daran9, devharipragaz007, devinbinnie, dsspence, Eleferen, EltonGohJH, emdecr, enahum, ezekielchow, fmartingr, gabrieljackson, gitairman, grundleborg, hanzei, harshilsharma63, hmhealey, hossain-sazzad, ifoukarakis, inconnu1, isacikgoz, jasonblais, jespino, johnsonbrothers, jones, josephjose, jprusch, JulienTant, jupenur, jwilander, kaakaa, kaoski, Karimaljandali, kayazeren, KrisSiegel, Kshitij-Katiyar, larkox, lbr88, lieut-data, lindalumitchell, lynn915, M-ZubairAhmed, mahdiirar, majo, manojmalik20, master7, matt-w99, matthew-w, matthewbirtch, MeHow25, mentz, mgdelacroix, mickmister, milotype, movion, mvitale1989, nickmisasi, Nityanand13, nmnj, Obbi89, pacop, phoinixgrr, Pkarle, poppfredslund, potatogim, raghavaggarwal2308, rahimrahman, rOt779kVceSgL, RS-labhub, Rutam21, s-krishnaraju, saturninoabril, sbishel, Sharuru, sri-byte, stafot, streamer45, stylianosrigas, Syed-Ali-Abbas-Zaidi, tanmaythole, ThrRip, tnir, toninis, topolovac, varghesejose2020, wetneb, wiersgallak, wiggin77, yasserfaraazkhan, yomiadetutu1, zsrv
Release v9.7 - Feature Release#
9.7.6, released 2024-07-02
Mattermost v9.7.6 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue where banners set by system administrators did not stack below system banners, but rather appeared underneath them. Existing system banners have remained unchanged.
Mattermost v9.7.6 contains no database or functional changes.
9.7.5, released 2024-06-03
Mattermost v9.7.5 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.7.5 contains no database or functional changes.
9.7.4, released 2024-05-15
9.7.3, released 2024-04-30
Fixed an issue where creating a Direct Message channel with synthetic users failed MM-58019.
Mattermost v9.7.3 contains no database or functional changes.
9.7.2, released 2024-04-25
Mattermost v9.7.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.7.2 contains no database or functional changes.
Pre-packaged Playbooks version v1.39.3.
Increased the default payload size limit (
MaximumPayloadSizeBytes
) from 100 kB to 300 kB. Existing servers need to manually update this value.Fixed an issue where it was not possible to clear the plugin settings with a default value in the System Console.
9.7.1, released 2024-04-16
Fixed an issue with a noisy log entry for permalink post notifications.
Mattermost v9.7.1 contains no database or functional changes.
9.7.0, released 2024-04-16
Original 9.7.0 release.
Important
If you upgrade from a release earlier than v9.6, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Added Mattermost AI plugin to pre-packaged plugins.
Pre-packaged Calls version v0.25.1.
Pre-packaged Playbooks version v1.39.2.
Pre-packaged GitHub plugin version v2.2.0.
The first emoji is now auto-selected in the emoji picker.
Added Markdown support for batched email notifications.
Users’ timezone is now used in batched email notifications.
Removed a conflicting class (
help-text
) from the interactive dialog field description to resolve the black text color in the dark theme.Updated the user interface of Team Settings modal.
Promoted Simplified Chinese to Beta, and downgraded Hungarian and Spanish languages to Beta.
Improved the opening animation of the user settings modal.
Administration#
Upgraded
@mattermost/client
and@mattermost/types
to support TypeScript v5.x.Enforced safety limit in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are unavailable, and when the count of users who are registered, but not deactivated, exceeds 11,000. ERROR_SAFE_LIMITS_EXCEEDED.
Dropped pre-packaged plugins for unsupported OS and architectures.
Implemented a new Export Settings page in the System Console to allow Cloud administrators to customize their dedicated export S3 buckets.
LDAP job details are no longer shown until the job runs.
Added more logging to the
NotificationsLog
.A message is now logged when a user tries to log in using an incorrect password.
Posts from deactivated users are now included in Direct Message channel exports. Also the
--include-archived-channels
flag is now respected for Direct Message channels.Changed the cache headers for file endpoints to cache privately for 24 hours, instead of not caching at all.
Improved the performance of the ElasticSearch indexing job in PostgreSQL installations.
Moved following functions from server to public utils:
ResetReadTimeout
AppendMultipleStatementsFlag
SetupConnection
SanitizeDataSource
mmctl#
mmctl can now be used to download a Support Packet using
--local mode
.mmctl system ping will now return detailed server status even if the server status is unhealthy.
Bug Fixes#
Fixed an issue where the Desktop App login flow would erroneously show the landing page for first time users.
Fixed an issue where a right-hand side card was not reloaded when the card body was updated.
Fixed an issue where
en-AU
language selection was not allowed.Fixed an issue with the position of text in the default profile picture.
Fixed an issue with the group search to parse the display name.
Fixed an issue where items with longer text did not widen the user guide dropdown to its max-width.
Fixed an issue where the configuration could not be updated from the System Console in cloud environments.
config.json#
A new setting option was added to config.json
. Below is a list of the addition and its default value on install. The setting can be modified in config.json
, or the System Console when available.
Changes to all plans:#
Under
CloudSettings
inconfig.json
:Added a new configuration setting
Disable
(via config.json, or environment variable), defaultfalse
. When set totrue
, all requests to the Mattermost Customer Portal from a workspace will be disabled.
Open Source Components#
Added
stylelint
to https://github.com/mattermost/mattermost/.
Go Version#
v9.7 is built with Go
v1.20.7
.
Known Issues#
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
2017Yasu, agarciamontoro, agnivade, amyblais, andriumm, angeloskyratzakos, annaos, apshada, asaadmahmood, ayusht2810, azigler, BenCookie95, Blaieet, calebroseland, cpoile, crspeller, ctlaltdieliet, cwarnermm, devinbinnie, dipaksinha1, doc-sheet, Eleferen, emdecr, enahum, ezekielchow, gabrieljackson, grundleborg, hannaparks, hanzei, harshilsharma63, hereje, hmhealey, hossain-sazzad, ifoukarakis, isacikgoz, iyampaul, jasonblais, jespino, johndavidlugtu, johnsonbrothers, jones, jprusch, JulienTant, jwilander, kaakaa, kayazeren, Kshitij-Katiyar, larkox, lieut-data, lindalumitchell, Linkinlog, lynn915, M-ZubairAhmed, majo, marianunez, master7, matthew-w, matthewbirtch, mickmister, morgancz, mozi47, mvitale1989, nab-77, nachtjasmin, natalie-hub, neflyte, nickmisasi, phoinixgrr, poppfredslund, pvev, raghavaggarwal2308, RyoKub, saturninoabril, sbishel, Sharuru, sinansonmez, sri-byte, stafot, streamer45, stylianosrigas, Syed-Ali-Abbas-Zaidi, tanmaythole, ThrRip, toninis, varghesejose2020, vish9812, vishal-rathod-07, wiersgallak, wiggin77, Wing0515, yasserfaraazkhan, yomiadetutu1
Release v9.6 - Feature Release#
9.6.3, released 2024-06-03
Mattermost v9.6.3 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue with some plugin settings with defaults not changing value.
Mattermost v9.6.3 contains no database or functional changes.
9.6.2, released 2024-04-25
Mattermost v9.6.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.6.2 contains no database or functional changes.
Pre-packaged Playbooks version v1.39.3.
Fixed an issue where it was not possible to clear the plugin settings with a default value in the System Console.
9.6.1, released 2024-03-26
Mattermost v9.6.1 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.6.1 contains no database or functional changes.
Fixed an issue where the configuration could not be updated from the System Console in cloud environments.
9.6.0, released 2024-03-15
Original 9.6.0 release.
Compatibility#
Updated minimum required Edge and Chrome versions to 120+.
Important
If you upgrade from a release earlier than v9.5, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged Calls version v0.24.0.
Pre-packaged GitLab plugin version v1.8.0.
Added the Outgoing OAuth Connections integration type.
Re-designed the System Console > User Management screen, and added the ability to batch export users in CSV format (Professional and Enterprise plans). On MySQL, users cannot view live results of the batch export in the user interface.
Improved the appearance of profile/account menus.
Added support for checkbox types in the System Console settings.
Added support for WebP image previews in the web app similar to PNG and other image formats.
Several pre-packaged plugins were removed.
Administration#
Removed some unused Redux actions and reducers, including
state.entities.posts.selectedPostId
.Limited the number of user preference updates to 10 per call.
Clarified that the LDAP profile picture setting is optional.
mmctl#
Extended mmctl with support for user preferences.
Bug Fixes#
Fixed an issue with switching to a Direct Message channel with a shared channel user (user from another server).
Fixed an issue with extra space getting added to code blocks in search results.
Fixed an issue where deactivated members were not included in a favorited Direct Message channel export.
Fixed an issue where password strength settings wouldn’t be disabled if they were set through environment variables.
Fixed an issue where post mentions would grow outside the viewport on small devices.
Fixed an issue with draft removal after deleting the post.
Fixed a markdown issue where, on some occasions, extra space was found before a list.
Fixed an issue where a sender to a custom group would also receive the message notification themselves.
Fixed a web app crash when a System Admin clicked on a link to a private channel that they were not a member of.
Fixed
ChannelHasBeenCreated
plugin hook not being called when a group channel was created.Fixed thread notifications so that if a user had Thread Reply Notifications disabled for your account and Automatically follow threads in this channel enabled for a channel, the user wouldn’t receive thread notifications for that channel per global setting.
config.json#
Multiple 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 inconfig.json
, or the System Console when available.
Changes to the Enterprise plan:#
Under
ServiceSettings
inconfig.json
:Added
EnableOutgoingOAuthConnections
configuration setting for Outgoing OAuth Connections integration type.
Open Source Components#
Added
@floating-ui/react
, and removed@floating-ui/react-dom
and@floating-ui/react-dom-interactions
from https://github.com/mattermost/mattermost/.
Go Version#
v9.6 is built with Go
v1.20.7
.
Known Issues#
Users’ initial status is not always loaded correctly MM-56966.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
Contributors#
abdesslamhouioui, agarciamontoro, agnivade, Alpha-4, amyblais, andrleite, angeloskyratzakos, apshada, arush-vashishtha, asaadmahmood, avas27JTG, ayusht2810, azigler, BenCookie95, bewing, calebroseland, carydrew, Chlbek, compiledsound, cpatulea, cpoile, crspeller, ctlaltdieliet, cwarnermm, devinbinnie, DHaussermann, edu-ap, Eleferen, emdecr, enahum, esarafianou, ewwollesen, gabrieljackson, gourav-varma, Gregesp, grundleborg, hannaparks, hanzei, harshilsharma63, hereje, hmhealey, iabdousd, ifoukarakis, isacikgoz, it33, jespino, jlandells, johndavidlugtu, jones, jprusch, JulienTant, juliovillalvazo, jwilander, kaakaa, larkox, lieut-data, lucassabreu, lynn915, M-ZubairAhmed, majo, marianunez, master7, matt-w99, matthew-w, matthewbirtch, mickmister, milotype, MixeroTN, mjnagel, morgancz, mvitale1989, nickmisasi, nokedajunky, olavinto, oOoBenoitoOo, phoinixgrr, pvev, raghavaggarwal2308, rOt779kVceSgL, sadohert, saturninoabril, sbishel, Sharuru, sinansonmez, sohzm, sri-byte, stafot, streamer45, stylianosrigas, svelle, Syed-Ali-Abbas-Zaidi, TealWater, ThrRip, titanventura, toninis, trangology, trivikr, tsabi, Utsav-Ladani, varghesejose2020, vidhisaini10, wiggin77, yasserfaraazkhan, yeoji
Release v9.5 - Extended Support Release#
9.5.8, released 2024-07-22
Mattermost v9.5.8 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.8 contains no database or functional changes.
9.5.7, released 2024-07-02
Mattermost v9.5.7 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue where banners set by system administrators did not stack below system banners, but rather appeared underneath them. Existing system banners have remained unchanged.
Added a new configuration setting
CloudSettings.Disable
(via config.json, or environment variable), defaultfalse
. When set totrue
, all requests to the Mattermost Customer Portal from a workspace will be disabled.Fixed an issue where the user status would incorrectly be set to offline without checking for connections in other nodes in an High Availability cluster MM-57153.
Fixed an issue where users could not see the member count in the Browse Channels dialog on some servers MM-56266.
Increased the maximum length of the
Value
column of thePreferences
table MM-57913.Mattermost v9.5.7 contains no database or functional changes.
9.5.6, released 2024-06-03
Mattermost v9.5.6 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.6 contains no database or functional changes.
9.5.5, released 2024-05-15
Fixed an issue where the user status would incorrectly get stuck to online after the user closed their tab MM-57885.
Mattermost v9.5.5 contains no database or functional changes.
9.5.4, released 2024-04-25
Mattermost v9.5.4 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.4 contains no database or functional changes.
Pre-packaged Playbooks version v1.39.3.
Increased the default payload size limit (
MaximumPayloadSizeBytes
) from 100 kB to 300 kB. Existing servers need to manually update this value.Fixed an issue with context cancellation for integration requests.
Fixed an issue where end users were not allowed to fetch the group members list of groups that allow
@-mentions
.
9.5.3, released 2024-03-26
Mattermost v9.5.3 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.3 contains no database or functional changes.
Improved the performance of the ElasticSearch indexing job in PostgreSQL installations.
9.5.2, released 2024-03-06
Mattermost v9.5.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.2 contains no database or functional changes.
Fixed
ChannelHasBeenCreated
plugin hook not being called when a group channel was created.
9.5.1, released 2024-02-16
Mattermost v9.5.1 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.5.1 contains no database or functional changes.
9.5.0, released 2024-02-16
Original 9.5.0 release.
Important Upgrade Notes#
We have stopped supporting MySQL v5.7 since it’s at the end of life. We urge customers to upgrade their MySQL instance at their earliest convenience.
Important
If you upgrade from a release earlier than v9.4, please read the other Important Upgrade Notes.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Pre-packaged Calls version v0.23.1.
Pre-packaged Jira plugin version v4.1.0.
Improved the behavior of suggestion boxes when changing the caret position.
Changed the time for tomorrow in the Do Not Disturb timer and post reminder to refer to the next day at 9:00am instead of 24hrs from the time of activation.
Updated message timestamp tooltips to include seconds.
Added a new Wrangler feature to be able to move threads (Experimental). Moving threads requires a Professional/Enterprise license to activate. This feature is not yet recommended for production use. A new feature flag
MoveThreadsEnabled
was added and is default OFF. Changing this value to ON will enable the experimental Move Threads feature.Applied a wording change for active and activated users in the System Console user list.
Applied a wording change for active and activated users in the Team Statistics page.
Administration#
Added safety limit error message in compiled Team Edition and Enterprise Edition deployments when enterprise scale and access control automation features are unavailable and count of users who are registered and not deactivated exceeds 10,000. ERROR_SAFE_LIMITS_EXCEEDED.
The
where
field is now rendered inmodel.AppError
only when it’s present.Added Outgoing Oauth implementation
Get
/List
logic.The mmctl bulk import process command in local mode now supports processing an import file without actually uploading it to the server. Simply pass the file path to the import file and the server will directly read from it, and pass the
--bypass-upload
flag. There is no need to use the import upload command. NOTE: all of this is applicable only in local mode.Added Monthly Active Users (MAU) as part of the true-up report.
Prometheus metrics are now available under the Source Available License.
Performance#
Optimized
createPost
performance.Improved the performance of emoji uploads.
Made small optimizations in several database calls:
App.HasPermissionToChannel
getPostsForChannelAroundLastUnread
publishWebsocketEventForPermalinkPost
countMentionsFromPost
Plugins#
Plugins are now allowed to register user settings.
Plugins can now register an action in the User Settings section. Plugins can also now disable a section in their User Settings.
Included session id in request payload of the
WebSocketMessageHasBeenPosted
plugin hook.
Bug Fixes#
Fixed an issue where the right-hand side stopped getting the focus when navigating from Global Threads or Global Drafts.
Fixed a theme issue in the notification settings.
Fixed a regression in compliance exports which did not allow the export job to be canceled gracefully on server shutdown.
Fixed an error where posts dismissed by a plugin were not properly removed from the view.
Fixed an issue where if there were multiple websocket connections from a single user, then in case one connection got removed during a broadcast, there was a possibility that the other good connection would not get the event.
Fixed an issue with true-up reports sending active users and not activated users.
Fixed an issue where users were not able to navigate through links to private channels they are member of with certain configurations.
config.json#
Multiple 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 inconfig.json
, or the System Console when available.
Changes to all plans:#
Under
ServiceSettings
inconfig.json
:Added
MaximumPayloadSizeBytes
to add a limit to the payload size of API endpoints passing in arrays.
Added a configuration setting
OutgoingIntegrationRequestsDefaultTimeout
for integration requests.
Changes to the Professional and Enterprise plans:#
Under
WranglerSettings
inconfig.json
:Added
AllowedEmailDomain
- a CSV list of strings, where each is an email domain that is allowed to use the feature (e.g. - on community.mattermost.com,mattermost.com
would allow staff to move a thread, while non-staff cannot).MoveThreadMaxCount
- a number representing the maximum number of posts that can be in a thread for it to be moveable.MoveThreadToAnotherTeamEnable
- a boolean value representing whether moving should work across teams.MoveThreadFromPrivateChannelEnable
- a boolean value representing whether moving should work from within a private channel.MoveThreadFromDirectMessageChannelEnable
- a boolean value representing whether moving should be allowed from within a group message.
Changes to the Enterprise plan:#
Under
DataRetentionSettings
inconfig.json
:Added two new configuration settings,
MessageRetentionHours
andFileRetentionHours
, in order to support setting your global retention time in hours.DataRetentionSettings.MessageRetentionDays
andDataRetentionSettings.FileRetentionDays
are deprecated but we will continue to use their value until you set something for their hours equivalent. If Days are set then the hours configuration must be 0 and if hours is set then the days config must be 0. We do not support hours for granular retention policies. Due to how our Elasticsearch indexes are stored, Data retention will now also remove elastic search indexes equal to the day of the retention cut-off time.
API Changes#
Added a new API endpoint
POST /api/v4/posts/<post ID>/move
.Added
UpdateChannelMembersNotifications
plugin API.Added plugin APIs and hooks for accessing the Shared Channels service via plugins.
Added a limit to the payload size of API endpoints passing in arrays.
Added
PreferencesHaveChanged
plugin hook.Added
GetPreferenceForUser
plugin API.Added a new API endpoint
GET /api/v4/users/report
for system admin user reporting.Added a new API endpoint
GET /api/v4/reports/users/count
.
Open Source Components#
Added
@tanstack/react-table
andprometheus/client_model
to https://github.com/mattermost/mattermost/.
Go Version#
v9.5 is built with Go
v1.20.7
.
Known Issues#
User autocomplete no longer stays closed after pressing ESC key MM-56748.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
agarciamontoro, agnivade, akbarkz, amyblais, andriuspetrauskis, andriuspre, angeloskyratzakos, asaadmahmood, ayusht2810, azigler, azistellar, azizthegit, bbodenmiller, BenCookie95, c0d33ngr, catenacyber, cedricongjh, Chlbek, chriswachira, coltoneshaw, cpoile, cripton, crspeller, ctlaltdieliet, cwarnermm, cyberjam, devinbinnie, duttakapil, Eleferen, enahum, GabrielCasaro, gabrieljackson, grundleborg, hanzei, harshilsharma63, heisdinesh, hmhealey, hynex, ifoukarakis, isacikgoz, jespino, johndavidlugtu, johnsonbrothers, jones, jprusch, JulienTant, kaakaa, kerochelo, Kshitij-Katiyar, larkox, lieut-data, lindalumitchell, M-ZubairAhmed, majo, marianunez, master7, matoro, matt-w99, matthew-w, mgdelacroix, mickmister, milotype, mkaraki, mvitale1989, nickmisasi, Nityanand13, norma596, Omar8345, phoinixgrr, raghavaggarwal2308, Rutam21, RyoKub, sapnasivakumar, saturninoabril, sbishel, ShrootBuck, SkyDusH, sonichigo, sri-byte, stafot, streamer45, stylianosrigas, Sudhanva-Nadiger, Syed-Ali-Abbas-Zaidi, TealWater, thinkGeist, thomasbrq, ThrRip, titanventura, toninis, trangology, tsabi, Utsav-Ladani, varghesejose2020, vish9812, VishalB98, wiggin77, Willy-Wakam, yasserfaraazkhan, yaz, yomiadetutu1
Release v9.4 - Feature Release#
9.4.5, released 2024-03-26
Mattermost v9.4.5 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.4.5 contains no database or functional changes.
9.4.4, released 2024-03-06
Mattermost v9.4.4 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.4.4 contains no database or functional changes.
9.4.3, released 2024-02-14
Mattermost v9.4.3 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.4.3 contains no database or functional changes.
Pre-packaged Jira plugin version v4.1.0.
9.4.2, released 2024-01-30
Mattermost v9.4.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Fixed an issue with true-up reports sending active users and not activated users. Added Monthly Active Users (MAU) as part of the true-up reports.
Mattermost v9.4.2 contains no database or functional changes.
9.4.1, released 2024-01-16
Fixed an issue where
getChannelMemberOnly
failed to fetch data when certain fields were NULL.
9.4.0, released 2024-01-16
Original 9.4.0 release.
Important Upgrade Notes#
MySQL v5.7 is at end of life. We recommend all customers to upgrade to at least 8.x. For now, we are logging a warning. From Mattermost v9.5, which is the next Extended Support Release, we will stop supporting MySQL v5.7 altogether.
Important
If you upgrade from a release earlier than v9.3, please read the other Important Upgrade Notes.
Compatibility#
Updated the minimum required Edge version to v118+.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Updated the pre-packaged GitHub plugin version to v2.1.7.
Pre-packaged Calls plugin version v0.22.2.
Improved the user interface of the channel notifications modal.
Emojis are now enlarged in emoji tooltips on mouse hover.
Added a gap of 8px between buttons in the modal footer when opened in the mobile web view.
Updated empty states to align with new branding and made changes to the empty state copy.
Adjusted the position of the suggestion list in “Add
to a channel” modal to be below or above the text field.
Administration#
Added support for IP Filtering in Cloud (Cloud Enterprise plan) (this feature is disabled by default and behind a feature flag).
Added support for Bring Your Own Key (BYOK) Encryption (Cloud Enterprise plan).
An optional dedicated filestore is now used for compliance exports if configured (Cloud Enterprise plan).
MessageExportSettings.GlobalRelaySettings.CustomerType
now supports “CUSTOM”.Added new
ServerMetrics
hook to allow plugins to register a custom HTTP endpoint to serve their metrics under the server’s metrics HTTP listener.Admins now have the ability to pipe the output of
mmctl websocket
into the JSON parser.Added stores for OAuth Outgoing Connections.
Added last login timestamp for users, and added a materialized view and a refresh job to keep track of post stats for PostgreSQL.
Allowed plugin requests to include Authorization headers from external systems.
Added a mmctl command
mmctl system supportpacket
to download the Support Packet.Added a new mmctl command
oauth list
for listing registered OAuth2 applications.
Bug Fixes#
Fixed an issue with the emoji reaction toggle behavior.
Fixed an issue with the spacing between Playbooks and the separator in the Apps bar.
config.json#
Multiple 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 inconfig.json
, or the System Console when available.
Changes to all plans:#
Under
RefreshPostStatsRunTime
inconfig.json
:Added
RefreshPostStatsRunTime
to add last login timestamp for users and to add materialized view and refresh job to keep track of post stats for PostgreSQL.
Changes to the Enterprise plan:#
Under
GlobalRelayMessageExportSettings
inconfig.json
:Added two new configuration settings
CustomSMTPServerName
andCustomSMTPPort
to allow setting a custom URL and port for Global Relay export. This enables compliance export to integrate with Proofpoint.
Open Source Components:#
Added
@mattermost/desktop-api
andipaddr.js
to https://github.com/mattermost/mattermost/.
Go Version#
v9.4 is built with Go
v1.20.7
.
Known Issues#
Non-channel-admin users can no longer use message links in private channels MM-56575.
Preview doesn’t work when editing a channel header MM-56572.
The channel member count shows as zero in the Browse channels modal MM-56266.
Adding an @mention at the start of a post draft and pressing the left or right arrow key can clear the post draft and the undo history MM-33823.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
AayushChaudhary0001, aditipatelpro, agarciamontoro, agnivade, akbarkz, Alpha-4, amyblais, andrius, andriuspetrauskis, andrleite, arthurhrg, arush-vashishtha, asaadmahmood, avas27JTG, ayusht2810, azigler, BenCookie95, caotanduc99, CI-YU, codejagaban, cpoile, crspeller, ctlaltdieliet, cwarnermm, cyberjam, danielsischy, Dev-A-Line, devinbinnie, DHaussermann, dkkb, Eleferen, enahum, fmartingr, FokinAleksandr, GabrielCasaro, gabrieljackson, gabsfrancis, grundleborg, hanzei, harsh4723, harshilsharma63, hasancankucuk, hereje, hmhealey, ifoukarakis, isacikgoz, jasonblais, jespino, johnsonbrothers, jprusch, jwilander, kaakaa, Kshitij-Katiyar, larkox, lieut-data, lindalumitchell, ludvigbolin, lynn915, M-ZubairAhmed, majo, master7, matt-w99, matthew-w, matthewbirtch, mgdelacroix, mickmister, morgancz, mvitale1989, neflyte, nickmisasi, Paul-Stern, pgteekens, phoinixgrr, PromoFaux, PulkitGarg-code, raghavaggarwal2308, rajatdangat, relwell, roaslin, rohan-kapse, rohitkbc, Rutam21, RyoKub, saakshiraut28, San4es, sapnasivakumar, saturninoabril, sbishel, Sharuru, ShlokJswl, sinansonmez, srappan, sri-byte, srisri332, stafot, streamer45, stylianosrigas, Sudhanva-Nadiger, svelle, Syed-Ali-Abbas-Zaidi, tanmaythole, TealWater, thomasbrq, ThrRip, toninis, tsabi, umrkhn, varghesejose2020, Vinecreeper888, weblate, wiggin77, yasserfaraazkhan, yomiadetutu1, ZubairImtiaz3
Release v9.3 - Feature Release#
9.3.3, released 2024-03-06
Mattermost v9.3.3 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.3.3 contains no database or functional changes.
9.3.2, released 2024-02-14
Mattermost v9.3.2 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.3.2 contains no database or functional changes.
Pre-packaged Jira plugin version v4.1.0.
9.3.1, released 2024-01-30
Mattermost v9.3.1 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.3.1 contains no database or functional changes.
9.3.0, released 2023-12-15
Original 9.3.0 release.
Important Upgrade Notes#
Please read the Important Upgrade Notes before upgrading.
Compatibility#
Updated minimum required Firefox version to v115+.
Updated minimum supported Chromium version to 118+.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Updated pre-packaged Playbooks plugin version to v1.39.1.
Updated pre-packaged Calls version to v0.21.1.
Updated pre-packaged Jira plugin version to v4.0.1. Also see v4.0.0 for recent breaking changes.
Added Vietnamese (Beta) as a new language.
Added the ability to passively track keywords with highlights without triggering a notification (Professional and Enterprise plans).
Updated the Settings modal with an improved user interface.
Added a new Jump to recents banner when a channel is scrolled up.
Modified the behavior of the code button (Ctrl+Alt+C) to create inline codes or code blocks.
Disabled markdown keybindings within code blocks.
Added a Back button to the
/access_problem
page.Added a default limit of the number of reactions per post.
Performance#
Removed pre-fetch preference and set new prefetch limits for the webapp.
Improved websocket event marshaling performance.
Batched loading of recently used emojis on initial load.
Administration#
The tooltip on the announcement bar in the System Console is now widened.
Improved the error message when trying to activate a plugin in an unsupported environment.
Added a file storage permission check to the workspace health dashboard.
Performed a cleanup in preparation for adding support for multi-word keywords that trigger notification.
Added a warning log message when the app runs as root.
Removed all uses of the
ExperimentalTimezone
setting. The Timezone feature is now always enabled and no longer behind a configuration setting.Added support for previewing WebVTT attachments.
Introduced separate
AdvancedLogging
levels for LDAP messages.Introduced trace logging level for LDAP messages.
Added a new way to modify
WebSocket
messages sent to individual connections.Added a new server side hook
MessagesWillBeConsumed
to allow modifying post objects after they are grabbed from the database but before they are delivered to the client. This is behind a feature flag and disabled by default.Users and posts are now pretty-printed in the logs.
Improved file extraction logging.
Exposed
ThreadView
andAdvancedCreateComment
components in the webapp plugin exported components list.Added Logging > Advanced Logging setting to the System Console to allow admins to configure custom log targets via the user interface.
Bug Fixes#
Fixed an issue where marking a Group Message as unread didn’t show the badge count correctly.
Fixed an issue where
invite_id
was being reset on all team changes.Fixed an issue where interactive dialog elements with subtype
number
didn’t handle a0
value properly.Fixed an issue with the download link in channel file search items when including a path in the Site URL setting.
Fixed an issue with the formatting of special mentions in the right-hand side.
Fixed
MessageWillBeUpdated
plugin hook to allow rejections.Fixed an issue with some shortcuts not working as expected.
Fixed the message history not clearing the input on the center channel.
Fixed an issue where a higher contrast was generated for some usernames.
Fixed an issue where newly created Group Messages showed having 0 members.
Fixed an issue where an incorrect timestamp was assigned to support packet files.
Fixed an issue where the Reset Password link was not displayed if only LDAP/AD was enabled.
Fixed an issue where Recent Mentions showed posts for other similar named users.
Fixed an error that appeared when updating the header of Group Messages.
Fixed an issue that caused the server to get stuck during shutdown due to a deadlock in a dependency.
Fixed an issue where Desktop App clients would be shown an error when trying to open file preview links.
Fixed an issue with double URL encoding of Oauth redirect URI params.
Fixed an issue where users couldn’t at-mention custom groups in group constrained teams and channels.
Fixed an issue where the channel admin wasn’t being set when converting a Group Message to a private channel.
config.json#
Multiple 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 inconfig.json
, or the System Console when available.
Changes to all plans:#
Removed
DisplaySettings.ExperimentalTimezone
setting.Under
ServiceSettings
inconfig.json
:Added
DefaultUniqueReactionsPerPost
andMaxUniqueReactionsPerPost
to fix an issue where invalid reactions could be added to posts and to add a default limit for the number of reactions per post.
API Changes#
Added an API to batch requests for custom emojis on page load.
Database Changes#
NextSyncAt
andDescription
columns are removed from theSharedChannelsRemotes
table. Migration impact is considered to be minimal considering the possible table size.
Go Version#
v9.3 is built with Go
v1.20.7
.
Known Issues#
Mattermost Omnibus: Unable to install omnibus due to unmet dependencies MM-56080.
Adding an @mention at the start of a post draft and pressing the left or right arrow key can clear the post draft and the undo history MM-33823.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
agarciamontoro, agnivade, AirGoatOne, akbarkz, amigo7kr, amyblais, anneschuth, ARJ2160, Arslan-work, arthurh, arthurhrg, Aryakoste, asaadmahmood, AshishDhama, avas27JTG, AvaterClasher, ayusht2810, azigler, BandhiyaHardik, BenCookie95, Benjamin-Loison, calebroseland, catenacyber, cedarice, CI-YU, coltoneshaw, cpoile, crspeller, ctlaltdieliet, cwarnermm, Davut97, deepakumarvu, devinbinnie, Dhoni77, DimitriDR, edwardnguyen225, Eleferen, emdecr, Emil-Carlsson, enahum, escofresco, fandour, fazil-syed, fmartingr, gabrieljackson, hanzei, harshal2030, harshilsharma63, heisdinesh, hmhealey, ifoukarakis, imamimam113, imkrishnasarathi, isacikgoz, jasonblais, jespino, johndavidlugtu, johnsonbrothers, jonathanwiemers, jprusch, JulienTant, jwilander, kaakaa, kapdev, kayazeren, Kimbohlovette, Kshitij-Katiyar, KuSh, kyeongsoosoo, larkox, LeonardJouve, lieut-data, lindy65, linkvn, ludvigbolin, M-ZubairAhmed, m1lt0n, majo, manojmalik20, master7, matt-w99, matthew-w, matthewbirtch, maxtrem271991, mickmister, milotype, mozi47, mvitale1989, nathanaelhoun, newdominic, nickmisasi, nosyn, otilor, pacop, Paul-Stern, Paul-vrn, phoinixgrr, proggga, pvev, raghavaggarwal2308, rahulsuresh-git, rashmibharambe, Reene-Simon, rohan-kapse, rohitkbc, rubinaga, RyoKub, san70sh, sapnasivakumar, sbishel, seoyeongeun, Sharuru, shivamjosh, sinansonmez, Sn-Kinos, sp6370, sri-byte, stafot, streamer45, stylianosrigas, Sudhanva-Nadiger, sudheer121, Syed-Ali-Abbas-Zaidi, tanmaythole, tejas161, thomasbrq, ThrRip, TomerPacific, toninis, trivikr, tsabi, turretkeeper, umrkhn, vish9812, wcdfilll, wiebel, wiggin77, yasserfaraazkhan, yomiadetutu1
Release v9.2 - Feature Release#
9.2.6, released 2024-02-14
Mattermost v9.2.6 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.2.6 contains no database or functional changes.
Pre-packaged Jira plugin version v4.1.0.
9.2.5, released 2024-01-30
Mattermost v9.2.5 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.2.5 contains no database or functional changes.
9.2.4, released 2024-01-09
Mattermost v9.2.4 contains medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.2.4 contains the following functional changes:
Fixed an issue where invalid reactions could be added to posts. Added default limit of the number of reactions per post.
9.2.3, released 2023-11-29
Mattermost v9.2.3 contains medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.2.3 contains no database or functional changes.
Pre-packaged Calls plugin version v0.21.1.
9.2.2, released 2023-11-08
Mattermost v9.2.2 contains a high severity level security fix. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Pre-packaged Playbooks plugin version v1.39.1.
Fixed an issue where the About Mattermost dialog reported an incorrect server version.
9.2.1, released 2023-11-06
Fixed an issue where Ubuntu GLIBC errors were thrown on Ubuntu 20.04 and Debian Bullseye versions.
9.2.0, released 2023-11-02
Original 9.2.0 release
Important Upgrade Notes#
Fixed data retention policies to run jobs when any custom retention policy is enabled even when the global retention policy is set to keep-forever. Before this fix, the enabled custom data retention policies wouldn’t run as long as the global data retention policy was set to keep-forever or was disabled. After the fix, the custom data retention policies will run automatically even when the global data retention policy is set to keep-forever. Once the server is upgraded, posts may unintentionally be deleted. Admins should make sure to disable all custom data retention policies before upgrading, and then re-enable them again after upgrading.
Important
If you upgrade from a release earlier than v9.1, please read the other Important Upgrade Notes.
Compatibility#
Updated minimum required Edge version to 116+.
Improvements#
See this walkthrough video on some of the improvements in our latest release below.
User Interface (UI)#
Improved readability by displaying system messages on multiple lines when editing a channel header.
Combined “joined/left” event types in system messages.
Added a new user preference to disable webapp prefetching via Settings > Advanced > Allow Mattermost to prefetch channel posts. You must enable Client Performance Debugging in the System Console by going to Environment > Developer in order for this setting to appear. This setting and Client Performance Debugging should only be enabled temporarily if users are experiencing performance issues.
Pre-packaged NPS plugin version v1.3.3.
Pre-packaged Todo plugin version v0.7.1.
Administration#
JSON null value cases are now handled correctly by also checking that the pointer is no longer null when unmarshalling to a pointer.
An annotated logger is now used to capture LDAP and SAML logs.
Replaced
github.com/mattermost/gziphandler
withgithub.com/klauspost/compress/gzhttp
.Performance metrics now contain information on if a given request was sent during a page load or a websocket reconnect.
Elasticsearch aggregation jobs no longer start when a bulk indexing job is currently running.
Added heap profile, CPU profile, and goroutines profile to the support package.
Merged WIP i18n locales, but disallowed selecting unsupported locales.
Bug Fixes#
Fixed a panic where a simple worker would crash if it failed to get a job.
Fixed post props on update to properly see channel links.
Fixed an issue where the API for drafts would return empty drafts.
Fixed the alignment of the Help menu in the global header.
Fixed a broken link in the Edit Channel header modal.
Fixed an issue that prevented users to be added to channels from the System Console.
Fixed an issue where the channel member count increased when adding an already present user.
Fixed an issue where plugin developers were unable to create a
textarea
in interactive dialogs.Fixed an issue where copy pasting images from Chrome failed.
config.json#
Multiple 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 inconfig.json
, or the System Console when available.
Changes to all plans:#
Under
LogSettings
inconfig.json
:Added a new configuration setting
MaxFieldSize
to add the ability to size-limit log fields during logging.
API Changes#
Added
origin_client
to themattermost_api_time
metrics.
Go Version#
v9.2 is built with Go
v1.20.7
.
Known Issues#
Adding an @mention at the start of a post draft and pressing the left or right arrow key can clear the post draft and the undo history MM-33823.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
aayushborkar14, AayushChaudhary0001, AbhineshJha, agarciamontoro, agnivade, akaMrDC, akbarkz, alejdg, Alphanum404, amigo7kr, amyblais, amynicol1985, andrew-delph, andrleite, angeloskyratzakos, aniketh-varma, anneschuth, apshada, ARJ2160, ArturBa, asaadmahmood, AsisRout, avas27JTG, AvaterClasher, ayrotideysarkar, ayusht2810, balajik, Bangik, bartaz, BaumiCoder, BenCookie95, bishalpal, calebroseland, cedarice, cescpmantidfly, CI-YU, Ciggzy1312, codeEmpress1, coltoneshaw, costa-neto, cpoile, crspeller, ctlaltdieliet, cwarnermm, danialkeimasi, Delaney, devinbinnie, DHaussermann, dhnlr, dipandhali2021, Eleferen, emdecr, enahum, escofresco, esethna, fazil-syed, fmartingr, frjaraur, fyfirman, gabrieljackson, Gauravpadam, gibsonliketheguitar, h1usertest, hanzei, harsh-solanki21, harshal2030, harshalkh, harshilsharma63, hmhealey, ialorro, ifoukarakis, imamimam113, isacikgoz, iyampaul, izruff, janlengyel, jannikbertram, jasonblais, jespino, jgilliam17, jlandells, johnsonbrothers, josephjosedev, jprusch, js029, jufab, JulienTant, kaakaa, kalvdans, kayazeren, komodin, Kritik-J, Kshitij-Katiyar, KuSh, larkox, letehaha, libklein, lieut-data, linkvn, ludvigbolin, M-ZubairAhmed, majo, manojmalik20, ManuMinue, marianunez, master7, matt-w99, matthew-w, matthewbirtch, maxtrem271991, mgdelacroix, mickmister, milotype, mishmanners, MixeroTN, mnj93, mujpao, mustdiechik, mvitale1989, namanh-asher, Navystack, nickmisasi, Nico7as, Nityanand13, NohaFahmi, otilor, Paul-vrn, Peyo6565, phoinixgrr, pvev, qryptdev, Quijuletim470, returnedinformation, riteshmukim, rubinaga, Rutam21, saideepesh000, SaketKaswa20, saturninoabril, sbishel, seoyeongeun, Sharuru, sjcode99, sondrekje, sonu27, sp6370, sri-byte, stafot, StreakInTheSky, streamer45, stylianosrigas, Sudhanva-Nadiger, sudheer121, syedzubeen, Tahanima,tanmaythole, this-is-tobi, ThrRip, TomerPacific, toninis, trilopin, umrkhn, varghesejose2020, venugopal1234567, vip2441, wiersgallak, wiggin77, yasserfaraazkhan, yesbhautik, ylac, ZubairImtiaz3
Release v9.1 - Feature Release#
9.1.5, released 2024-01-09
Mattermost v9.1.5 contains medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.1.5 contains the following functional changes:
Fixed an issue where invalid reactions could be added to posts. Added default limit of the number of reactions per post.
9.1.4, released 2023-11-29
Mattermost v9.1.4 contains medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.1.4 contains no database or functional changes.
Pre-packaged Calls plugin version v0.21.1.
9.1.3, released 2023-11-13
Mattermost v9.1.3 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.1.3 contains no database or functional changes.
Pre-packaged Playbooks plugin version v1.39.1.
Fixed an issue where the About Mattermost dialog reported an incorrect server version.
9.1.2, released 2023-11-06
Mattermost v9.1.2 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.1.2 contains no database or functional changes.
9.1.1, released 2023-10-27
Mattermost v9.1.1 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Pre-packaged Focalboard plugin v7.11.4.
Mattermost v9.1.1 contains the following functional changes:
Added a new configuration setting
MaxFieldSize
to add the ability to size-limit log fields during logging.Added a restriction to the mobile Oauth / SAML redirection to match the
NativeAppSettings.AppCustomURLSchemes
configuration setting.
9.1.0, released 2023-10-16
Original 9.1.0 release
Important Upgrade Notes#
Improved performance on data retention
DeleteOrphanedRows
queries. See the Important Upgrade Notes for notes on a new migration that was added. Removed feature flagDataRetentionConcurrencyEnabled
. Data retention now runs without concurrency in order to avoid any performance degradation. Added a new configuration settingDataRetentionSettings.RetentionIdsBatchSize
, which allows admins to to configure how many batches of IDs will be fetched at a time when deleting orphaned reactions. The default value is 100.Minimum supported Desktop App version is now v5.3. OAuth/SAML flows were modified to include
desktop_login
which makes earlier versions incompatible.
Important
If you upgrade from a release earlier than v9.0, please read the other Important Upgrade Notes.
Compatibility#
Updated Chromium minimum supported version to 116+.
Highlights#
Never Miss Group Messages Again#
Group messages (GMs) now behave like direct messages (DMs). The badge count increases for every new message.
Convert Group Messages to Private Channels#
Added the ability to convert a group message to a private channel.
See this walkthrough video on the highlights and some of the below improvements in our latest release.
Improvements#
User Interface (UI)#
Added a Cancel button to the Delete category modal.
Added the ability to resize the channel sidebar and right-hand sidebar.
Added two new filtering options (show all channel types and show private channels) to the Browse channels modal.
Pre-packaged GitLab plugin version v1.7.0.
Pre-packaged Calls plugin version v0.20.0.
Pre-packaged Playbooks version v1.39.0.
Added additional reaction options when viewing threads or messages when the sidebar is larger than its minimum width.
Added a link to notification documentation in the Notification Settings modal.
Updated the post textbox measurement code to be more reliable.
The
/invite
slash command now supports custom user groups.Re-enabled the remote marketplace functionality, when configured as per
PluginSettings.EnableRemoteMarketplace
documentation.
Administration#
Added
mattermost-plugin-api
into themattermost
GitHub repository.Updated the public server module version to v0.0.9.
Added 2 new URL parameters to
GET /api/v4/groups
:include_archived
andfilter_archived
. Added the ability to restore archived groups from the user groups modal.Added file storage information to the support package.
A
user_id
is now included in all HTTP logs (debug level) to help determine who is generating unexpected traffic.Added new URL parameter to
GET /api/v4/groups
andGET /api/v4/groups/:group_id
.include_member_ids
will add all the membersuser_ids
to the group response objects. You can now also add group members to a channel, any members that are not part of the team can be added to the team through this flow and subsequently added the channel.
Plugin Changes#
Added new frontend plugin extension point for the new messages separator bar.
Added a new plugin extensibility point to add actions to the code blocks.
Added the plugin hook
UserHasBeenDeactivated
.Added a new server side plugin API method to set the searchable content for file info (
SetFileSearchableContent
). TheMessageHasBeenPosted
plugin hook is now executed after the attachments are linked to the post.
Bug Fixes#
Fixed keyboard support for the left-hand side channel menu, the left-hand side category menu, and the post dot menu.
Fixed display name in the
comment_on
component.Fixed an issue with keyboard support for some menus with submenus.
Fixed an issue with disappearing punctuation when following a group mention.
Fixed an issue where compliance export jobs were not able to start after disabling and enabling the compliance export.
Fixed a potential read after write issue when loading a license.
Fixed the API to block any changes to direct and group messages names, display name, or purpose.
config.json#
Multiple 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:#
Removed
ServiceSettingsDefaultGfycatAPISecret
andServiceSettingsDefaultGfycatAPIKey
configuration settings.Under
TeamSettings
inconfig.json
:Added a new config setting
EnableJoinLeaveMessageByDefault
that sets the default value forUserSetting
,ADVANCED_FILTER_JOIN_LEAVE
.
Under
DisplaySettings
inconfig.json
:Added a setting
MaxMarkdownNodes
to limit the maximum complexity of markdown text on mobile.
Changes to Enterprise plan:#
Under
DataRetentionSettings
inconfig.json
:Added a new configuration setting
RetentionIdsBatchSize
, which allows admins to to configure how many batches of IDs will be fetched at a time when deleting orphaned reactions. The default value is 100.
API Changes#
Added the
X-Forwarded-For
request header to the audit stream for all Rest API calls.Added API endpoint
POST /api/v4/user/login/desktop_login
. Modified OAuth/SAML flows to includedesktop_login
where applicable.Added new API endpoint
GET
/api/v4/channels/<channel-id>/common_teams
to fetch list of teams common between members of a group message.Added new API endpoint
POST
/api/v4/channels/<channel-id>/convert_to_channel
to convert a group message to a private channel.Added a new
MessageHasBeenDeleted
hook to the plugin API.Moved the
request
package into the public shared folder.
Go Version#
v9.1 is built with Go
v1.20.7
.
Known Issues#
Converting a group message to a channel should show an error “A channel with that name already exists on the same team” for duplicate channel names MM-54713.
Marking a group message as unread doesn’t resurface the numbered notification badge MM-54778.
Thread/posts jump when switching to and from preview mode MM-54758.
Desktop UI doesn’t show all content when the right-hand side thread is opened MM-54696.
Left-hand side resize option overrides the Browse/Create Channel menu if To-Do plugin is installed MM-54367.
Adding an @mention at the start of a post draft and pressing the left or right arrow key can clear the post draft and the undo history MM-33823.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
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.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
abhinav700, agarciamontoro, agnivade, alexdecamillo, amyblais, andrleite, angeloskyratzakos, asaadmahmood, AsisRout, ayusht2810, azigler, BenCookie95, calebroseland, cedarice, coltoneshaw, cpoile, Crere89, crspeller, ctlaltdieliet, cwarnermm, deivisonrpg, devinbinnie, djanda97, Eleferen, emdecr, enahum, esethna, fmartingr, FokinAleksandr, gabrieljackson, hanzei, harshilsharma63, hibou.sage, hmhealey, homerCOD, ialorro, ifoukarakis, intdev32, IronOnet, isacikgoz, jasonblais, jespino, johnsonbrothers, jprusch, kaakaa, kayazeren, Kshitij-Katiyar, kyeongsoosoo, larkox, lieut-data, LimJiAn, limod, linkvn, M-ZubairAhmed, majo, manojmalik20, marie0394, maruTA-bis5, master7, matt-w99, matthew-w, matthewbirtch, mickmister, milotype, MohammedElansary-dev, mornaistar, mt26691, mvitale1989, Navystack, nickmisasi, pvev, RayYH, saturninoabril, sbishel, Sharuru, sinansonmez, speedhs, sri-byte, stafot, streamer45, stylianosrigas, teamzamong, TheRealJoeFriel, ThrRip, timmycheng, toninis, varghese.jose, wiersgallak, wiggin77, y4aniv, yasserfaraazkhan
Release v9.0 - Major Release#
9.0.5, released 2023-11-29
Mattermost v9.0.5 contains medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.0.5 contains no database or functional changes.
Pre-packaged Calls plugin version v0.21.1.
9.0.4, released 2023-11-13
Mattermost v9.0.4 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.0.4 contains no database or functional changes.
Pre-packaged Playbooks plugin version v1.39.1.
Fixed an issue where the About Mattermost dialog reported an incorrect server version.
9.0.3, released 2023-11-06
Mattermost v9.0.3 contains low to high severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.0.3 contains no database or functional changes.
9.0.2, released 2023-10-27
Mattermost v9.0.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Pre-packaged Focalboard plugin v7.11.4.
Mattermost v9.0.2 contains the following functional changes:
Added a new configuration setting
MaxFieldSize
to add the ability to size-limit log fields during logging.Added a restriction to the mobile Oauth / SAML redirection to match the
NativeAppSettings.AppCustomURLSchemes
configuration setting.
9.0.1, released 2023-10-06
Mattermost v9.0.1 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
Mattermost v9.0.1 contains no database or functional changes.
9.0.0, released 2023-09-15
Original 9.0.0 release
Important Upgrade Notes#
Removed the deprecated Insights feature.
Mattermost Boards and various other plugins have transitioned to being fully community supported. See this forum post for more details.
The
channel_viewed
websocket event was changed tomultiple_channels_viewed
, and is now only triggered for channels that actually have unread messages.
Important
If you upgrade from a release earlier than v8.1, please read the other Important Upgrade Notes.
Highlights#
Dev/Sec/ChatOps in Strict Security Environments with Jira, Confluence, and Mattermost#
Accelerate mission-critical workflows that keep your team aligned and your data secure on the Mattermost and Atlassian platforms.
Air-Gapped, Edge-Ready Generative AI with Defense Unicorn’s LeapfrogAI#
Deploy and utilize local GenAI models in edge, air-gapped, and zero-trust environments with LeapfrogAI and Mattermost.
AI-Accelerated Collaboration#
Mattermost partner Mobius Logic has enhanced the MS Teams Connector for the Microsoft 365 platform by embedding Mattermost directly inside Microsoft Teams.
MLOps and Secure Federation with Customer Compliance#
Our partnership with SOS International (SOSi) enables the integration of advanced military-grade federation using XMPP. Read the exoINSIGHT announcement from Exovera.
Improving Your Organization’s Core Collaboration#
To optimize the core platform experience, we are reinforcing the fundamentals to ensure Mattermost continues being resilient, stable, and best-in-breed for your critical operations.
Improvements#
User Interface (UI)#
The number of channel members is now shown in the Browse channels modal.
An error is now displayed if a post edit history fails to load.
Added functionality to bulk mark a whole channel category as read.
Removed Boards product tour code.
Replaced Gfycat with Giphy in the gif picker.
Pre-packaged Calls version v0.19.0.
Updated Focalboard plugin version to 7.11.3.
Pre-packaged Playbooks version 1.38.1.
Upgraded prepackaged Zoom plugin to v1.6.2.
Upgraded prepackaged Antivirus plugin version to 1.0.0.
Administration#
API examples are now updated to reflect latest Go API conventions, deprecating older code samples.
Updated the public server module version to v0.0.8.
Added a
Post Action
plugin hook to allow plugins to register new items in the post menu.Added a
Post Editor Action
plugin hook to allow plugins to register new items in the post editor menu.Improved logging on plugin initialization, activation, and removal.
Removed the deprecated
ManifestExecutables
struct.Removed the deprecated
UserAuth.Password
field.Remote users are no longer counted as part of the license.
Improved data retention logs.
Removed
/opengraph
endpoint as it was unused.Transitionally prepackaged plugins are now installed to the filestore for continuity when a future release stops prepackaging those plugins.
Removed the deprecated
Manifest.RequiredConfig
field.Added a
NotificationWillBePushed
plugin hook invoked before the push notification is processed and sent to the notification service. Plugins may modify or reject the push notification.Added a
SendPushNotification
plugin api method which allows plugins to send push notifications to a specific user’s mobile sessions.Disabled
PluginSettings.EnableRemoteMarketplace
functionality.
Bug Fixes#
Fixed the error returned by
PUT /api/v4/channels/{channelid}
when the provided name already existed in the team.Fixed an issue where CRLF line endings passed to mmctl commands were not being stripped from commands.
Fixed an issue where text copied from Microsoft OneNote is pasted as an image.
Fixed an issue preventing successful activation of trial licenses.
Fixed an issue where a custom group wouldn’t get marked as a mention if it was not part of the webapp’s local state.
Fixed an issue with the in-product marketplace theming.
config.json#
Multiple 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:#
Under
ServiceSettings
in theconfig.json
:Added
GiphySdkKey
to replace Gfycat with Giphy in the gif picker.
Go Version#
v9.0 is built with Go
v1.19.5
.
Open Source Components#
Added
@giphy/js-fetch-api
and@giphy/react-components
to https://github.com/mattermost/mattermost/.Added
@react-native/eslint-config
,@react-native/metro-config
, and@tsconfig/react-native
to https://github.com/mattermost/mattermost-mobile/.
Known Issues#
Adding an @mention at the start of a post draft and pressing the left or right arrow key can clear the post draft and the undo history MM-33823.
Google login fails on the Classic mobile apps.
Status may sometimes get stuck as Away or Offline in High Availability mode with IP Hash turned off.
Searching stop words in quotation marks with Elasticsearch enabled returns more than just the searched terms.
The team sidebar on the desktop app does not update when channels have been read on mobile.
Slack import through the CLI fails if email notifications are enabled.
Push notifications don’t always clear on iOS when running Mattermost in High Availability mode.
The Playbooks left-hand sidebar doesn’t update when a user is added to a run or playbook without a refresh.
If a user isn’t a member of a configured broadcast channel, posting a status update might fail without any error feedback. As a temporary workaround, join the configured broadcast channels, or remove those channels from the run configuration.
The Playbooks left-hand sidebar does not update when a user is added to a run or playbook without a refresh.
Contributors#
abdulsmapara, agarciamontoro, agnivade, akaravashkin, amyblais, andrleite, angeloskyratzakos, apollo13, aqurilla, ayusht2810, azigler, bbodenmiller, BenCookie95, Benjamin-Loison, calebroseland, cdmwebs, chumano, CI-YU, Coelho, cpoile, crspeller, ctlaltdieliet, cwarnermm, danielsischy, deivisonrpg, devinbinnie, djanda97, douglasstasiak, Eleferen, enahum, esarafianou, esethna, gabrieljackson, gary-sixgen, Gobbit69, grubbins, guneshsji, hannaparks, hanzei, harshal2030, harshilsharma63, hmhealey, hpkhanh1610, ifoukarakis, isacikgoz, it33, ivakorin, jasonblais, jespino, johndavidlugtu, johnsonbrothers, jprusch, JulienTant, kaakaa, kayazeren, Kshitij-Katiyar, kyeongsoosoo, larkox, lieut-data, LimJiAn, lindalumitchell, lindy65, lynn915, M-ZubairAhmed, mahmoudfarouq, majo, manojmalik20, marianunez, maruTA-bis5, master7, matt-w99, matthew-w, matthewbirtch, MatthewDorner, mgdelacroix, mickmister, milotype, mvitale1989, nickmisasi, panoramix360, Partizann, penghao_chn, phoinixgrr, pjenicot, pvev, raghavaggarwal2308, RichardScottOZ, robinsdm, saturninoabril, sbishel, Sharuru, ShrootBuck, sinansonmez, sri-byte, stafot, StreakInTheSky, streamer45, stylianosrigas, svelle, tasawar-hussain, TealWater, thinkGeist, ThrRip, timmycheng, toninis, tschuyebuhl, wiggin77, Willyfrog, y4aniv, yash2189, yasserfaraazkhan, yomiadetutu1, ZubairImtiaz3