4.8.0


2022-05-31 · 16 · 13 · 55 · 151 · 52 ‍‍

Engine versions

  • Node: 14.18.3
  • NPM: 6.14.15
  • MongoDB: 3.6, 4.0, 4.2, 4.4, 5.0

New features

  • Ability for RC server to check the business hour for a specific department (#25436)

  • Add expire index to integration history (#25087)

  • Add new app events for pin, react and follow message (#25337)

  • Add new events after user login, logout and change his status (#25234)

  • Add option to show mentions badge when show counter is disabled (#25329)

  • Add user events for apps (#25165)

  • Adding app button on user dropdown (#25326)

  • Alpha Matrix Federation (#23688)

    Experimental support for Matrix Federation with a Bridge

    Quick.Example.showing.Matrix.org.mp4
  • Expand Apps Engine's environment variable allowed list (#23870 by @cuonghuunguyen)

  • Federation (Alpha Stabilization) (#25457)

  • Get user's preferred language via apps (#25514)

  • Marketplace new app details page (#24711)

    Change the app details page layout for the new marketplace UI. General Task: MKP12 - New UI - App Detail Page

    MKP12 - Tab Navigation

    New tab navigation layout for the app details page. Now the app details page is divided into three sections, details, logs, and settings, that can each be accessed through a Tabs fuselage component.

    Demo gif:
    tab_navigation_demo_gif

    MKP12 - Header

    Implemented a new header for the marketplaces app details page.
    -Changed the size of the app name;
    -Implemented the app description field on the header;
    -Changed the "metadata" section of the header(The part with the version and author information) now it also shows the last time the app was updated;
    -Created a chip that will show when an app is part of one or more bundles and inform which are the bundles;
    -Implemented a tooltip for the bundle chips;
    -Created a new button + data badge component to substitute the current App Status;
    -Changed the title of the "purchase button". Now it shows different text based on the "purchase type" of the app;
    -Created a new Pricing & Status display which shows the price when the app is not bought/installed and shows the app status(Enabled/Disabled) when it is bought/installed;
    -Changed the way the tabs are rendered, now if the app is not installed(and consequently doesn't have logs and settings tab) it will not render these tabs;

    Demo gif:
    new-header-gif

    MKP12 - Configuration Tab

    Delivered together with the tab-navigation task. Changed the app settings from the details of the app to the new settings tab.
    Demo image:
    New configuration tab

    MKP12 - Log Tab

    Changed the place of the app logs from the page to the new logs tab. Also changed some styles of the logs accordions to fit better with the new container.

    Before:
    Before

    After
    After

    MKP12 - Page Header

    Changed the design for the page header of the app details page from a title on the left with a save and back button on the right to a back arrow icon on the left side of the title with the save button still on the right. Also changed the title of the page from App details to Back.
    Edit: After some design reconsideration, the page title was changed to App Info.
    Demo gif:
    new_page_header_app_details

    MKP12 - Detail Tab

    Implemented markdown on the description section of the app details page, now the description will show the detailedDescription.rendered (as rendered JSX) information in case it exists and show the description (a.k.a. short description) information in case it doesn't. Unfortunately, as of right now no app has a visual example of a markdown description and because of that, I will not be able to provide a demo image/gif for this PR.

    MKP12 - Slider Component

    Created an image carousel component on the app details page. This component receives images from the apps/appId/screenshots endpoint and shows them on the content section of the app details of any apps that have screenshots registered, if the app has no screenshots it simply shows nothing where the carousel should be. This component is complete with keyboard arrow navigation on the "open" carousel, hover highlight on the carousel preview and close on esc press.
    Demo gif:
    new_carousel_component

  • Message Template React Component (#23971)

    Complete rewrite of the messages component in react. Visual changes should be minimal as well as user impact, with no break changes (unless you've customized the blaze template).

    Screen Shot 2022-04-05 at 11 14 18
    In case you encounter any problems, or want to compare, temporarily it is possible to use the old version

    image
  • New button for network outage (#25499)

    When network outage happens it should be conveyed to the user with special icon. This icon should not be clickable.
    Network outage handling is handled in https://app.clickup.com/t/245c0d8 task.

  • New stats rewrite (#25078 by @ostjen)

    Add the following new statistics (metrics):

    • Total users with TOTP enabled;

    • Total users with 2FA enabled;

    • Total pinned messages;

    • Total starred messages;

    • Total email messages;

    • Total rooms with at least one starred message;

    • Total rooms with at least one pinned message;

    • Total encrypted rooms;

    • Total link invitations;

    • Total email invitations;

    • Logo change;

    • Number of custom script lines;

    • Number of custom CSS lines;

    • Number of rooms inside teams;

    • Number of default (auto-join) rooms inside teams;

    • Number of users created through link invitation;

    • Number of users created through manual entry;

    • Number of imported users (by import type);

  • Star message, report and delete message events (#25383)

Improvements

  • ENTERPRISE: Allow mapping LDAP groups to multiple RC roles (#23849)

    • Add support to mapping LDAP groups to multiple roles (by specifying arrays in the "User Data Group Map" enterprise setting.
  • Add OTR Room States (#24565)

    Earlier OTR room uses only 2 states, we need more states to support future features.
    This adds more states for the OTR contextualBar.

    • Expired
    Screen Shot 2022-04-20 at 13 55 52
    • Declined
    Screen Shot 2022-04-20 at 13 49 28
    • Error
    Screen Shot 2022-04-20 at 13 55 26
  • Add tooltip to sidebar room menu (#24405 by @Himanshu664)

  • add warnings for federation setup (#25684)

  • Added MaxNickNameLength and MaxBioLength constants (#25231 by @aakash-gitdev)

  • Added tooltip options for message menu (#24431 by @Himanshu664)

  • Fix multiple bugs with Matrix bridge (#25318)

  • Improve active/hover colors in account sidebar (#25024 by @Himanshu664)

  • New admin settings Page (#25439)

    Screen Shot 2022-05-09 at 11 31 58

  • Pass allowDiskUse to channel aggregations on engagement dashboard (#22374)

  • Performance for some Omnichannel features (#25217)

  • Rename upgrade tab routes (#25097)

    Change 'upgrade tab' routes names from camelCase ('goFullyFeatured') to kebab-case ('go-fully-featured') due to URL naming consistency. Changed types, main function and test.

  • Unify voip streams into single stream (#25108)

Bug fixes

  • Add katex render to new message react template (#25239)

  • Add open user card to user avatar (#25445)

  • Add reaction not working in legacy messages (#25222)

  • Added invalid password error message (#24714 by @Himanshu664)

  • Adjust email label in Setup Wizard i18n files (#25260)

    • remove 'Company' label on onboarding email keys in certain languages
  • AgentOverview analytics wrong departmentId parameter (#25073 by @paulobernardoaf)

    When filtering the analytics charts by department, data would not appear because the object:

    {
    value: "department-id",
    label: "department-name"
    }

    was being used in the departmentId parameter.

    • Before:
      image

    • After:
      image

  • Change form body parameter charset to UTF-8 to fix issue #25456 (#25673 by @divinespear)

    since mscdex/busboy 1.5.0, new option named defParamCharset for form body parameter encoding is added with default value latin1, so unicode filenames are broken since 4.7.0.

    Screenshot from 2022-05-28 16-26-06

  • Change NPS Vote identifier + nps index to unique (#25423)

  • Click to join button Jitsi Call (#25569)

    Added ToolboxProvider to MessageListProvider and fixed actionLink.js open function exec

  • Client disconnection on network loss (#25170)

    Agent gets disconnected (or Unregistered) from asterisk in multiple ways. The goal is that agent should remain online
    unless agent explicitly logs off.
    Agent can stop receiving calls in multiple ways due to network loss. Network loss can happen in following ways.

    1. User tries to switch the network. User experiences a glitch of disconnectivity. This can be simulated by turning the network off
      in the network tab of chrome's dev tool. This can disconnect the UA if the disconnection happens just before the registration refresh.

    2. Second reason is when computer goes in sleep mode.

    3. Third reason is that when asterisk is crashed/in maintenance mode/explicitly stopped.

    Solution:
    The idea is to detect the network disconnection and start the start the attempts to reconnect.
    The detection of the disconnection does not happen in case#1. The SIPUA's UserAgent transport does not
    call onDisconnected when network loss of such kind happens. To tackle this problem, window's online and offline event handlers are
    used.

    The number of retries is configurable but ideally it is to be kept at -1. Whenever disconnection happens, it should keep on trying to
    reconnect with increasing backoff time. This behaviour is useful when the asterisk is stopped.

    When the server is disconnected, it should be indicated on the phone button.

  • Close room when dismiss wrap up call modal (#25056)

  • Custom sound error toast messages (#24515 by @Himanshu664)

  • Deactivating user breaks if user is the only room owner (#24933 by @sidmohanty11)

    Before

    deactivating-user-breaks.mp4

    After

    fix.deactivating-user-breaks-room-with-no-owner.mp4
  • Desktop notification on multi-instance environments (#25220)

  • End call button disappearing when on-hold (#24936)

  • Failure to update Integration History index (#25473)

  • Fix max-width message block (#25686)

  • Fixing app contextual bar functionality (#25615)

  • Fixing Network connectivity issues with SIP client. (#25391)

    The previous PR #25170 did not handle the issues completely.
    This PR is expected to handle

    1. Clearing call related UI when the network is disconnected or switched.

    2. Do clean connectivity. There were few issues discovered in earlier implementation. e.g endpoint would randomly
      get disconnected after a while. This was due to the fact that the earlier socket disconnection caused the
      removal of contact on asterisk. This should be fixed in this PR.

    3. This PR contains a lot of logs. This will be removed before the final merge.

  • FormData uploads not working (#25069)

  • Full error message is visible (#24856 by @Himanshu664)

  • Incorrect websocket url in livechat widget (#25261)

  • Integrations avatar attribute misuse (#25283)

  • Invitation links don't redirect to the registration form (#25082)

  • Message menu action not working on legacy messages. (#25148)

  • Message menu dropdown not working on Mobile Web (#25616)

  • Message preview not available for queued chats (#25092)

  • NPS never finishing sending results (#25067)

  • Ordered and unordered list styles, Line breaks. (#25494)

    Also removed the message.md cache from server, since changes in the parser might break messages in the future (and will in this specific case).

  • Pinned Message display cutting off information (#25535)

  • Prevent federation crash on invite users as a non-owner user (#25683)

  • Prevent sequential messages edited icon to hide on hover (#24984)

    before

    Screen Shot 2022-03-29 at 13 35 56

    after

    Screen Shot 2022-03-29 at 11 48 05
  • Proxy settings being ignored (#25022)

    Modify Meteor's HTTP.call to add back proxy support

  • Quote message spacing (#25613)

  • Read receipts show with color gray when not read yet (#25244)

  • Read receipts showing before message read (#25216)

  • Remove 'total' text in admin info page (#25638)

    • Remove initial 'total' text from rooms and messages groups in the admin info page

    • Add 'total' before 'rooms' and 'messages' title on the same section. To use the new 'Total Rooms', was created a new key in the en.i18n.json file.

  • Removing user also removes them from Omni collections (#25444)

  • Replace encrypted text to Encrypted Message Placeholder (#24166)

    before

    image

    after

    Screenshot 2022-01-13 at 8 57 47 PM
  • Reply button behavior on broadcast channel (#25175)

    Hide reply button for the user that sent the message

  • room creation fails if app framework is disabled (#25200)

  • Rooms' names turn lower case on CSV import (#24612)

    • Change 'Settings' import to not get cached configs

    • Remove update UI_Allow_room_names_with_special_chars value

  • Sanitize customUserStatus and fix infinite loop (#25449)

    Additional improves:

    • usage of RHF to avoid unnecessary Add and Edit components separately and form validation

    • usage of GenericTableV2 and some hooks to avoid unnecessary code

    • fix IUserStatus type

    • improves in UI design

    • improves empty and loading state

    • improves files structure

    [LOOP ERROR ATTACHMENT]
    Screen Shot 2022-05-09 at 19 42 53

  • Settings listeners not receiving overwritten values from env vars (#25448)

  • Showing Blank Message Inside Report (#25007 by @nishant23122000)

    Desktop.2022.03.31.-.15.58.05.02.mp4
  • Toolbox hiding under contextual bar (#25237)

  • Unable to see channel member list by authorized channel roles (#25412)

  • Upgrade tab loader in incorrect position (#25398)

    • Add invisible prop to iframe when loading state is active.
  • Upgrade Tab showing for a split second (#25050)

  • Use correct room property for call ended at (#24932)

  • useCurrentChatTags is not a function (#25604)

  • UserAutoComplete not rendering UserAvatar correctly (#25055)

    before

    Screen Shot 2022-04-04 at 16 50 21

    after

    Screen Shot 2022-04-04 at 16 49 00

  • UserCard sanitization (#25089)

    • Rewrites the component to TS

    • Fixes some visual issues

    before

    Screen Shot 2022-04-07 at 00 23 11

    after

    Screen Shot 2022-04-07 at 00 07 13

  • Video and Audio not skipping forward (#19866)

  • VoIP disabled/enabled sequence puts voip agent in error state (#25230)

    Initially it was thought that the issue occurs because of the race condition while changing the client settings vs those settings reflected on server side. So a natural solution to solve this is to wait for setting change event 'private-settings-changed'. Then if 'VoIP_Enabled' is updated and it is true, set voipEnabled to true in useVoipClient.ts (on client side)

    It was realised that the race does not happen because of the database or server noticing the changes late. But because of the time taken to establish the AMI connection with Asterisk.

    Solution:

    1. Change apps/meteor/app/voip/server/startup.ts. When VoIP_Enabled is changed, await for Voip.init() to complete and then broadcast connector.statuschanged with changed value.

    2. From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.

    3. in apps/meteor/client/providers/CallProvider/hooks/useVoipClient.ts add the event handler that receives this event. Change voipEnabled from constant to state. Change this state based on the 'value' that is received by the handler.

Minor changes
  • Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services (#25042 by @dependabot[bot])

  • Bump ejson from 2.2.1 to 2.2.2 (#25057 by @dependabot[bot])

  • Bump eslint-plugin-anti-trojan-source from 1.0.6 to 1.1.0 (#25076 by @dependabot[bot])

  • Bump minimist from 1.2.5 to 1.2.6 in /ee/server/services (#24991 by @dependabot[bot])

  • Bump pino and pino-pretty (#25052)

  • Bump template-file from 6.0.0 to 6.0.1 (#25002 by @dependabot[bot])

  • Chore: Add /v1/video-conference endpoint types (#25278)

  • Chore: Add channel endpoints (rest-typings) (#25279)

  • Chore: Add client folder to CODEOWNERS (#25397)

  • Chore: Add error boundary to message component (#25223)

    Not crash the whole application if something goes wrong in the MessageList component.

    image

  • Chore: Add options to debug stdout and rate limiter (#25336)

  • Chore: Add root package.json to houston files (#25286)

    See title

  • Chore: Add typings for /v1/webdav.getMyAccounts (#25276)

  • Chore: Add yarn plugin to check node and yarn version (#25224)

  • Chore: bump fuselage (#25605)

  • Chore: Bump fuselage (#25371)

  • Chore: Bump Fuselage packages (#25259)

  • Chore: Cancel running jobs if PR is updated (#24708)

  • Chore: Chore add validation option to rest endpoints (#25443)

  • Chore: Code Improvements for #25391 (#25606)

  • Chore: Convert UserStatusMenu to TS (#25265)

  • Chore: Convert additionalForms (#25586)

  • Chore: Convert Admin -> Rooms to TS (#25348)

  • Chore: Convert admin custom sound to tsx (#25128)

  • Chore: Convert Admin/OAuthApps to TS (#25277)

    • Converts Admin/OAuthApps to TS.

    • migrated forms to react-hook-form

  • Chore: Convert AdminSideBar to ts (#25372)

  • Chore: Convert apps/meteor/client/components/UserAutoComplete (#25554)

  • Chore: Convert apps/meteor/client/views/admin/settings (#25565)

  • Chore: Convert apps/meteor/client/views/admin/settings/inputs folder (#25427)

  • Chore: Convert AutoTranslate (#25591)

  • Chore: Convert client/views/admin/settings/groups folder to ts (#25345)

  • Chore: Convert Create Channel (#25589)

  • Chore: Convert customSounds folder to ts (#25274)

  • Chore: Convert customUserStatus folder to ts (#25288)

  • Chore: Convert email inbox feature to TypeScript (#25298)

  • Chore: Convert federationDashboard folder to ts (#25343)

  • Chore: Convert getStatistics (#25342)

  • Chore: convert info to typescript (#25420)

  • Chore: Convert LivechatAgentActivity to raw model and TS (#25123)

  • Chore: Convert Mailer to TS (#25121)

  • Chore: convert marketplace price display component to use typescript (#25504)

    Marketplace apps listing page
    Screen Shot 2022-05-13 at 12 57 43

    Apps detail page
    Screen Shot 2022-05-13 at 12 58 56

  • Chore: Convert NotificationStatus to TS (#25125)

  • Chore: Convert push endpoints to TS (#25347)

  • Chore: Convert RoomForeword, TextCopy and RoomAvatarEditor to TS (#25424)

  • Chore: Convert slashCommands to typescript (#25592 by @eduardofcabrera & @ostjen)

  • Chore: Convert to typescript some functions from app/lib/server/functions (#24519)

    Convert to typescript some functions from app/lib/server/functions and transfered theses files to server/lib

  • Chore: Convert to typescript the slash commands help files (#24307 by @eduardofcabrera)

    Convert to typescript the slash commands help files

  • Chore: Convert useFileInput to TS (#25426)

  • Chore: Convert useUpdateAvatar to TS and type avatar endpoints (#25430)

  • Chore: Converting orchestrator.js to ts (#25367)

  • Chore: Create README.md for Rest Typings (#25335)

  • Chore: Dedicated package for UI contexts (#25432)

    Moving our React contexts to a different package on the monorepo enable us to deliver components from another packages, because they work as a loose connection to the core APIs.

  • Chore: Dependencies upgrade (#25290)

  • Chore: Enable marketplace screenshots endpoint (#25395)

  • Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218)

    • data and test-failure should be ignored

    • ensure scripts use cross-env

  • Chore: Fix return type warnings (#25275)

  • Chore: Increase performance and security of integrations’ scripts (#25641)

    Replace internal VM implementation with VM2 which implements many more mechanisms to ensure timeout, security and allow easier configuration for future improvements on the integrations' feature.

  • Chore: Livechat change output level (#25522)

  • Chore: Manager Page Rewrite (#25431)

  • Chore: Migrate 15-message-popup from cypress to playwright (#25462)

  • Chore: migrate from cypress to pw 14-setting-permission (#25523)

  • Chore: Migrate NotFoundPage to TS (#25509)

  • Chore: Migrate oauth2server to typescript (#25126)

  • Chore: Migrate retention-policy to ts (#25582)

  • Chore: Migrate spotify to ts (#25507)

  • Chore: migrate-to-pw-adjust-in-intermitences (#25542)

  • Chore: Minor dependency updates (#25269)

  • Chore: Missing keys in APIsDisplay (#24464)

  • Chore: Monorepo (#25074)

  • Chore: Move admin sidebarItems registration to the main file (#25442)

  • Chore: Move ddp-streamer micro service to its own sub-repo (#25246)

  • Chore: move definitions to packages (#25085)

  • Chore: Move markdown message parser to a callback (#25413)

  • Chore: organize test files and fix code coverage (#24900)

  • Chore: Remove Alpine image deps after using them (#25053)

  • Chore: Remove duplicated useUserRoom (#25180)

  • Chore: Remove old files from removed Omnichannel feature (#25129)

  • Chore: Remove package-lock.json from houston files (#25280)

    Houston config in the package.json file still mentioned package-lock.json, but it doesn't exist anymore

  • Chore: Remove unused Drone CI files (#25124)

  • Chore: Reorder unreleased migrations (#25508)

  • Chore: Rest API query parameters handling (#25648)

  • Chore: REST query and body params validation (#25446)

  • Chore: Rewrite 2fa to typescript (#25285)

  • Chore: Rewrite action-links to ts (#25418)

  • Chore: Rewrite autotranslate to ts (#25425)

  • Chore: Rewrite im and dm endpoints to ts (#25521)

    • Endpoints rewritten to TS

      • dm.create
      • dm.delete
      • dm.close
      • dm.counters
      • dm.files
      • dm.history
      • dm.members
      • dm.messages
      • dm.messages.others
      • dm.list
      • dm.list.everyone
      • dm.open
      • dm.setTopic
      • im.create
      • im.delete
      • im.close
      • im.counters
      • im.files
      • im.history
      • im.members
      • im.messages
      • im.messages.others
      • im.list
      • im.list.everyone
      • im.open
      • im.setTopic
    • Some lines of code was refactored on apps/meteor/app/api/server/v1/im.ts

    • Unnecessary functions were deleted on apps/meteor/app/lib/server/functions/getDirectMessageByNameOrIdWithOptionToJoin.ts

    • New types was added on apps/meteor/app/api/server/api.d.ts

  • Chore: Rewrite Jitsi Contextualbar to TS (#25303)

  • Chore: Rewrite mail-messages to ts (#25421)

  • Chore: Rewrite some Omnichannel files to TypeScript (#25359)

    apps/meteor/client/components/Omnichannel/modals/*
    apps/meteor/client/components/Omnichannel/Tags.js

  • Chore: solve yarn issues from env var (#25468)

  • Chore: Sync with master (#25284)

  • Chore: Template to generate packages (#25174)

    npx hygen package new test
    
  • Chore: Tests with Playwright (task: All works) (#25122)

  • Chore: Tests with Playwright (task: ROC-25, 06-message) (#25252)

  • Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)

  • Chore: Tests with Playwright (task: ROC-31, 12-settings) (#25253)

  • Chore: Tests with Playwright (task: ROC-66, Intermittent resolution in tests) (#25416)

  • Chore: TS conversion folder client (#25031)

  • Chore: TS migration SortList (#25167)

  • Chore: Update Apps-Engine and Fuselage (#25700)

  • Chore: Update Apps-Engine version (#25617)

  • Chore: Update Livechat to the last version (#25257)

  • Chore: Update Livechat version (#25130)

  • Chore: update OTR icon (#24521 by @kibonusp)

    I changed the shredder icon in OTR contextual bar to the stopwatch icon, recently added to the fuselage.

  • Chore: Update Volta configuration (#25394)

    Volta need some extra configuration to work on monorepos.

  • Chore: User set UTC offset (#25381)

  • i18n: Language update from LingoHub on 2022-04-04Z (#25043)

  • Merge master into develop & Set version to 4.7.0-develop (#25028)

  • Regression: Add isPending status to message (#25299)

  • Regression: Add eslint package to micro services Dockerfile (#25311)

  • Regression: Add select message to system message and thread preview and allow select on legacy template (#25251)

  • Regression: App event listeners broke Slackbridge integration and importers (#25689)

    Some event listeners triggered by Apps were calling Meteor.user() in functions that could run outside of Meteor environment

  • Regression: Assets & Slack Bridge Setting Page not rendering (#25629)

  • Regression: Avatar not loading on first direct message (#25211)

    fix avatar not loading on a first direct message

  • Regression: Better MongoDB connection management for micro services (#25323)

  • Regression: Broken components on Federation and Engagement dashboards (#25653)

    For reasons I've no clue, any client import path matching **/data/** will not be included in the final bundle, failing silently on transpiling/bundling.

  • Regression: bump onboarding-ui version (#25320)

    • Bump to 'next' the onboarding-ui package from fuselage.

    • Update from 'companyEmail' to 'email' adminData usage types

  • Regression: Change logic to check if connection is online on unstable networks (#25618)

  • Regression: Change preference to be default legacy messages (#25255)

  • Regression: CI playwright (#25168)

  • Regression: CI services build (#25555)

  • Regression: Endpoint types with Ajv Coercing data types (#25644)

    Ajv Coercing data types should be true to accept all kinds of data requested.

  • Regression: eslint not running on packages (#25305)

  • Regression: Fix CI monorepo build (#25107)

  • Regression: Fix clicking on visitor's chat in the sidebar does not display the chat window (#25380)

    Fix: livechat room not opening.

  • Regression: Fix English i18n react text (#25368)

    Incorrect text in reaction tooltip has been fixed

  • Regression: Fix federation Matrix bridge startup (#25273)

  • Regression: Fix micro services Docker build (#25193)

  • Regression: Fix multi line is not showing an empty line between lines (#25317)

  • Regression: Fix reply button not working when hideFlexTab is enabled (#25306)

  • Regression: Fix services Docker build on CI (#25181)

  • Regression: Fix services-image-build-check (#25519)

  • Regression: Fix size of custom emoji and render emoji on thread message preview (#25314)

  • Regression: Fix sort field files.list (#25687)

  • Regression: Fix the alpine image and dev UX installing matrix-rust-sdk-bindings (#25319)

    The package only included a few pre-built which caused all macs to have to compile every time they installed and also caused our alpine not to work.

    This temporarily switches to a fork of the matrix-appservice-bridge package.

    Made changes to one of its child dependencies matrix-rust-sdk-bindings that adds pre-built binaries for mac and musl (for alpine).

  • Regression: Messages in new message template Crashing. (#25327)

  • Regression: Missing settings group descriptions (#25639)

  • Regression: Revert Bugsnag version (#25313)

  • Regression: Rocket.Chat Webapp not loading. (#25349)

  • Regression: Show username and real name on the message system (#25254)

  • Regression: Shows error if micro service cannot connect to Mongo (#25301)

  • Regression: Subscription menu not appearing for non installed but subscribed apps (#25627)

    Fixed a problem on which the AppMenu component did not appear for apps that had an active subscription but weren't installed, now the rendering of the component is also based on the isSubscribed flag, and the appearance of the uninstall and enable/disable options are based on the app.installed flag so that the correct options appear on all the edge cases.
    Demo gif:
    subscription-manager-fix

  • Regression: Update settings groups description (#25663)

  • Regression: Use exact Node version on micro services Docker images (#25287)

  • Regression: Validate empty fields for Message template (#25250)

  • Regression: VoIp wrap up modal not opening after call disconnect (#25651)

    This PR fixes a bug preventing the wrap up call modal from being displayed after caller or agent ends the call.

  • Regression: yarn dev triggers build dependencies (#25208)

  • Release 4.7.0 (#25390 by @Himanshu664 & @dependabot[bot] & @lingohub[bot])

  • Release 4.7.1 (#25510)

  • Release 4.7.2 (#25580)

  • Test: Migrate 13-permissions from cypress to playwright (#25558)

‍‍ Contributors

‍‍ Core Team