github RocketChat/Rocket.Chat 3.14.0-rc.0

latest releases: 6.10.7, 7.0.0, 7.0.0-rc.6...
pre-release3 years ago

2021-04-21 · 9 🎉 · 9 🚀 · 48 🐛 · 20 🔍 · 29 👩‍💻👨‍💻

🎉 New features

  • APPS: Method to fetch Livechat Departments (#21690)

    New method in the livechat bridge that allows apps to fetch departments that are enabled and have agents assigned

  • APPS: onInstall and onUninstall events (#21565)

    Adding the user information when installing and uninstalling an App to the Apps-Engine.

  • ENTERPRISE: LDAP Teams Sync (#21658)

  • Enterprise: Second layer encryption for data transport (alpha) (#21692)

    The second layer encryption for data transport works implementing the ECDH algorithm where session keys are exchanged before the rest of the communication. This feature is enterprise only since it requires the micro-services architecture and it's in the early stage of tests as an alpha feature and documentation may not be available before the beta stage.

  • New set of rules for client code (#21318)

    This small PR does the following:

    • Now React is the web client's first-class citizen, being loaded before Blaze. Thus, BlazeLayout calls render templates inside of a React component (BlazeLayoutWrapper);

    • Main client startup code, including polyfills, is written in TypeScript;

    • At the moment, routes are treated as regular startup code; it's expected that FlowRouter will be deprecated in favor of a new routing library;

    • React was updated to major version 17, deprecating the usage of React as namespace (e.g. use memo() instead of React.memo());

    • The client/ and ee/client/ directory are linted with a custom ESLint configuration that includes:

      • Prettier;
      • react-hooks/* rules for TypeScript files;
      • react/no-multi-comp, enforcing the rule of one single React component per module;
      • react/display-name, which enforces that React components must have a name for debugging;
      • import/named, avoiding broken named imports.
    • A bunch of components were refactored to match the new ESLint rules.

  • On Hold system messages (#21360)

    image

  • Password history (#21607)

    • Store each user's previously used passwords in a passwordHistory field (in the users record);

    • Users' previously used passwords are stored in their passwordHistory even when the setting is disabled;

    • Add "Password History" setting -- when enabled, it blocks users from reusing their most recent passwords;

    • Convert comparePassword file to TypeScript.

    Password_Change
    Password_History

  • REST endpoint teams.update (#21134)

    add teams.update endpoint

  • Standard Importer Structure (#18357)

🚀 Improvements

  • APPS: Scheduler option to skip immediate execution of recurring jobs (#21353)

    Create and schedule a task manually at scheduleRecurring method so the first iteration runs after the configured interval. This is accomplished by adding the setting skipImmediate: true when setting up the task.

  • Add error messages to the creation of channels or usernames containing reserved words (#21016)

    Display error messages when the user attempts to create or edit users' or channels' names with any of the following words (case-insensitive):

    • admin;

    • administrator;

    • system;

    • user.
      create-channel
      register-username
      change-channel
      change-username

  • add permission check when adding a channel to a team (#21689)

    add permission check for each room

  • Add proxy for data export (#20998)

    Add a proxy for data export downloads (instead of just linking ufs urls) so we can have more control over its response. Also added a human readable message when the user tries to download the user-data unauthenticated.

  • Add support to range downloads on file system storage (#21463)

  • Alert on team deletion (#21617)

    Screen Shot 2021-04-16 at 7 03 30 PM
  • Do not require pre-configured tags in Omnichannel chats (#21488)

  • OEmbed details by requesting using the accept language header on the request (#21686)

    • Send Accept-Language header on oembed requests
  • Resize custom emojis on upload instead of saving at max res (#21593)

    • Create new MediaService (ideally, should be in charge of all media-related operations)

    • Resize emojis to 128x128

🐛 Bug fixes

  • Add tag input to Closing Chat modal (#21462)

  • Admin Users list pagination (#21469)

    • Fix Administration/Users pagination
  • Allow deletion of own account for passwordless accounts (e.g. OAUTH) (#21119 by @wolbernd)

  • Allows more than 25 discussions/files to be loaded in the contextualbar (#21511 by @Jeanstaquet)

    In some places, you could not load more than 25 threads/discussions/files on the screen when searching the lists in the contextualbar.
    Threads & list are numbered for a better view of the solution

    2021-04-09.19-37-49.mp4
  • Allows more than 25 threads to be loaded, fixes #21507 (#21508 by @Jeanstaquet)

  • Allows to display more than 25 users maximum in the users list (#21518 by @Jeanstaquet)

    Now when you scroll to the bottom of the users list, it shows more users. Before the fix, the limit for the query for loadMore was calculated so that no additional users could be loaded.

    Before

    2021-04-10.01-21-20B.mp4

    After

    2021-04-10.01-28-43A.mp4
  • App installation from marketplace not correctly displaying the permissions (#21470)

    Fixes the marketplace app installation not correctly displaying the permissions modal.

  • Archive permissions for room moderator (#21563)

  • Audio message same pattern as image message (#21466)

    image

  • Avoid sidebar being broke (#21490)

  • Change margin size for quote messages (#21461)

    image

  • Change team private info text (#21535)

  • Change the active appearance for toolbox buttons (#21416)

    image

  • Checking 'start-discussion' Permission for MessageBox Actions (#21564 by @yash-rajpal)

    Permissions 'start-discussion-other-user' and 'start-discussion' are checked everywhere before letting anyone start any discussions, this permission check was missing for message box actions, so added it.

  • Close chat button is not available for Omnichannel agents (#21481)

  • Correcting the case there are no result in admin users list (#21556 by @Jeanstaquet)

    I added a default case to the total when there are no result to the user's query

  • Don't allow whitespace on bold, italic and strike (#21483)

    Stops the original markdown rendered from rendering empty bold, italic and strike text. Stops _ _, * * and ~ ~

  • Don't ask again modals blinking (#21454)

    Made the check before opening the modal.

  • Error when editing Omnichannel rooms without custom fields (#21450)

  • Fix the bugs opening discussions (#21557 by @Jeanstaquet)

    I added the right row export to display the discussions list

  • Generic Attachment broken somehow (#21657)

  • Header component breaking if user is not part of teams room. (#21465)

  • Livechat not retrieving messages (#21644 by @cuonghuunguyen)

  • Make Omnichannel's closing chat button the last action in the toolbox (#21476)

  • Margins on contextual bar information (#21457)

    Room

    Before
    image

    After
    image

    Livechat

    image

  • Message Block ordering (#21464)

    Reactions should come before reply button.
    image

  • Message link null corrupts message rendering (#21579)

    Additional checks on message_link field before rendering message contents

  • Omnichannel current chats and agents grid aren't sorting by status properly (#21616)

  • Omnichannel queue manager returning outdated room object (#21485)

    The Omnichannel Queue Manager is returning outdated room object when delegating the chat to an agent, hence, our Livechat widget is affected and the agent assigned to the chat is not displayed on the widget, only after refreshing/reloading.

  • Omnichannel room information panel breaking due to lack of data verification (#21608)

  • public teams not appearing on spotlight search results (#21495)

  • Remove all agent subscriptions when an Omnichannel chat is closed (#21509)

  • Remove size prop from StatusBullet component (#21428)

  • Rename Omnichannel Rooms, Inquiries and Subscriptions when the Contact Name changes (#21513)

  • Rename team not working properly (#21552)

  • Selected channels are not showing in Teams (#21669 by @sumukhah)

  • Send alternative color to unread sidebar icon (#21432)

    image

  • Show direct rooms as readonly when one of the users is deactivated (#21684)

  • Tag component is no longer rendering on Chat Room Information panel (#21429)

  • Team types in admin -> rooms. (#21612)

    print

  • Team's channels list for teams with too many channels (#21491)

    • Fix teams.listRooms pagination for non-admin users
  • Typos/missing elements in the French translation (#21525 by @Jeanstaquet)

    • I have corrected some typos in the translation

    • I added a translation for missing words

    • I took the opportunity to correct a mistranslated word

    • Test_Desktop_Notifications was missing in the EN and FR file
      image

  • Updating a message causing URLs to be parsed even within markdown code (#21489)

    • Fix updateMessage to avoid parsing URLs inside markdown

    • Honor parseUrls property when updating messages

  • Use async await in TeamChannels delete channel action (#21534)

  • User status out of sync (#21656)

  • Wrong title on Omnichannel contact information panel (#21682)

  • Wrong useMemo on Priorities EE field. (#21453)

  • Wrong user in user info (#21451)

    Fixed some race conditions in admin.

    Self DMs used to be created with the userId duplicated. Sometimes rooms can have 2 equal uids, but it's a self DM. Fixed a getter so this isn't a problem anymore.

🔍 Minor changes
  • Doc: Corrected links to documentation of rocket.chat README.md (#20478 by @joshi008)

The link for documentation in the readme was previously https://rocket.chat/docs/ while that was not working and according to the website it was https://docs.rocket.chat/
The link for deployment methods in readme was corrected from https://rocket.chat/docs/installation/paas-deployments/ to https://docs.rocket.chat/installation/paas-deployments
Some more links to the documentations were giving 404 error which hence updated.

  • [Improve] Remove useless tabbar options from Omnichannel rooms (#21561)

  • A React-based replacement for BlazeLayout (#21527)

    • The Meteor package kadira:blaze-layout was removed;

    • A global subscription for the current application layout (appLayout) replaces BlazeLayout entirely;

    • The #react-root element is rendered on server-side instead of dynamically injected into the DOM tree;

    • The "page loading" throbber is now rendered on the React tree;

    • The renderRouteComponent helper was removed;

    • Some code run without any criteria on main template module was moved into client startup modules;

    • React portals used to embed Blaze templates have their own subscription (blazePortals);

    • Some route components were refactored to remove a URL path trap originally disabled by renderRouteComponent;

    • A new component to embed the DOM nodes generated by RoomManager was created.

  • Add ')' after Date and Time in DB migration (#21519 by @im-adithya)

  • Bump Livechat Version (#21694)

  • Chore: Do not stop animations on Test Mode (#21484)

  • Chore: Increase testing coverage on password policy class (#21482)

  • Chore: Meteor update to 2.1.1 (#21494)

    Basically Node update to version 12.22.1

    Meteor change log https://github.com/meteor/meteor/blob/devel/History.md#v211-2021-04-06

  • Chore: Remove control character from room model operation (#21493)

  • Fix typo in app/apps/README file (#21204 by @sauravjoshi23)

  • Fix: Missing module eventemitter3 for micro services (#21611)

    • Fix error when running micro services after version 3.12

    • Fix build of docker image version latest for micro services

  • Language update from LingoHub 🤖 on 2021-04-05Z (#21446)

  • Language update from LingoHub 🤖 on 2021-04-12Z (#21530)

  • Language update from LingoHub 🤖 on 2021-04-19Z (#21642)

  • Merge master into develop & Set version to 3.14.0-develop (#21441)

  • regression: Cannot enable e2e in direct room. (#21650)

  • Regression: Edit user in admin breaking (#21613)

  • Regression: Legacy Banner Position (#21598)

    Before:

    image

    After

    image

  • Regression: React + Blaze reconciliation (#21567)

  • regression: Team Channels actions (#21417)

👩‍💻👨‍💻 Contributors 😍

👩‍💻👨‍💻 Core Team 🤓

Don't miss a new Rocket.Chat release

NewReleases is sending notifications on new releases.