A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.
2023-07-26 Β· 1 π Β· 1 π Β· 4 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
2023-06-07 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
2023-06-07 Β· 2 π Β· 2 π Β· 5 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
Imported messages are not displayed (#29485)
message deletion fails if has files attached on filesystem storage (#29313)
2023-06-05 Β· 1 π Β· 9 π Β· 9 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
TRANSPORTER
env var for monolith
deployments (#29373)queuedForUser
endpoint not filtering by status (#29189)
Embedded layout stops working after navigation occurs (#29147)
File upload in Safari, IOS devices (#27121)
fix wrong %s translations (#29395)
getActiveLocalUserCount query (#29349)
Import progress page stuck at 0% (#29421)
Importer crashes when sending the "active status" e-mail notification to users (#29401)
getImportProgress
endpoint returning incorrect
count info (total: 0, completed: 0
);OTR session closing after 10 seconds without warning (#29245)
The Notifications
streamer is sending two events when
there's a license applied to the workspace and it's not using
Microservices. I'm avoiding this by simply ignoring the second event in
OTRRoom.
There is still an issue where there's 2 system messages being fired after accepting, but that's not a really big concern since it doesn't break anything.
unable to create user if Accounts_ManuallyApproveNewUsers is enabled (#29293)
2023-05-19 Β· 1 π Β· 2 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
Livechat CSP
whitelist validation (#29278)
This PR fixes the Livechat CSP validation, which was incorrectly blocking access to the widget for all non whitelisted domains.
2023-05-17 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.1
2023-05-15 Β· 9 π Β· 2 π Β· 80 π Β· 290 π Β· 56 π©βπ»π¨βπ»
14.21.3
6.14.17
4.4, 5.0, 6.0
1.39.0
auto link custom domain (#28501)
Changes:
/admin/settings/Message
Options
useAutoLinkDomains
to get the setting and
return an array of domainsCurrent:
Desirable: Output when the setting has the value:
local,intranet
New setting:
Custom roles and Public&Private apps stats (#27781)
Make the marketplace search bar placeholder dynamic (#28394)
Now the placeholder of the marketplace search bar will change based
on which page of marketplace the user is browsing. Demo gif:
Message Forwarding (#26662)
Implement the ability to forward messages to another channel, thread, or discussion. This is a high demand capability that is currently missing in Rocket.Chat. It can significantly improve the user's experience and her/his productivity. The scope of this project will be limited to the web application (not for mobile apps).
Special thanks to @nishant23122000 that helped us with this during GSOC 2022
moderation dashboard (#28962)
Release PR for the feat/moderation-dashboard
implementing the Beta version of the Moderation Console. For more
details & some previews on Moderation Console, read here -> https://github.com/RocketChat/Rocket.Chat/pull/27961#issue-1573852076
New timeout setting for Omnichannel Webhooks (#28219 by @cauefcr)
Costumers were complaining about duplicated data from the Omnichannel webhooks, so I added a new setting that controls the timeouts for the webhooks, in the omnichannel->webhooks panel, the default values are 5s for http timeout, and 4x that for the retry timeout, or 20s.
Registered Loom oEmbed (#28339 by @Nabhag8848)
VideoConference Guest mode and Conference Router (#28186)
Jira Issue: [VC-79]
Adding input type=password to AWS secrets fields (#28159)
Some fields that store secrets for AWS were exposing sensitive data
because they didn't have the input type as password
.
The change includes adding the password type and also changing the
autocomplete value from <PasswordInput />
component
to add the value new-password
to avoid the browser
autocompleting with the existing password. (This does not prevent the
browser to show the hint to add the password)
Galician onboarding translation (#27908 by @Thiagof99)
I've translated the entire onboarding page and forms to galician
language. Here's an example of how the forms look now:
#28762 - fix missing command in /help (#28777 by @adarshlilha)
When using /help
command in any room the rocket.cat bot
lists all keyboard shortcuts for the operations that can be done in
rocket chat but for one command(marking all messages as read) shortcut
is not being renderered
before fix screenshot:
post fix screenshot:
ComposerPopupPreview
trespassing the composer limit
(#28896)
emoji
property in messages not being respected (#28416)
There's a property on the message object called emoji
which allow the sender (bot, app, API, integration, etc) to replace the
user avatar with an emoji. Since we rewrote the messages to React, this
was not being supported.
UI_Use_Real_Name
not being respected in quotes and
RoomForeword (#28613)
Updated pertinent places and made it so user name
is
always sent with message (empty if non-existant).
Before:
After:
Add function to get installation source (#28806)
There have been reports of problems regarding the missing information
of installationSource
in apps. The only scenario where this
information could be missing is if migrations failed to run properly
when upgrading to 6.0. We haven't been able to identify the root cause
yet, so we decided to provide a workaround in the meanwhile
App crashing when switching to Hindi (hi-In) language (#28285 by @bhardwajdisha)
app status inconsistencies when running multiple instances in a cluster (#29180)
App status inconsistencies between multiple instances in a cluster boil down to the fact that the Apps-Engine is currently responsible for orchestrating when these events are triggered and is overly verbose in doing so.
Upon analysis, the framework itself should not have the concept of "other instances" - this is a deployment detail of the host system, and as such should be controlled by the host. The correct solution for this problem is to review this notification system, potentially removing it from the framework and leaving the responsibility solely for Rocket.Chat.
However, this is hindering the current app management experience for workspaces, so this PR cuts the control of some notifications that come from the framework (the more problematic ones) and moves the control over to RC in a short and practical way.
This is done by turning the methods of the most problematic events in
the AppActivationBridge
into no-ops, and instead triggering
the AppServerNotifier
directly in the api endpoints that
are applicable.
It is not the most correct solution to the problem, but due to time constraints and urgency this will be applied first so we can move with the correct solution in a future point.
application crashing when clicking on files button (#28878 by @jayesh-jain252)
The application crashed when a user clicked on the files option when there were multiple files in the room.
After:
Apps.engine resource consumption (#28514)
Added some validations to avoid doing unnecessary updates and also avoid loop that causes high server usage
Avoid useEffect
loop (#28699)
A bug in useUserBanners
hooks will generate a infinite
loop whenever a new user banner (e.g. new version announcement) is
available. This PR fixes it.
Avoid throw error on settings.watch
at startup (#28649)
Bring unseen app requests badge back and minor refactors (#28348)
Brought back the unseen app requests badge that disappeared due to a development oversight and fixed some typos and style issues.
change default text color in homepage custom content block (#28685)
color="info"
), but should actually be blackBefore:
After:
Changing the app's error verification (#28450)
check if custom field is required to apply rule (#28428 by @filipemarins)
Fix save button is not enabled until non-required custom fields are not filled under room information.
composer slashcommands duplication (#29086)
Confirm password flow fixed and refactored (#28453 by @XshubhamX)
convert OVERWRITE_SETTING type MULTISELECT to array (#29208)
Delete accounts modal asks for a username instead of the password (#28883)
Jira task: WM-2
Fixed a misuse of the password.bcrypt data. This info shouldn't be
exposed to the front-end. Not only that, but it also wasn't available to
the front-end causing a bug in which the user would be prompted for
their username when deleting their account even if they had a password.
Also changed the text of the account deletion confirmation modal so that
it better uses the spacing of the Generic Modal. Demo gif:
Display Avatar Preference not hiding avatars on messages (#27072)
Emoji don't work after text in contiunous (#28216 by @Bankar-Swapnil)
Engagement dashboard crash on Users tab (#28131)
Error logging in with TOTP on "reset password" workflow (#28938)
Error message is displayed in case no file is found in custom sound section. (#28302 by @bhardwajdisha)
Export as PDF button is disabled when chat is closed by the visitor (#28305 by @filipemarins)
Fix the export as PDF
button is disabled when chat is
closed by the visitor;
Fixed business hours route redirect (#28344)
This PR fixes the user being redirected to a blank page after editing the business hours.
Fixed no role assign to manual registered users despite of Default Roles for Users settings (#28293 by @bhardwajdisha)
Fixing the user status change by app (#28965)
Fuselage's icon font reloads too often (#28673)
Gallery opening other image after closing (#27957)
How to reproduce: 1 - Upload MANY images to a channel (they have to be images and the bigger and more images the easier to reproduce) 2 - Click on one of the images 3 - Try to close the glalery as QUICK as possible
If done correctly, another image will open after closing the gallery. You could also try opening different images or throttling the network thru the devtools in order to help reproduce it.
I also took some time to make part of the code more readable.
Generic Table Search (#28401)
When the user changes the page and tries to search for a room that is not currently visible on the page itβs not returning any results. This is also reproducible in the Users table
Current Behavior: It returns the list filtering by
the name
Previous Behavior: Not found - It was not finding
the room because itβs filtering only in the current page
Google Cloud Storage not working (#29244)
Hide System Messages for room requires refresh (#28584)
Adittionaly fixed a bug in the Edit Channel contextual bar where the
hide system messages
option wasn't updating on removing the
last item.
Horizontal scroll in main room if text is too long (#28434)
Removed inline styles from elements and substituted p
tag for div
For a quick explanation, the p
tag adds the multiple
line breaks by default when copying text. We should revise in the parser
how we deal with paragraphs and text blocks.
Invalid JSON in Custom Translations setting crashes the UI (#28600)
type: code
and
code: application/json
) are valid before saving, or throw
an error otherwise;Leader Bar presence status alignment (#28793)
Livechat MessageList not auto scrolling on new message (#28547)
Livechat notifications not working correctly (#28741)
Livechat Triggers not working (#29073)
marketplace doc link wrong redirect (#28466)
Fixed a problem in which the FlowRouter was breaking external links
passed to the SidebarItem component. Example of wrong behavior (after
clicking on the marketplace Documentation option):
Demo gif (after fix):
marketplace requested glitch (#28445)
message-parser links (#28735)
When sending URLs with certain characters, the hyperlink gets cut off.
For example:
https://www.nimblepcm.com/(W(601))/Main?ScreenId=GI000027
URL gets cut off after "(601"
That doesn't happen with all URLs.
MessageBoxReplies attachments preview (#28579)
The MessageBoxReplies
component was not displaying the
attachments previews in the correct way, it was using the
DefaultAttachment
instead.
To accomplish the expected behavior I had to do the following changes:
MessageBoxReplies
to add a
collapsed
prop to the attachments to always start as
collapsedMessageCollapsible
component to
control the preview attachments in MessageBoxReplies
to
always start as collapsedcollapsed
value and send it thoughtShareMessageModal
to display the correct
attachment and its previewsuseCollapse
hook prop as optional because
was not making sense to put it as mandatory since it was getting the
value from the user preferences as default and for the
MessageCollapsible
work in a dynamic wayCurrent Behavior:
Expected Behavior
Messages jumping after reaction (#28770)
Migration error when removing 'snipetted' index (#29215)
migration to fix apps in invalid state (#29210)
Due to a conflict between 5.4.x and 6.0, if the upgrade of a workspace is done using a Rolling upgrade strategy, it is likely that apps will be left in an invalid (potentially unusable) state.
We can solve apps left in this state by adding another migration.
missing margins in message composer icons (#28430)
.rcx-button-group__item
prop in message
box components for horizontal marginBefore:
After:
New marketplace uxdqa (#28390)
Fix all ux problems found by design on the new marketplace.
AECO-18: Enabled apps counter has wrong spacing - M: #28391 AECO-21: Disabled state of request button showing the text "request" instead of "requested" AECO-22: Upsell modal has wrong spacing between its title and its image - M: #28391 AECO-23: Request tab visible inside of private apps page - M: #28392 AECO-25: Wrong title on enabled apps counter when inside of the private apps page - M: #28391 AECO-48: UXDQA app listing - M: #28500 AECO-49: UXDQA app detail - M: #28499
No feedback given in case of wrong password input in modal confirm password (#28276 by @bhardwajdisha)
Normal and multiline messages adding extra spaces upon copying/pasting (#28187 by @Educg550)
null email for SSO User on Profile Page (#22438 by @Shailesh351)
Offline register option (#28467)
Prevent blank space on live chat form validations (#28243 by @filipemarins)
quote line break (#28798)
Big messages are being rendered correctly on the chat but when
quoted, the UI stops wrapping them correctly. The change was made on
fuselage
, this PR only updates its version.
fuselage PR: https://github.com/RocketChat/fuselage/pull/1018
Before:
Now:
Quotes chain off by one error in quote chain limit settings (#28281 by @jayesh-jain252)
Fixed off by one error in Quote Chain Limit. Now if a user sets Message_QuoteChainLimit (default is 2) the number of quotes chained matches the setting. Changes are made in apps/meteor/app/oembed/server/jumpToMessage.ts file
With Message_QuoteChainLimit=2 Before:
After:
redirect not authorized and room not found errors (#29150)
Redirect Meteor.Error to RoomNotFoundError to show the correct page
Before:
After:
remove link appearing in quotes preview (#28443 by @jayesh-jain252)
When a user chained quotes for more than 2 times, there was a link appearing in the quotes preview
Before:
After:
Resolve Reset Password feature not sending email for emails containing capital letters (#28778 by @Pranshu1902)
Responsiveness of New Integration (#27645 by @adijr9487)
Improved the responsiveness by adding maxWidth property.
Restriction setting not being applied to the old UFS route (#28363)
Revert breaking change to groups.list API: 404 vs. empty list (#27587 by @nmagedman)
API calls that request a list of groups which meet some criteria should return an empty list when appropriate, rather than 404. This was the pre-v5.0.0 behavior.
Routing fixed for private apps in marketplace section (#28418 by @ayush3160)
This pull request fixes the irregular behavior of routing in the Private Apps section of the Marketplace. The issue was caused by the passing of three parameters (id of app, marketplaceVersion, and tab) to the route when opening an app's details. In the case of private apps, the marketplaceVersion was returning undefined, which caused the version to take on the value of the tab when redirecting. To resolve this issue, I have updated the code to pass the version of the app when the marketplaceVersion returns undefined. This fix ensures that the routes behave as expected in the Private Apps section of the Marketplace.
Show all users on rooms members list (#28413)
Single omni closed room can't be deleted when the user doesn't have the permission to 'remove all closed omni rooms' (#28877)
Small UI bugs (#28893)
It fixes an insidious bug affecting the focus of the message composer whenever the user start typing. It also reverts some refactored code that affected desktop app users (e.g. cut/copy/paste not working).
SMTP warnings on user form (#28832)
Check for SMTP config on server side and then show warning on client side
sound notification for queued chats with manual routing (#28411 by @filipemarins)
Don't play notification sound for disabled agents and also respect
the poolMaxIncoming
setting to play or not the
notification; Refactor queue manager to ts.
team channel reload error message (#28667)
Thread list not scrolling to bottom when sending a message. (#28346)
Thread message preview (#28454)
The thread preview message was not displaying emojis and when the parent message was a quoted message it was not displaying the correct message.
To fix the issues I did:
<GazzodownText />
component to call <PreviewMarkup />
conditionally
when passed the prop preview
. The
<GazzodownText />
component it's necessary because
it has the MarkupInteractionContext.Provider
that has the
context necessary to display the emoji and other elements\n
break line. I added a
validation to check if it's a quoteAttachment message, if it is I remove
the first markdown token responsible by the linkBefore:
After:
Thread message preview to ignore hide_FlexTab preference (#28470)
Added role='link'
so that hide_flextab preference is
ignored on this DOM node.
ui crash if no app requests found (#29107)
Unauthorized Toast Message when accessing a channel's team that user are not a member (#28670)
Complementary it replaces useEndpointData
in favor of
useQuery
Unnecessary useQuery refetch (#28451)
Sometimes when the user focuses on the window that is running the
Rocket.Chat some queries are triggered again without a reason, to
prevent this to happen I added a option to useQuery
hook,
refetchOnWindowFocus: false
Queries impacted:
videoconf stream (#28455)
Whatsapp quotes not working due to livechat url change (#29153)
When clicking on display option their checked status does not changes (#27881 by @AdityaSingh-02)
word break in rcx-message-body (#28904)
Changes made on the fuselage repo: https://github.com/RocketChat/fuselage/pull/1028
The CSS added into rcx-message-body
word-break: break-all;
was breaking a word in the middle in
the messages.
To change this behavior and break the entire word I changed to
word-break: break-word;
Previous
NOW
Wrong error message when trying to create new team with existing team name (#28270 by @Bankar-Swapnil)
/help notifying the shortcuts in multiple messages (#28765 by @chinma-yyy)
AutoComplete
Sanitization (#28666)
Fuselage Dependency: #1014
enter-room
callback hook (#28704)
Imports
model removal (#28459)
InstancesModal
to ts (#28474)
livechat rooms
- 1 (#28497)
LivechatDepartmentAgents
removal (#28472)
LivechatDepartments
- 1/2 (#28664)
LivechatRooms
2 (#28504)
LivechatRooms
removal - 3 (#28506)
LivechatTag
model to raw (#28706)
meteor/session
usage (1/N) (#28565)
It restricts and replaces the usage of the
meteor/session
package on client modules.
openRoom
dilluted into components (#28794)
Opening a room, from client-side, was an asynchronous process that
was performed imperatively by a function called opemRoom
.
Its major issue was violating the principle of single responsibility by
querying both the REST API as well the local cached collection and
performing side-effects, like redirecting and handling errors. This PR
moves openRoom
core logic to a React Query function, which
was only possible by decoupling a bunch of stuff in
RoomCoordinator
.
readMessage
events (#28709)
RegisterUsername
(#28362)
RoomInfo
to typescript (#28250)
Rooms
model 2X (#28715)
Rooms
model 3/4 (#28736)
Rooms
model 4/4 (#28742)
roomSearch
Template (#28691)
Jira Issue: [DSA-99]
Service Configuration
async on server (#28813)
Subscriptions
- 3 (#28538)
Subscriptions
model - 2x (#28535)
Subscriptions
model 6/6 (#28675)
utils
to ts (#28818)
Add "no-floating-promises" eslint rule - Part 1 (#28463)
Add "no-floating-promises" eslint rule - Part 2 (#28464)
Add "no-floating-promises" eslint rule - Part 3 (#28435)
Add βno-misused-promisesβ eslint rule (#28433)
Add rid
to scope of create-invite-links
permission check (#28241
by @LucianoPierdona)
This PR fixes a bug where users with the owner
role
can't create invites because the button isn't being displayed for him,
to solve this issue the rid
was added to the scope of the
check.
Add missing await to online function (#28602)
Add types for Meteor.userAsync
(#28597)
adjust sidebarPalette font colors (#28886)
Allow RoomCoordinator.roomFind to be async (#28566)
Apps modal adjustments and Typescript rewrite (#28785)
Move markdown parser for apps ModalBlock
from
apps/meteor
to fuselage-ui-kit
package and
rewrite some files related to Typescript.
Bump apps engine dependency (#28587 by @albuquerquefabio)
bump apps-engine version to 1.38.1 (#28885)
Bump apps-engine version to 1.38.2 (#29009)
Bump supercharge/mongodb-github-action from 1.7.0 to 1.9.0 (#28003 by @dependabot[bot])
Bump TypeScript version (#28697)
canAccessRoomId to async (#28540)
Change price filters for Enterprise apps (#27553)
Change Restore Section Settings button text (#28894)
Jira task: WM-10 Changed the text of the restore section settings button from "Reset Section to Default" to "Restore Defaults".
Demo image after:
Changed settings registry's callbacks to work with async functions (#28784)
checkUsernameAvailability to async (#28557)
Chore: Change the PR title check to use conventional commits (#28358)
Chore: remove unused prop in register workspace modal (#28317)
Chore: Remove/replace some Meteor packages (#28189)
Chore: Unused/dead code removal (#28155)
ci: add branch config back to checkout action (#28802)
ci: fix flaky tests (#28718)
ci: new label to check stale condition (#28858)
I suggest adding the label stat: stat: waiting response
to trigger the Stale Questions
github action
Sometimes, contributors do not provide full reporting (
stat: need more info
) or do not answer maintainers
questions to understand certain possible issues
ci: revert Variable Setup changes (#28754)
Due to a change in Variable Setup action, external contributors PR fails because the branch reference is not found, revert will make to use the default branch as reference
ci: test qase report (#28569)
ci: trigger repository_dispatch event on release (#29191)
ci(docker): Push Docker tag for commit hash (#28578)
convert addUserToRoom to async (#28479)
Convert api.js to ts (#28534)
This PR converts the API main file from JS to TS. Jira: ARCH-167
convert apps api to ts (#28815)
ARCH-182
convert Audit model to async (#28790)
Convert channels endpoints to TS (#28469)
This PR converts all the (missing) channels.
endpoints
to Typescript. Jira: ARCH-165
Convert chat endpoints to TS (#28417)
This PR converts all the chat.
endpoint to Typescript.
Jira: ARCH-163
convert getRoomRoles to async (#28485)
Convert groups endpoints to typescript (#28432)
This PR converts all the groups.
endpoint to Typescript.
Jira: ARCH-164
Convert meteor call to callAsync (#28575)
Jira: ARCH-639 ARCH-640 ARCH-641 ARCH-642 ARCH-643 ARCH-644 ARCH-645 ARCH-646 ARCH-647 ARCH-648
Convert meteor call to callAsync (2/N) (#28588)
Jira: ARCH-615 ARCH-616 ARCH-617 ARCH-618 ARCH-619 ARCH-620 ARCH-621 ARCH-622 ARCH-623 ARCH-624 ARCH-625 ARCH-626 ARCH-627 ARCH-628 ARCH-629 ARCH-630 ARCH-631 ARCH-633 ARCH-634 ARCH-635 ARCH-636 ARCH-637
convert omnichannel callbacks to ts (#28564)
Convert our Upload Code to TS (#28711)
Convert rooms endpoints to TS (#28448)
This PR converts all the (missing) rooms.
endpoints to
Typescript. Jira: ARCH-166
convert sendmessage to async (#28580)
Convert small files to typescript (#28835)
create EditOauthApp endpoints (#26810)
createRoom.ts, createDirectRoom.ts and cleanRoomHistory.ts (#28492)
ddp streamer typings (#28437)
Dead code and spurious exports (#28654)
Delete unused .../surfaces/SurfaceContext.tsx
(#28690)
deleteRoom to async (#28786)
Ditch Meteor.user
in favor of
Meteor.userAsync
- 1x (#28601)
Don't use meteor collections on migrations (#28563)
Easy replacements of Meteor.call to Meteor.callAsync (#28595)
Embed error boundary into AppRoot
(#28393)
Feature parity for EE models (#28614)
federation Promise.await 1/N (#28591)
federation promise.await methods 2/N (#28593)
Federation refactor towards services + file names improvement + E2E tests fixes (#28326)
This PR is the one that groups the other 4 PRs related to refactoring federation moving from the regular "app" folder to the new services implementation, it also refactors some files and folders to more meaningful and finally it fix some E2E tests.
https://github.com/RocketChat/Rocket.Chat/pull/28263 https://github.com/RocketChat/Rocket.Chat/pull/28267 https://github.com/RocketChat/Rocket.Chat/pull/28295 https://github.com/RocketChat/Rocket.Chat/pull/28158
File attachment input border cut fix (#28359)
Remove the overflow: hidden
property in the file
attachment modal that was cutting the horizontal focus border in the
input. Easier to see the issue using the dark theme.
Before:
After:
fix ha scripts (#28913)
Fork minor Meteor packages (#28337)
It forks Meteor packages that are lightweight in terms of dependencies for portability.
getMongoInfo.js, versio-check and missing meteor methods (#28529)
hasPermission to async - first part (#28533)
i18n: fix sentence in 2fa email modal text (#28683)
From: "Verify_your_email_for
_the_code_we_sent": "Verify
your email for
the code we sent",
To: "Verify_your_email_with
_the_code_we_sent": "Verify
your email with
the code we sent",
i18n: German translation (#28871)
Improving German translation as german Contributor Issue requested
i18n: Language update from LingoHub π€ on 2023-03-10Z (#28365)
i18n: Language update from LingoHub π€ on 2023-04-13Z (#28908)
ignore .eslintcache
(#28475)
improve change stream error handler (#29195)
Improve sidebar search list hook (#28328)
improve tests for livechat/config api (#28658)
Isolate last Promise.await calls on accountsβ code (#28817)
Isolate Promise.await of updateOrCreateUserFromExternalService (#28811)
Limit 10 usernames on reactions tooltip (#28141)
Low hanging fruits (1/N) (#28555)
Low hanging fruits (2/2) (#28556)
Make onLicense
support async callbacks (#28791)
make roomcoordinator.roomName
async (#28609)
make callbacks accept async (#28486)
Make CI fail if checks fail (#28552)
Meteor 2.11 (#28716)
Meteor.user to Meteor.userAsync 1 (#28629)
Migrate SMS to Service (#28123)
Miscelaneous (#28732)
Modal form wrapper (#27778)
Models feature parity (#28456)
move Subscriptions
1x (#28531)
Move banner orchestration to BannerRegion
effects
(#28414)
It removes the necessity of keeping trackers dodging the setup wizard process.
Move callbacks to ts - 2 (#28771)
Move callbacks to ts 1X (#28710)
Move email verification warning to UserProvider
(#28703)
Move fileupload implementation to async (#28769)
Move from meteor/http
to meteor/fetch
-
2x (#28799)
move from canAccessRoom to canAccessRoomAsync (#28477)
move from canDeleteMessage to canDeleteMessageAsync (#28480)
move hasAllPermission to hasAllPermissionAsync (#28674)
move hasPermission to async (#28512)
move subscriptions 4x (#28548)
Move UFS out of meteor packages (#28672)
New inquiry functional test (#28559 by @cauefcr)
This PR tests if inquiries change to taken after they're taken, as well as test most fields of inquiries.getOne
Omnichannel analytics conversion to typescript (#27940 by @FabioCavaleti)
In this PR I converted the omnichannel analytics files to typescript
Patch dependencies (#29024)
Prettier version (#28857)
It upgrades and equalizes Prettier versions across packages.
Promise.await removal (#28481)
Promise.await removal - ReadReceipt (#28661)
promise.await removal 8/N (#28560)
Reconditioning of /app/ui-*
modules (#28620)
Refactoring Not Found pages (#26715)
Create NotFoundState
component to use on
NotFoundPage
and RoomNotFound
Refine IUser[settings]
(#28403)
It makes it optional.
regression: push gateway response as JSON (#28899)
regression: fetch
call in
getWorkspaceAccessTokenWithScope
(#28866)
regression: fetch
JSON response doesn't have a
data
property (#28952)
regression: fetch
response (#29032)
regression: ToolboxDropdown
being used as
IconButton
child (#29035)
regression: add missing await for RocketChatFile (#28807)
regression: await getUserInfo
promise on login (#28655)
regression: custom emojis are not visible (#29084)
regression: Delete Message Modal not closing on error in deleting a message (#29184)
This PR fixes the delete message modal on Moderation Console not closing, if an error occurs while deleting the message
regression: Delete room modal not closing (#28554)
regression: Emoji fill prop (#28992)
regression: Error inserting read-receipts with the new Messages model (#28671)
@rocket.chat/meteor:dsv: I20230328-16:36:11.569(-3)? [2023-03-28T19:36:10.798Z] ERROR: Argument "docs" must be an array of documents
@rocket.chat/meteor:dsv: I20230328-16:36:11.569(-3)? err: {
@rocket.chat/meteor:dsv: I20230328-16:36:11.569(-3)? "type": "MongoInvalidArgumentError",
@rocket.chat/meteor:dsv: I20230328-16:36:11.569(-3)? "message": "Argument \"docs\" must be an array of documents",
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? "stack":
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? MongoInvalidArgumentError: Argument "docs" must be an array of documents
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? at new InsertManyOperation (/home/matheus/.meteor/packages/npm-mongo/.4.12.1.1u9ugqv.zpd9++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/operations/insert.js:68:19)
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? at Collection.insertMany (/home/matheus/.meteor/packages/npm-mongo/.4.12.1.1u9ugqv.zpd9++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/mongodb/lib/collection.js:154:78)
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? at Proxy.insertMany (server/models/raw/BaseRaw.ts:231:19)
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? at ee/server/lib/message-read-receipt/ReadReceipt.js:108:24
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? at /home/matheus/.meteor/packages/promise/.0.12.2.bqfx3w.89spp++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/meteor-promise/fiber_pool.js:43:40
@rocket.chat/meteor:dsv: I20230328-16:36:11.570(-3)? }
regression: Escape regex for moderation dashboard filters (#29214)
regression: fix apps-engine persistence methods (#28688)
Change methods to adapt new models.
regression: fix CI (#28537)
regression: Fix monitor validation logic for rooms & departments (#29213)
regression: fix notifyDesktopUser (#28659)
regression: Fix UserCard height to avoid position glitch (#29151)
The user card has different dimensions when it is loading and when it has loaded the contents. Due to this change in dimensions, it sometimes changes the position of the userCard. So, making the user card as fixed size so this doesn't happen.
regression: Fixed department fowarding not accounting for empty array (#29026)
regression: Fixed livechat notifications displaying [object Promise] on title (#29021)
regression: invalid callback callAsync (#28766)
regression: ldap sync not working (#28583)
regression: Livechat rooms not opening (#28957)
This PR changes the way room-info
tab is opened in
livechat room to avoid race conditions from preventing the rooms from
opening
regression: Message auditing panel not working (#28980)
Introduced in #28772
regression: Missing display prop on
ComposerBoxPopupPreview
(#29010)
regression: Model upsert
doesn't exist anymore (#29144)
regression: name search not working in moderation console (#29209)
regression: Opening DM through UserCard takes too long. (#29190)
regression: Quote message not working for omnichannel visitors (#29212)
regression: Reactivity Issue when agent takes a chat (#28966)
regression: remove callbacks from Meteor.callAsync
(#28809)
regression: Remove unused autocomplete Blaze Template (#29047)
regression: removed css for unread and upload indicators (#28645)
I had to revert a css deletion to rollback the styles form Upload and Unread indicators
Current (problem):
Expected: (current changes)
regression: Render Markup
for all UiKit surfaces (#28922)
regression: Reply in DM not working with hide_FlexTab (#29227)
regression: Room avatar upload not working (#29185)
regression: Room crashes (#29006)
regression: Room Not Found bg color (#28668)
regression: SlackBridge settings UI crashing (#29050)
regression: smtp connection error (#28942)
regression: submitting text in the LDAP User Search modal reloads the page (#29137)
regression: Thread Preview breaking room (#28605)
This regression was caused by this PR: https://github.com/RocketChat/Rocket.Chat/pull/28454
Webhooks/integrations sometimes send an empty array to the messages object, because of that was necessary to double check if the array in not empty.
regression: user creation is failing (#28998)
regression(e2e): Missing private key blocks sending message in encrypted rooms (#28831)
A field was incorrectly defined as private
while used as
public
in a JavaScript module.
regression(file-upload:s3): Fix missing store import (#28781)
Remove Apps persistence
model (#28510)
Remove apps
& app logs
models (#28509)
Remove canned responses
model (#28686)
Remove CodeMirror
blaze template and visual fixes
(#28734)
Remove FederationRoomEvents
model (#28488)
Remove ImportData
meteor model (#28458)
Remove LivechatInquiry
model (#28487)
Remove logging
and gravatar
packages
(#28834)
Remove Meteor.call
from
getRoomByNameOrIdWithOptionToJoin
(#28610)
Remove Meteor.call
from server calls (#28774)
Remove Meteor.call
in favor of
Meteor.callAsync
- 1 (#28576)
Remove Promise.await
calls from importer classes (#28404)
remove Promise.await
calls from irc bridge (#28406)
Remove Promise.await
calls from Slack Adapter (#28408)
remove Promise.await
calls from twitter Oauth
implementation (#28407)
Remove Units
and UnitMonitors
models
(#28708)
Remove all API helpers from the API prototype (#28498)
This PR removes all the API helpers from the API prototype and converts it to regular functions instead. Jira: ARCH-934
Remove all occurrences (#28647)
ARCH-180
Remove dangling direct
field on minimongo
collections (#28833)
Remove easy to remove promise.awaits (#28606)
Remove fibers from linkedin-oauth
(#28779)
Remove fibers from rocketchat-version
package (#28776)
Remove fibers from Users Model (#28797)
ARCH-932
Remove fibers from users models 8 (#28728)
remove hasRole to hasRoleAsync (#28648)
Remove invalid aria-description
from list menus (#28471)
Remove more promise awaits (#28796)
Remove more promise awaits (#28733)
Remove old css (#28140)
Remove optional return of room coordinator (#28592)
Remove promise await (#28399)
remove Promise.await (#28539)
remove Promise.await (#28483)
Remove Promise.await - apps/meteor/app/api/server/api.js (#28476)
Remove promise.await 7/N (#28651)
Remove promise.await 8/N - Dashboard (#28652)
Remove promise.await from apps (#28612)
Jira: ARCH-382 ARCH-383 ARCH-384 ARCH-385
Remove promise.await from csv importer (#28810)
Remove Promise.await from importer-pendind-file.js (#28812)
remove Promise.await from LDAP files (#28527)
remove Promise.await from oauth manager (#28530)
Remove Promise.await from teams-mention feature (#28532)
Remove promise.await N/N (#28643)
Remove remaining EE meteor models (#28713)
remove some Meteor.bindEnvironment (#28822)
ARCH-948
Remove unnecessary Tokens collection and Fibers usage (#28803)
Remove unused meteor packages (#28821)
Remove Users from fibers 10 (#28737)
remove Users from fibers 11 (#28740)
remove Users from fibers 12 (#28767)
remove Users from fibers 13 (#28772)
remove Users from fibers 14 (#28780)
remove Users from fibers 15 (#28789)
Remove Users from fibers 3N (#28669)
Remove Users from fibers 4 (#28680)
Remove Users from fibers 5 (#28687)
Remove Users from fibers 6 (#28689)
Remove Users from fibers 7 (#28702)
remove Users from fibers 9 (#28731)
Remove Users from fibers use inside 2FA feature (#28641)
Part of ARCH-932
Remove Users Model from fibers 2N (#28660)
Remove wrapAsync and convert to TS (#28823)
Replace _.isObject
with isObject
(#28376)
It introduces another function to lower our dependency on underscore.js.
Replace useForm
in favor of
react-hook-form
on CreateDiscussion (#28249)
Restore removed function for counting on LivechatDepartmentAgents (#28577)
revert: removal of Meteor.bindEnvironment
on
DDPRateLimiter.addRule
(#28874)
Room Model 3/N (#28599)
Room Model 4/N (#28618)
Room Models 2/N (#28598)
Rooms model 1/2 (#28694)
Rooms Model 5/N (#28619)
rooms model remove findOneByIdOrName to async (#28596)
saveUserIdentity.ts, saveUser.js, relinquishRoomOwnerships.ts and deleteMessage.ts (#28493)
Subscriptions model - 5 (#28550)
Theme changes on clicking Label (#28397 by @AdityaSingh-02)
As we know Rocket.chat v6.0.0 came with Different themes , where we could simply switch between dark and light mode, but the issue was that When we were wishing to change theme we could only do that by clicking the radio button, but i have made few changes in file where we can also change theme by clicking the label
Types of Meteor methods (1/N) (#28420)
Types of Meteor methods (10/10) (#28541)
Types of Meteor methods (2/N) (#28424)
Types of Meteor methods (3/N) (#28431)
Types of Meteor methods (4/N) (#28452)
Types of Meteor methods (5/N) (#28461)
Types of Meteor methods (6/N) (#28478)
Types of Meteor methods (7/N) (#28482)
Types of Meteor methods (8/N) (#28511)
Types of Meteor methods (9/N) (#28528)
Update codeql
to v2 (#28692)
Update vm2
(#29025)
update Apps-Engine to latest (#29229)
Apps-Engine v1.39.0
Update Apps-Engine to latest (#28646)
Update the Apps-Engine version to v1.38.0
Update CODEOWNERS (#28525)
update documentation (#28719 by @SANTHOSH-MAMIDISETTI)
Update fuselage packages (#29157)
Update issue_template.md (#28753 by @adityakode)
Update meteor types (#28884)
Update Pull Request Template (#28373 by @chinma-yyy)
Upgrade caniuse-lite
(#28377)
It upgrades the caniuse-lite
database for
Browserslist.
Upgrade vm2
(#28860)
It patches vm2
.
Use fetch
instead of meteor/http
(#28682)
Use Messages Raw model (1/N) (#28503)
Use Messages Raw model (10/10) (#28695)
Use Messages Raw model (2/N) (#28505)
Use Messages Raw model (3/N) (#28549)
Use Messages Raw model (4/N) (#28558)
Use Messages Raw model (5/N) (#28590)
Use Messages Raw model (6/N) (#28644)
Use Messages Raw model (7/N) (#28653)
Use Messages Raw model (8/N) (#28678)
Use Messages Raw model (9/N) (#28693)
2023-05-12 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.3
app status inconsistencies when running multiple instances in a cluster (#29220)
App status inconsistencies between multiple instances in a cluster boil down to the fact that the Apps-Engine is currently responsible for orchestrating when these events are triggered and is overly verbose in doing so.
Upon analysis, the framework itself should not have the concept of "other instances" - this is a deployment detail of the host system, and as such should be controlled by the host. The correct solution for this problem is to review this notification system, potentially removing it from the framework and leaving the responsibility solely for Rocket.Chat.
However, this is hindering the current app management experience for workspaces, so this PR cuts the control of some notifications that come from the framework (the more problematic ones) and moves the control over to RC in a short and practical way.
This is done by turning the methods of the most problematic events in
the AppActivationBridge
into no-ops, and instead triggering
the AppServerNotifier
directly in the api endpoints that
are applicable.
It is not the most correct solution to the problem, but due to time constraints and urgency this will be applied first so we can move with the correct solution in a future point.
Migration error when removing 'snipetted' index (#29215)
2023-05-02 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.2
2023-04-24 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.2
vm2
(#29025)2023-04-20 Β· 1 π Β· 2 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.2
2023-04-17 Β· 1 π Β· 2 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.1
2023-04-13 Β· 4 π Β· 3 π Β· 11 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.1
Add function to get installation source (#28806)
There have been reports of problems regarding the missing information
of installationSource
in apps. The only scenario where this
information could be missing is if migrations failed to run properly
when upgrading to 6.0. We haven't been able to identify the root cause
yet, so we decided to provide a workaround in the meanwhile
Fixed no role assign to manual registered users despite of Default Roles for Users settings (#28293 by @bhardwajdisha)
Quotes chain off by one error in quote chain limit settings (#28281 by @jayesh-jain252)
Fixed off by one error in Quote Chain Limit. Now if a user sets Message_QuoteChainLimit (default is 2) the number of quotes chained matches the setting. Changes are made in apps/meteor/app/oembed/server/jumpToMessage.ts file
With Message_QuoteChainLimit=2 Before:
After:
SMTP warnings on user form (#28832)
Check for SMTP config on server side and then show warning on client side
Add rid
to scope of create-invite-links
permission check (#28241)
This PR fixes a bug where users with the owner
role
can't create invites because the button isn't being displayed for him,
to solve this issue the rid
was added to the scope of the
check.
bump apps-engine version to 1.38.1 (#28885)
Upgrade vm2
(#28860)
It patches vm2
.
2023-04-04 Β· 1 π Β· 3 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.0
2023-03-29 Β· 1 π Β· 1 π Β· 4 π Β· 4 π Β· 11 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
1.38.0
VideoConference Guest mode and Conference Router (#28186)
Jira Issue: [VC-79]
Adding input type=password to AWS secrets fields (#28159)
Some fields that store secrets for AWS were exposing sensitive data
because they didn't have the input type as password
.
The change includes adding the password type and also changing the
autocomplete value from <PasswordInput />
component
to add the value new-password
to avoid the browser
autocompleting with the existing password. (This does not prevent the
browser to show the hint to add the password)
Engagement dashboard crash on Users tab (#28131)
Gallery opening other image after closing (#27957)
How to reproduce: 1 - Upload MANY images to a channel (they have to be images and the bigger and more images the easier to reproduce) 2 - Click on one of the images 3 - Try to close the glalery as QUICK as possible
If done correctly, another image will open after closing the gallery. You could also try opening different images or throttling the network thru the devtools in order to help reproduce it.
I also took some time to make part of the code more readable.
hide offline registration option for disconnected workspaces (#28662)
Livechat MessageList not auto scrolling on new message (#28547)
Change price filters for Enterprise apps (#27553)
Currently, Enterprise apps are classified as βFree appsβ. Now, they have been moved to a new βEnterpriseβ category in the Apps page of the Marketplace.
Created a new "Enterprise" pricing filter in the Apps page.
Removed the "Free" tag next to the install button for enterprise apps, on the App Info page.
regression: removed css for unread and upload indicators (#28645)
I had to revert a css deletion to rollback the styles form Upload and Unread indicators
Current (problem):
Expected: (current changes)
Remove old css (#28140)
Update Apps-Engine to latest (#28646)
Update the Apps-Engine version to v1.38.0
2023-03-22 Β· 5 π Β· 7 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
fix: Apps.engine resource consumption (#28514)
Added some validations to avoid doing unnecessary updates and also avoid loop that causes high server usage
fix: Changing the app's error verification (#28450)
fix: Horizontal scroll in main room if text is too long (#28434)
Removed inline styles from elements and substituted p
tag for div
For a quick explanation, the p
tag adds the multiple
line breaks by default when copying text. We should revise in the parser
how we deal with paragraphs and text blocks.
fix: Offline register option (#28467)
fix: Thread list not scrolling to bottom when sending a message. (#28346)
2023-03-09 Β· 20 οΈοΈοΈβ οΈ Β· 12 π Β· 13 π Β· 60 π Β· 238 π Β· 56 π©βπ»π¨βπ»
14.21.2
6.14.17
4.4, 5.0, 6.0
ENTERPRISE: Limit presence statuses to 200 concurrent users when running monolith to keep performance (#27854)
FIX: VideoConference Ringer working intermittently on microservices (#27703)
IMPROVE: SMTP warning for invitations (#27713)
TC-347 - SMTP warning for invitations flow
Create rest endpoint for sendInvitationEmail
Use endpoint in-place of removed Meteor method
NEW: Custom roles upsell modal (#27707)
Also changed the edit role
button:
Drop support for MongoDB 4.2 and deprecate MongoDB 4.4 (#27891)
As per MongoDB Lifecycle Schedules (mongodb.com/support-policy/lifecycles) we're removing official support to MongoDB version 4.2 that is close to reach end of life (April 2023).
We recommend upgrading to MongoDB 5.0+, though 4.4 is still a supported version.
Here are official docs on how to upgrade to some of the supported versions:
mongodb.com/docs/v4.4/release-notes/4.4-upgrade-replica-set mongodb.com/docs/manual/release-notes/5.0-upgrade-replica-set mongodb.com/docs/manual/release-notes/6.0-upgrade-replica-set
Freeze Custom Roles (#27481)
This PR moves role creation and update to enterprise folder
--
Removed method authorization:saveRole
Moved /v1/roles.create/
and
/v1/roles.update
to enterprise edition
Changed message for delete a custom role in community edition
Limit underscore
usage and remove
underscore.string
(even from integration script sandboxes)
(#28037)
Underscore.js is quite outdated and we're not using it in a way that take advantage of modularization, bloating the client bundle. This PR aims to limit its usage across the application.
break: if you are used to have scripts, and they are using underscore, please pay attention probably you need to update them
Marketplace standalone page and app request flow (#27389)
Remove marketplace from the admin menu (on both the file system and the UI), change it into a standalone page, expose its use to end-users, and create an app request flow that allows end-users to ask for app installations in their workspaces directly through Rocket Chats UI.
Demo loom: https://www.loom.com/share/643ba3432225418e96c10041f386ff48
All tasks, descriptions, and designs of work done in this PR can be found on the tasks below, which also double down as simplified ADRs.
Move Multiple Department Creation to EE & [NEW] Department Archive (#27753)
[BREAK] Move Multiple Department Creation to EE: Limit max department creation to 1 in Community edition, existing departments will still function as before.
[NEW] π Department archival: Adds the ability to archive departments, archived departments are disabled and cannot be edited, but will still show in historical data (current chats, directory, chat info, etc...). This offers an alternative to department deletion.
Move read-receipts to EE and threads check marks improvements (#27074)
Improvement: add read receipts for messages in threads only when the thread is open;
Move read-receipts feature to EE (under the
message-read-receipt
module). The
chat.getMessageReadReceipts
endpoint and
getReadReceipts
Meteor method are now EE only.
Remove Chatpal (#28012)
Remove legacy FB Messenger integration (#27760)
Legacy FB messenger integration has been removed in favour of the new and enhanced FB App integration. Click here for more info
Remove less theming (#27647)
Remove message view mode from User Preferences (#27867)
Since the view mode setting in
User preferences -> Messages -> View Mode
does not
work with the new messages template it will be removed
It was removed from every file and it was created a migration to remove from user obj in DB
Remove support to deprecated typing event (#28234)
Removed deprecated settings for Legacy Messages, Marked, Snippet Messages, Autolinker and IssueLinks (#27902)
Removed Settings:
Markdown_Parser
Markdown_Headers
Markdown_SupportSchemesForLink
Markdown_Marked_GFM
Markdown_Marked_Tables
Markdown_Marked_Breaks
Markdown_Marked_Pedantic
Markdown_Marked_SmartLists
Markdown_Marked_Smartypants
Message_AllowSnippeting
Message_Attachments_GroupAttach
Message_ShowEditedStatus
Message_ShowFormattingTips
Accounts_Default_User_Preferences_useLegacyMessageTemplate
AutoLinker
AutoLinker_StripPrefix
AutoLinker_Urls_Scheme
AutoLinker_Urls_www
AutoLinker_Urls_TLD
AutoLinker_UrlsRegExp
AutoLinker_Email
AutoLinker_Phone
IssueLinks_Enabled
IssueLinks_Template
API_EmbedDisabledFor
Unify monolith and microservices intercommunication on same technology and limit to Enterprise only (#27969)
This change removes the old DDP Matrix communication by Moleculer based breaker over TCP, simplifying code maintenance, allowing better reliability, performance and monitoring.
It requires a license to enable communication among servers as the rest of the Moleculer implementation.
Community Edition will loose ephemeral events as Typing indication and others when running multiple instances.
Update livechat:saveDepartment to accept a string array in departmentsAllowedToForward (#28261)
Breaking change: There have been some changes to
livechat:saveDepartment
meteor method's
departmentsAllowedToForward
parameter. Previously it used
to accept a string which was a comma-separated list of departmentIds.
The new type is an array of strings.
Due to recent changes to the useDepartmentList
hook the
component AutoCompleteDepartment
became incompatible with
many of our existing pages, causing them to break. This PR makes them
work again.
Update Meteor to 2.9.1 and NodeJS to 14.21.2 (#27639)
Upgrade to version 6.0 can be done only from version 5.x (#28098)
EE: Omnichannel Priorities & SLAs (#27083)
EE: PDF Chat transcript for Omnichannel conversations (#27572)
Attachment Files Redesign (#27470)
Replace File attachments to use
MessageGenericPreview
Move File attachments to the /MessageList
folder
Refactor Video, Image, and Audio Attachments to use
MessageGenericPreview
New component MessageCollapsible
Refactored the OEmbedCollpsible
component to use
MessageCollapsible
Refactored the AttachmentSize
component to include
different style
Added descriptionMd
property to the
MessageAttachment
object to use the new parser in
descriptions
Added size and format to attachment object at
sendFileMessage.ts
Changed maxWidth and maxHeight of AttachmentContext to be the same as the OEmbed sizes
OLD:
NEW:
Bridge to get all users crated by app and also delete them (#27877)
We're working on MS Teams bridge, to make it usable we have created a new method for the apps engine to create new users and we'll also need to delete all when we uninstall the app. Therefore, we created this bridge to cover the action of deleting users on the app side.
Emojis rendering properly on quote message previews (#27972 by @Educg550)
Homepage new block (#27540)
New homepage block admin view:
Normal user view:
Admin Homepage Content settings page:
Matrix federation events coverage expansion + bug fixes (#27763)
Disables not supported features in federated channels (#27204)
Add support for the whole Matrix Markdown spec (#27725)
Allow federated rooms with the same name per different servers when they have a contact between them (#27559)
Matrix Federation send message when multiple users are involved was not working (#27327)
Allow the room owner to set roles on federated rooms, following a specific and different approach as normal rooms (available on docs) (https://github.com/RocketChat/Rocket.Chat/pull/27633)
E2E Tests (PS: they don't run on CI) (#27578 #27282 #27115)
Disables admin actions disallowed for federated users/rooms (https://github.com/RocketChat/Rocket.Chat/pull/27251)
FED-81
New Message Composer (#27566)
Permission to bypass message editing and removing limits (#27644)
This PR adds a new permission called
bypass-time-limit-edit-and-delete
, to bypass the time limit
when editing or deleting a message, the purpose of this PR is to remove
the limitation for bots that cannot change the message after the
specified time.
Rocket.cat message for users when an app previously requested is installed (#27672 by @matheuslc)
Upload service (#27543)
Warning Popup reinforcing Zapier deprecation on Integrations Admin settings (#27744 by @Educg550)
Audit (#27994)
Authorize search of custom fields on users.list
(#27423)
This PR allows users to filter and search for custom fields on the
users.list
endpoint
Emoji picker for large amount of custom emojis (#27745)
Increase read receipt size (#27665)
increase from 11px to 1rem (16px)
Livechat Persian translation (#27825 by @pouyadarabi)
Play selected notification sounds as preview while changing sound settings (#24205 by @try-catch-stack)
Registration Experience (#27820)
If you didn't register when you initially setup your server. Its now easier to register.
Disconnecting and reconnecting your workspace from the cloud is now also easier
Require acceptance when setting new E2E Encryption key for another user (#27556)
Change the end to end encryption flow to require an acceptance from the user when receiving a new key.
Changes API e2e.updateGroupKey
to set the new key to
an auxiliary property named E2ESuggestedKey
Adds new API e2e.acceptSuggestedGroupKey
to be
called to accept the suggested key and save it to the final property
E2EKey
Adds new API e2e.rejectSuggestedGroupKey
to be
called to reject the suggested key and clear the
E2ESuggestedKey
SAML and OAuth role sync to support id and name (#27405)
This PR allows the sync of roles by either name
or
id
.
Save toPhone when receiving SMSs (#27656)
Setup Wizard Flow for airgapped environment (#28018)
Spanish home translation (#27898 by @nYCSTs)
Update translation of home page to Spanish. The page had some
untranslated texts.
User data download overhaul (#26358)
It migrates modules to TypeScript, as well adapts the code to the current version of Node.
"Jump to first unread" banner does not always appear when the first unread message is outside of the visible screen (#27941 by @Educg550)
ENTERPRISE: DDP streamer sending data to destroyed streams (#27929)
*.files
endpoints returning hidden files (#27617)
Access to localStorage in Livechat (#27627 by @jschirrmacher)
This fixes access to localStorage in LiveChat, if the user has third party coockies disabled.
Add the possibility of danger style prop to close button on UiKit contextual-bar component (#27533)
Announcement banner link opening in the same page (#27554)
Channel Announcements that contain links are opening on the same page instead of a new page/tab causing render issues, especially on the desktop client.
The fix was simple to add a hook for the dompurify
library to add the target
and rel
attributes
to keep the _blank behavior.
Also, it introduced some parsers settings to
inlineWithoutBreaks
variant to avoid breaking messages at
Announcements and other places that uses this variant.
Anonymous user buttons (#27551)
When the server accepts an anonymous user to join and chat without login, two buttons appears: one for Login and the other to send messages without login.
The component was rewritten to use the fuselage Design System and native hooks to perform actions.
App page showing version undefined for apps not in marketplace (#27766)
The app page is not showing the correct version of apps that are installed in the workspace but not in the Marketplace.
This PR changes the behavior so that the page shows the version that is installed in the workspace; otherwise, it shows the version in the marketplace
Auto Translate not working on new message template (#27317)
Fix auto translate not working on new message template;
Fix a bug that the auto-translate icon was showing for users who didn't have enabled.
Show translated quote messages;
Remove translation provider for end users.
Translate the ThreadMessagePreview component
Black screen when try to open a chat with a non-existent department (#27609)
Broken settings check for updates (#27779)
Comunity users accessing exclusive ee endpoints in omnichannel section (#27876 by @FabioCavaleti)
Custom fields does not appear on the registration form (#28031)
Custom languages not being applied to i18next (#27557)
Disable video call on read-only rooms for not allowed users (#27789)
Jira Issue [VC-58]
Discussion visibility when inside a private team. (#27601)
Create discussions as private when the public channel is inside a private team.
E2EE initial banner not showing (#27574)
Embedded layout opening sidebar (#27892)
In the embedded layout view, certain actions were opening the sidebar
due to the missing query param mandatory to the embedded layout view
(?layout=embedded
)
In addition to this issue, the user was able to navigate to different pages in the embedded layout causing them to get stuck on some other pages other than the Room page. Because of the reported issue, I removed some actions that redirect the user to other pages such as: "Reply in Direct Message"
Emoji rendering on reactions (#27863)
Empty DMs go to sidebar's top after updating user preferences (#27912)
_updatedAt
as lm
field when
merging info from subscriptions and rooms (since this field is updated
along with the user preferences).File upload modal not opening after too long message modal (#28212)
Filtering users by status username is broken in Administration -> Users (#27706)
Fix emoji appearance on sidebar (#27580)
The emojis appear in plain text format in the side-bar (As seen in the below issues) By this PR, it should be fixed
This is how it looks now (As shown on the sidebar, it's appearing as
an emoji not plaintext)
Fix Login with Show default form disabled (#27475)
Fix typo when create discussion modal opens (#24982)
Fixed typo when discussion modal opens. Now it says - Help keep an overview of what's going on!
Google Cloud Storage storage type (#26851 by @carlosrodrigues94)
Google Cloud Storage now requires a "project ID" to be filled.
Useful links:
https://googleapis.dev/nodejs/storage/latest/global.html#StorageOptions https://support.google.com/googleapi/answer/7014113?hl=en
Ignored messages reactivity (#27279)
Invalid regex on search fields crashes UI (#27942)
IPostMessageReacted return field named isReacted instead isRemoved (#27561 by @Nabhag8848)
Marketplace app status initially disabled (#27330)
Currently, the only apps engine statuses considered enabled in the UI
are the auto-enabled and manually-enabled statuses, this causes a UX
problem in which the app will be considered disabled for the first few
seconds of its lifecycle, upon the first installation in a workspace,
since it will have the apps engine status of initialized. This PR adds
the initialized status to the appEnabledStatuses list and solves this
problem. Demo gif: \
Message Actions menu does not close upon choosing an action (#27328)
Message for VideoConf on SidebarItemExtended (#27626)
Jitsi Issue: [VC-30]
Message-parser link issues (#27947)
The changes were made in the fuselage repository. This PR just update the message-parser package version Check the changes in this PR: https://github.com/RocketChat/fuselage/pull/962
Missing placeholders from encrypted channel preview messages now with expected behavior (#27699 by @Educg550)
Referent to [TC-259]
Note that now the file uses
isE2EEMessage()
function and the
useTranslation
internal hook.
Move Omni startup to be EE wrapped (#28020)
New users aren't mapped to rooms with OAuth groups/channels map (#27000 by @carlosrodrigues94)
This change deals with the problem with the new users coming from key cloak, this users were not being mapped to the correct channels on RC.
Not all messages in chat conversations are available when forwarding between agents or departments. (#27816)
Notify apps engine event through ms api (#28169)
The Apps-Engine must drop the current Streamer utilization and start using the Service APIs to correctly communicate between instances and client-server.
Omnichannel call provider option (#27466)
Jira Issue: [VC-38]
OmnichannelRoomIconProvider order breaking VideoConfPopup (#27740)
Jira Issue [VC-39]
Option to Join Read-Only Channels (#27488 by @henit-chobisa)
Pagination not working on current chats (#27432)
Reduce re-subscription on notify-room/user-activity
stream event (#27911)
Whenever something changed the room subscription, it would trigger a
re-subscription to notify-room/user-activity
.
Register Workspace UI fixes and fix doc link (#28021)
Registration and Login placeholders not being used (#27558)
Remove invalid settings at startup (#27653)
Remove unnecessary permissions check on app permissions review modal (#27329)
Removed an unnecessary check that verified if the app permissions
list was an array and threw an error if it wasn't. This check has become
unnecessary ever since the app permission review modal changed to show a
default list of permissions in case the app happened to not have one and
that's what caused those "random" undefined toasts that showed every
once in a while. Demo gif:
room data is not erased after deleting rooms by app (#27886)
RoomLeader status not working (#27576)
It also fixes some visual issues
Save button does not stay disabled in Notification Preferences for no change on mute group option (#27513 by @xareyli)
Added default value for "Mute @all and @here mentions" option
Search list missing key parameter (#28230)
Showing thumbnails on files list (#23301 by @carlosrodrigues94)
Showing Workspace Section For User Having LiveChat Manager Permission (#27188)
Team mention highlight EE (#27493)
The team Mentioned highlighted with the char @
was not
working in Enterprise Edition using the new message parser.
I added validation to the filter by type: 'team'
and
fixed the title to include the team name on mouse hover.
Previous:
NOW:
Toast notification ignoring 403 errors (#27624)
Tokens usage (#27541)
Unintended "Reply on thread" button showing on thread's first message (#27716 by @Educg550)
Referent to TC-128
Unread Message count not displayed for new messages in Omni-Rooms (#27539)
User registration with EmailConfirmation not working (#28143)
Video Conf Message Blocks not always updating when running on micro services (#27764)
Bump version to 6.0.0-develop (#27598)
Chore: Threads as React components (#27524)
Chore: desktop
icon instead of computer
icon (#27959)
Chore: Add dark theme assets (#28214)
Chore: add e2e test coverage for Video Conference (#27075 by @lingohub[bot] & @weslley543)
Jira Issue: [VC-49]
Chore: Add E2E tests to Triggers view (#27413)
Chore: Add Eslint rules to tests (#28074)
Chore: Add extra stats for omnichannel video calling (#28211)
Chore: Add hint (description) to CodeSettingInput after label (#27843)
Added hint (description) to CodeSettingInput after label
Created a storybook story for that scenario
add a checker to not add hint
to<MemoizedSetting />
if the inputType is
code
Before:
After:
Chore: Add quote message option back on live chat rooms (#28038)
Chore: Add spacing adjustments Home page (#27367)
Chore: Add surface-light background to AppRow (#27765)
In light of the recent changes to the fuselage color system, the
AppRow went from having a default background color of white to not
having a color. Because of this, I've added the bg='surface-light' prop
to the Wrapper box of the component. Before:
After:
Chore: Added Enterprise Options to Login customization (#27855)
Chore: Adjust ProgressBar usage (#27832)
Chore: anonymous e2e test dispatch error (#28171)
Chore: AppsTable UI Tweaks (#27629)
Chore: Aria busy indicators (#27978)
Chore: Bump message-parser version and fix typerrors (#27643)
Bumping message-parser version and fix gazzodown package errors.
Chore: Change bundle tags color and refactor app details page header styles (#27293)
Increased the right side margin of the app avatar, removed the 'by'
substring from the app author metadata, and changed the font scale and
colors for the metadata section and short description. Demo image:
Chore: change colors to dark theme on Marketplace (#27532)
Fixed some bugs on the new dark theme in the Marketplace page. The new version looks like this now:
Chore: Change Omnichannel aggregations to run on a secondary (#25346)
Chore: CI improvements (#28076)
Chore: Composer missing Slash Command preview (#27652)
Chore: Composer Quote Component (#27604)
Chore: Composer Styling (#27620)
Chore: Composer wrapper around the textarea (#27658)
Chore: Convert UserTable on Directory to TS (#27534 by @nYCSTs)
Rewrote the UserTable component to TS.
Chore: Create service template (#27519)
Chore: Custom emoji empty state (#27641)
It also replace useEndpointData
in favor of
useQuery
Chore: Custom Sounds Empty State (#27632)
It also replace useEndpointData
in favor of
useQuery
Chore: Deprecate unused omnichannel API (#27538)
Chore: Do not rely on external service on tests (#27874)
Chore: e2e changes tests (#27987)
Chore: e2e omnichannel tests - Close every opened page after the test (#28152)
Chore: E2E tests small corrections (#28066)
Chore: EmojiPicker Wrapper Styles (#28049)
Chore: ExportMessages missing icon (#27628)
Chore: FileItem hover color (#27600)
Chore: Fix babel config related to TypeScript
declare
usage (#28029)
Chore: Fix CI Docker Alpine build missing (#28138)
Chore: Fix CI docker publish (#28134)
Chore: Fix e2e EE tests not working reliably (#28061)
Chore: fix e2e Omnichannel tests (#28097)
Chore: Fix Email Inbox flaky test (#28294)
Chore: fix EmailInbox intermittent e2e tests (#27573)
Chore: Fix fetching Apps-Engine and MongoDB versions for release notes (#28129)
Chore: Fix homepage grid items style (#27527)
Chore: Improve ts-node
startup time with
swc
(#27686)
Chore: improve global setup e2e (#28087)
Chore: Improve service's licence check (#27872)
Chore: improve some e2e selectors (#27936)
Chore: Improve time of meteor build (#28128)
Chore: Invites Empty State (#27631)
It also replace useEndpointData
in favor of
useQuery
Chore: KeyboardShortCut color (#27599)
Chore: Livechat convert emoji to ts (#27425)
Chore: Manually define shared secrets to reusable workflows (#28315)
Chore: Message search changes (#28001)
Chore: Migrate cached collections to TypeScript (#27909)
Chore: More E2E tests for PDF transcript feature of Omnichannel (#28110)
Chore: Move all variables to first step and reduce code duplication (#28106)
Chore: move PaletteStyleTag (#28086)
Chore: Move service definitions to core services package (#27546)
Chore: Move service shutdown logic to each service (#27690)
Chore: Notify Marketplace on App Install (#27925)
Notifies Rocket.Chat's Marketplace of an app install action. This correlates with the app request flow.
Chore: OAuth authorization pages reconditioned (#28085)
Chore: Omnichannel Sidebar icons alignment (#27501)
Chore: Playwright test improvements (#28100)
Chore: Presence cap tweaks (#28058)
Chore: Purge styles of the legacy message
template
(#28126)
Chore: QoL improvements to Omnichannel E2E tests (#28075)
Chore: Reduce Less usage in theming (#27689)
This PR is a preparation for a coming breaking change on layout colors.
Chore: Refactor AudioMessageRecorder
(#28019)
[DSA-11]
Chore: Refactor VideoMessageRecorder
(#27850)
Jira Issue: [DSA-2]
Chore: Refactor CI to improve code reusability and organization (#28108)
Chore: Refactor Composer Collapsed Formatters and Actions (#28039)
[DSA-19]
Chore: Refactor Composer Dropdown (#27931)
Chore: Refactor Composer Popup (#28013)
Chore: Refactor CreateChannelModal (#27469)
Jira Issue: [UFR-11]
Replace useForm
Improve UI validations on Modal
Add ToastBar message on creating a channel
Fixes topic
field not being added properly
Chore: Refactor Directory Tables (#27646)
It also replaces useEndpointData
in favor of
useQuery
Chore: Refactor e2e selectors to use roles (#27582)
Chore: Refactor message subcomponents (#27630)
Chore: Refactor other kinds of message - Phase 1 (#27712)
It pays some technical debts on APIs consumed by message-related components.
Chore: Refactor other kinds of message - Phase 2 (#27927)
Migrate "Starred Messages", "Pinned Messages", and "Mentions" from Blaze templates to React components.
Chore: Refactor useThemeMode in favor of userPreferences (#28063)
Chore: Remove body
template (#28064)
Chore: Remove meteor build --debug
option (#28170)
Chore: Remove duplicated functions in tests (#28336)
Chore: Remove fail-fast from matrix strategy (#28153)
Chore: Remove medium prop from ButtonGroup (#27784)
Chore: Remove method meteor call on message action (#26213)
Chore: Remove old tooltip usage (#26882)
Chore: Remove Sidebar from Blaze (#27571)
Chore: Remove unused Blaze templates after message rewrite (#28025)
Chore: Remove unused templates and bump fuselage (#27606)
Chore: Replace borders to default
(#27667)
Chore: Replace deprecated color tokens (#28164)
Chore: Restrict ChatMessages API
- Phase 2 (#27457)
It split ChatMessages
service class into a collection of
smaller objects, in a composition pattern fashion. Additionally, it
loosens its dependency on the DOM tree and assumes almost all methods
are asynchronous.
Chore: Restrict legacy message events (#27691)
This PR aims to fix conflicts between the legacy messages and the new ones, specially click events on threads.
Chore: RoomAutocomplete Debounce Query (#28083)
Chore: Service cap (#28022)
Chore: Set missing colors (#27817)
Chore: Settings regenerator on migration (#27661)
Chore: Show different labels based on the call originator on direct calls (#27729)
Jira Issue: [VC-26]
Chore: Sidebar theme (#27426)
Chore: SlashCommands Preview (#28065)
Chore: Sync develop
with master
(#28043
by @carlosrodrigues94
& @ostjen)
Chore: test turbo cache action (#28082)
Chore: Token refactor (#27655)
Chore: TwoFactorPass Modals icon misalignment (#27591)
Chore: Update color tokens (#27704)
Jira issues: DSA-25 DSA-26 DSA-27 DSA-28 DSA-30
Chore: Update ESlint rules of client code (#27427)
Chore: Update Some Composer Icons (#27862)
Jira Issue [DSA-20]
Chore: Update tokens (#28079)
Chore: Update tsconfig base target to es2020 (#27552)
The base files are not split into two other files, a "client" and a "server" file. Both extends the new base one. Packages should extend either "client" or "server" ones:
graph TD;
base[tsconfig.base.json]-->client[tsconfig.base.client.json];
base-->server[tsconfig.base.server.json];
server-->s1["@rocket.chat/models"];
server-->s2["@rocket.chat/ddp-streamer"];
server-->s3[...];
client-->c1["@rocket.chat/ui-theming"];
client-->c2["@rocket.chat/fuselage-ui-kit"];
client-->c3[...];
Important changes:
The client config target
have been bumped to
es2015
(it was es5
before)
The server config target
have been bumped to
es2020
The default value for jsx
is
react-jsx
Raised "noUnusedLocals": true
to a base config, so
had to remove a bunch of imports to React
that were not
being used
Chore: Upgrade mongodb
typings (#27424)
It upgrades the mongodb
package to overcome the circular
reference issue of IMessage
.
Chore: Upgrade EE license for CI (#27682)
Chore: use useQuery in place of deprecated useEndpointData (#27673 by @Dnouv)
Chore done: useEndpointData -> useEndpoint for:
/apps/meteor/client/views/admin/
apps
customEmoji
customSounds
customUserStatus
integrations
invites
oauthApps
permissions
rooms
users
Chore: Wait message to not be Busy (#28000)
Chore(deps): Bump thehanimo/pr-title-checker from 1.3.4 to 1.3.6 (#27884 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-12-05Z (#27450)
i18n: Language update from LingoHub π€ on 2022-12-22Z (#27618)
i18n: Language update from LingoHub π€ on 2023-01-09Z (#27705)
i18n: Language update from LingoHub π€ on 2023-01-23Z (#27814)
i18n: Language update from LingoHub π€ on 2023-02-14Z (#28036)
Merge master into develop & Set version to 5.5.0-develop (#27452)
Regression: Fix mentioning rooms with special chars (#28206)
Regression: Fix sidebar horizontal scrolling (#28125)
Regression: "Enable unlimited apps" button on installation modal doesn't do anything (#28132)
Regression: Admin UI -> Rooms
Search filter not
working (#27970)
Regression: 0 appearing on sidebar on specific occasions (#28056)
Fixed faulty logic
Regression: Add auto translate option back to live chat room (#28139)
Add the translation
option to the live chat room; The
behavior of this feature in live chat rooms is quite different from
direct and group messages. In these rooms, you need to activate and set
up the language, while in the live chat room, the translate
option should always appear for every room and should use the
application language to translate.
Regression: Add button-icon-disabled-color to the palette (#27522)
Regression: Add support for 2FA errors to
Meteor.callAsync
(#27767)
Regression: Add tshow to composer params (#27602)
Regression: Added anchors elements to the allowed list to be clicked (#28341)
Regression: Adjusted components using PaginatedMultiSelected to be compatible with new Fuselage version (#28233)
Regression: Adjusted departments upsell modal message (#28258)
This PR adjusts the logic to display the correct message on the departments upsell modal. This affects users with a trial license, expired expired licence, as well as no licence.
Regression: Adjusted departments upsell modal to check for licence and modules (#28246)
This PR fixes a regression on the departments upsell modal, for the rare cases where the workspace has an enterprise licence but has no active modules. This changes improves the check to also consider modules.
Regression: App requests notify admin function generating wrong link (#28111)
Fixed a development oversight in which the link of the app request
Rocket.Cat message was generated without the marketplace version of the
app nor the requests tab param. Demo gif (before):
Demo gif (after):
Regression: Apps provider not handling apps lists correctly (#28264)
Fixed a bug in which the AppsProvider would not handle the
marketplace, installed, and private apps lists correctly when running
the install, update, and delete listeners. This also solved related bugs
of app duplication during installation and loss of reactivity during
uninstalls and status changes(private apps only). Demo gif:
Regression: Apps-Engine startup process was faulty (#28322)
App loading routine was forcing apps to be enabled, even if they were previously disabled
Isolated Apps startup routine for more granular control
Regression: Attachment auto size (#28332)
Attachment Image or Image Preview size in small screens are not respecting container boundaries
Before:
NOW:
Regression: Avoid rendering unsupported media on PDFs & update quote styling (#28048)
Fix faulty logic when deciding which attachment to render based on the mime type of it
Replace media query syntax (width < 767px)
with
(max-width: 767px)
since the first one isn't supported on
safari
Fix a bug when has bold text in multiple rows.
Regression: broken message exhibition when edited (#28180)
Sometimes a message will have the fields editedBy
and
editedAt
present but set to null
. This PR
handle this situation.
Regression: Broken message jump onto threads (#28095)
Regression: Broken room and message composer events (#27754)
It hotfixes two issues:
user card not opening on clicking in user mentions;
slash commands inside threads sending results to the main room.
Regression: Change names of requested apps sorting options (#28312)
Changed the name of the requested app-related sorting options to
cause less confusion regarding their expected behavior and solved some
UX problems with the initial state of the sorting filter when on
different marketplace pages. Also fixed some typos. Demo image:
Regression: Change text of buttons tooltips on custom content homepage block (#28094)
βThis action will become available after the custom content has been addedβ
"Not it's visible for everyone" "Not it's visible only for admins"
if CE β βEnterprise onlyβ
if EE and disabled β "This action will become available after the custom content has been added and made visible to everyoneβ
if EE and enabled β βIt will hideβ¦" or βIt will showβ¦"
Regression: Change wording on department removal setting (#28051)
Regression: Client crashing when updating CachedChatSubscription (#28062)
Currently the typing of 'ISubscription' is a little off from reality.
The property ts
is optional, and this can cause crashes
when trying to access ts
's properties.
I decided to avoid changing the type definitions for ISubscription this time, since it will probably impact many other places, and that's not the scope of this task.
Regression: Client is not loading new settings from server (#28248)
Regression: Client-side checks for message deletion (#27590)
Regression: Composer fix join room action (#27657)
Regression: Composer Toolbox overlapping borders (#27714)
Regression: Creating Custom status (#28292)
User is not able to create a custom status from the admin section. Workspace > User Status > New
The SAVE button is not performing any action
Regression: DateRangePicker errors (#28015)
The date range picker for Yesterday
,
This Week
, Previous Week
, and
This Month
in the Message Audit page, was not selecting the
correct date range and it was causing form validation issues.
Error Evidence:
Regression: Decrypt thread main message for room (#28262)
Regression: Denied Camera permission do not disable VideoMessageAction (#28210)
Regression: Denied Microphone permission disables composer (#28133)
Regression: Disable video message when composer is in use (#28073)
Regression: Disabled grandfathered apps must have the option to be enabled (#28266)
Grandfathered apps will not follow the new enabling flow and it should always be possible to enable them
Regression: Emoji picker styling (#28046)
Regression: EmojiPicker missing shadow on dark mode (#28236)
Regression: EnableUnlimitedApps button action (#28221)
"Enable unlimited apps" button on installation modal doesn't do
anything. Now it redirects to the
'go-fully-featured-registered'
page.
Regression: fix a wrong behavior with the Department table row (#28157)
Regression: Fix agent departments select value (#28077)
Regression: fix api tests (#28067)
Regression: Fix app status filter not working in private apps page (#28198)
Fixed a bug in which the app status filter didn't work because of the
new 'enabled*' and 'disabled*' app status. Demo gif:
Regression: fix close flextab on click outside the container (#27857)
Regression: Fix composer restore (#27642)
Regression: Fix Custom CSS (#27993)
Regression: Fix department edit breaking (#28053)
Regression: Fix emojiPicker reactivity on load-more (#28331)
Regression: Fix file upload on collapsed composer menu (#28071)
Regression: Fix go to ThreadList hook (#27663)
Regression: Fix hasLicense failing due call stack limit reasons (#28304)
Regression: Fix improper usage of useEndpointData (#28050)
Regression: Fix intermitent apps engine startup (#28254)
Makes the apps limitation functionality depend on methods from the Apps Engine's service instead of a dynamic import of the apps orchestrator, making the engine's load process deterministic.
Regression: Fix missing Formatting items (#28044)
Regression: Fix not showing global search option (#28342)
Regression: Fix omnichannel chat forwarding not working (#28117)
Regression: Fix presence broadcast not re-enabling (#28017)
Regression: Fix private apps already in marketplace not shown properly on app details page (#28199)
Fixed a bug in which apps that already existed in the marketplace
would not show properly when installed via the private apps page. Demo
gif:
Regression: Fix RegisterForm Translations (#28156)
Regression: Fix remove user from room shows skeleton (#28247)
When the user is removed from a public channel and has it open it will show a grey placeholder screen
Now, it appears the Join button as usual
Regression: Fix slash command with preview (#28127)
Regression: Fix slash commands (#28168)
Regression: fix Thread horizontal scrolling (#28327)
Regression: Fix toggle theme breaking UI (#28161)
Regression: Fix write stream error on user data export (#27683)
Regression: Fixed room edit custom field validation (#28078)
This PR fixes custom fields validations not being properly triggered/cleared on the room edit page.
Regression: Fixed triggers edit form not being properly updated (#28235)
Regression: Formatted text rendered by UI Kit (#28060)
Regression: Gracefully stop DDP Streamer publication and close WS (#28121)
Regression: Hide price and category filters when inside of private apps page (#28188)
The price and category filters dont make sense for private apps so
when inside of the private apps page these filters will now be hidden.
Demo image:
Regression: Hide Workspace registration feature for non-admin users (#28154)
Regression: Image Attachment Description size (#28149)
The Image Attachment is breaking lines to match the size of the image, should follow the same size of the normal message.
Previous:
Current:
Regression: Incorrect installation flow on app detail and upload app pages (#28173)
The install button displayed in the App detail page of an app from the Marketplace that hasn't been installed in the workspace didn't follow the same installation steps performed in the app list on Explore or Enterprise pages.
This PR isolates the installation handler so the exact same functions are used in both places.
The same problem was solved in the Upload App page
Regression: Incorrect system message upon adding/editing SLA policy for a room. (#28151)
Regression: Installation of some apps fail (#28265)
Installation was failing for apps that did not include a set o permissions required because the process was short circuiting in those cases. However, they are valid as they signify apps that function with the default permission set
Regression: Jump to message not working (#28163)
Regression: Message > messageActionDefault
>
Copy and Report (#28040)
This regression was probably generated by the Attachments rewrite.
Issue 1: When selecting the action Copy
on the message
toolbox with Attachment Messages (messages with files/images) The copied
content was empty because was getting from an empty prop.
Previous output:
Current output:
Issue 2: When selecting the action Report
the reported
message was showing an unformatted message (with markdown tokens)
Previous output:
Current output:
Regression: message box issues (#27495)
It fixes some problems introduced/exposed after refactoring the
ChatMessages
API.
Regression: message-parse version update (#28245)
Regression to fix URL parsing issues
Regression: Missing contexts on contextual bar (#27734)
It should fixes crashes on starred, pinned, and mentioned messages while those are migrating from Blaze to React.
Regression: more message box issues (#27499)
It handles issues regarding editing messages.
Regression: New messages not reflected in the chat window for queued chats. (#28145)
Regression: OAuth Login (#28303)
Login flow with Rocket.Chat as an OAuth provider was broken
Regression: OAuthApps are added with empty string
_id
field (#28257)
_id
field.Regression: Open Thread (#27640)
Regression: Re-add app signature migration to fix the faulty previous one (#28107)
Previously merged migration files ended up in a faulty migration
Regression: Rectifying thread layout (#27680)
This PR fixes:
the size and scrolling area of the list of messages;
the margin and general style of "Also send to channel" checkbox;
the size of link previews.
Regression: Regular users were not able to leave federated rooms (#28148)
When regular users (not owners, nor moderators) tried to leave federated rooms, they were not allowed to do so due to a bad permission check.
Jira: FED-88
Regression: Remove duplicated broadcast App events (#28310)
Regression: Remove unnecessary messages from Email transcript (#28165)
Regression: run clientMessageRecieved hooks on thread main message (#27962)
Regression: Save button is not enable while trying to save contact manager (#28183 by @FabioCavaleti)
Regression: Scroll bars in sidebar (#28091)
Regression: Scrolling on threads (#28298)
Regression: SendFileLivechatMessage using deprecated prop affecting PDF transcript (#28225)
Regression: Show mention instead of the name of the user in app request messages (#28200)
Stopped using the name of users that requested apps and now the app
request messages directly mention the users. Demo image:
Regression: Show messages instead of the composer when there is no action available on federated rooms (#28093)
Rules: If the federation module is disabled within the workspace: do not show the composer and show a message instead;
If the federation module is enabled, the user is not part of the room, and the workspace is a CE environment: do not show the composer and show a message instead.
If the federation module is enabled, the is not part of the room, but the workspace is an EE environment: show the composer with the Join button
If everything is enabled, and the user is already part of the room: show the normal composer
Jira: [FED-82]
Regression: Sidebar collapsing on extra small views (#27651)
Regression: Slash commands detected at any line (#28142)
Regression: Small fixes to installation flow (#28160)
Some UI fixes on app installation flow:
INITIALIZED
was wrongly considered as meaning an app was
"Enabled". That's not the case.It was introduced there to mark apps as "installed", but this is not the case anymore. #27330 wanted to solve the situation where an app was initially shown as disabled right after it was installed, and a different solution to this will be provided by changing how Apps-Engine communicates status changes to the UI.
Some installed apps in the "Installed" screen incorrectly not being displayed as grandfathered
Installation modal being shown in EE where it shouldn't
Installation modal showed wrong label when installing apps from Marketplace
Regression: Support generating pdfs from queue (#28162)
This removes a code validation that prevented PDF files from being generated for rooms that were closed directly from the queue.
After discussing with product, this is a behavior we want and so we're removing the code preventing it and updating the translation keys.
Regression: Tooltip for More options dont disappear after click. (#28201)
Regression: UiKit message surface styles (#28213)
Regression: Undefined default message context (#27870)
It fixes some contextual bar tabs (e.g. "Mentions").
Regression: Update color tokens for voip footer (#28197)
Regression: Update Composer Formatters Translation Keys (#28228)
Regression: upserting data into cached collections (#27965)
This one should get rid of "grey" (temporary) messages.
Regression: Video Recorder "record" button alignment (#28122)
Regression: View mode preferences without the selected option by default (#28120)
After removing all Meteor Blaze templates from the project, the View mode preferences started presenting the issue:
No option is selected by default when the view mode preferences are open.
Possible reason: React does allow you to use name attributes in the input tag, but it may cause some issues with radio buttons. One possible reason is that React uses a synthetic event system that does not rely on native HTML attributes, since we had the wrapper and several blaze templates in the project, this could be effecting this behavior ignoring the name attribute in the inputs.
Previous:
Current:
Regression: Visitor abandonment job not working properly (#28209)
Regression: Zapier Callout using wrong props (#28311)
Release 5.4.4 (#28333)
2023-03-16 Β· 1 π Β· 2 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
2023-03-08 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
2023-02-14 Β· 1 π Β· 2 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2023-01-25 Β· 1 π Β· 5 π Β· 6 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
*.files
endpoints returning hidden files (#27617)
New users aren't mapped to rooms with OAuth groups/channels map (#27000 by @carlosrodrigues94)
This change deals with the problem with the new users coming from key cloak, this users were not being mapped to the correct channels on RC.
Not all messages in chat conversations are available when forwarding between agents or departments. (#27816)
OmnichannelRoomIconProvider order breaking VideoConfPopup (#27740)
Jira Issue [VC-39]
Showing thumbnails on files list (#23301 by @carlosrodrigues94 & @ostjen)
2022-12-16 Β· 5 π Β· 1 π Β· 7 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Custom languages not being applied to i18next (#27557)
Fix Login with Show default form disabled (#27475)
Message Actions menu does not close upon choosing an action (#27328)
Pagination not working on current chats (#27432)
Registration and Login placeholders not being used (#27558)
2022-12-05 Β· 9 π Β· 13 π Β· 61 π Β· 87 π Β· 57 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Add new endpoint 'livechat/agent.status' & deprecate changeLivechatStatus meteor method (#27047)
Bugsnag client (#23580)
Custom MessageType for video conference messages (#27333)
Emphasis Elements (italic, strike and bold) in Message Parser Components (#27003)
Currently the message parser does not accept Emphasis elements mixed with plain text
[Normal Link - *Bold*, _Italic_ and ~strike~ Styles](https://rocket.chat/)
return plain text β Should return a Lin with bold/italic/strike
To fix this behavior it was necessary to edit LinkSpan component in
gazzodown package (changes included in this PR) and the grammar/utils
files in the fuselage/message-parser
repository
Fuselage Pull Request: https://github.com/RocketChat/fuselage/pull/887/
Federation events coverage expansion (#27119)
This PR adds the following features for the Matrix Federation feature:
Ability to sync Users' real names (since they have at least one room in common with other users);
User typing event;
Incompatible Apps (#27280 by @matheuslc)
REST API endpoint /v1/oauth-apps.create
(#27054)
Created the 'oauth-apps.addOAuthApp' endpoint for the
apps/meteor/client/views/admin/oauthApps/OAuthAddApp.tsx
file, and added Ajv validation.
REST API endpoint /v1/rooms.delete
(#26866)
Video Conference Message blocks and info action (#27310)
Add message name container component to message name header and system message (#27184)
Add MessageNameContainer
wrapper to display
name
and username
inline and separate them
with a blank space.
Update font size of system message:
Before:
After:
Add removed message variation to ThreadMessageOrigin
component Before:
After:
Add searchTerm support for livechat/rid/messages API (#27214)
Add update option to apps list kebab menu and implement new update badge on apps list (#27246)
Added a new update option to the app menu to follow the removal of
the CTA buttons from the apps list. Also implemented the new update
badge that will replace the old update button. Demo gif:
Adding a noscript tag for letting users know if they have JS disabled (#23632 by @sidmohanty11)
Improve searchChats endpoint to have source filter support (#27262)
Login rewrite in react (#26782)
Marketplace feedback toasts (#27239)
Save app changes toast: MKP-160 Uninstall app toast: MKP-168 Enable/disable app feedback toast: MKP-169
Implemented/refactored four toast notifications and refactored
another two in marketplace. The first one happens after the user saves
the settings of an app, the second one when the user successfully
uninstalls an app and the third and fourth ones happen when the user
enables and disables an app respectfully. Demo gif:
Move app list install logic to app menu (#27056)
Moved the install/buy/subscribe logic from the CTA buttons that
existed in the app list to the app menu. Now the user can install apps
by clicking in the kebab menu in the right of the app list entry. Also
solved a little undefined bug happening in the app permissions modal.
Demo gif:
Quotes on E2EE Messages (#26303)
This PR provides basic quoting to E2EE messages, it doesn't support multiple chaining of quotes messages.
Read threads when marking a room as read (#26754)
This PR changes the functionality of subscription.read
to add read threads when endpoint is called
Removed tool tip from sidebar menu (#24605 by @Himanshu664)
Sorting functionality in team channel while leaving a team (#21790 by @sumukhah)
VideoConf Miss Config Modal (#27153)
Jira Issue: [VC-9]
channels.convertToTeam
endpoint doesn't work when
only the channelName
param is provided (#26858)
channels.convertToTeam
endpoint not working
when the channelName
is sent as parameter.Add condition to createUser button on UsersPage (#27189)
Hide the create user button in admin if the user doesn't have the permission to do so. It was not the case before.
Add condition to invite user if user doesn't have permission (#27190)
If you deactivated the permission to send links, the button was always there and led to an error message. Before:
After:
Add pause functionality to Custom Sounds (#24361)
Adding error message for wrong dates (#21677 by @shrinish123)
Before :
After:
Adjust read only toggle on create channel based on permissions (#27318)
Adjusted form validation to disallow duplicated emails (#27037)
This pull request revisits the user info form, fixing a bug that
allowed the form to be saved with an already existing e-mail. Taking
advantage of this opportunity this PR also refactors the file to
typescript and adds new libs like useForm
and
useQuery
.
Always parse encrypted messages on client (#27092)
Archived channels reappearing permanently (#20476)
AttachmentDescription color token (#27222)
Avg response time calculation (#27163)
Change GridFS error message validation (#26957)
Allow uninstalling an app even if source files cannot be found. This validation was already done in the past, but since the error message was changed, the validation was broken.
Delete first message when initializing thread returns black screen (#27117)
Discussion list timestamp and Edit room system messages (#27180)
Discussions list divider on contextualBar (#27178)
Display Edit Team instead of Edit Room when in a team (#27230)
Ensure onetime job runs according to 'startupSetting' everytime (#27311)
Fixes the condition of not running a onetime job at the
app's startup scheduled to run by using the startupSetting
if the job was run previously at another app startup (Agenda does not
remove already run jobs from the database, preventing the app from
scheduling the job a second time as it thinks the job is already
scheduled);
Declutters the scheduler's collection by removing onetime jobs documents after they are run.
Featured apps disappearing, install toast config and save changes button behavior (#27181)
Featured apps disappearing: MKP-161 Install toast config: MKP-162 Save changes button behavior: MKP-163
Fixed three bugs: In the first one featured apps would disappear from the apps list after installation, in the second one the install toast wasn't correctly configured, and in the third one the app details page save button would render even when the current app wasn't installed. Demo gif:
Fix Piwik and add extra setting to allow workarounds (#27416)
Fixed Allow reacting toggle button in Edit room (#20324 by @Darshilp326)
Users can now see changes for toggling allow reacting button after changes. Users do not need to come back for changing allow reacting button.
Gap between message content and message header when there's no text. (#27165)
Before:
After:
Additionaly removed a component that was being rendered inside itself, causing spacing issues.
Improper grammar when converting channel member to owner (#27265 by @JoshMcCullough)
Install private apps modal behavior marketplace (#26973)
Fixed two bugs in the private app install page:
The first one is a lack of pt-br translation to the agree button of the apps permission modal
The second one is that the review modal did not show the default permission list when the app being installed did not provide a permissions list.
Demo gif:
Integration history breaking when there's more than 49 records (#27290)
Aditionally, fixed example data for incoming webhooks and converted some files to TS.
LDAP "Sync Roles" option doesn't work for custom roles (#26842)
Previously the sync of custom fields on LDAP wasn't working because
the check was assuming that the name
of the role is the
same value from _id
, which is the same for initial roles,
but different for custom.
LDAP groups to channel mapping attempts to create a new room instead of using an existing one (#27312)
Livechat: Allow resolving external image and media blocks (#27387)
Allow external urls to be viewed on livechat.
MarkdownText component not respecting
Markdown_SupportSchemesForLink
setting (#27245)
Marketplace app details page back-button behavior (#27062)
Jira task: MKP-26
Fixed the behavior of the marketplace app details page back button. Now it will return the user to the page they accessed the app details from. Also, refactored the overall routing of the marketplace and removed the admin-apps route as everything is now handled by the admin-marketplace route.
Demo gif:
Message Parser version upgrade (#27284)
Message search breaking URL, usertags and emojis (#20878 by @TBG-FR)
Missing React When Read Only setting on Admin Rooms Edit (#27183)
When the user was editing a room in the admin, he could not set React When Read Only because the option was not there unlike a normal room edit. So i added the option.
Modifying userActionIndicator syntax for translations (#27004 by @TBG-FR)
multiple user assigned for a role (#23741 by @Aman-Maheshwari)
Navigate to home after deleting a channel from edit screen (#21602 by @sumukhah)
Removed mobile requirement for showing real name (#26968 by @TedsCabin)
Removed the mobile requirement for allowing real names to be used in message headers.
Replace regex not compatible with safari (#27294)
Room Avatar being deleted after upload. (#27060)
Remove avatar before updating it. S3 already overwrites the old image, but since this part of the code is shared among many other File Storage providers, we need to make this deletion before the upload.
RoomForeword design (#27196)
Before
After
Scrollable report message (#26853 by @yasemincidem)
Set default value "false" for global search. (#25568 by @ivan1kazantsev)
If we disable the "global search", then the "global search" checkbox removes from the UI. It's not what we want. I think, we should set the default to "false", because the default is to search inside the channel/dialog.
Show a consistent name on information screen (#21603 by @sumukhah)
Show Favorite icon only if user has joined room (#21976)
Before: There was a favorite button even if the user hasn't joined the room
After:
Shrug missing backslash character (#27233)
Previously the escape character \
was escaping
everything.
To avoid unexpected text formatting errors it was restricted to only escape curtains chars like: * _ ~ ` # . Doing so the Shrug had to change in the code to display the correct ASCII Art
Sidebar context menu in searchList (#23830 by @Aman-Maheshwari)
Removed onClose function from the Box Component inside
searchList.js
as this component wraps the complete list
which is rendered and when clicked on the any rendered row inside the
component it closes the searchList preventing the context menu to be
displayed. Also added usePreventDefault
hook.
Sidebar Room list extended preview not updating on new messages. (#27259)
Sort RecordList items in REVERSE chronological order, not FORWARD (#27201 by @nmagedman)
Sort items in the Files sidebar in reverse chronological order (newest at top, oldest at bottom), as it did before RC v3.11.0.
The parent room icon is now clickable (#21655 by @shrinish123)
The parent room icon as shown in the video was not clickable but the cursor type on the icon was a pointer. Now even clicking on the icon or anywhere on the parent room tag will redirect you to the parent room.
Before :
After:
Thread view expand command in wide screens (#23136 by @edward-raven)
ThreadRow hover color (#27166)
Threads replied message not clickable on new message template (#27359)
Add the link to the parent message on the
ThreadMessagePreview
component; Add
message ignored
status to the parent message too; Also,
allow clicking the message when is ignored status.
UiKit modals taking 5 seconds to close (#27225)
Unable to set idleTimeLimit for users (#26951)
Upgrading fuselage package and fix quote message prepend (#27307)
Adding heading styles to message
Fix heading style in quote messages
Before:
After:
Uploading Custom Sound files not working, but showing success (#27177)
Use name if fname is undefined (#20459 by @aKn1ghtOut)
In the default general room(and possibly in other cases), the fname property is not set. The site should use the "name" property as a fallback in such cases.
User approval email doesn't display username and e-mail when user logs in with OAuth (#27111 by @carlosrodrigues94)
User auto complete breaks on enter key press (#27213)
User email address does not change when provisioned by OAuth (#27148 by @carlosrodrigues94)
UserCard not opening inside Threads (#27096)
Bump version to 5.4.0-develop (#27439)
Chore: Add deprecation warning to settings (#27295)
List of settings:
Show edited status
Allow Message snippeting
Show formating Tips
Disable Embeded for Users
Issue tracker links
Message attachments > Group Attachment Buttons
Markdown > All settings inside Group
Autolinker > All settings inside Group
Edited Message for old federation.
Chore: Add info log to remove all rooms method (#27106)
Chore: Add tests for omni-jobs & add more context in system messages for jobs (#27048)
Chore: Added tooltip to options of message-actions (#24043 by @aswinidev)
Chore: also send thread to channel translations (#27242)
Chore: Apps/Marketplace code organization (#27061)
Chore: Beta Dark Theme switch (#27324)
Add RadioButton on UserDropDown to toggle between light and dark theme.
Chore: Bump actions/upload-artifact from 2 to 3 (#27109 by @rettinghaus)
Bump actions/upload-artifact from 2 to 3 (no changes in behavior expected)
Chore: bumping apps engine version (#27414)
Chore: change apps-engine version (#27326)
Chore: Convert chat history react (#27302)
Chore: Convert client/views/directory/hooks to ts (#26936)
Chore: Convert client/views/directory/RoomTags to ts (#26937)
Chore: Convert omni libs to typescript (#27205)
Chore: Converting game center to typescript (#26915)
Chore: create AccountProfileForm endpoints (#26415)
Created the '/v1/users.checkUsernameAvailability' and other endpoints
for the
apps/meteor/client/views/account/profile/AccountProfileForm.tsx
file, and added Ajv validations.
Chore: create MailerRoute endpoints (#26742)
Created 'email-inbox.sendMail' endpoint for the
apps/meteor/client/views/admin/mailer/MailerRoute.tsx
file.
Chore: Create new endpoint for test webhooks and deprecate meteor method (#27160)
Chore: Create unique index for E2EKey
field (#27301)
Chore: CreateTeamModal Refactor (#27027)
Jira Issue: [UFR-36]
Replace useForm
Improve UI validations on Modal
Add ToastBar message on creating a team
Chore: Cursor pointer to all the action buttons (#24440 by @sidmohanty11)
Chore: deprecate refreshClients methods (#26956)
Created the 'assets.refreshClients' endpoint for the
apps/meteor/client/views/admin/settings/groups/AssetsGroupPage.tsx
file.
Chore: Deprecation warning on 'typing' stream event. (#27299)
Chore: docs grammar fix (#26894 by @tusharxoxoxo)
Chore: Enable PR Title Checker for forks (#27144)
Chore: Fix grammatical typos in release.md (#21297 by @sumukhah)
Chore: Fix missing license for forks (#27258)
Chore: Fix typo in pa-in.js (#26717 by @eltociear)
Chore: Improve configurations related to Typescript in Livechat (#27232)
Chore: Make it easier to run micro services (#27223)
You can now run a microservices environment with
yarn turbo run ms
Chore: Migrate EE LivechatRooms model to typescript (#27046)
Chore: New Password field is confusing (#20338 by @im-adithya)
Chore: README.md (#21974 by @satishp962)
Chore: Refactor LeaveTeam to Typescript (#27197)
Additionally, it fixes:
Users would be able to select team channels that they want to leave while leaving the team.
Users would now automatically leave from team channels he/she selected.
BEFORE
BEFORE
AFTER
AFTER
Chore: remove auto label action (#27192)
Chore: Remove blank owner field from rooms (#21766 by @Kartik18g)
Chore: Remove js-preventer Action (#27195)
Chore: Remove role requirement to use change streams (#27281)
We used to require the clusterMonitor
role to be able to
use Change Streams because we performed a serverStatus
command, to be able to check if the requirements for change streams are
met (like using wired tiger for example). But since our minimum MongoDB
supported version is now 4.2, and MMAPv1 was
removed on this version, there is no need to check that.
The new approach is just try to use change streams, if it fails for any reason, fallback to oplog.
If oplog fails as well, we're now halting the process, since it
wasn't able to establish a connection for reading real time data,
something that is crucial for the application. An additional check was
added to make sure $MONGO_OPLOG_URL
is pointing to the
local
database.
Chore: Remove secrets.RC_TURBO_GH_TOKEN dep from build (#27176)
Chore: Remove SoundRow.js (#27215)
Chore: Remove turborepo if env is not set (#27199)
Chore: Remove unused css (#27289)
Chore: removing useEndpointData from license api (#26634)
The deprecated hook useEndpointData
was removed and
changed to useMethod
+ useQuery
separated in a
hook.
In useQuery
options we added an option to keep the cache
as Infinity
until the queries are invalidated or the page
refreshes, also the query keys were changed to consolidate the keys and
manage the cache in the best way possible to avoid unnecessary API
calls.
In settings changed or user action that impact the License status was added a method to invalidate the cache for license query keys
E.g:
queryClient.invalidateQueries(['licenses']);
Chore: Replace all saveUserPreferences method calls (#26187)
Chore: Restrict ChatMessages
API - Phase 1 (#27191)
It prepares ChatMessages
to be splitted into smaller
components to handle the interaction of a list of messages and the
message composer.
Chore: Rewrite AutoCompleteDepartment to TypeScript (#27198)
Department field inside of current chats is one of the places who
uses AutoCompleteDeparment:
Chore: Rewrite the label/description of the Push_request_content_from_server setting (#27136 by @nmagedman)
Documentation: Clarify the meaning/effect of the setting Push_request_content_from_server ("Fetch full message content from the server on receipt"), which can lead to unexpected "You have a new message" notifications
Chore: Show better error logs (#27156)
Chore: subscriptions.read accepts both "roomId" and "rid" as payload (#20312 by @lucassartor)
Adding roomId
as another option of payload in the
subscriptions.read
endpoint besides from
rid
.
Chore: Test for import (#26871 by @weslley543)
Chore: Update Apps-Engine to latest (#27433)
Chore: Update badge tokens (#27363)
Chore: Update dark theme tokens (#27386)
Update dark theme tokens:
surface-tint
button-background-secondary-disabled
button-background-secondary-danger-disabled
all status-background
all status-font
Chore: Update tokens (#27408)
Add/update tokens on light and dark palette:
update stroke-extra-light color
add status-warning-2
add status-service-3
add font-pure-white
add font-pure-black
Chore: Updates rocket.cat's logo to match colors of our new logo (#27314)
Chore: UserAvatar wrapper missing key in RoomForeword (#27300)
Chore(deps): Bump felixmosh/turborepo-gh-artifacts from 1 to 2 (#27170 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-10-24Z (#27127)
i18n: Language update from LingoHub π€ on 2022-10-31Z (#27150)
i18n: Language update from LingoHub π€ on 2022-11-07Z (#27202)
i18n: Language update from LingoHub π€ on 2022-11-14Z (#27255)
i18n: Language update from LingoHub π€ on 2022-11-21Z (#27306)
i18n: Language update from LingoHub π€ on 2022-11-28Z (#27375)
i18n: Language update from LingoHub π€ on 2022-11-29Z (#27410)
Merge master into develop & Set version to 5.4.0-develop (#27162)
Regression: Admin menu apps option not working (#27422)
Solved a bug caused by the RC production build steps breaking the
flow router triggersEnter event that did some rerouting for marketplace.
Removed the cited function from the routes.tsx file, and now the
rerouting is done directly inside the AppsRoute file. Demo gif:
Regression: Bad words Filtering not working on new Message Parser (#27368 by @xareyli)
Was
Now
Regression: Custom fields form not showing in user profile nor admin (#27244)
Regression: Elevation and components z-index fixes (#27421)
Regression: fix contact chat history borders (#27319)
Regression: Fix custom oauth undefined clientConfig (#27320)
Regression: Fix issues with ContactHistoryItem (#27406)
Regression: Fix sidebar token highlighted usage (#27334)
Regression: fix small issues before release (#27443)
Regression: Login and Registration UI Tweaks (#27411)
Regression: message-box-editing-color (#27420)
Regression: Old threads not opening (#27384)
Regression: Quoting Issue (#27369 by @henit-chobisa)
Regression: Remove actions from VideoConf Message Block (#27344)
Regression: Restore fuselage-ui-kit version (#27331)
Regression: Team name validation on Create Team Modal (#27345)
Regression: Update VideoConf components colors (#27365)
Regression: Update VideoConfListItem Color Tokens (#27402)
Regression: videoconf block showing a zero when no user has joined the call (#27332)
Regression: VideoConf default info modal not showing meeting URL as a link (#27382)
Before:
After:
2023-01-24 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-12-02 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-11-29 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-11-24 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-11-18 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Replace regex not compatible with safari (#27294)
Sidebar Room list extended preview not updating on new messages. (#27259)
2022-11-14 Β· 5 π Β· 1 π Β· 5 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
File upload receiving whole file to apply limits (#27105)
Hide system messages setting not being respected. (#27151)
There was a query missing the parameters in the client.
Also added a few tests to help reduce the risk of this happening again.
Multi instance error message (#27243)
Next schedule check for Apps (#27240)
User merge by e-mail on OAuth is case-sensitive (#27167)
2022-11-01 Β· 3 π Β· 4 π Β· 13 π Β· 23 π Β· 23 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Add new endpoint 'livechat/room.saveInfo' & deprecate 'livechat:saveInfo' meteor method (#26789)
Health check for data stream (#27026)
Matrix federation events coverage expansion (adding support for 3 extra events) (#26859)
FED-17 FED-25 FED-27 FED-28 FED-30 The goal of this PR is to add support for more events on Matrix Federation feature. The new supported events are:
Mentions
User avatar sync
Quotes
Automatically open call info contextual bar when voip room is opened (#26963)
This pull request adds the logic necessary to automatically open the call information contextual bar when entering a voip room. This mirrors the behavior we already have for livechat rooms.
Before:
After:
Better /health response when service not healthy (#27091)
Not healthy services will send a HTTP 500 response when not healthy.
Change status/price badge to fuselage tag (#27044)
Changed the custom component that showed prices and statuses to a
fuselage Tag component for maintainability reasons since after this PR
every general design change to the tag component will be automatically
reflected in the marketplace UI. Demo image (App List):
Demo Image (App price):
Respect convert ascii to emoji preference for new message template (#27038)
Actionable messages are now sent to integrations webhook (#27052)
Actionable messages, with buttons and similar, (saved as blocks internally) were not being sent to external integrations, so CRMs and the like had no visibility on what was the actionable message sent, this PR adds a yaml version of the actions, as well as a proper json object with the same data on the webhook output, so that our clients can have more visibility in their process
check if message block has item to show message body (#27040)
CSS vars usage (#27107)
Email inbox memory leak on connection failure (#26850)
Livechat CurrentChats infinity re-rendering (#27076)
Microphone icon alignment issue (# 27073) (#27123 by @mani-rsg)
Aligned microphone icon to its respective position on screen widths <= 500 (mobile screens)
On hold reactivity for Omnichannel rooms (#27013)
Fix instabilities from room when changed from on-hold to resume
Fix gray messages when resume from on-hold
Preview message not showing when reply direct message (#27050)
Remove contact mananger always to support old servers (#27053)
Remove voip extension when agent is removed or deactivated (#26960)
starting conferences with mic and cam on their default states do not sync the state with the provider (#26966)
Task: [VC-3]
Uncaught error by listening stream-notify-room without subscription (#27020)
fix this:
Warning about livechat/inquiries.queuedForUser (#27086)
Chore: Apply correct fuselage color tokens (#27089)
Chore: Bump Apps-Engine version (#27059)
Chore: bump fuselage packages (#27157)
Chore: bump fuselage packages (#27122)
Chore: Email Inbox Sanitization (#26796)
Jira Issue [UFR-3]
Rewrite Email Inbox to typescript
Replace useForm
Fix: return an error if there are no email inboxes in
email-inbox
endpoint documentation update:
https://github.com/RocketChat/developer-docs/pull/132
Add e2e test cases for creating email inboxes and deleting email inboxes
Chore: Implement short description for marketplace apps (#27030)
Implemented the shortDescription field in the marketplace app details
header. Now apps have either a shorter description or nothing, in case
it doesn't have a shortDescription registered, in their headers
description section. Demo image:
Chore: Refactor AppLogs to TS (#26938)
Rewrote the AppLogs component to TS. Also, improved some error handling logic.
Chore: Remove default value from custom home content setting (#26995)
Remove content from Custom body
setting so that new
workspaces don't have initial unstyled HTML in their homepages.
Chore: remove excess space from html preview (#27043)
Chore: Remove Unused CSS (#27012)
Chore: Switch deprecated fields for projection (#27025)
Chore: Tests for EE dashboards (#26974)
Chore: Update Image and link previews (#27019)
Add message generic cover image preview component to OEmbed Links
Add new functionalities to URL Image preview, like click to open preview and arrows to move between images in the current chat
Design changes to keep the original aspect ratio of the image to prevent loss of important image pieces of information
Add fallback to common issues related to meta tags like
og:image
and others
Chore: Use a single notification listener for all videoconf messages (#26682)
Task: [VC-1]
Chore: UserCard loader tweaks (#27068)
i18n: Language update from LingoHub π€ on 2022-10-03Z (#26992)
i18n: Language update from LingoHub π€ on 2022-10-10Z (#27035)
i18n: Language update from LingoHub π€ on 2022-10-17Z (#27082)
Merge master into develop & Set version to 5.3.0-develop (#27067)
Regression: Quote colors (#27110)
Before
After
Regression: Remove margin-bottom inside UserCard actions (#27100)
Regression: Toolbox Divider Color (#27116)
Regression: Unify isLastDocDelayed
logic (#27120)
2023-01-24 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-10-13 Β· 5 π Β· 13 π Β· 19 π Β· 62 π Β· 28 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Add Markup to QuoteAttachment (#26751)
Get moderators, owners and leaders from room scope via apps-engine (#26674)
Matrix Federation events coverage expansion (support for 5 more events) (#26705)
The goal of this PR is to add support for more events on Matrix Federation feature. The new supported events are:
Edit Messages;
Delete Messages
File Upload (including video and audio/voice messages);
Send emojis on messages;
Reactions.
Move administration links to an exclusive kebab menu (#26867)
Move administration links to an exclusive kebab menu.
Sections layout and featured apps for marketplace (#26514)
Implemented a new layout for marketplace's apps list page. Now the
page has an All apps section and a "featured apps" section in which
pre-selected and pre-categorized apps are dynamically shown on the top
area of the page to make them stand out. Demo gif:
ClickUp Task link: https://app.clickup.com/t/2t1w9x3
Allow delete attachment description on message edit (#26673)
Better descriptions for VoIP Settings (#26877)
Changed dial pad appearance to match original design (#26863)
Before:
After:
Include syncAvatars
on ldap.syncNow
(#26824)
This PR includes a new call for the method syncAvatars
when ldap.syncNow
is called
OTR Message (#24297)
Results of user auto complete (#26687)
Rounded video attachment (#26832)
Setting for login email notifications (#26831)
System messages' consistency (#26130)
Updating voip tooltips and icons (#26834)
Call toggle button
Enabled -> Turn off answer calls
Disabled -> Turn on answer calls
Signaling connection disconnected -> Waiting for server connection
Chat toggle button
Available -> Turn off answer chats
Not available -> Turn on answer chats
Hold button
Mute button
Old:
New:
Use cached EE Cloud license on startup (#26987)
VideoConference Messages UI (#26548)
VideoConference Messages UI (#26548)" (#26961)
Livechat: Unread messages badge (#26843)
OC-169
Even if the page was reopening, Livechat will inform unread messages
Adjusted livechat fallbacks to take null values into account (#26909)
Admin sidebar navigation (#26958)
Fix the behavior of the admin sidebar, it didn't activate its options
properly on pages that had sub-routes. Demo gif:
Asset settings description not showing on admin (#26755)
Check admin setting for whether to display roles or not (#26601)
Ephemeral messages not respecting katex setting (#26812)
Expanded thread behind sidebar on small screens (#26852)
Sidebar overlapping expanded threads in window sizes between 1135px and 780px and but the expanded threads should be limited to sidebar size and should not go through it
Fix broken legacy message view (#26819)
Fixed messagesHistory
function, it was filtering
messages only with existing threads.
Incorrect filter on contact history search (#26813 by @neo-clon)
Livechat trigger messages covering all the website (#26776)
Menu options margin spacing (#26775)
before | after |
---|---|
![]() |
![]() |
Message sequential after message thread preview (#26900)
MIME Type fallback for .mov File Extensions (#26921)
Some browsers don't support the MIME type for QuickTime video encoder (.mov), so we had to create a fallback to 'video/mp4'. There are other fallbacks for other browsers, but this is the only one we need for now.
The fallback func was used in the MediaPreview and VideoAttachments components
Old rooms without the associated unit will not be displayed on the current chats (#26685)
Restore current chats default table order (#26808)
Sign in with Apple on mobile (#26827)
Our mobile app uses a different method to log in that was removed at #24879 .
You can also make it available only on mobile:
Removes the "Sign in with Apple" text from the log in button. This was something we thought were required by Apple, but it is actually allowed to have just the logo as all others OAuth we have. Source: https://developer.apple.com/design/human-interface-guidelines/technologies/sign-in-with-apple/buttons/#creating-a-custom-sign-in-with-apple-button
Typo on new homepage (#26768)
Unable to send native video recording to Whatsapp (#26669)
Upload fails when using WebDav as file storage (#26711)
Bump actions/cache from 2 to 3.0.1 (#25003 by @dependabot[bot])
Chore: improve/media-recorder
(#26426)
Chore: refactor/room
(#26675)
Replaces room
Blaze template with React
components.
Chore: add aria hidden if modal is open (#26826)
Chore: Add E2E tests to missing omnichannel endpoints (#26730)
Chore: Add RocketChatDesktop function to open video calls when using Electron (#26793)
Chore: Add tests to cover issue fixed in #26720 (#26767)
Chore: break LDAP manager into smaller pieces to improve unit tests (#26994)
Chore: Bump Apps-Engine version (#27059)
Chore: Bump fuselage dependencies and implement new tabs variant in marketplace (#26876)
Bumped the necessary dependencies of fuselage and implemented the new
tabs component underline variant. Demo image:
Chore: Bump fuselage to latest (#27042)
Chore: Bump vm2 to 3.9.11 (#26940)
Chore: Change BundleChips component appearance (#26686)
Changed the appearance of the marketplace app bundle chips (E.G.: The blue Enterprise tag in the images bellow).
Demo image for app details page:
Demo image for list view:
Chore: Cleanup endpoint handlers (#26749)
Chore: Configure Prettier for @rocket.chat/livechat
(#26846)
Chore: Convert current-chats to useQuery (#26931)
Chore: Deprecate some omnichannel meteor methods which aren't getting used (#26839)
Chore: first non-aggressive CSS removal (#26714)
Chore: Fix API tests retry (#26860)
Chore: fix regressions for omnichannel due room refactor (#26912)
Chore: fix wrong test.step
usage (#26873)
Chore: Introduce useQuery
as data source for the
Room
component (#26855)
Chore: merge all functions using autorun x useSubscription pattern (#26886)
Chore: Missing Also_send_thread_message_to_channel setting translation (#26926)
Chore: Move Header to ui-client (#26757)
Chore: Move micro services to packages (#26884)
Chore: Move Omnichannel Room Footer to react (#26864)
Chore: Move presence to package (#25541)
Chore: Omnichannel endpoints to ts (#26829)
Chore: Refactor message list context usage (#26748)
Chore: Refactor omnichannel livechat tests (#26929)
Chore: Rewrite apps WarningModal component to typescript (#26845)
Translated the admin apps WarningModal component from Javascript to Typescript
Chore: Test/improve reliability (#26724 by @souzaramon)
Chore: Tests for EE features (#26939)
Chore: Update fuselage to next version. (#26841)
Chore: Updating apps engine (#26924)
Chore: Upgrading livechat's ui-kit package to latest version (#26709)
This PR upgrades Livechat's UiKit package to the version 0.31.16. and adjusts the renderer to be compatible with said version.
i18n: Language update from LingoHub π€ on 2022-08-29Z (#26722)
i18n: Language update from LingoHub π€ on 2022-09-05Z (#26805)
i18n: Language update from LingoHub π€ on 2022-09-12Z (#26849)
i18n: Language update from LingoHub π€ on 2022-09-19Z (#26896)
i18n: Language update from LingoHub π€ on 2022-09-26Z (#26948)
Merge master into develop & Set version to 5.2.0-develop (#26792)
Regression: Cannot edit messages in some environments. (#27023)
An empty $unset
object was being used and causes
exceptions in some mongo versions.
Regression: Composer not reactive when omnichannel room closed (#26983)
Regression: Double Table Cell Causing extra padding on Current Chats (#27008)
Regression: Event handler blocking mention links (#26964)
Fixes mention links being irresponsive to clicks. Jira: TC-55
Regression: Fix open room from current chats (#26930)
Regression: Fixed takeInquiry method not displaying error messages on the client (#26976)
This pull request brings back the toast message "The maximum number of simultaneous chats per agent has been reached." that should be displayed when an agent tries to take more chats than the maximum allowed.
Regression: Handle undefined
values on
useReactiveQuery
's query function (#26988)
According to https://tanstack.com/query/v4/docs/reference/useQuery,
the query function must not return
undefined
values, a quirk that we've been
ignoring.
Regression: Incorrect on-hold chat resume message (#26935)
Regression: Omnichannel Contact Center empty on no filter search (#26975)
Regression: Remove section and replace icon on administration kebab menu (#26986)
Regression: Remove symbols from number before storing PBX event (#26969)
Regression: Sidebar Room List not working properly. (#26950)
The CachedCollection Class was assuming that the passed parameter would be modified, instead of using the callback return.
Regression: Typo on livechat/queue endpoint client call (#26962)
Regression: Use raw models instead of meteor ones on visitor inactivity processing (#27002)
Regression: VideoConf Actions Reactivity in SidebarItem (#27009)
Jira Issue: [VC-10]
Regression: wrong permission on livechat/tags endpoints (#26928)
Release 5.1.1 (#26822)
Release 5.1.3 (#26914)
Release 5.1.4 (#26965)
2022-09-28 Β· 1 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-09-24 Β· 4 π Β· 2 π Β· 8 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
MongoInvalidArgumentError
on overwriting existing
setting (#26880)
Check if messsage.replies exist on new message template (#26652)
Error when mentioning a non-member of a public channel (#26917)
Importer fails when file includes user without an email. (#26836)
2022-09-12 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-09-08 Β· 3 π Β· 3 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Fix broken legacy message view (#26819)
Fixed messagesHistory
function, it was filtering
messages only with existing threads.
Livechat trigger messages covering all the website (#26776)
Restore current chats default table order (#26808)
2022-09-02 Β· 8 π Β· 7 π Β· 42 π Β· 129 π Β· 37 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Home
page (#25734)
Adding oauth crud on the rocket.chat side (#26220)
allow ephemeral messages to receive a specific id (#26118)
Allow apps to pass a specific ID for ephemeral messages as a way to edit them.
Capability to search visitors by custom fields (#26312)
Users of the endpoints api/v1/omnichannel/contact.search
and /api/v1/livechat/visitors.search
are now able to search by custom fields in their objects. Capability of
selecting if a custom field can be searched for is added in the
Omnichannel pannel as a toggle for searchable
, the included
JSON in the Accounts' Custom Field example has been updated to make it
explicit for future configurations that the field has to be enabled as
searchable for that to happen.
Fallback Error component for Engagement Dashboard widgets (#26441)
As proposed, was added a fallback component to catch errors at
Engagement Dashboard widgets individually. It used an Error boundary to
catch react-query
errors, due to this scenario was
necessary to install and use the library react-error-boundary
that implements everything and more compared to our ErrorBoundary
component, the main reason was to capture Query errors and the
implementation with react-query
library.
New layout:
Before:
After:
Marketplace apps page new list view layout (#26181)
Refactored the layout of the marketplace list of apps, now it has a more minimalist and flexbox-based style. Also implemented a new status filter.
Demo gif:
ClickUp task: https://app.clickup.com/t/1na7437
Surface featured apps endpoint (#26416)
Created the /featured endpoints on the rest.js file. Also created the necessary typings to use together with it.
Warn admins about running multiple instances of the monolith (#26667)
Added identification on calls to/from existing contacts (#26334)
Before:
After:
General federation improvements (#26150)
I know this changed a lot of files, but the main goal for this PR is not to change any behavior, the goals for the PR are:
Refactor the code;
Solve any tech debt;
Simplify and reuse some parts of the code;
Remove duplicated code;
Remove all unsafe type castings;
Solve all Eslint errors and warnings;
Split too big files;
Encapsulate the business logic in a better way, avoiding exposing and leaking internal logic to the unintended layers;
Improve the actual test cases;
Add more test cases, since a lot of cases were omitted during the release phase;
Remove unsafe Object.assign
statements and prefer to
use the class constructor
instead;
New 'not found page' design (#26452)
Add a new design for the not-found page
Add English translation for "page not found" and "Homepage"
Update English translation for "Room_not_exist_or_not_permission"
Add "Homepage" button on the room not found page
OTR refactoring (#24757)
Rewritten OTR files to TS with new code patterns
Remove device-management banner and modal (#26729)
Spotlight search user results (#26599)
use enter key to call using DialPad (#26454)
There was a data race in the defineVisitor function, causing new guests to be created even if a registered guest with that number already existed, also made sure that the open room being searched on is the correct source type, so the clash is not possible anymore.
Active users count on @all
and @here
(#25957)
this PR updates the old roomMembersCount
to count active
users instead of everyone
add image format validation (#25912)
Add Offline License Endpoint (#26282)
This PR updates the endpoint to add a license
Agents (with user status offline & omni-status as available) not able to take or forward chat (#26575)
Allow normal user to open apps contextual bar (#26495)
Fix the bug where normal users cannot open an app contextual bar. The request made by the contextual bar to get the app information, which was for admin only, was removed since the response was not being used.
Autotranslate method should respect setting (#26549)
Avatars of other chats disappear when they located near chat with broken avatar (#26689)
Blank screen after requesting transcript (#26385)
Chats not getting assigned to offline agents even when "Accept with No Online agents" setting is turned on (#26147)
Clear push token on save user password (#26466)
Correct IMAP configuration for email inbox (#25789)
The primary change here has been to make the library try and reconnect after some time, up to a certain configured number of times, on a few different error classes.
Current Chat Custom Field Filter (#26200)
Decrypt E2EE messages on thread list (#26133)
Default BH not getting applied in-case any other BH is disabled (#26471)
DialPad call button from end to center (#26459)
Don't give errors on outbound voip call Request Terminated (#26373)
Don't wrap wrap up notes (#26375)
incorrect error toast messages (#26320)
Katex is not respecting the 'Katex_Enabled' setting (#26542)
MDM content alignment (#26665)
before:
after:
Missing bio field UI validation (#26345)
Not allowed error in discussion room with a private parent channel (#26394)
Notification preferences not updated on save (#26461)
Publish required notification subscription fields on change, so that changes can be seen on save.
Onhold auto chat resume feature not working for email channel (#26363)
Open team after room not found page (#26264)
After the room not found page, the FlowRouter
was not
clearing msg
query param, causing the next redirect to
private teams break because it's try to find the unknow msg id
Permission view-all-teams
is not checked in the
teams.info
endpoint (#25841)
Previously any authenticated user was able to access the
teams.info
endpoint, this PR updates this so only users
with the view-all-teams
permission or team members can
access it.
Prevent VoIP issues during disconnection when network failed (#26321)
Prune messages not removing thumbnails (#26443)
This PR adds a method on Uploads
called
findOneByName
, and excludes a thumbnail of an image on
cleanRoomHistory
Request at least one field in the payload of
/v1/users.setStatus
(#26490)
Requests status
and/or message
fields on
/v1/users.setStatus
request payload.
Reset password errors (#26597)
Save edited tags for omnichannel departments (#26481)
Slack User CSV importer not working (#26629)
Slackbridge Connect Error (#25793)
This PR fixes an issue that was happening when an invalid token was passed on SlackBridge, basically the app crashes because the error was not being handled
Slash commands description as undefined (#26372 by @carlosrodrigues94)
SMS service check (#26558)
Too many REST API requests (#26330)
Uses React Query cache as an alternative for querying data "sorta" real time.
UI fixes on dropdown titles (#26318)
Add paddings on profile dropdown title
Fix paddings on 'sort' and 'create new' dropdown titles
Remove inline styles of OptionTitle
(removing
uppercase style)
Location | Before | After |
---|---|---|
Sort Dropdown | ![]() |
![]() |
User Dropdown | ![]() |
![]() |
Create new Dropdown | ![]() |
![]() |
Unable to remove a user who joined a public team with a mention (#26218)
This PR fixes a bug where a user that joins a team by mention don't get added to the team.
Unable to send voice recording to Whatsapp (#26276)
Users can access public discussions inside private channels they are not members of (#26619)
Users can access public discussions inside private channels they are not members of (#25981)
Chore: Accounts/token to TS (#26434)
Chore: Add end-to-end tests to teams listing in the
directory
endpoint (#26347
by @carlosrodrigues94)
Chore: Add license env var to ee tests (#26650)
Chore: add playwright ee coverage (#26293 by @souzaramon & @weslley543)
Chore: Add translations code owner (#26560)
Chore: Bump fuselage packages (#26769)
Chore: Bypass turbo cache on ui-contexts
(#26526)
Skips cache for building @rocket.chat/ui-contexts
,
avoiding Turborepo issues with a symlink.
Chore: Cache playwright (#26432)
Chore: Change some places still using fields
to
projection
(#26308)
Chore: cleanup startup of test and put wizard in setup function (#26306 by @weslley543)
Chore: Codecov threshold (#26477)
Chore: Convert client/views/account/preferences
folder to ts (#26496)
Chore: Convert LivechatCustomField
model to raw
model (#26446)
Chore: Convert AccountPreferencesPage to ts (#26096)
Chore: Convert AppSetting to tsx (#26625)
Chore: Convert AppSettingsAssembler to tsx (#26626)
Chore: Convert AutoCompleteAgent to tsx (#26704)
Chore: convert autotranslate to ts (#25953)
Converted the
apps/meteor/app/api/server/v1/autotranslate.js
to ts and
created endpoint typings on the
packages/rest-typings/src/v1/autotranslate
folder.
Chore: Convert client/views/account/security folder to ts (#26413)
Chore: create a test for managers screen (#26581 by @weslley543)
Chore: create removeWebdavAccount endpoint (#26393)
Created the '/v1/webdav.removeWebdavAccount' endpoint for the
apps/meteor/client/views/account/integrations/AccountIntegrationsPage.tsx
file, and added Ajv validations.
Chore: create roomNameExists endpoint (#26386)
Created the missing rest endpoint 'roomNameExists' for
apps/meteor/client/sidebar/header/CreateChannel.tsx
, on the
packages/rest-typings/src/v1/ folder.
Chore: Create teams management tests (#26578 by @souzaramon)
Chore: Create tests for Omnichannel admin add a custom fields (#26609 by @weslley543)
Chore: Engagement Dashboard end to end tests (#26702)
Adding tests to check the behavior of the Engagement Dashboard for the Enterprise Edition license. The tests include:
Visibility and navigation of page and tabs
Fallback component on widgets error
Chore: ESLint warnings (#26504)
The current amount of ESLint warning messages is overwhelming to properly debug serious issues. This PR aims to reduce them to a sane amount.
Chore: Exclude private/public folders from typecheck (#26399)
Chore: Exit process on unhandledRejection
on CI (#26467)
Chore: Fail-fast on callbacks (#26572)
Chore: Fix CI intermittent (#26649)
Chore: Fix docker latest tag push (#26770)
Chore: Fix grammatical typo when only one message is pruned (#21902 by @shrinish123)
Whenever only 1 message is pruned it says '1 messages pruned' instead of '1 message pruned' in the toast message
Chore: Fix lint issues (#26531)
#24757 was an old PR and was recently auto-merged, it was not following our latest eslint rules, so now there are some lint issues on the develop.
Chore: Fix some settings with incompatible default value types (#26114)
Chore: fix tests with beforeEach (#26335 by @souzaramon & @weslley543)
Chore: Fix UiKit dependency issue for Livechat (#26534)
Chore: Importer rest types, meteor methods to TS and API unit tests (#26284)
Chore: Improve test for livechat (#26527 by @weslley543)
Chore: Migrate AppPermissionsReviewModal from JS to TS (#26498)
Chore: Migrate modules related to room
template to
TypeScript (#25881)
Chore: Migrate omni-chat forwarding to use API instead of meteor method (#26377)
livechat/room.forward
endpoint to forward
omnichannel chats instead of using meteor method
"livechat:transfer"Chore: Missing permissions translations (#26546)
Chore: Missing some English translation keywords (#20131 by @Karting06)
Add missing translation keys in en.i18n.json
to be able
to translate them via Lingohub.
Chore: Mocha handling multiple React instances (#26513)
Whenever Mocha runs a test file which imports stuff from outside
apps/meteor
, it uses a hoisted version of React (i.e.
located at the root node_modules
) instead of the one tied
to apps/meteor/node_modules
. This PR adds a monkey patch
while we can't migrate to another test runner.
Chore: ModalFooterControllers adoption (#26445)
Chore: More Omnichannel tests (#26691)
Chore: Move Card
and related components to
@rocket.chat/ui-client
(#26653)
Chore: Move fuselage-ui-kit to main repo (#26630)
Chore: Omnichannel endpoints e2e tests (#26376)
Chore: omnichannel-departments tests (#26607)
Chore: Options in BaseRaw model could possibly be undefined (#26395)
I found this while I was doing some refactorings on the federation side. π¬
Chore: Parallelize e2e tests (#26390 by @souzaramon & @weslley543)
Chore: Permissions check per endpoint/method (#26419)
Chore: Prevent tooltip from opening after click (#26612)
Chore: Purge some unused modules (#26447)
The title says it all.
Chore: Refactor create-target-channel util (#26493 by @souzaramon)
Chore: Refactor ReportMessage Modal to React Component (#26478)
Chore: Refactor RoomMembers to Typescript (#26559)
Chore: Refactor WebdavFilePicker Modal to React Component (#26422)
Chore: Remove & Test cannedResponse meteor templates (#26706)
Chore: Remove & Test old closeChat templates (#26631)
Chore: Remove console.log (#26618)
Chore: Remove italic/bold font-style from system messages (#26655)
It was removed from system messages font-styles elements (italic and
bold) that highlighted some words as users
,
room_name
and others.
In addition to this PR, was also created a PR to Fuselage to remove italic font style in general at system messages.
Fuselage PR: https://github.com/RocketChat/fuselage/pull/830
Chore: Remove Livechat Dashboard Templates (#26627)
Chore: Remove method calls - Stage 1 (#26149)
Chore: Remove public and node_modules folders from TypeScript server watcher (#26391)
Chore: Remove settings Fibers usage (#26465)
Chore: Remove translation owners (#26598)
Chore: Remove trash collection from models when not used (#26628)
Chore: remove useMethod calls (#26195)
Chore: Remove visitor, agent and customTemplate meteor templates (#26700)
Chore: Replace direct multiple icon (#26342)
Chore: Replace timeAgo on WebdavFilePickerTable (#26564)
Chore: restrict .only
(#26537)
Chore: Rewrite custom OAuth Modals to react (#26204)
Chore: Rewrite Location modal to React (#26196)
Chore: Rewrite SaveToWebdav Modal to React Component (#24365)
Chore: Rewrite VerticalBarOldActions to TS (#26277)
Chore: Separating user edit form to prevent browser autocomplete (#26280)
Separating user edit form to prevent browser password and username auto-complete. The browser will continue showing the suggestion dropdown for the password field, but when you select a suggestion the other text field will not be impacted, as was happening before with 'Nickname' field
Chore: skipping tests that are based on kebab menu (#26616)
Chore: test for change avatar (#26543 by @weslley543)
Chore: Tests intermitences (#26464 by @weslley543)
Chore: transfer to another agent (#26545 by @weslley543)
Chore: Update Apps-Engine (#26765)
Chore: update codeowners for omnichannel (#25771)
Chore: update fuselage rounded edition (#26540)
Chore: Upgrade dependencies (#26694)
Chore: Upgrade ESLint (#26132)
Upgrade ESLint (to 8.19.0) and its dependencies, dropping outdated rules.
Chore: Upgrade Fuselage packages to next dist-tag (#26435)
Chore: Upgrade nivo and React Query (#26338)
Chore: Use Docker compose on CI (#26437)
Chore: useEndpointData deprecation (#26494)
Chore: Wait subscription to expose message composer (#26600)
i18n: Fix Korean set role translation (#24966 by @imyaman)
English https://pbs.twimg.com/media/FO2zby1aQAMB84D?format=png&name=small Korean https://pbs.twimg.com/media/FO2zWgKaIAYidJ7?format=png&name=small Google Translate https://pbs.twimg.com/media/FO20MPnaUAU-TU_?format=jpg&name=medium
i18n: Language update from LingoHub π€ on 2022-08-01Z (#26429)
i18n: Language update from LingoHub π€ on 2022-08-08Z (#26508)
i18n: Language update from LingoHub π€ on 2022-08-15Z (#26570)
i18n: Language update from LingoHub π€ on 2022-08-22Z (#26645)
i18n: Makes the text less ambiguous (#20895 by @pierreozoux)
i18n: Manual sync from LingoHub (#26397)
i18n: pt-BR translation typo (#26732)
Regression: "Cache size is not a function" error when booting (#26683)
Regression: Add alsoSendThreadToChannel to user settings api (#26663)
Regression: AutoTranslate is disabled error (#26701)
Regression: Banner - Room not found - Omnichannel room (#26693)
Regression: CI (#26658)
Regression: Custom fields not being saved for room (#26747)
Regression: Custom status loading forever in Usercard (#26656)
Regression: Empty custom-fields filter on Current Chats causing issues (#26720)
Regression: Fix Current Chats Page Issues (#26744)
Regression: Fix spacing problem on AppStatus component (#26421)
Fixed a problem where the AppStatus component would show a unwanted
margin when an app was installed and had an update. Before:
After:
Regression: Home cards UI tweaks (#26610)
Regression: Instances Modal breaking (#26779)
Revert back to meteor method for now.
Regression: invalid statistics format (#26684)
Regression: Modal footer alignment (#26635)
Regression: Prevent message from being temp forever (#26668)
Regression: Remove log from banners.ts (#26699)
Regression: REST setUserPublicAndPrivateKeys (#26753)
Regression: Select settings options not visible on Apps Setting panel (#26759)
Regression: Sidebar Search list local data cache and keyboard navigation (#26764)
Regression: Team name validation failing always. (#26574)
Regression: Update custom homepage content behavior (#26571)
Regression: Visitor being overwritten on call end (#26756)
This PR adds a check to the createRoom
method,
responsible for creating VoIP rooms. It checks whether the visitor
already exists before creating a new one, if one is found it uses it
instead of overwriting existing visitors.
Regression: Workaround to handle auto stopped computations π (#26745)
Release 5.0.1 (#26450)
Release 5.0.2 (#26507)
Release 5.0.3 (#26551)
Release 5.0.4 (#26620)
Release 5.0.5 (#26718)
2022-08-29 Β· 3 π Β· 1 π Β· 4 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
ENTERPRISE: Omnichannel real time data on micro services (#26703)
Business Units endpoints not filtering by Unit type (#26713)
Omnichannel inquiries being updated even if not needed (#26692)
2022-08-19 Β· 1 π Β· 3 π Β· 2 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-08-11 Β· 3 π Β· 2 π Β· 7 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Chats holds to load history for some time (#26425)
Endpoints not working when using "Use Real Name" setting (#26530)
The list of endpoints affected is:
/api/v1/channels.list
/api/v1/channels.list.joined
/api/v1/groups.list
/api/v1/groups.listAll
/api/v1/im.list
/api/v1/im.list.everyone
LDAP fails to sync teams when the user DN has escaped characters. (#26535)
2022-08-08 Β· 2 π Β· 1 π Β· 4 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-08-02 Β· 1 π Β· 1 π Β· 4 π Β· 3 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
2022-07-21 Β· 14 οΈοΈοΈβ οΈ Β· 33 π Β· 20 π Β· 110 π Β· 389 π Β· 62 π©βπ»π¨βπ»
14.19.3
6.14.17
4.2, 4.4, 5.0
Chore: Remove unused tokenpass integration code (#25831)
Deactivated team members are added to auto-join rooms (#25016)
Remove Blockstack authentication (#25649)
Blockstack authentication is broken and is preventing some dependencies to be up to date. As a migration to Stacks authentication is not trivial, we've opted for removing the authentication service.
Remove RDStation integration (#25774)
Remove show message in main thread preference (#26002)
This PR removes the confusion between the
show message in main thread
and the function
also to send to channel
. In the past, we used the
show message in main thread
as a solution to help users to
understand the thread feature, as this feature is now mature enough
there's no reason to maintain this preference.
Send the thread message to the main channel or just inside of the
thread, should be a decision from the user where the function
also send to channel
appears. Because of that, and because
of a bunch of requests and issues we received, we're introducing a new
preference also send thread to channel
where users will be
able to decide the behavior of the checkbox.
Now there are three behavior options
Default
: when it unchecks after sending the first
messageAlways
: stay checked for all messagesNever
: stay unchecked for all messagesRemove support to old MongoDB versions (#26098)
As per MongoDB Lifecycle Schedules (https://www.mongodb.com/support-policy/lifecycles) we're removing official support to MongoDB versions 3.6 and 4.0 that have already reached end-of-life.
As MongoDB 4.2 was a "supported" version before Rocket.Chat 5.0, we'll continue supporting it, but will be flagged as deprecated. We recommend upgrading to MongoDB 4.4+.
Here are official docs on how to upgrade to some of the supported versions:
remove unused endpoints and restify others (#25889)
Remove webRTC for channels/dm/groups (#26225)
Suspend push notifications when login token is invalidated (#20913 by @g-thome)
link the auth token to the push token
Upgrade to version 5.0 can be done only from version 4.x (#26100)
use urlParams on omnichannel/agent/extension/ (#25982)
use urlParams on omnichannel/agent/extension/ (#25874)
use urlParams on omnichannel/agent/extension/" (#25980)
VideoConference (#25570)
In this PR we're deprecating the Video Conference functionality from the core of the application and introducing a new video conference flow:
Now the video conference feature will be agnostic so you'll be able to set the provider such as Jisti and BBB as apps from our marketplace:
Video conferences settings are now global, allowing you to set the default provider
APPS: Allow apps to modify a subset of global settings (#25913)
APPS: Allow dispatchment of actions from input elements (#25949)
This allows for apps receiving block actions when a user types on a plain text input field or selects an item from the static. A debounce of 700 ms is done when listening for typing action so the app is not flooded with actions.
https://user-images.githubusercontent.com/733282/174858175-5ea53046-c791-493e-859b-b80431e94ffa.mp4
APPS: Allowing apps to register authenticated routes (#25937)
Adds adaptations that allow apps to declare an API endpoint that requires authorization from Rocket.Chat prior to executing
ENTERPRISE: Device Management (#25791)
ENTERPRISE: Introducing dial pad component into sidebar, calls table, contextual bar (#26081)
This PR adds a new call button that can be used from Sidebar & Contact Center. This also enables Omnichannel agents to make outbound calls from within Rocket.Chat.
Depending on your server and call server configuration, you can do international calling, national and domestic calling.
The buttons on Contact Center allows an agent to call an existing number without having to type the number again.
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
https://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4
Colors Palette - Buttons (#25626)
Community Edition Watermark (#25844)
Create releases tab in the marketplace app info page (#25965)
Added a Releases tab to the app info page of installed marketplace
apps. This tab will show all the released versions of a given app with
its version number, release date in humanized form, and the changelog of
this given release with the information provided by the publisher, this
changelog accepts and renders markdown. Also refactored some component
names and logic for maintainability reasons. Demo gif:
Create Team with a member list of usernames (#25868)
Enable outbound calling for EE (#25843) (#25960 by @amolghode1981)
Engagement Metrics - Phase 2 (#25505)
Add the following new statistics (metrics):
homeTitleChanged
: boolean value to indicate whether the
Layout_Home_Title
setting has been changed;homeBodyChanged
: boolean value to indicate whether the
Layout_Home_Body
setting has been changed;customCSSChanged
: boolean value to indicate whether the
theme-custom-css
setting has been changed;onLogoutCustomScriptChanged
: boolean value to indicate
whether the Custom_Script_On_Logout
setting has been
changed;loggedOutCustomScriptChanged
: boolean value to indicate
whether the Custom_Script_Logged_Out
setting has been
changed;loggedInCustomScriptChanged
: boolean value to indicate
whether the Custom_Script_Logged_In
setting has been
changed;matrixBridgeEnabled
: boolean value to indicate whether
the Matrix bridge has been enabled;Expand Apps Engine's environment variable allowed list (#23870 by @cuonghuunguyen)
Federation (Alpha Stabilization) (#25457)
Fuselage ToastBar (#25583)
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
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:
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:
Delivered together with the tab-navigation task. Changed the app
settings from the details of the app to the new settings tab. Demo
image:
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:
After
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:
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.
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:
Marketplace security tab app info page (#25739)
Created a new security tab for installed apps that displays
information related to the given app security policies, terms of
services, and necessary permissions for the use of the app. Demo gif:
Matrix Federation UX improvements (#25847 by @carlosrodrigues94)
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).
In case you encounter any
problems, or want to compare, temporarily it is possible to use the old
version
New button for network outage (#25499 by @amolghode1981)
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 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)
Use setting to determine if initial general channel is needed (#25441 by @felipe-menelau)
VoIP Input/Output Device Selection (#25966 by @amolghode1981)
ENTERPRISE: Allow mapping LDAP groups to multiple RC roles (#23849)
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.
Add tooltip to sidebar room menu (#24405 by @Himanshu664)
add warnings for federation setup (#25684 by @carlosrodrigues94)
Added MaxNickNameLength and MaxBioLength constants (#25231 by @aakash-gitdev)
Added tooltip options for message menu (#24431 by @Himanshu664)
Avoid using omnichannel-queue collection (#25491)
Differ Voip calls from Incoming and Outgoing (#25643)
Updated this column and its respective endpoints to support
inbound/outfound call definitions
Expand the feature set of the new message rendering (#25970)
Everything inside a new package
(@rocket.chat/gazzodown
);
KaTeX support;
Highlighted Words support;
Emoji rendering expanded;
Code rendering fixed
Fix multiple bugs with Matrix bridge (#25318)
Improve active/hover colors in account sidebar (#25024 by @Himanshu664)
Moved call hold/unhold to EE (#26007)
This PR adds a restriction, enabling the feature to hold/unhold calls only for Enterprise Edition users.
Moved call wrap up modal to EE (#25875)
This PR adds a restriction, enabling the feature to display the call wrap up modal only for Enterprise Edition users.
New admin settings Page (#25439)
Pass allowDiskUse to channel aggregations on engagement dashboard (#22374)
Performance for some Omnichannel features (#25217)
Refactor + unit tests for federation-v2 (#25680)
The main goal for this PR is to add the ability to add tests in our current federation-v2 implementation. In this PR, I've added only unit tests (80%), but the goal is to add other kinds of tests in the near future.
Also, I've created a diagram to show how this refactor was done, and how is the structure of the code
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)
VoIP admin page cleanup: remove unused settings (#25993)
You and @yourUsername reacted with
title on reactions
(#25733)
Access issue on chat.getThreadsList (#25750)
AccountBox checks for condition (#25708)
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)
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:
After:
AgentsPage pagination (#25820)
allow only livechat-agents to be contact manager for any omnichannel contact (#25451)
Append path To Route For Custom Emoji (#24379)
Attachments and OEmbed margins (#25713)
Broken Omnichannel>Agents page (#25731)
Bump meteor-node-stubs to version 1.2.3 (#25669 by @Sh0uld)
With meteor-node-stubs version 1.2.3 a bug was fixed, which occured in issue #25460 and probably #25513 (last one not tested). For the issue in meteor see: https://github.com/meteor/meteor/issues/11974
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.
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 by @amolghode1981)
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.
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.
Second reason is when computer goes in sleep mode.
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.
Client-generated sort parameters in channel directory (#25768 by @BenWiederhake)
Close room when dismiss wrap up call modal (#25056)
Custom emoji reaction size (#25393)
Custom sound error toast messages (#24515 by @Himanshu664)
Deactivating user breaks if user is the only room owner (#24933 by @sidmohanty11)
Desktop notification on multi-instance environments (#25220)
Direct Reply (#22588)
Discussion alphabetical ordering (#25788)
Added a validation in the prop used for sorting (loweCaseName) checking for a prop that only exists in discussions (prid)
Dynamic load matrix is enabled and handle failure (#25495)
End call button disappearing when on-hold (#24936)
Error "numRequestsAllowed" property in rateLimiter for REST API endpoint when upgrading (#26058)
Failure to update Integration History index (#25473)
Fix max-width message block (#25686)
Fix prom-client new promise usage (#25781)
fixes HTML sanitizing error. (#25410)
If the user sent a HTML message over our product to a livechat user the HTML would get rendered on the message box, this prevents it from happening.
Fixing app contextual bar functionality (#25615)
Fixing Network connectivity issues with SIP client. (#25391 by @amolghode1981)
The previous PR https://github.com/RocketChat/Rocket.Chat/pull/25170 did not handle the issues completely. This PR is expected to handle
Clearing call related UI when the network is disconnected or switched.
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.
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)
getUserMentionsByChannel method room permission (#25748)
Importer fails to download files from URLs with query string params (#25934)
Importer files are unnecessarily transferred over the network. (#25919)
Incorrect websocket url in livechat widget (#25261)
Initial members value on Create Channel Modal (#26000)
Initial User not added to default channel (#25544)
If injecting initial user. The user wasnβt added to the default General channel
Integrations avatar attribute misuse (#25283)
Invitation links don't redirect to the registration form (#25082)
Kebab menu clicking issue (#25869)
LDAP sync removing users from channels when multiple groups are mapped to it (#25434)
Members selection field on creating team modal (#25871)
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)
Messages spacing (#25631)
Adding sequential
prop to Message component from
Fuselage
Misaligned username on Room Info card for omnichannel chats (#25331)
Not showing edit message button when blocking edit after N minutes (#25724 by @matthias4217)
Previously, in Rocketchat 4.7.0 and later, as mentioned in https://github.com/RocketChat/Rocket.Chat/issues/25478, the edit button was not displayed on the interface in the minute after having sent a message. This is now fixed : messages can be edited right after sending them.
NPS never finishing sending results (#25067)
One of the triggers was not working correctly (#25409)
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)
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.
Remove duplicated icon bell when is thread main message (#26051)
Remove duplicated property _USERNAMES from createDirectRoom.ts (#26087)
This pull request removes the duplicated property
_USERNAMES
from
apps/meteor/app/lib/server/functions/createDirectRoom.ts
,
using only the existing property
roomInfo.usernames
.
Removing user also removes them from Omni collections (#25444)
Replace encrypted text to Encrypted Message Placeholder (#24166)
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)
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]
Sanitize styles in message (#25744)
Settings listeners not receiving overwritten values from env vars (#25448)
Settings not being overwritten to their default values (#25891)
Showing Blank Message Inside Report (#25007)
sidebar colors (#25987)
Sort by scope or creation date not working on canned responses list (#25475)
Spotlight results showing usernames instead of real names (#25471)
Thread Message Preview (#25709)
Too many watchers in dev environment. (#25930)
Toolbox hiding under contextual bar (#25237)
toolbox menu behind thread component (#25925)
UI/UX issues on Live Chat widget (#25407)
Unable to close chats when comments is disabled (#26057)
Fixes https://github.com/RocketChat/Rocket.Chat/issues/25954
Unable to see channel member list by authorized channel roles (#25412)
Undefined headers on API Client (#26083)
Unnecessary padding on teams channels footer (#25712)
Update chartjs usage to v3 (#25873)
Update import from csv-parse
(#25872)
This PR updates the importing of csv-parse
because the
used method wasn't working anymore, we were receiving the following
error:
error: "this.csvParser is not a function"
Update subscription on update team member (#25855)
Added update to subscription when a team member is updated on
teams.updateMember
Upgrade tab loader in incorrect position (#25398)
Upgrade Tab showing for a split second (#25050)
Use correct room property for call ended at (#24932)
useCurrentChatTags is not a function (#25604)
User abandonment setting was not working doe to failing event hook (#25520)
A setting watcher and the query for grabbing abandoned chats were broken, now they're not.
User avatar reseting and getting random image (#25603)
fixes user avatar not being saved after editing the user profile issue
fixes user avatar not getting another user picture due to database deletion error
user status Offline misnamed as Invisible in Custom Status edit dropdown menu (#24796 by @Kunalvrm555)
User's with non-agent role shown on voip agent association model (#25682)
UserAutoComplete not rendering UserAvatar correctly (#25055)
UserCard sanitization (#25089)
Rewrites the component to TS
Fixes some visual issues
Users without the view-other-user-info
permission
can't use the users.list
endpoint (#26050)
This PR fix the query when a normal users access
users.list
Validate room access (#24534)
The request must be blocked If the user has no permission to view rooms.
Video and Audio not skipping forward (#19866)
VOIP CallContext snapshot infinite loop (#25947)
The application was crashing due to an error on the
useCallerInfo()
hook. The error was:
To prevent this issue to happen it was added a cached and
out-of-scope snapshot variable to the hook using
useSyncExternalStore
VoIP disabled/enabled sequence puts voip agent in error state (#25230 by @amolghode1981)
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:
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.
From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.
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.
Voip endpoint permissions (#25783)
Wrong argument name preventing Omnichannel Chat Forward to User (#25723)
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: @rocket.chat/favicon
(#25920)
Chore: refactor/tsc-perf
(#26040)
Chore: Account/Profile to TS (#25929)
Chore: add _id and name options to JSON Schemas (#25813)
This pull request adds the roomId
and
roomName
options for the Ajv JSON Schemas on the
packages/rest-typings/src/v1/channels/
and
packages/rest-typings/src/v1/dm/
folders.
Chore: Add /v1/video-conference endpoint types (#25278)
Chore: Add Agenda fork to the monorepo (#25681)
Chore: add Ajv JSON Schema to api/v1 (#25601)
This pull request adds Ajv JSON Schema validation to
apps/meteor/app/api/server/v1/
and
packages/rest-typings/src/v1/
, where needed.
Chore: Add auto label and improve Kodiak configuration (#25829)
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.
Chore: Add Livechat repo into Monorepo packages (#25312)
Chore: Add missing Swedish livechat translations (#26048 by @joakimaho)
Added missing Swedish translations.
Chore: Add options to debug stdout and rate limiter (#25336)
Chore: Add root package.json to houston files (#25286)
See title
Chore: Add tests for agents screens (#25637 by @weslley543)
Chore: Add typings for /v1/webdav.getMyAccounts (#25276)
Chore: Add yarn plugin to check node and yarn version (#25224)
Chore: Adding default message parser template (#26064)
Chore: adjust in some configurations (#25612 by @weslley543)
Chore: Allow endpoints to optionally require authentication (#26084)
Chore: API test on method GET with params as a number. (#25769)
Chore: AutoTranslate contextualBar rewrite (#25751)
Chore: Avoid set useless set UTC Offset (#26270)
Chore: Avoid unneeded permission updates when EE license is applied (#26253)
Chore: Broken Storybook (#25714)
There is another small improvement on the way we got storybook files.
Chore: Bump deps (#25624)
Chore: bump fuselage (#25605)
Chore: Bump fuselage (#25371)
Chore: Bump fuselage and update icon (#26036)
Chore: bump fuselage packages (#26325)
Chore: Bump Fuselage packages (#25259)
Chore: Cancel running jobs if PR is updated (#24708)
Chore: Change Apps-Engine version source for info (#26205)
Now that we're using yarn
, the version stored in the
package.json
is no longer the resolved one, but it matches
the input. This means that when we ran
yarn add @rocket.chat/apps-engine@alpha
, yarn saves
"alpha"
as the version of the package, while NPM added the
resolved version for the tag, e.g. "1.33.0-alpha.6507"
.
This ends up breaking a few places where we need the Apps-Engine version
for communication with the Marketplace.
With this PR we change the source of that info so the problem doesn't happen anymore.
Chore: Change stats to daily (#26113)
Chore: Check for env var values and not just if they are set (#26219)
Chore: Chore add validation option to rest endpoints (#25443)
Chore: Close tooltip on click (#26070)
Chore: Code Improvements for #25391 (#25606)
Chore: Collect e2e coverage (#25743 by @souzaramon)
Chore: Colors (#25969)
Chore: command's endpoints (#25630)
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/app/api/server/lib/ files to TS (#25840)
This pull request converts files on
apps/meteor/app/api/server/lib/
to Typescript.
Chore: Convert apps/meteor/client/components/UserAutoComplete (#25554)
Chore: Convert apps/meteor/client/sidebar/header/index (#25671)
Chore: Convert apps/meteor/client/sidebar/search (#25754)
Chore: Convert apps/meteor/client/views/admin/settings (#25565)
Chore: Convert apps/meteor/client/views/admin/settings/inputs folder (#25427)
Chore: Convert assets endpoint to Typescript (#25358)
Chore: Convert AutoTranslate (#25591)
Chore: Convert client/views/admin/settings/groups folder to ts (#25345)
Chore: convert communication methods to Typescript (#25503)
Convert files from
apps/meteor/app/apps/server/communication/
to ts.
Chore: Convert components/sidebar to TS (#25429)
Chore: Convert Create Channel (#25589)
Chore: Convert CreateChannelWithData (#25667)
Chore: Convert customSounds folder to ts (#25274)
Chore: Convert customUserStatus folder to ts (#25288)
Chore: convert e2e to ts (#25958)
Converted the apps/meteor/app/api/server/v1/e2e.js
to ts
and created endpoint typings on the
packages/rest-typings/src/v1/e2e
folder.
Chore: Convert email inbox feature to TypeScript (#25298 by @ujorgeleite)
Chore: Convert federationDashboard folder to ts (#25343)
Chore: Convert getStatistics (#25342)
Chore: convert import.js endpoints to TS (#25956)
Converted the apps/meteor/app/api/server/v1/import.js
to
ts and created endpoint typings on the
packages/rest-typings/src/v1/import
folder.
Chore: convert info to typescript (#25420)
Chore: convert invites, misc and subscriptions to TS and create definitions (#25350)
Converted apps/meteor/app/api/server/v1/invites.js
,
misc.js
and subscriptions.js
to Typescript and
created their endpoint definitions on the rest-typings folder.
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 by @matheuslc)
Marketplace apps listing page
Apps detail page
Chore: Convert MemoizedSetting, Setting, Section (#25572)
Chore: Convert normalizeMessagesForUser (#26059)
Chore: Convert NotificationStatus to TS (#25125)
Chore: Convert push endpoints to TS (#25347)
Chore: Convert RoomForeword, TextCopy and RoomAvatarEditor to TS (#25424)
Chore: Convert RoomMenu (#25914)
Chore: Convert sidebar/header/actions (#25581)
Chore: Convert sidebar/item (#25634)
Chore: Convert slashCommands to typescript (#25592 by @eduardofcabrera & @ostjen)
Chore: Convert to TS omnichannel/agent (#25511)
Chore: Convert to TS RoomAutoComplete (#25536)
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 usePreventDefault, useQueryOptions, useShortcutOpenMenu (#26035)
Chore: Convert UserAutoCompleteMultiple (#25587)
Chore: Convert users endpoints (#25635)
Chore: Convert useSidebarPaletteColor (#26065)
Chore: Convert useUpdateAvatar to TS and type avatar endpoints (#25430)
Chore: Converting files from app/livechat folder from JS to TS (#25658 by @amolghode1981)
Converting files from apps/meteor/app/livechat/lib/ from JS to TS
Chore: Converting omnichannel installation files to ts (#25665)
This PR converts the omnichannel/installation folder from js to ts
Chore: Converting orchestrator.js to ts (#25367)
Chore: create a e2e test guideline (#25884 by @souzaramon)
Chore: Create a token for each action (#26023)
Chore: Create README.md for Rest Typings (#25335)
Chore: Custom Sounds Endpoints (#25633)
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: Disabled icon colors on sidebar (#26257)
Chore: Do not log integrations using name
key (#26163)
Chore: Enable marketplace screenshots endpoint (#25395 by @matheuslc)
Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218 by @souzaramon)
data and test-failure should be ignored
ensure scripts use cross-env
Chore: Fix CI (#25797)
Chore: Fix correct unit test to api files (#25870)
Chore: Fix incorrect checksum for agenda package (cause of breaking develop builds) (#25741)
Chore: Fix Omnichannel E2E tests not running (#26092)
Chore: Fix return type warnings (#25275)
Chore: Fix version on develop branch (#25842)
Chore: fix watermark condition (#26095)
Chore: Fixes e2e playwright intermittences (#25984 by @souzaramon & @weslley543)
Chore: Fuselage update (#26004)
Chore: Fuselage update (#25983)
Chore: Handle errors on index creation (#26094)
Chore: Hide deprecation query log on production (#26188)
Chore: Improve CI cache (#25907)
Chore: Improve footer Template (#26085)
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: Info page (#26201)
Chore: Introduce Modal Region (#25962)
Chore: Introduce new index to query active livechat conversations for cloud scaling (#26047)
Chore: Keep the option to run only the meteor app (#25915)
Chore: Keyboard shortcuts contextualBar rewrite (#25753)
Chore: Livechat change output level (#25522)
Chore: Major refactors in pageobjects (#26015 by @souzaramon)
Chore: Make kodiak merge message empty (#26069)
Chore: Manager Page Rewrite (#25431)
Chore: Messages raw model rewrite to ts (#25761)
Chore: Migrate 15-message-popup from cypress to playwright (#25462 by @souzaramon)
Chore: migrate from cypress to pw 14-setting-permission (#25523 by @weslley543)
Chore: migrate katex to ts (#25501)
Chore: Migrate LivechatVisitors model to raw (#25756)
Chore: Migrate NotFoundPage to TS (#25509)
Chore: Migrate oauth2server to typescript (#25126)
Chore: Migrate oembed to ts (#25622)
Chore: Migrate retention-policy to ts (#25582)
Chore: Migrate some small helper functions to TypeScript (#25666)
Chore: Migrate spotify to ts (#25507)
Chore: migrate-to-pw-16-discussion (#25567 by @weslley543)
Chore: migrate-to-pw-adjust-in-intermitences (#25542 by @weslley543)
Chore: Minor dependency updates (#25269)
Chore: Missing keys in APIsDisplay (#24464)
Chore: Model Typings (#25758)
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 fork of cas module to the monorepo (#26107)
Chore: Move markdown message parser to a callback
(#25413)
Chore: Move voip's Wrap-up and On-hold functionality to EE (Backend) (#25160)
Chore: Notification Preferences to TS (#25827)
Notifications Preferences to TS.
Fix broken save action.
Chore: organize test files and fix code coverage (#24900)
Chore: Plan tag (#26224)
Now we only have one plan tag for all plans /
Chore: Prune Messages contextualBar rewrite (#25757)
Chore: Remove all cypress tests, configs and references (#25564 by @souzaramon)
Chore: Remove Alpine image deps after using them (#25053)
Chore: Remove compose from main repo (#23426)
Chore: Remove duplicate checksumBehavior key from yarn file (#25730)
Chore: remove duplicated NotFoundPage.js (#25749)
Chore: Remove duplicated useUserRoom (#25180)
Chore: Remove Imperative Modal from context (#25911)
Chore: Remove old files from removed Omnichannel feature (#25129)
Chore: Remove old rest api code (#25863)
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 snap files from Houston config (#25819)
Chore: Remove TimeSync usage (#26294)
Chore: Remove toastr package (#25787)
Chore: Remove unused Drone CI files (#25124)
Chore: remove unused locators from e2e tests (#25860 by @souzaramon)
Chore: Remove unused migrations (#26102)
After giving it some thought:
234 through 240 are not going to be run anymore. Keeping them does not affect behavior of course, but this (removing) makes it easier to quickly glance at and understand what migrations are actually included in 5.x.y (especially in tag compare view or in general just checking the ref).
Also changed the file name of 233 to be more explicit at what it does so to not confuse with actual "migrations" without having to open the file.
The redirect to the documentation page (go.rocket....) is not yet set up, jfyi.
Chore: Reorder unreleased migrations (#25508)
Chore: Replace useSubscription
with
useSyncExternalStore
(#25909)
Chore: Replace AnnouncementModal in favor of GenericModal (#25752)
Chore: Rest API query parameters handling (#25648)
Chore: REST query and body params validation (#25446)
Chore: RestApiClient as Package (#25469)
Chore: Revert yarn dev
implementation (#26075)
Chore: Rewrite 2fa to typescript (#25285)
Chore: Rewrite action-links to ts (#25418)
Chore: Rewrite AddUsers to TS (#25830)
Chore: Rewrite Admin UsersTable to Typescript (#25698)
Chore: Rewrite autotranslate to ts (#25425)
Chore: Rewrite im and dm endpoints to ts (#25521)
Endpoints rewritten to TS
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 RoomWithData (#25858)
Chore: Rewrite some Omnichannel files to TypeScript (#25359)
apps/meteor/client/components/Omnichannel/modals/* apps/meteor/client/components/Omnichannel/Tags.js
Chore: Room access validation may be called without user information (#26086)
Chore: RouteGroup for My Account sidebar (#25632)
Refactoring My Accounts routes. Allows to add "my account" routes for EE.
Chore: Run tests on docker (#25556)
Chore: Settings UI issue (#26053)
Chore: Small fix on callProvider (#25963)
Chore: solve yarn issues from env var (#25468)
Chore: Split useUserInfoActions into small hooks (#25747)
Chore: Sync with master (#25284)
Chore: Taking out Blaze from routes with MainLayout
(#25697)
While working with @guijun13 on the new homepage I saw we're still
rendering a Blaze template even to just embedded components into
MainLayout
. This PR addresses it.
Chore: Template to generate packages (#25174)
npx hygen package new test
Chore: Test for department screen (#25696 by @weslley543)
Chore: test turbo params (#26038)
Chore: Testing Kodiak feature (#25794)
Chore: Tests refactor pageobjects (#26245 by @souzaramon & @weslley543)
Chore: Tests with Playwright (task: All works) (#25122 by @weslley543)
Chore: Tests with Playwright (task: ROC-25, 06-message) (#25252 by @weslley543)
Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)
Chore: Tests with Playwright (task: ROC-31, 12-settings) (#25253 by @souzaramon)
Chore: Tests with Playwright (task: ROC-66, Intermittent resolution in tests) (#25416 by @souzaramon & @weslley543)
Chore: Translate admin helpers to TS (#25690)
Chore: TS conversion folder client (#25031)
Chore: TS migration SortList (#25167)
Chore: ui-client package (#25916)
Chore: Update Apps-Engine and Fuselage (#25700)
Chore: Update Apps-Engine version (#25617)
Chore: Update Apps-Engine version (#26258)
Bumping Apps-Engine version
Chore: update avatar colors (#26153)
Chore: Update Livechat to the last version (#25257)
Chore: Update Livechat version (#25130)
Chore: Update Meteor 2.7.3 (#25991)
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 package.json update tsc memory (#25755)
Chore: update pageobjects to use es6 getters and remove export default (#25867 by @souzaramon)
Chore: Update poplib (#25964)
Chore: Update useSidebarPalette selectors (#26322)
Chore: Update Volta configuration (#25394)
Volta need some extra configuration to work on monorepos.
Chore: Updating Apps-Engine (#26001)
Chore: Upgrade and remove unnecessary Livechat dependencies (#25672)
Chore: Upgrade Fuselage packages to next
dist-tag
(#26274)
Upgrade Fuselage packages to the latest development versions.
Chore: use params instead of URL building on livechat endpoints (#25810)
Chore: User set UTC offset (#25381)
Chore: VideoConference UX/UI Refactor 1st Interaction (#26183)
Chore: VoIP Context (#25994)
Chore: Watch for package changes (#25910)
With the current dev
pipeline, whenever we modify a
package (e.g. api-client
), we have to kill the meteor
proccess and run yarn dev
again in order for the changes to
be compiled and the new output to be used by meteor.
This has the drawback of taking a little longer to run the dev environment, since we can't cache a watched buid. In the other hand, it reduces the friction of modifying internal packages since we don't need to rebuild the project for changes to take effect.
This will enable us to move more things to separate packages without affecting the dev experience too much.
Chore(deps): Bump sharp from 0.30.4 to 0.30.6 (#25719 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-04-04Z (#25043)
Merge master into develop & Set version to 4.7.0-develop (#25028)
Merge master into develop & Set version to 5.0.0 (#25702 by @felipe-menelau)
Regression: Admin Avatar Edit endpoint fix (#26232)
Regression: [VideoConference] Callee client behaves improperly when accepting a call from someone who lost the connection (#26101)
If the caller loses connection and the callee accepts the call anyway, the client will wait for five seconds for confirmation that they can join the call. This PR improves the UI behavior during those five seconds.
Regression: [VideoConference] If the caller loses connection, direct calls are never canceled (#26099)
Regression: yarn dev
not working (#26071)
Regression: Add isPending
status to message (#25299)
Regression: Add appId prop to slashcommand (#25988)
Pass the appId when present to the slashcommand array. This avoid problems with contextual bar and modals not opening.
Regression: Add better error messages when call fails (#26134)
Regression: Add Error boundary to katex render component (#26067)
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: Add v1 to licenses.add endpoint (#26311)
Regression: Added missing call button in the contact info contextual bar (#26135)
Regression: Added missing call button to contact center calls list (#26119)
This PR adds a call button to the contact center calls list rows.
Regression: Adjusted priority to run canned responses replace before new parser (#26298)
Canned responses placeholders were not being replaced properly after we changed to the new md parser. This fix changes the priority so that the canned responses replace logic runs before the parser, thus bringing back this functionality.
Before:
After:
Regression: Align TypeScript version across workspaces (#26184)
Some places were still referring to TypeScript 4.3.4 instead of 4.5.5, so this PR targets it.
Regression: All users in members list showing as federated (#26129)
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: AutoTranslate on new message template (#26049)
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: Broken emoji picker on Livechat (#26128)
Regression: bump onboarding-ui version (#25320)
Bump to 'next' the onboarding-ui package from fuselage.
Update from 'companyEmail' to 'email' adminData usage types
Regression: Burger menu showing arrow instead of burguer (#26170)
Regression: Call toggle missing network disconnection state (#26237)
This PR brings back the network disconnection state to the voip call toggle button
Regression: Calling info on VoipFooter when performing an outbound call (#26138)
Regression: Cannot logout when CallProvider is unregistered and mounted (#26158)
Regression: Cannot open Menu in searched message. (#26172)
Regression: Change Audio settings for device settings as modal title (#26159)
Regression: Change logic to check if connection is online on unstable networks (#25618)
Regression: Change preference to be default legacy messages (#25255)
Regression: Changing isEnterprise useQuery name to prevent conflict of queries (#26116)
Changed the name of useQuery hook to prevent conflict of queries with same name.
Regression: Channel type
icon on Engagement
Dashboard (#26269)
This PR fixes a bug on which the channel type is inverted.
Regression: CI playwright (#25168)
Regression: CI services build (#25555)
Regression: Clear user selection filter after selecting desired user. (#26295)
Regression: Close button on modals created via apps not working (#26127)
Regression: Contact manager edit/view not working (#26155)
Basically, the Contact Center was working, but not the right way. This PR fixes:
Ability to select Contact Managers from dropdown
Ability to validate Contact Edits without requesting data a ton of times
Ability to remove Contact manager from a contact
Ability to see Contacts and Contact Managers on Contact View
Fix endpoints validation
Add validators (ajv) to endpoint, thou not being used yet (since we hit a special endpoint)
Regression: Contact manager endpoint usage (#26063)
Regression: Correct call ringtones (#26111)
outbound-call-ringing ringtone: Should be played when the outbound call is initiated and not yet established(Current implementation is playing the incoming-call ringtone)
call-ended ringtone: Should be played whenever a call ends.
Regression: Device management table missing device icon and ip text ellipsis (#26255)
Regression: Do not show federated tooltip on non-federated rooms (#26115)
Regression: Docker image publish (#25931)
Regression: Don't open mdm feature modal on registration page (#26234)
Regression: Emojis displaying as :undefined:
(#26141)
Regression: Empty URL previews in messages. (#26160)
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: Federated users not showing as federated in Room Members (#26249)
Regression: fix directory
endpoint not listing teams
(#26310
by @carlosrodrigues94)
Regression: Fix app icons breaking UI (#26278)
Regression: fix apps path (#25809)
Regression: Fix apps wrong typing (#25824)
Regression: Fix assets format (#26140)
Regression: Fix blackscreen after app install (#25950)
Fixed an error where the client screen would go black after installing an app. This was hapenning because the handleAppAddedOrUpdated function from the AppsProvider had a wrong type for the return of the getAppFromMarketplace function.
Demo gifs:
Before
After:
Regression: Fix breaking omnichannel tests (#26305)
Regression: Fix call direction (#26055)
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 command previews (#26199)
Fixes slash command previews not being showed
Regression: Fix e2e CI (#25974)
Regression: Fix English i18n react text (#25368)
Incorrect text in reaction tooltip has been fixed
Regression: Fix extended sidebar item (#25887)
Regression: Fix federation Matrix bridge startup (#25273)
Regression: Fix files list endpoints (#26226)
Regression: Fix get myself user data (#26328)
Regression: Fix import endpoints (#26074)
Regression: Fix job Id not returned by agenda (#26315)
Regression: Fix marketplace app apis visibility problem (#26080)
Solved a problem that showed an unwanted zero in place of the APIs
section for apps that weren't installed/did not have an APIs section.
Before:
After(non installed app):
After(installed app)
Regression: Fix marketplace releases tab crash bug (#26162)
Fixed a bug where RC would crash because the marketplace releases tab
was trying to display undefined data from manually installed apps. Demo
gif:
Regression: Fix micro services (#26054)
Regression: Fix micro services Docker build (#25193)
Regression: Fix multi line is not showing an empty line between lines (#25317)
Regression: Fix Omnichannel not working after meteor update (#26194)
Fixed things:
Omnichannel Directory
Omnichannel Current Chats
Auto Selection Algo
Load Balance Algo
Manual Selection Algo
Livechat New Conversations
Other fixed things:
Warning on fields deprecation
Warning on "remove" deprecation
Remove findAndModify usage
Regression: Fix permissions page pagination (#26304)
Regression: Fix rendered markdown styling on app info page details section (#26093)
Fixed two styling problems on the AppDetails markdown. The first one
was a misuse of flex and the second was the fact that the
withRichContent flag was missing on the box that received the markdown.
Demo images: Before:
After:
Clickup task: https://app.clickup.com/t/2rwq0q7
Regression: Fix reply button not working when hideFlexTab is enabled (#25306)
Regression: Fix routing for public queue and visitor abandonment fiber usage (#26233)
Regression: Fix scheduler not working (#26242)
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: Fix threads list (#26052)
Regression: Fix users.create call (#25834)
Regression: Fix voip call wrap-up model not working (#26024)
Regression: get user from req
on
ui.interaction
endpoints (#26256)
Regression: Inline code and copyonly tag styles (#26173)
Regression: Invalid Voip host issue preventing agents connecting to asterisk (#26056)
Regression: Last_login translation key (#26203)
Regression: Link not scrolling to message (#26073)
Regression: Livechat not rendering UiKit messages with action buttons (#26327)
Regression: Livechat rooms not opening due to route desync (#26209)
Due to route information only updating on
Tracker.afterFlush
(https://github.com/RocketChat/Rocket.Chat/pull/25990),
we found out that calling the tabBar.openUserInfo()
method
at this point will cause a route change to the previous route instead of
the current one, preventing livechat rooms from being opened.
As a provisory solution, we're delaying the opening of the contextual bar, which then ensures that the route info is up to date. Although this solution works, we need to find a more reliable way of ensuring consistent route changes with up-to-date information.
Regression: Matrix Federation regressions (#26283 by @carlosrodrigues94)
Regression: Messages in new message template Crashing. (#25327)
Regression: Meteor uses projection
for its observes
(#26223)
Regression: Missing settings group descriptions (#25639)
Regression: moving Community Watermark to ee
folder
(#26148)
Due to legal reasons, the Watermark used in community Edition was
moved to Enterprise folder ee
Regression: Non-reactive routes (#25990)
When Tracker.autorun()
calls are nested, it's possible
that an invalidation at the parent render the children non-reactive due
to synchronous calls. To avoid that under the callback given by
useSyncExternalStore
, we schedule an
onStoreChange
callback call to not make it reside at the
same backtrace.
Regression: Omni-chats not getting routed automatically to bots (#26267)
Regression: Options overlapping input in Users Autocomplete (#26309)
Regression: OTR with new React Messages (#26179)
This PR solves 2 OTR issues with new react message components
disable the server side message parser for OTR messages
adds the stopwatch icon for otr messages
Regression: Parse outbound phone number removing * putting + char (#26154)
Regression: Re-add view logs button (#25876)
Re-added the view logs button to the appMenu component so that the
user can go directly from the marketplace list of apps to the app info
page with the logs tab already open. Demo gif:
Regression: Remove 4.0 version banner (#26251)
Created a migration to disable and dismiss for all users the old 4.0 version banner. It happened when a new admin user has been added.
Regression: Remove alpha tag and fix initialization process (#26248)
Regression: remove italic from reaction translation (#26152)
Regression: Removed CE watermark from VoipFooter (#26239)
The objective of this change is to remove the CE watermark only during an active call. The CE watermark will be displayed normally in all other scenarios. Bellow you can see a demonstration of the expected behavior:
Regression: Replace contact center icon (#26216)
Regression: REST API calls at Engagement Dashboard (#26235)
Parameters for GET requests are not serialized as for other
methods, therefore sending Date
objects is not viable due
to the way Date.prototype.toString
works. This PR uses
Date.prototype.toISOString
explicitly to serialize
dates.
Regression: Revert Bugsnag version (#25313)
Regression: Revert Livechat packages upgrades/removals that were causing issues (#26077)
Regression: Revert replace contact center icon (#26238)
Regression: Reverting @rocket.chat/mp3-encoder version to fix Audio Message (#26197)
An unknow breaking change (still investigating) happened when upgrading the @rocket.chat/mp3-encoder package to version 0.25.0, because of that we revert the version to 0.24.0 the last know working version.
Regression: Rocket.Chat Webapp not loading. (#25349)
Regression: Room Endpoint Call Issues (#25928)
This PR fixes small management bugs related with channels, rooms and teams
Regression: Search on Member List (#26273)
Regression: Send files with enter
key (#26136)
Regression: Set offset
and count
optional on ChatGetThreadsListSchema
(#25961)
Regression: Show username and real name on the message system (#25254)
Regression: Shows error if micro service cannot connect to Mongo (#25301)
Regression: Sidebar icons spacing (#26139)
before:
after:
Regression: Special characters on phone number (#26241)
PR Includes:
Keep focus on phone input of dial pad
Handle submit with "Enter" key
Remove mask and mandatory "+" char
Long press for "0"/"+" button
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:
Regression: TOTP Modal with new rest api package (#25893)
Regression: UIKit buttons auth user validation (#26171)
Fix the validation to match the new feature that allows apps to register auth-required routes.
Regression: Unable to click on UiKit buttons provided by apps (#26125)
Regression: Unable to edit user details via admin panel (#25923)
Regression: Unavailable devices in unsupported browsers (#26174)
Regression: Unhandled Exceptions metric causing a secondary exception (#26088)
Regression: Update error message on
useEndpointActionExperimental
(#26062)
This PR changes the way we show an error message to the user on the
useEndpointActionExperimental
hook, previously for
Object
error messages it was being shown as
undefined
Regression: Update message reaction text (#26097)
Regression: Update settings groups description (#25663)
Regression: Use exact Node version on micro services Docker images (#25287)
Regression: Use fname instead real unique name for Voip (#26319)
Affect:
Voip room header
Contacts table
Contact info
Regression: UserInfo/RoomInfo Menu (#26252)
note: next fuselage's version needed
Regression: Users on new sessions are forced to re-configure 2fa (#26117)
Regression: Users Table loading state (#26079)
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: Webhook Integration Creation + string error toast msg (#26008)
Regression: yarn dev triggers build dependencies (#25208)
Revert: "Chore: Collect e2e coverage" (#25936 by @souzaramon)
Test: Migrate 13-permissions from cypress to playwright (#25558 by @souzaramon)
2022-08-11 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
im.list
not working with Use Real Name
setting (#26532)2022-08-02 Β· 4 π Β· 4 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Empty results on im.list
endpoint (#26438)
Unable to close chats when comments is disabled (#26057)
Fixes https://github.com/RocketChat/Rocket.Chat/issues/25954
Unable to send voice recording to Whatsapp (#26276)
Update chartjs usage to v3 (#25873)
2022-07-21 Β· 4 π Β· 3 π Β· 7 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Error "numRequestsAllowed" property in rateLimiter for REST API endpoint when upgrading (#26058)
Not showing edit message button when blocking edit after N minutes (#25724 by @matthias4217)
Previously, in Rocketchat 4.7.0 and later, as mentioned in https://github.com/RocketChat/Rocket.Chat/issues/25478, the edit button was not displayed on the interface in the minute after having sent a message. This is now fixed : messages can be edited right after sending them.
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
Settings not being overwritten to their default values (#25891)
Chore: Avoid unneeded permission updates when EE license is applied (#26253)
Release 4.8.2 (#26326 by @matthias4217)
2022-06-08 Β· 4 π Β· 5 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
AccountBox checks for condition (#25708)
Bump meteor-node-stubs to version 1.2.3 (#25669 by @Sh0uld)
With meteor-node-stubs version 1.2.3 a bug was fixed, which occured in issue #25460 and probably #25513 (last one not tested). For the issue in meteor see: https://github.com/meteor/meteor/issues/11974
Fix prom-client new promise usage (#25781)
Wrong argument name preventing Omnichannel Chat Forward to User (#25723)
2022-05-31 Β· 16 π Β· 13 π Β· 55 π Β· 151 π Β· 52 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
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
https://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.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
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:
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:
Delivered together with the tab-navigation task. Changed the app
settings from the details of the app to the new settings tab. Demo
image:
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:
After
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:
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.
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:
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).
In case you encounter any
problems, or want to compare, temporarily it is possible to use the old
version
New button for network outage (#25499 by @amolghode1981)
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)
ENTERPRISE: Allow mapping LDAP groups to multiple RC roles (#23849)
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.
Add tooltip to sidebar room menu (#24405 by @Himanshu664)
add warnings for federation setup (#25684 by @carlosrodrigues94)
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)
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)
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)
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:
After:
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.
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 by @amolghode1981)
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.
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.
Second reason is when computer goes in sleep mode.
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)
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 by @amolghode1981)
The previous PR https://github.com/RocketChat/Rocket.Chat/pull/25170 did not handle the issues completely. This PR is expected to handle
Clearing call related UI when the network is disconnected or switched.
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.
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)
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)
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)
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]
Settings listeners not receiving overwritten values from env vars (#25448)
Showing Blank Message Inside Report (#25007)
Toolbox hiding under contextual bar (#25237)
Unable to see channel member list by authorized channel roles (#25412)
Upgrade tab loader in incorrect position (#25398)
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)
UserCard sanitization (#25089)
Rewrites the component to TS
Fixes some visual issues
Video and Audio not skipping forward (#19866)
VoIP disabled/enabled sequence puts voip agent in error state (#25230 by @amolghode1981)
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:
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.
From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.
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.
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.
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 by @ujorgeleite)
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 by @matheuslc)
Marketplace apps listing page
Apps detail page
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 by @matheuslc)
Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218 by @souzaramon)
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 by @souzaramon)
Chore: migrate from cypress to pw 14-setting-permission (#25523 by @weslley543)
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 by @weslley543)
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
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 by @weslley543)
Chore: Tests with Playwright (task: ROC-25, 06-message) (#25252 by @weslley543)
Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)
Chore: Tests with Playwright (task: ROC-31, 12-settings) (#25253 by @souzaramon)
Chore: Tests with Playwright (task: ROC-66, Intermittent resolution in tests) (#25416 by @souzaramon & @weslley543)
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:
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 by @felipe-menelau)
Release 4.7.2 (#25580)
Test: Migrate 13-permissions from cypress to playwright (#25558 by @souzaramon)
2022-05-30 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
2022-05-20 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
2022-05-20 Β· 5 π Β· 2 π Β· 7 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Dynamic load matrix is enabled and handle failure (#25495)
Initial User not added to default channel (#25544)
If injecting initial user. The user wasnβt added to the default General channel
One of the triggers was not working correctly (#25409)
UI/UX issues on Live Chat widget (#25407)
User abandonment setting was not working doe to failing event hook (#25520)
A setting watcher and the query for grabbing abandoned chats were broken, now they're not.
2022-05-13 Β· 1 π Β· 2 π Β· 1 π Β· 4 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Use setting to determine if initial general channel is needed (#25441 by @felipe-menelau)
LDAP sync removing users from channels when multiple groups are mapped to it (#25434)
Spotlight results showing usernames instead of real names (#25471)
2022-05-04 Β· 4 π Β· 7 π Β· 33 π Β· 69 π Β· 35 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Add expire index to integration history (#25087)
Alpha Matrix Federation (#23688)
Experimental support for Matrix Federation with a Bridge
https://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4
Expand Apps Engine's environment variable allowed list (#23870 by @cuonghuunguyen)
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).
In case you encounter any
problems, or want to compare, temporarily it is possible to use the old
version
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.
Add tooltip to sidebar room menu (#24405 by @Himanshu664)
Added MaxNickNameLength and MaxBioLength constants (#25231 by @aakash-gitdev)
Added tooltip options for message menu (#24431 by @Himanshu664)
Improve active/hover colors in account sidebar (#25024 by @Himanshu664)
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.
Add katex render to new message react template (#25239)
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)
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:
After:
Client disconnection on network loss (#25170 by @amolghode1981)
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.
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.
Second reason is when computer goes in sleep mode.
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)
Desktop notification on multi-instance environments (#25220)
End call button disappearing when on-hold (#24936)
FormData uploads not working (#25069)
Full error message is visible (#24856 by @Himanshu664)
Incorrect websocket url in livechat widget (#25261)
Invitation links don't redirect to the registration form (#25082)
Message menu action not working on legacy messages. (#25148)
Message preview not available for queued chats (#25092)
NPS never finishing sending results (#25067)
Prevent sequential messages edited icon to hide on hover (#24984)
Proxy settings being ignored (#25022)
Modify Meteor's HTTP.call
to add back proxy
support
Read receipts show with color gray when not read yet (#25244)
Read receipts showing before message read (#25216)
Replace encrypted text to Encrypted Message Placeholder (#24166)
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)
Showing Blank Message Inside Report (#25007)
Toolbox hiding under contextual bar (#25237)
Upgrade Tab showing for a split second (#25050)
Use correct room property for call ended at (#24932)
UserAutoComplete not rendering UserAvatar correctly (#25055)
UserCard sanitization (#25089)
Rewrites the component to TS
Fixes some visual issues
Video and Audio not skipping forward (#19866)
VoIP disabled/enabled sequence puts voip agent in error state (#25230 by @amolghode1981)
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:
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.
From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.
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.
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 error boundary to message component (#25223)
Not crash the whole application if something goes wrong in the MessageList component.
Chore: Add options to debug stdout and rate limiter (#25336)
Chore: Add root package.json to houston files (#25286)
See title
Chore: Add yarn plugin to check node and yarn version (#25224)
Chore: Bump fuselage (#25371)
Chore: Bump Fuselage packages (#25259)
Chore: Cancel running jobs if PR is updated (#24708)
Chore: Convert admin custom sound to tsx (#25128)
Chore: Convert LivechatAgentActivity to raw model and TS (#25123)
Chore: Convert Mailer to TS (#25121)
Chore: Convert NotificationStatus to TS (#25125)
Chore: Create README.md for Rest Typings (#25335)
Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218 by @souzaramon)
data and test-failure should be ignored
ensure scripts use cross-env
Chore: Fix return type warnings (#25275)
Chore: Migrate oauth2server to typescript (#25126)
Chore: Minor dependency updates (#25269)
Chore: Missing keys in APIsDisplay (#24464)
Chore: Monorepo (#25074)
Chore: move definitions to packages (#25085)
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: Sync with master (#25284)
Chore: Template to generate packages (#25174)
npx hygen package new test
Chore: Tests with Playwright (task: All works) (#25122 by @weslley543)
Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)
Chore: TS conversion folder client (#25031)
Chore: TS migration SortList (#25167)
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.
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: 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: bump onboarding-ui version (#25320)
Bump to 'next' the onboarding-ui package from fuselage.
Update from 'companyEmail' to 'email' adminData usage types
Regression: Change preference to be default legacy messages (#25255)
Regression: CI playwright (#25168)
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 size of custom emoji and render emoji on thread message preview (#25314)
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: 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: Use exact Node version on micro services Docker images (#25287)
Regression: Validate empty fields for Message template (#25250)
Regression: yarn dev triggers build dependencies (#25208)
2022-04-19 Β· 1 π Β· 1 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
2022-04-14 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
Database indexes not being created (#25101)
Deactivating user breaks if user is the only room owner (#24933 by @sidmohanty11)
2022-04-07 Β· 6 π Β· 5 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
FormData uploads not working (#25069)
Invitation links don't redirect to the registration form (#25082)
NPS never finishing sending results (#25067)
Proxy settings being ignored (#25022)
Modify Meteor's HTTP.call
to add back proxy
support
Upgrade Tab showing for a split second (#25050)
UserAutoComplete not rendering UserAvatar correctly (#25055)
2022-04-01 Β· 2 π Β· 7 π Β· 57 π Β· 62 π Β· 34 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
Telemetry Events (#24781 by @eduardofcabrera & @ostjen)
Upgrade Tab (#24835)
ENTERPRISE: Don't start presence monitor when running micro services (#24739)
Adding new statistics related to voip and omnichannel (#24887)
Total of Canned response messages sent
Total of tags used
Last-Chatted Agent Preferred (enabled/disabled)
Assign new conversations to the contact manager (enabled/disabled)
How to handle Visitor Abandonment setting
Amount of chats placed on hold
VoIP Enabled
Amount of VoIP Calls
Amount of VoIP Extensions connected
Amount of Calls placed on hold (1x per call)
Fixed Session Aggregation type definitions
New omnichannel statistics and async statistics processing. (#24749)
Standarize queue behavior for managers and agents when subscribing (#24837)
Updated links in readme (#24028 by @aswinidev)
UX - VoIP Call Component (#24748)
Voip Extensions disabled state (#24750)
"livechat/webrtc.call" endpoint not working (#24804)
"Match error" when converting a team to a channel (#24629)
ENTERPRISE: Auto reload feature of ddp-streamer micro service (#24793)
ENTERPRISE: DDP streamer not sending data to all clients (#24738)
ENTERPRISE: Notifications not being sent by ddp-streamer (#24831)
ENTERPRISE: Presence micro service logic (#24724)
VOIP: SidebarFooter component (#24838)
Improve the CallProvider code;
Adjust the text case of the VoIP component on the FooterSidebar;
Fix the bad behavior with the changes in queue's name.
PaginatedSelectFiltered
not handling changes (#24732)
API Error preventing adding an email to users without one (like bot/app users) (#24709)
Apple login script being loaded even when Apple Login is disabled. (#24760)
Apple OAuth (#24879)
auto-join team channels not honoring user preferences (#24779 by @ostjen)
Broken build caused by PRs modifying same file differently (#24863)
Broken multiple OAuth integrations (#24705)
Components for user search (#24677)
Critical: Incorrect visitor getting assigned to a chat from apps (#24805)
Custom script not being fired (#24901)
Date Message Export Filter Fix (#24542 by @eduardofcabrera)
Fix message export filter to get all messages between "from date" and "to date", including "to date".
DDP Rate Limiter Translation key (#24898)
Before:
Now:
DDP streamer errors (#24710)
Disable voip button when call is in progress (#24864)
Duplicated 'name' log key (#24590)
Duplicated "jump to message" button on starred messages (#24867 by @Himanshu664)
Handle Other Formats inside Upload Avatar (#24226)
After resolving issue #24213 :
High CPU usage caused by CallProvider (#24994)
Remove infinity loop inside useVoipClient hook.
#closes #24970
Ignore customClass on messages (#24845)
LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off (#24320)
Use the FileUpload_RotateImages
setting
(Administration > File Upload > Rotate images on
upload) to control whether avatars should be rotated
automatically based on their data (XEIF);
Display the avatar image preview (orientation) according to the
FileUpload_RotateImages
setting.
Missing dependency on useEffect at CallProvider (#24882)
Missing username on messages imported from Slack (#24674)
Nextcloud OAuth for incomplete token URL (#24476)
no id of room closer in livechat-close message (#24683)
Opening a new DM from user card (#24623)
A race condition on useRoomIcon
-- delayed merge of
rooms and subscriptions -- was causing a UI crash whenever someone tried
to open a DM from the user card component.
Prevent call button toggle when user is on call (#24758)
Prune Message issue (#24424)
Push privacy config to not show username not being respected (#24606)
Register with Secret URL (#24921)
Reload roomslist after successful deletion of a room from admin panel. (#23795 by @Aman-Maheshwari)
Removed the logic for calling the rooms.adminRooms
endPoint from the RoomsTable
Component and moved it to its
parent component RoomsPage
. This allows to call the
endPoint rooms.adminRooms
from
EditRoomContextBar
Component which is also has
RoomPage
Component as its parent.
Also added a succes toast message after the successful deletion of room.
Revert AutoComplete (#24812)
Room archived/unarchived system messages aren't sent when editing room settings (#24897)
Send the "Room archived" and "Room unarchived" system messages when editing room settings (and not only when rooms are archived/unarchived with the slash-command);
Fix the "Hide System Messages" option for the "Room archived" and "Room unarchived" system messages;
room message not load when is a new message (#24955)
When the room object is searched for the first time, it does not exist on the front object yet (subscription), adding a fallback search for room list will guarantee to search the room details.
before: https://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4
after: https://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4
Room's message count not being incremented on import (#24696)
SAML Force name to string (#24930)
Several issues related to custom roles (#24052)
Throw an error when trying to delete a role (User or Subscription role) that are still being used;
Fix "Invalid Role" error for custom roles in Role Editing sidebar;
Fix "Users in Role" screen for custom roles.
Show call icon only when user has extension associated (#24752)
Show only available agents on extension association modal (#24680)
Show only enabled departments on forward (#24829)
System messages are sent when adding or removing a group from a team (#24743)
Typo and placeholder on wrap up call modal (#24737)
Typo in wrap-up term (#24661)
VoIP button gets disabled whenever user status changes (#24789 by @amolghode1981)
VoIP Enable/Disable setting on CallContext/CallProvider Notifications (#24607)
Voip Stream Reinitialization Error (#24657 by @amolghode1981)
VoipExtensionsPage component call (#24792)
Wrong business hour behavior (#24896)
Wrong param usage on queue summary call (#24799)
Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services (#25021 by @dependabot[bot])
Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services (#25019 by @dependabot[bot])
Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services (#25018 by @dependabot[bot])
Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services (#25020 by @dependabot[bot])
Bump @types/clipboard from 2.0.1 to 2.0.7 (#24832 by @dependabot[bot])
Bump @types/mailparser from 3.0.2 to 3.4.0 (#24833 by @dependabot[bot])
Bump @types/nodemailer from 6.4.2 to 6.4.4 (#24822 by @dependabot[bot])
Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services (#24666 by @dependabot[bot])
Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services (#24820 by @dependabot[bot])
Bump actions/checkout from 2 to 3 (#24668 by @dependabot[bot])
Bump actions/setup-node from 2 to 3 (#24642 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.2 (#24821 by @dependabot[bot])
Bump is-svg from 4.3.1 to 4.3.2 (#24801 by @dependabot[bot])
Bump jschardet from 1.6.0 to 3.0.0 (#23121 by @dependabot[bot])
Bump pino from 7.8.0 to 7.8.1 in /ee/server/services (#24783 by @dependabot[bot])
Bump pino from 7.8.1 to 7.9.1 in /ee/server/services (#24869 by @dependabot[bot])
Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services (#24689 by @dependabot[bot])
Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services (#24698 by @dependabot[bot])
Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services (#24870 by @dependabot[bot])
Bump prometheus-gc-stats from 0.6.2 to 0.6.3 (#24803 by @dependabot[bot])
Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services (#24667 by @dependabot[bot])
Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services (#24716 by @dependabot[bot])
Bump url-parse from 1.5.7 to 1.5.10 (#24640 by @dependabot[bot])
Chore: Add E2E tests for livechat/room.close (#24729 by @Muramatsu2602)
Chore: Add E2E tests for livechat/visitor (#24764 by @Muramatsu2602)
Create a new test suite file under tests/end-to-end/api/livechat
Create tests for the following endpoints:
Chore: add some missing REST definitions (#24925 by @gerzonc)
On the mobile
client, we made an effort to collect more REST API
definitions that are missing on the server side during our migration to
TypeScript. Since we're both migrating to TypeScript, we thought it
would be a good idea to share those so you guys can benefit from our
initiative.
Chore: added Server Instances endpoint types (#24507)
Created typing for endpoint definitions on
instances.ts
.
Chore: added settings endpoint types (#24506)
Created typing for endpoint definitions on
settings.ts
.
Chore: APIClass types (#24747)
This pull request creates a new restivus
module (.d.ts)
for the api.js
file.
Chore: Bump Fuselage packages (#25015)
It uses the last stable version of Fuselage packages.
Chore: Convert server functions from javascript to typescript (#24384)
This pull request will be used to rewrite some functions on the Chat Engine to Typescript, in order to increase security and specify variable types on the code.
Chore: converted more hooks to typescript (#24628)
Converted some functions on client/hooks/
from
JavaScript to Typescript.
Chore: Fix Cypress tests (#24544)
Chore: Fix grammatical errors in Code of Conduct (#24759 by @aadishJ01)
Chore: fix grammatical errors in Features (#24771 by @aadishJ01)
Chore: Fix MongoDB versions on release notes (#24877)
Chore: Get Settings Statistics (#24397)
Chore: Improve logger to allow log of unknown
values
(#24726)
Chore: Improvements on role syncing (ldap, oauth and saml) (#23824)
Chore: Micro services fixes and cleanup (#24753)
Chore: Remove old scripts (#24911)
Chore: Skip local services changes when shutting down duplicated services (#24810)
Chore: Storybook mocking and examples improved (#24969)
Stories from ee/
included;
Differentiate root story kinds;
Mocking of ServerContext
via Storybook
parameters.
Chore: Update Livechat (#24754)
Chore: Update Livechat (#24990)
Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1 (#24574 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-02-28Z (#24644)
i18n: Language update from LingoHub π€ on 2022-03-07Z (#24717)
i18n: Language update from LingoHub π€ on 2022-03-14Z (#24823)
i18n: Language update from LingoHub π€ on 2022-03-21Z (#24895)
i18n: Language update from LingoHub π€ on 2022-03-28Z (#24971)
Merge master into develop & Set version to 4.6.0-develop (#24653)
Regression: Add createdOTR index (#25017)
Regression: Call doesn't stop ringing after agent unregistration (#24908)
Regression: Custom roles displaying ID instead of name on some admin screens (#24999)
Regression: Error is raised when there's no Asterisk queue available yet (#24980 by @amolghode1981)
Regression: Fix account service login expiration (#24920)
Regression: Fix ParentRoomWithEndpointData in loop (#24809)
Regression: Fix unexpected errors breaking ddp-streamer (#24948)
Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests (#24756)
Regression: Register services right away (#24800)
Regression: Role Sync not always working (#24850)
2022-04-07 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
NPS never finishing sending results (#25067)
Proxy settings being ignored (#25022)
Modify Meteor's HTTP.call
to add back proxy
support
2022-03-30 Β· 2 π Β· 2 π Β· 6 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
High CPU usage caused by CallProvider (#24994)
Remove infinity loop inside useVoipClient hook.
#closes #24970
Multiple issues starting a new DM (#24955)
When the room object is searched for the first time, it does not exist on the front object yet (subscription), adding a fallback search for room list will guarantee to search the room details.
before: https://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4
after: https://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4
2022-03-24 Β· 1 π Β· 1 π Β· 3 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
2022-03-21 Β· 2 π Β· 8 π Β· 1 π Β· 5 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
Standarize queue behavior for managers and agents when subscribing (#24837)
UX - VoIP Call Component (#24748)
VOIP: SidebarFooter component (#24838)
Improve the CallProvider code;
Adjust the text case of the VoIP component on the FooterSidebar;
Fix the bad behavior with the changes in queue's name.
Broken build caused by PRs modifying same file differently (#24863)
Custom script not being fired (#24901)
Disable voip button when call is in progress (#24864)
Show call icon only when user has extension associated (#24752)
Show only enabled departments on forward (#24829)
VoIP button gets disabled whenever user status changes (#24789 by @amolghode1981)
Wrong param usage on queue summary call (#24799)
2022-03-12 Β· 1 π Β· 7 π Β· 1 π Β· 8 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
"livechat/webrtc.call" endpoint not working (#24804)
PaginatedSelectFiltered
not handling changes (#24732)
Broken multiple OAuth integrations (#24705)
Critical: Incorrect visitor getting assigned to a chat from apps (#24805)
Opening a new DM from user card (#24623)
A race condition on useRoomIcon
-- delayed merge of
rooms and subscriptions -- was causing a UI crash whenever someone tried
to open a DM from the user card component.
Revert AutoComplete (#24812)
VoipExtensionsPage component call (#24792)
2022-03-09 Β· 13 π Β· 2 π Β· 12 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
Apple login script being loaded even when Apple Login is disabled. (#24760)
Components for user search (#24677)
Duplicated 'name' log key (#24590)
Missing username on messages imported from Slack (#24674)
no id of room closer in livechat-close message (#24683)
Reload roomslist after successful deletion of a room from admin panel. (#23795 by @Aman-Maheshwari)
Removed the logic for calling the rooms.adminRooms
endPoint from the RoomsTable
Component and moved it to its
parent component RoomsPage
. This allows to call the
endPoint rooms.adminRooms
from
EditRoomContextBar
Component which is also has
RoomPage
Component as its parent.
Also added a succes toast message after the successful deletion of room.
Room's message count not being incremented on import (#24696)
Show only available agents on extension association modal (#24680)
System messages are sent when adding or removing a group from a team (#24743)
Typo and placeholder on wrap up call modal (#24737)
Typo in wrap-up term (#24661)
VoIP Enable/Disable setting on CallContext/CallProvider Notifications (#24607)
Voip Stream Reinitialization Error (#24657 by @amolghode1981)
Chore: Update Livechat (#24754)
Release 4.5.1 (#24782 by @Aman-Maheshwari & @amolghode1981 & @cuonghuunguyen)
2022-02-28 Β· 3 π Β· 15 π Β· 19 π Β· 72 π Β· 30 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.31.0
E2E password generator (#24114 by @eduardofcabrera & @ostjen)
Marketplace sort filter (#24567 by @ujorgeleite)
Implemented a sort filter for the marketplace screen. This component
sorts the marketplace apps list in 4 ways, alphabetical order(A-Z),
inverse alphabetical order(Z-A), most recently updated(MRU), and least
recent updated(LRU). Besides that, I've generalized some components and
types to increase code reusability, renamed some helpers as well as
deleted some useless ones, and inserted the necessary new translations
on the English i18n dictionary. Demo gif:
VoIP Support for Omnichannel (#23102 by @amolghode1981)
Created VoipService to manage VoIP connections and PBX connection
Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)
Created Basic interfaces to support new services and new model
Created Endpoints for management interfaces
Implemented asterisk connector on VoIP service
Created UI components to show calls incoming and to allow answering/rejecting calls
Added new settings to control call server/management server connection values
Added endpoints to associate Omnichannel Agents with PBX Extensions
Added support for event listening on server side, to get metadata about calls being received/ongoing
Created new pages to update settings & to see user-extension association
Created new page to see ongoing calls (and past calls)
Added support for remote hangup/hold on calls
Implemented call metrics calculation (hold time, waiting time, talk time)
Show a notificaiton when call is received
ENTERPRISE: Improve how micro services are loaded (#24388)
Add return button in chats opened from the list of current chats (#24458 by @LucasFASouza)
The new return button for Omnichannel chats came out with release 3.15 but the feature was only available for chats that were opened from Omnichannel Contact Center. Now, the same UI/UX is supported for chats opened from Current Chats list.
The chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.
Add tooltips on action buttons of Canned Response message composer (#24483 by @LucasFASouza)
The tooltips were missing on the action buttons of CR message composer.
Users can now feel more encouraged to use these actions knowing what they are supposed to do.
Add user to room on "Click to Join!" button press (#24041 by @ostjen)
Add user to room on "Click to Join!" button press;
Display the "Join" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).
Added a new "All" tab which shows all integrations in Integrations (#24109 by @aswinidev)
ChatBox Text to File Description (#24451 by @eduardofcabrera & @ostjen)
The text content from chatbox goes to the file description when drag and drop a file.
Close modal on esc and outside click (#24275)
This is a QUICK change in order to close modals pressing Esc button and clicking outside of it intentionally.
CloudLoginModal visual consistency (#24334)
Convert tag edit with department data to tsx (#24369 by @LucasFASouza)
Descriptive tooltip for Encrypted Key on Room Header (#24121)
OTR system messages (#24382)
OTR system messages to indicate key refresh and joining chat to users.
Purchase Type Filter for marketplace apps and Categories filter anchor refactoring (#24454)
Implemented a filter by purchase type(free or paid) component for the apps screen of the marketplace. Besides that, new entries on the dictionary, fixed some parts of the App type (purchaseType was typed as unknown and price as string), and created some helpers to work alongside the filter. Will be refactoring the categories filter anchor and then will open this PR for reviews.
Demo gif:
Refactored the categories filter anchor from a plain fuselage select
to a select button with dynamic colors. Demo gif:
Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components (#24529)
This PR replaces a deprecated fuselage's component
AutoComplete
in favor of Select
and
MultiSelect
which fixes some of UX/UI issues in selecting
users
Skip encryption for slash commands in E2E rooms (#24475)
Currently Slash Commands don't work in an E2EE room, as we encrypt the message before slash command is detected by the server, So removed encryption for slash commands in e2e rooms.
Team system messages feedback (#24209 by @ostjen)
Delete some keys that aren't being used (eg: User_left_female).
Add new Teams' system messages:
added-user-to-team
: added @\user to
this Team;removed-user-from-team
: removed @\user
from this Team;user-converted-to-team
: converted
#\room to a Team;user-converted-to-channel
: converted
#\room to a Channel;user-removed-room-from-team
: removed
@\user from this Team;user-deleted-room-from-team
: deleted
#\room from this Team;user-added-room-to-team
: deleted
#\room to this Team;Add the corresponding options to hide each new system message and
the missing ujt
and ult
hide options.
2FA via email when logging in using OAuth (#24572)
Add ?close to OAuth callback url (#24381)
GDPR action to forget visitor data on request (#24441)
Implement client errors on ddp-streamer (#24310)
Inconsistent validation of user's access to rooms (#24037 by @ostjen)
Issues on selecting users when importing CSV (#24253)
Fix users selecting by fixing their _id
Add condition to disable 'Start importing' button if
usersCount
, channelsCount
and
messageCount
equals 0, or if messageCount is alone
Remove disabled={usersCount === 0}
on user
Tab
OAuth mismatch redirect_uri error (#24450)
Oembed request not respecting payload limit (#24418)
Omnichannel managers can't join chats in progress (#24553)
Outgoing webhook without scripts not saving messages (#24401)
Prevent Apps Bridge to remove visitor status from room (#24305)
Read receipts showing first messages of the room as read even if not read by everyone (#24508)
respect Accounts_Registration_Users_Default_Roles
setting (#24173)
user
role being added as default regardless of the
Accounts_Registration_Users_Default_Roles
setting.Room context tabs not working in Omnichannel current chats page (#24559)
Skip admin info in setup wizard for servers with admin registered (#24485)
Skip cloud steps for registered servers on setup wizard (#24407)
Startup errors creating indexes (#24409)
Fix bio
and prid
startup index creation
errors.
typo on register server tooltip of setup wizard (#24466)
Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services (#24556 by @dependabot[bot])
Bump adm-zip from 0.4.14 to 0.5.9 (#24538 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services (#23963 by @dependabot[bot])
Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services (#24517 by @dependabot[bot])
Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services (#24472 by @dependabot[bot])
Bump date-fns from 2.24.0 to 2.28.0 (#24058 by @dependabot[bot])
Bump express from 4.17.1 to 4.17.2 in /ee/server/services (#24469 by @dependabot[bot])
Bump express from 4.17.2 to 4.17.3 in /ee/server/services (#24522 by @dependabot[bot])
Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services (#24491 by @dependabot[bot])
Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services (#23961 by @dependabot[bot])
Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services (#24537 by @dependabot[bot])
Bump simple-get from 4.0.0 to 4.0.1 (#24341 by @dependabot[bot])
Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services (#23512 by @dependabot[bot])
Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services (#24498 by @dependabot[bot])
Bump url-parse from 1.5.3 to 1.5.7 (#24528 by @dependabot[bot])
Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services (#24509 by @dependabot[bot])
Chore: twoFactorRequired
signature (#24518)
Improved type checking for decorator
twoFactorRequired
.
Chore: Add description to global OTR setting (#24333 by @pedrogssouza)
Chore: Bump Fuselage packages (#24573)
It uses the last stable version of Fuselage packages.
Chore: bump fuselage version (#24453)
Chore: Convert JS files to Typescript (#24410)
This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.
Chore: Convert to typescript the me slashCommands files (#24321 by @eduardofcabrera & @ostjen)
Convert to typescript the me slashCommands files
Chore: Convert to typescript the mute and unmute slash commands files (#24325 by @eduardofcabrera & @ostjen)
Convert to typescript the mute and unmute slash commands files
Chore: Convert to typescript the slash commands create files (#24306 by @eduardofcabrera & @ostjen)
Convert Slash Commands create files to typescript.
Chore: Convert to typescript the slash commands invite files (#24311 by @eduardofcabrera & @ostjen)
Convert to typescript the slash commands invite files
Chore: Convert to typescript the unarchive slash commands files (#24331 by @eduardofcabrera & @ostjen)
Convert to typescript the unarchive slash commands files
Chore: Delete unused file (NewAdminInfoPage.js) (#24196)
Just removing a duplicated/unused file.
Chore: Improve PR title validation regex (#24467)
Chore: Js to ts slash commands archive (#24304 by @eduardofcabrera)
Convert Slash Commands archive files to typescript
Chore: Remove storybook build job from CI (#24530)
Chore: roomTypes: Stop mixing client and server code together (#24536)
Chore: Run tests using microservices deployment on CI (#24513)
Chore: Set Docker image tag to latest only when really latest (#24366)
Chore: Unify ILivechatAgent with ILivechatAgentRecord (#24406)
Chore: Update Apps-Engine (#24568)
Chore: Update Apps-Engine (#24651)
Chore: Update fuselage deps to match monolith versions (#24501)
Chore: Update Meteor to 2.5.6 (#24461)
Chore: Update ws package (#24477)
Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services (#24435 by @dependabot[bot])
Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services (#24299 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-01-31Z (#24357)
i18n: Language update from LingoHub π€ on 2022-02-07Z (#24429)
i18n: Language update from LingoHub π€ on 2022-02-14Z (#24493)
i18n: Language update from LingoHub π€ on 2022-02-21Z (#24558)
Merge master into develop & Set version to 4.5.0-develop (#24363)
Regression: Add support to namespace within micro services (#24581)
Regression: Admin Sidebar colors inverted. (#24609)
Regression: Bunch of settings fixes for VoIP (#24594)
Regression: Do not show toast on incoming voip calls (#24619)
Regression: Encode registration info as JWT when signing key is provided (#24626)
Regression: Error setting user avatars and mentioning rooms on Slack Import (#24585)
Fix Mentioned room not found
error when importing
rooms from Slack;
Fix Forbidden
error when setting avatars for users
imported from Slack (on user import/creation);
Fix incorrect message count on imported rooms;
Fix missing username on messages imported from Slack;
Regression: Error when trying to load name of dm rooms for avatars and notifications (#24583)
Regression: Extension List panel UI not aligned with designs (#24645)
Regression: Fix double value on holdTime and empty msg on last message (#24630)
Regression: Fix in-correct room status shown to agents (#24592)
Regression: Fix incoming voip call ringtone is not ringing (#24616)
Regression: Fix room not getting created due to null visitor status (#24562)
Regression: Fix time fields and wrap up in Voip Room Contexual bar (#24625)
Regression: Fix time format on Voip system messages (#24603)
Regression: Fix translation for call started message (#24615)
Regression: Fix wrong tab name for VoIP settings (#24647)
Regression: Fixes in Voice Contextual Bar and Directory (#24596)
Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart (#24624 by @amolghode1981)
Regression: Mark all rooms as read modal closing instantly. (#24610)
Regression: No audio when call comes from Skype/IP phone (#24602 by @amolghode1981)
The audio was not rendered because of re-rendering of react element based on queueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted because after accepting call, queueCounter changes or a room gets created. The audio element gets recreated. But VoIP user probably holds the old one. The behaviour is not predictable when such case happens. If everything gets cleanly setup, even if the audio element goes headless, it still continues to play the remote audio. But in other cases, it is unreferenced the one on dom has its srcObject as null. This causes no audio.
This fix provides a way to re-initialise the rendering elements in VoIP user and calls this function on useEffect() if the re-render has happen.
Regression: Prevent button from losing state when rerendering (#24648)
Regression: Prevent connect to asterisk when VoIP is disabled (#24601)
Regression: Queue counter aggregator for incoming/hanged calls (#24635 by @amolghode1981)
Regression: Refresh server connection when MI server settings change (#24649)
Regression: Server crashing if Voip credentials are invalid (#24646)
Regression: VoIP service button displayed when VoIP is disabled (#24598)
2022-05-30 Β· 12 π Β· 26 π Β· 79 π Β· 213 π Β· 54 π©βπ»π¨βπ»
3.6, 4.0, 4.2, 4.4, 5.0
Add expire index to integration history (#25087)
Alpha Matrix Federation (#23688)
Experimental support for Matrix Federation with a Bridge
https://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4
E2E password generator (#24114 by @eduardofcabrera & @ostjen)
Engagement Statistics (#24989)
Engagement Statistics (#24777 by @eduardofcabrera & @ostjen)
Expand Apps Engine's environment variable allowed list (#23870 by @cuonghuunguyen)
Marketplace sort filter (#24567 by @ujorgeleite)
Implemented a sort filter for the marketplace screen. This component
sorts the marketplace apps list in 4 ways, alphabetical order(A-Z),
inverse alphabetical order(Z-A), most recently updated(MRU), and least
recent updated(LRU). Besides that, I've generalized some components and
types to increase code reusability, renamed some helpers as well as
deleted some useless ones, and inserted the necessary new translations
on the English i18n dictionary. Demo gif:
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).
In case you encounter any
problems, or want to compare, temporarily it is possible to use the old
version
Telemetry Events (#24781 by @eduardofcabrera & @ostjen)
Upgrade Tab (#24835)
Use setting to determine if initial general channel is needed (#25441 by @felipe-menelau)
VoIP Support for Omnichannel (#23102 by @amolghode1981)
Created VoipService to manage VoIP connections and PBX connection
Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)
Created Basic interfaces to support new services and new model
Created Endpoints for management interfaces
Implemented asterisk connector on VoIP service
Created UI components to show calls incoming and to allow answering/rejecting calls
Added new settings to control call server/management server connection values
Added endpoints to associate Omnichannel Agents with PBX Extensions
Added support for event listening on server side, to get metadata about calls being received/ongoing
Created new pages to update settings & to see user-extension association
Created new page to see ongoing calls (and past calls)
Added support for remote hangup/hold on calls
Implemented call metrics calculation (hold time, waiting time, talk time)
Show a notificaiton when call is received
ENTERPRISE: Don't start presence monitor when running micro services (#24739)
ENTERPRISE: Improve how micro services are loaded (#24388)
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.
Add return button in chats opened from the list of current chats (#24458 by @LucasFASouza)
The new return button for Omnichannel chats came out with release 3.15 but the feature was only available for chats that were opened from Omnichannel Contact Center. Now, the same UI/UX is supported for chats opened from Current Chats list.
The chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.
Add tooltip to sidebar room menu (#24405 by @Himanshu664)
Add tooltips on action buttons of Canned Response message composer (#24483 by @LucasFASouza)
The tooltips were missing on the action buttons of CR message composer.
Users can now feel more encouraged to use these actions knowing what they are supposed to do.
Add user to room on "Click to Join!" button press (#24041 by @ostjen)
Add user to room on "Click to Join!" button press;
Display the "Join" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).
Added a new "All" tab which shows all integrations in Integrations (#24109 by @aswinidev)
Added MaxNickNameLength and MaxBioLength constants (#25231 by @aakash-gitdev)
Added tooltip options for message menu (#24431 by @Himanshu664)
Adding new statistics related to voip and omnichannel (#24887)
Total of Canned response messages sent
Total of tags used
Last-Chatted Agent Preferred (enabled/disabled)
Assign new conversations to the contact manager (enabled/disabled)
How to handle Visitor Abandonment setting
Amount of chats placed on hold
VoIP Enabled
Amount of VoIP Calls
Amount of VoIP Extensions connected
Amount of Calls placed on hold (1x per call)
Fixed Session Aggregation type definitions
ChatBox Text to File Description (#24451 by @eduardofcabrera & @ostjen)
The text content from chatbox goes to the file description when drag and drop a file.
Close modal on esc and outside click (#24275)
This is a QUICK change in order to close modals pressing Esc button and clicking outside of it intentionally.
CloudLoginModal visual consistency (#24334)
Convert tag edit with department data to tsx (#24369 by @LucasFASouza)
Descriptive tooltip for Encrypted Key on Room Header (#24121)
Improve active/hover colors in account sidebar (#25024 by @Himanshu664)
New omnichannel statistics and async statistics processing. (#24749)
OTR system messages (#24382)
OTR system messages to indicate key refresh and joining chat to users.
Performance for some Omnichannel features (#25217)
Purchase Type Filter for marketplace apps and Categories filter anchor refactoring (#24454)
Implemented a filter by purchase type(free or paid) component for the apps screen of the marketplace. Besides that, new entries on the dictionary, fixed some parts of the App type (purchaseType was typed as unknown and price as string), and created some helpers to work alongside the filter. Will be refactoring the categories filter anchor and then will open this PR for reviews.
Demo gif:
Refactored the categories filter anchor from a plain fuselage select
to a select button with dynamic colors. Demo gif:
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.
Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components (#24529)
This PR replaces a deprecated fuselage's component
AutoComplete
in favor of Select
and
MultiSelect
which fixes some of UX/UI issues in selecting
users
Skip encryption for slash commands in E2E rooms (#24475)
Currently Slash Commands don't work in an E2EE room, as we encrypt the message before slash command is detected by the server, So removed encryption for slash commands in e2e rooms.
Team system messages feedback (#24209 by @ostjen)
Delete some keys that aren't being used (eg: User_left_female).
Add new Teams' system messages:
added-user-to-team
: added @\user to
this Team;removed-user-from-team
: removed @\user
from this Team;user-converted-to-team
: converted
#\room to a Team;user-converted-to-channel
: converted
#\room to a Channel;user-removed-room-from-team
: removed
@\user from this Team;user-deleted-room-from-team
: deleted
#\room from this Team;user-added-room-to-team
: deleted
#\room to this Team;Add the corresponding options to hide each new system message and
the missing ujt
and ult
hide options.
Updated links in readme (#24028 by @aswinidev)
"Match error" when converting a team to a channel (#24629)
ENTERPRISE: Auto reload feature of ddp-streamer micro service (#24793)
ENTERPRISE: DDP streamer not sending data to all clients (#24738)
ENTERPRISE: Notifications not being sent by ddp-streamer (#24831)
ENTERPRISE: Presence micro service logic (#24724)
2FA via email when logging in using OAuth (#24572)
Add ?close to OAuth callback url (#24381)
Add katex render to new message react template (#25239)
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)
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:
After:
API Error preventing adding an email to users without one (like bot/app users) (#24709)
Apple OAuth (#24879)
auto-join team channels not honoring user preferences (#24779 by @ostjen)
Client disconnection on network loss (#25170 by @amolghode1981)
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.
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.
Second reason is when computer goes in sleep mode.
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)
Database indexes not being created (#25101)
Date Message Export Filter Fix (#24542 by @eduardofcabrera)
Fix message export filter to get all messages between "from date" and "to date", including "to date".
DDP Rate Limiter Translation key (#24898)
Before:
Now:
DDP streamer errors (#24710)
Duplicated "jump to message" button on starred messages (#24867 by @Himanshu664)
Dynamic load matrix is enabled and handle failure (#25495)
End call button disappearing when on-hold (#24936)
Full error message is visible (#24856 by @Himanshu664)
GDPR action to forget visitor data on request (#24441)
Handle Other Formats inside Upload Avatar (#24226)
After resolving issue #24213 :
Ignore customClass on messages (#24845)
Implement client errors on ddp-streamer (#24310)
Inconsistent validation of user's access to rooms (#24037 by @ostjen)
Incorrect websocket url in livechat widget (#25261)
Initial User not added to default channel (#25544)
If injecting initial user. The user wasnβt added to the default General channel
Issues on selecting users when importing CSV (#24253)
Fix users selecting by fixing their _id
Add condition to disable 'Start importing' button if
usersCount
, channelsCount
and
messageCount
equals 0, or if messageCount is alone
Remove disabled={usersCount === 0}
on user
Tab
LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off (#24320)
Use the FileUpload_RotateImages
setting
(Administration > File Upload > Rotate images on
upload) to control whether avatars should be rotated
automatically based on their data (XEIF);
Display the avatar image preview (orientation) according to the
FileUpload_RotateImages
setting.
LDAP sync removing users from channels when multiple groups are mapped to it (#25434)
Message menu action not working on legacy messages. (#25148)
Message preview not available for queued chats (#25092)
Missing dependency on useEffect at CallProvider (#24882)
Nextcloud OAuth for incomplete token URL (#24476)
OAuth mismatch redirect_uri error (#24450)
Oembed request not respecting payload limit (#24418)
Omnichannel managers can't join chats in progress (#24553)
One of the triggers was not working correctly (#25409)
Outgoing webhook without scripts not saving messages (#24401)
Prevent Apps Bridge to remove visitor status from room (#24305)
Prevent call button toggle when user is on call (#24758)
Prevent sequential messages edited icon to hide on hover (#24984)
Prune Message issue (#24424)
Push privacy config to not show username not being respected (#24606)
Read receipts show with color gray when not read yet (#25244)
Read receipts showing before message read (#25216)
Read receipts showing first messages of the room as read even if not read by everyone (#24508)
Register with Secret URL (#24921)
Replace encrypted text to Encrypted Message Placeholder (#24166)
Reply button behavior on broadcast channel (#25175)
Hide reply button for the user that sent the message
respect Accounts_Registration_Users_Default_Roles
setting (#24173)
user
role being added as default regardless of the
Accounts_Registration_Users_Default_Roles
setting.Room archived/unarchived system messages aren't sent when editing room settings (#24897)
Send the "Room archived" and "Room unarchived" system messages when editing room settings (and not only when rooms are archived/unarchived with the slash-command);
Fix the "Hide System Messages" option for the "Room archived" and "Room unarchived" system messages;
Room context tabs not working in Omnichannel current chats page (#24559)
room creation fails if app framework is disabled (#25200)
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
Several issues related to custom roles (#24052)
Throw an error when trying to delete a role (User or Subscription role) that are still being used;
Fix "Invalid Role" error for custom roles in Role Editing sidebar;
Fix "Users in Role" screen for custom roles.
Showing Blank Message Inside Report (#25007)
Skip admin info in setup wizard for servers with admin registered (#24485)
Skip cloud steps for registered servers on setup wizard (#24407)
Spotlight results showing usernames instead of real names (#25471)
Startup errors creating indexes (#24409)
Fix bio
and prid
startup index creation
errors.
Toolbox hiding under contextual bar (#25237)
typo on register server tooltip of setup wizard (#24466)
UI/UX issues on Live Chat widget (#25407)
Use correct room property for call ended at (#24932)
User abandonment setting was not working doe to failing event hook (#25520)
A setting watcher and the query for grabbing abandoned chats were broken, now they're not.
UserCard sanitization (#25089)
Rewrites the component to TS
Fixes some visual issues
Video and Audio not skipping forward (#19866)
VoIP disabled/enabled sequence puts voip agent in error state (#25230 by @amolghode1981)
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:
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.
From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.
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.
Wrong business hour behavior (#24896)
Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services (#25021 by @dependabot[bot])
Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services (#25019 by @dependabot[bot])
Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services (#25018 by @dependabot[bot])
Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services (#25020 by @dependabot[bot])
Bump @types/clipboard from 2.0.1 to 2.0.7 (#24832 by @dependabot[bot])
Bump @types/mailparser from 3.0.2 to 3.4.0 (#24833 by @dependabot[bot])
Bump @types/nodemailer from 6.4.2 to 6.4.4 (#24822 by @dependabot[bot])
Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services (#24556 by @dependabot[bot])
Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services (#24666 by @dependabot[bot])
Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services (#24820 by @dependabot[bot])
Bump actions/checkout from 2 to 3 (#24668 by @dependabot[bot])
Bump actions/setup-node from 2 to 3 (#24642 by @dependabot[bot])
Bump adm-zip from 0.4.14 to 0.5.9 (#24538 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services (#23963 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.2 (#24821 by @dependabot[bot])
Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services (#24517 by @dependabot[bot])
Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services (#25042 by @dependabot[bot])
Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services (#24472 by @dependabot[bot])
Bump date-fns from 2.24.0 to 2.28.0 (#24058 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 express from 4.17.1 to 4.17.2 in /ee/server/services (#24469 by @dependabot[bot])
Bump express from 4.17.2 to 4.17.3 in /ee/server/services (#24522 by @dependabot[bot])
Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services (#24491 by @dependabot[bot])
Bump is-svg from 4.3.1 to 4.3.2 (#24801 by @dependabot[bot])
Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services (#23961 by @dependabot[bot])
Bump jschardet from 1.6.0 to 3.0.0 (#23121 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 pino from 7.8.0 to 7.8.1 in /ee/server/services (#24783 by @dependabot[bot])
Bump pino from 7.8.1 to 7.9.1 in /ee/server/services (#24869 by @dependabot[bot])
Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services (#24689 by @dependabot[bot])
Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services (#24698 by @dependabot[bot])
Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services (#24870 by @dependabot[bot])
Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services (#24537 by @dependabot[bot])
Bump prometheus-gc-stats from 0.6.2 to 0.6.3 (#24803 by @dependabot[bot])
Bump simple-get from 4.0.0 to 4.0.1 (#24341 by @dependabot[bot])
Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services (#23512 by @dependabot[bot])
Bump template-file from 6.0.0 to 6.0.1 (#25002 by @dependabot[bot])
Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services (#24667 by @dependabot[bot])
Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services (#24716 by @dependabot[bot])
Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services (#24498 by @dependabot[bot])
Bump url-parse from 1.5.3 to 1.5.7 (#24528 by @dependabot[bot])
Bump url-parse from 1.5.7 to 1.5.10 (#24640 by @dependabot[bot])
Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services (#24509 by @dependabot[bot])
Chore: twoFactorRequired
signature (#24518)
Improved type checking for decorator
twoFactorRequired
.
Chore: Add description to global OTR setting (#24333 by @pedrogssouza)
Chore: Add E2E tests for livechat/room.close (#24729 by @Muramatsu2602)
Chore: Add E2E tests for livechat/visitor (#24764 by @Muramatsu2602)
Create a new test suite file under tests/end-to-end/api/livechat
Create tests for the following endpoints:
Chore: Add error boundary to message component (#25223)
Not crash the whole application if something goes wrong in the MessageList component.
Chore: Add Livechat repo into Monorepo packages (#25312)
Chore: Add options to debug stdout and rate limiter (#25336)
Chore: Add root package.json to houston files (#25286)
See title
Chore: add some missing REST definitions (#24925 by @gerzonc)
On the mobile
client, we made an effort to collect more REST API
definitions that are missing on the server side during our migration to
TypeScript. Since we're both migrating to TypeScript, we thought it
would be a good idea to share those so you guys can benefit from our
initiative.
Chore: Add yarn plugin to check node and yarn version (#25224)
Chore: added Server Instances endpoint types (#24507)
Created typing for endpoint definitions on
instances.ts
.
Chore: added settings endpoint types (#24506)
Created typing for endpoint definitions on
settings.ts
.
Chore: APIClass types (#24747)
This pull request creates a new restivus
module (.d.ts)
for the api.js
file.
Chore: Bump fuselage (#25371)
Chore: Bump Fuselage packages (#25259)
Chore: Bump Fuselage packages (#25015)
It uses the last stable version of Fuselage packages.
Chore: Bump Fuselage packages (#24573)
It uses the last stable version of Fuselage packages.
Chore: bump fuselage version (#24453)
Chore: Cancel running jobs if PR is updated (#24708)
Chore: Convert admin custom sound to tsx (#25128)
Chore: Convert JS files to Typescript (#24410)
This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.
Chore: Convert LivechatAgentActivity to raw model and TS (#25123)
Chore: Convert Mailer to TS (#25121)
Chore: Convert NotificationStatus to TS (#25125)
Chore: Convert server functions from javascript to typescript (#24384)
This pull request will be used to rewrite some functions on the Chat Engine to Typescript, in order to increase security and specify variable types on the code.
Chore: Convert to typescript the me slashCommands files (#24321 by @eduardofcabrera & @ostjen)
Convert to typescript the me slashCommands files
Chore: Convert to typescript the mute and unmute slash commands files (#24325 by @eduardofcabrera & @ostjen)
Convert to typescript the mute and unmute slash commands files
Chore: Convert to typescript the slash commands create files (#24306 by @eduardofcabrera & @ostjen)
Convert Slash Commands create files to typescript.
Chore: Convert to typescript the slash commands invite files (#24311 by @eduardofcabrera & @ostjen)
Convert to typescript the slash commands invite files
Chore: Convert to typescript the unarchive slash commands files (#24331 by @eduardofcabrera & @ostjen)
Convert to typescript the unarchive slash commands files
Chore: converted more hooks to typescript (#24628)
Converted some functions on client/hooks/
from
JavaScript to Typescript.
Chore: Create README.md for Rest Typings (#25335)
Chore: Delete unused file (NewAdminInfoPage.js) (#24196)
Just removing a duplicated/unused file.
Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218 by @souzaramon)
data and test-failure should be ignored
ensure scripts use cross-env
Chore: Fix Cypress tests (#24544)
Chore: Fix grammatical errors in Code of Conduct (#24759 by @aadishJ01)
Chore: fix grammatical errors in Features (#24771 by @aadishJ01)
Chore: Fix return type warnings (#25275)
Chore: Get Settings Statistics (#24397)
Chore: Improve logger to allow log of unknown
values
(#24726)
Chore: Improve PR title validation regex (#24467)
Chore: Improvements on role syncing (ldap, oauth and saml) (#23824)
Chore: Js to ts slash commands archive (#24304 by @eduardofcabrera)
Convert Slash Commands archive files to typescript
Chore: Micro services fixes and cleanup (#24753)
Chore: Migrate oauth2server to typescript (#25126)
Chore: Minor dependency updates (#25269)
Chore: Missing keys in APIsDisplay (#24464)
Chore: Monorepo (#25074)
Chore: move definitions to packages (#25085)
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 old scripts (#24911)
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 storybook build job from CI (#24530)
Chore: Remove unused Drone CI files (#25124)
Chore: roomTypes: Stop mixing client and server code together (#24536)
Chore: Run tests using microservices deployment on CI (#24513)
Chore: Set Docker image tag to latest only when really latest (#24366)
Chore: Skip local services changes when shutting down duplicated services (#24810)
Chore: Storybook mocking and examples improved (#24969)
Stories from ee/
included;
Differentiate root story kinds;
Mocking of ServerContext
via Storybook
parameters.
Chore: Sync with master (#25284)
Chore: Template to generate packages (#25174)
npx hygen package new test
Chore: Tests with Playwright (task: All works) (#25122 by @weslley543)
Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)
Chore: TS conversion folder client (#25031)
Chore: TS migration SortList (#25167)
Chore: Unify ILivechatAgent with ILivechatAgentRecord (#24406)
Chore: Update Apps-Engine (#24651)
Chore: Update Apps-Engine (#24568)
Chore: Update fuselage deps to match monolith versions (#24501)
Chore: Update Livechat to the last version (#25257)
Chore: Update Livechat version (#25130)
Chore: Update Meteor to 2.5.6 (#24461)
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 ws package (#24477)
Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1 (#24574 by @dependabot[bot])
Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services (#24435 by @dependabot[bot])
Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services (#24299 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-01-31Z (#24357)
i18n: Language update from LingoHub π€ on 2022-02-07Z (#24429)
i18n: Language update from LingoHub π€ on 2022-02-14Z (#24493)
i18n: Language update from LingoHub π€ on 2022-02-21Z (#24558)
i18n: Language update from LingoHub π€ on 2022-02-28Z (#24644)
i18n: Language update from LingoHub π€ on 2022-03-07Z (#24717)
i18n: Language update from LingoHub π€ on 2022-03-14Z (#24823)
i18n: Language update from LingoHub π€ on 2022-03-21Z (#24895)
i18n: Language update from LingoHub π€ on 2022-03-28Z (#24971)
i18n: Language update from LingoHub π€ on 2022-04-04Z (#25043)
Merge master into develop & Set version to 4.5.0-develop (#24363)
Merge master into develop & Set version to 4.6.0-develop (#24653)
Merge master into develop & Set version to 4.7.0-develop (#25028)
Regression: Add isPending
status to message (#25299)
Regression: Add createdOTR index (#25017)
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: Add support to namespace within micro services (#24581)
Regression: Admin Sidebar colors inverted. (#24609)
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: bump onboarding-ui version (#25320)
Bump to 'next' the onboarding-ui package from fuselage.
Update from 'companyEmail' to 'email' adminData usage types
Regression: Bunch of settings fixes for VoIP (#24594)
Regression: Call doesn't stop ringing after agent unregistration (#24908)
Regression: Change preference to be default legacy messages (#25255)
Regression: CI playwright (#25168)
Regression: Custom roles displaying ID instead of name on some admin screens (#24999)
Regression: Do not show toast on incoming voip calls (#24619)
Regression: Encode registration info as JWT when signing key is provided (#24626)
Regression: Error is raised when there's no Asterisk queue available yet (#24980 by @amolghode1981)
Regression: Error setting user avatars and mentioning rooms on Slack Import (#24585)
Fix Mentioned room not found
error when importing
rooms from Slack;
Fix Forbidden
error when setting avatars for users
imported from Slack (on user import/creation);
Fix incorrect message count on imported rooms;
Fix missing username on messages imported from Slack;
Regression: Error when trying to load name of dm rooms for avatars and notifications (#24583)
Regression: eslint not running on packages (#25305)
Regression: Extension List panel UI not aligned with designs (#24645)
Regression: Fix account service login expiration (#24920)
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 double value on holdTime and empty msg on last message (#24630)
Regression: Fix English i18n react text (#25368)
Incorrect text in reaction tooltip has been fixed
Regression: Fix federation Matrix bridge startup (#25273)
Regression: Fix in-correct room status shown to agents (#24592)
Regression: Fix incoming voip call ringtone is not ringing (#24616)
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 room not getting created due to null visitor status (#24562)
Regression: Fix services Docker build on CI (#25181)
Regression: Fix size of custom emoji and render emoji on thread message preview (#25314)
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: Fix time fields and wrap up in Voip Room Contexual bar (#24625)
Regression: Fix time format on Voip system messages (#24603)
Regression: Fix translation for call started message (#24615)
Regression: Fix unexpected errors breaking ddp-streamer (#24948)
Regression: Fix wrong tab name for VoIP settings (#24647)
Regression: Fixes in Voice Contextual Bar and Directory (#24596)
Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart (#24624 by @amolghode1981)
Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests (#24756)
Regression: Mark all rooms as read modal closing instantly. (#24610)
Regression: Messages in new message template Crashing. (#25327)
Regression: No audio when call comes from Skype/IP phone (#24602 by @amolghode1981)
The audio was not rendered because of re-rendering of react element based on queueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted because after accepting call, queueCounter changes or a room gets created. The audio element gets recreated. But VoIP user probably holds the old one. The behaviour is not predictable when such case happens. If everything gets cleanly setup, even if the audio element goes headless, it still continues to play the remote audio. But in other cases, it is unreferenced the one on dom has its srcObject as null. This causes no audio.
This fix provides a way to re-initialise the rendering elements in VoIP user and calls this function on useEffect() if the re-render has happen.
Regression: Prevent button from losing state when rerendering (#24648)
Regression: Prevent connect to asterisk when VoIP is disabled (#24601)
Regression: Queue counter aggregator for incoming/hanged calls (#24635 by @amolghode1981)
Regression: Refresh server connection when MI server settings change (#24649)
Regression: Register services right away (#24800)
Regression: Revert Bugsnag version (#25313)
Regression: Rocket.Chat Webapp not loading. (#25349)
Regression: Role Sync not always working (#24850)
Regression: Server crashing if Voip credentials are invalid (#24646)
Regression: Show username and real name on the message system (#25254)
Regression: Shows error if micro service cannot connect to Mongo (#25301)
Regression: Use exact Node version on micro services Docker images (#25287)
Regression: Validate empty fields for Message template (#25250)
Regression: VoIP service button displayed when VoIP is disabled (#24598)
Regression: yarn dev triggers build dependencies (#25208)
Release 4.5.0 (#24652 by @LucasFASouza & @aswinidev & @dependabot[bot] & @lingohub[bot] & @ostjen)
Release 4.5.1 (#24782 by @Aman-Maheshwari & @amolghode1981 & @cuonghuunguyen)
Release 4.5.2 (#24814)
Release 4.5.3 (#24884 by @amolghode1981)
Release 4.5.4 (#24938)
Release 4.5.5 (#24998)
Release 4.6.0 (#25027 by @amolghode1981 & @aswinidev & @dependabot[bot] & @eduardofcabrera & @lingohub[bot])
Release 4.6.1 (#25095)
Release 4.6.2 (#25191 by @sidmohanty11)
Release 4.6.3 (#25235)
Release 4.7.0 (#25390 by @Himanshu664 & @dependabot[bot] & @lingohub[bot])
Release 4.7.1 (#25510 by @felipe-menelau)
Release 4.7.2 (#25580)
2022-05-20 Β· 12 π Β· 26 π Β· 79 π Β· 213 π Β· 54 π©βπ»π¨βπ»
14.18.3
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
Add expire index to integration history (#25087)
Alpha Matrix Federation (#23688)
Experimental support for Matrix Federation with a Bridge
https://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4
E2E password generator (#24114 by @eduardofcabrera & @ostjen)
Engagement Statistics (#24989)
Engagement Statistics (#24777 by @eduardofcabrera & @ostjen)
Expand Apps Engine's environment variable allowed list (#23870 by @cuonghuunguyen)
Marketplace sort filter (#24567 by @ujorgeleite)
Implemented a sort filter for the marketplace screen. This component
sorts the marketplace apps list in 4 ways, alphabetical order(A-Z),
inverse alphabetical order(Z-A), most recently updated(MRU), and least
recent updated(LRU). Besides that, I've generalized some components and
types to increase code reusability, renamed some helpers as well as
deleted some useless ones, and inserted the necessary new translations
on the English i18n dictionary. Demo gif:
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).
In case you encounter any
problems, or want to compare, temporarily it is possible to use the old
version
Telemetry Events (#24781 by @eduardofcabrera & @ostjen)
Upgrade Tab (#24835)
Use setting to determine if initial general channel is needed (#25441 by @felipe-menelau)
VoIP Support for Omnichannel (#23102 by @amolghode1981)
Created VoipService to manage VoIP connections and PBX connection
Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)
Created Basic interfaces to support new services and new model
Created Endpoints for management interfaces
Implemented asterisk connector on VoIP service
Created UI components to show calls incoming and to allow answering/rejecting calls
Added new settings to control call server/management server connection values
Added endpoints to associate Omnichannel Agents with PBX Extensions
Added support for event listening on server side, to get metadata about calls being received/ongoing
Created new pages to update settings & to see user-extension association
Created new page to see ongoing calls (and past calls)
Added support for remote hangup/hold on calls
Implemented call metrics calculation (hold time, waiting time, talk time)
Show a notificaiton when call is received
ENTERPRISE: Don't start presence monitor when running micro services (#24739)
ENTERPRISE: Improve how micro services are loaded (#24388)
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.
Add return button in chats opened from the list of current chats (#24458 by @LucasFASouza)
The new return button for Omnichannel chats came out with release 3.15 but the feature was only available for chats that were opened from Omnichannel Contact Center. Now, the same UI/UX is supported for chats opened from Current Chats list.
The chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.
Add tooltip to sidebar room menu (#24405 by @Himanshu664)
Add tooltips on action buttons of Canned Response message composer (#24483 by @LucasFASouza)
The tooltips were missing on the action buttons of CR message composer.
Users can now feel more encouraged to use these actions knowing what they are supposed to do.
Add user to room on "Click to Join!" button press (#24041 by @ostjen)
Add user to room on "Click to Join!" button press;
Display the "Join" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).
Added a new "All" tab which shows all integrations in Integrations (#24109 by @aswinidev)
Added MaxNickNameLength and MaxBioLength constants (#25231 by @aakash-gitdev)
Added tooltip options for message menu (#24431 by @Himanshu664)
Adding new statistics related to voip and omnichannel (#24887)
Total of Canned response messages sent
Total of tags used
Last-Chatted Agent Preferred (enabled/disabled)
Assign new conversations to the contact manager (enabled/disabled)
How to handle Visitor Abandonment setting
Amount of chats placed on hold
VoIP Enabled
Amount of VoIP Calls
Amount of VoIP Extensions connected
Amount of Calls placed on hold (1x per call)
Fixed Session Aggregation type definitions
ChatBox Text to File Description (#24451 by @eduardofcabrera & @ostjen)
The text content from chatbox goes to the file description when drag and drop a file.
Close modal on esc and outside click (#24275)
This is a QUICK change in order to close modals pressing Esc button and clicking outside of it intentionally.
CloudLoginModal visual consistency (#24334)
Convert tag edit with department data to tsx (#24369 by @LucasFASouza)
Descriptive tooltip for Encrypted Key on Room Header (#24121)
Improve active/hover colors in account sidebar (#25024 by @Himanshu664)
New omnichannel statistics and async statistics processing. (#24749)
OTR system messages (#24382)
OTR system messages to indicate key refresh and joining chat to users.
Performance for some Omnichannel features (#25217)
Purchase Type Filter for marketplace apps and Categories filter anchor refactoring (#24454)
Implemented a filter by purchase type(free or paid) component for the apps screen of the marketplace. Besides that, new entries on the dictionary, fixed some parts of the App type (purchaseType was typed as unknown and price as string), and created some helpers to work alongside the filter. Will be refactoring the categories filter anchor and then will open this PR for reviews.
Demo gif:
Refactored the categories filter anchor from a plain fuselage select
to a select button with dynamic colors. Demo gif:
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.
Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components (#24529)
This PR replaces a deprecated fuselage's component
AutoComplete
in favor of Select
and
MultiSelect
which fixes some of UX/UI issues in selecting
users
Skip encryption for slash commands in E2E rooms (#24475)
Currently Slash Commands don't work in an E2EE room, as we encrypt the message before slash command is detected by the server, So removed encryption for slash commands in e2e rooms.
Team system messages feedback (#24209 by @ostjen)
Delete some keys that aren't being used (eg: User_left_female).
Add new Teams' system messages:
added-user-to-team
: added @\user to
this Team;removed-user-from-team
: removed @\user
from this Team;user-converted-to-team
: converted
#\room to a Team;user-converted-to-channel
: converted
#\room to a Channel;user-removed-room-from-team
: removed
@\user from this Team;user-deleted-room-from-team
: deleted
#\room from this Team;user-added-room-to-team
: deleted
#\room to this Team;Add the corresponding options to hide each new system message and
the missing ujt
and ult
hide options.
Updated links in readme (#24028 by @aswinidev)
"Match error" when converting a team to a channel (#24629)
ENTERPRISE: Auto reload feature of ddp-streamer micro service (#24793)
ENTERPRISE: DDP streamer not sending data to all clients (#24738)
ENTERPRISE: Notifications not being sent by ddp-streamer (#24831)
ENTERPRISE: Presence micro service logic (#24724)
2FA via email when logging in using OAuth (#24572)
Add ?close to OAuth callback url (#24381)
Add katex render to new message react template (#25239)
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)
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:
After:
API Error preventing adding an email to users without one (like bot/app users) (#24709)
Apple OAuth (#24879)
auto-join team channels not honoring user preferences (#24779 by @ostjen)
Client disconnection on network loss (#25170 by @amolghode1981)
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.
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.
Second reason is when computer goes in sleep mode.
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)
Database indexes not being created (#25101)
Date Message Export Filter Fix (#24542 by @eduardofcabrera)
Fix message export filter to get all messages between "from date" and "to date", including "to date".
DDP Rate Limiter Translation key (#24898)
Before:
Now:
DDP streamer errors (#24710)
Duplicated "jump to message" button on starred messages (#24867 by @Himanshu664)
Dynamic load matrix is enabled and handle failure (#25495)
End call button disappearing when on-hold (#24936)
Full error message is visible (#24856 by @Himanshu664)
GDPR action to forget visitor data on request (#24441)
Handle Other Formats inside Upload Avatar (#24226)
After resolving issue #24213 :
Ignore customClass on messages (#24845)
Implement client errors on ddp-streamer (#24310)
Inconsistent validation of user's access to rooms (#24037 by @ostjen)
Incorrect websocket url in livechat widget (#25261)
Initial User not added to default channel (#25544)
If injecting initial user. The user wasnβt added to the default General channel
Issues on selecting users when importing CSV (#24253)
Fix users selecting by fixing their _id
Add condition to disable 'Start importing' button if
usersCount
, channelsCount
and
messageCount
equals 0, or if messageCount is alone
Remove disabled={usersCount === 0}
on user
Tab
LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off (#24320)
Use the FileUpload_RotateImages
setting
(Administration > File Upload > Rotate images on
upload) to control whether avatars should be rotated
automatically based on their data (XEIF);
Display the avatar image preview (orientation) according to the
FileUpload_RotateImages
setting.
LDAP sync removing users from channels when multiple groups are mapped to it (#25434)
Message menu action not working on legacy messages. (#25148)
Message preview not available for queued chats (#25092)
Missing dependency on useEffect at CallProvider (#24882)
Nextcloud OAuth for incomplete token URL (#24476)
OAuth mismatch redirect_uri error (#24450)
Oembed request not respecting payload limit (#24418)
Omnichannel managers can't join chats in progress (#24553)
One of the triggers was not working correctly (#25409)
Outgoing webhook without scripts not saving messages (#24401)
Prevent Apps Bridge to remove visitor status from room (#24305)
Prevent call button toggle when user is on call (#24758)
Prevent sequential messages edited icon to hide on hover (#24984)
Prune Message issue (#24424)
Push privacy config to not show username not being respected (#24606)
Read receipts show with color gray when not read yet (#25244)
Read receipts showing before message read (#25216)
Read receipts showing first messages of the room as read even if not read by everyone (#24508)
Register with Secret URL (#24921)
Replace encrypted text to Encrypted Message Placeholder (#24166)
Reply button behavior on broadcast channel (#25175)
Hide reply button for the user that sent the message
respect Accounts_Registration_Users_Default_Roles
setting (#24173)
user
role being added as default regardless of the
Accounts_Registration_Users_Default_Roles
setting.Room archived/unarchived system messages aren't sent when editing room settings (#24897)
Send the "Room archived" and "Room unarchived" system messages when editing room settings (and not only when rooms are archived/unarchived with the slash-command);
Fix the "Hide System Messages" option for the "Room archived" and "Room unarchived" system messages;
Room context tabs not working in Omnichannel current chats page (#24559)
room creation fails if app framework is disabled (#25200)
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
Several issues related to custom roles (#24052)
Throw an error when trying to delete a role (User or Subscription role) that are still being used;
Fix "Invalid Role" error for custom roles in Role Editing sidebar;
Fix "Users in Role" screen for custom roles.
Showing Blank Message Inside Report (#25007)
Skip admin info in setup wizard for servers with admin registered (#24485)
Skip cloud steps for registered servers on setup wizard (#24407)
Spotlight results showing usernames instead of real names (#25471)
Startup errors creating indexes (#24409)
Fix bio
and prid
startup index creation
errors.
Toolbox hiding under contextual bar (#25237)
typo on register server tooltip of setup wizard (#24466)
UI/UX issues on Live Chat widget (#25407)
Use correct room property for call ended at (#24932)
User abandonment setting was not working doe to failing event hook (#25520)
A setting watcher and the query for grabbing abandoned chats were broken, now they're not.
UserCard sanitization (#25089)
Rewrites the component to TS
Fixes some visual issues
Video and Audio not skipping forward (#19866)
VoIP disabled/enabled sequence puts voip agent in error state (#25230 by @amolghode1981)
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:
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.
From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.
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.
Wrong business hour behavior (#24896)
Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services (#25021 by @dependabot[bot])
Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services (#25019 by @dependabot[bot])
Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services (#25018 by @dependabot[bot])
Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services (#25020 by @dependabot[bot])
Bump @types/clipboard from 2.0.1 to 2.0.7 (#24832 by @dependabot[bot])
Bump @types/mailparser from 3.0.2 to 3.4.0 (#24833 by @dependabot[bot])
Bump @types/nodemailer from 6.4.2 to 6.4.4 (#24822 by @dependabot[bot])
Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services (#24556 by @dependabot[bot])
Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services (#24666 by @dependabot[bot])
Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services (#24820 by @dependabot[bot])
Bump actions/checkout from 2 to 3 (#24668 by @dependabot[bot])
Bump actions/setup-node from 2 to 3 (#24642 by @dependabot[bot])
Bump adm-zip from 0.4.14 to 0.5.9 (#24538 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services (#23963 by @dependabot[bot])
Bump body-parser from 1.19.0 to 1.19.2 (#24821 by @dependabot[bot])
Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services (#24517 by @dependabot[bot])
Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services (#25042 by @dependabot[bot])
Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services (#24472 by @dependabot[bot])
Bump date-fns from 2.24.0 to 2.28.0 (#24058 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 express from 4.17.1 to 4.17.2 in /ee/server/services (#24469 by @dependabot[bot])
Bump express from 4.17.2 to 4.17.3 in /ee/server/services (#24522 by @dependabot[bot])
Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services (#24491 by @dependabot[bot])
Bump is-svg from 4.3.1 to 4.3.2 (#24801 by @dependabot[bot])
Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services (#23961 by @dependabot[bot])
Bump jschardet from 1.6.0 to 3.0.0 (#23121 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 pino from 7.8.0 to 7.8.1 in /ee/server/services (#24783 by @dependabot[bot])
Bump pino from 7.8.1 to 7.9.1 in /ee/server/services (#24869 by @dependabot[bot])
Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services (#24689 by @dependabot[bot])
Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services (#24698 by @dependabot[bot])
Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services (#24870 by @dependabot[bot])
Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services (#24537 by @dependabot[bot])
Bump prometheus-gc-stats from 0.6.2 to 0.6.3 (#24803 by @dependabot[bot])
Bump simple-get from 4.0.0 to 4.0.1 (#24341 by @dependabot[bot])
Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services (#23512 by @dependabot[bot])
Bump template-file from 6.0.0 to 6.0.1 (#25002 by @dependabot[bot])
Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services (#24667 by @dependabot[bot])
Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services (#24716 by @dependabot[bot])
Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services (#24498 by @dependabot[bot])
Bump url-parse from 1.5.3 to 1.5.7 (#24528 by @dependabot[bot])
Bump url-parse from 1.5.7 to 1.5.10 (#24640 by @dependabot[bot])
Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services (#24509 by @dependabot[bot])
Chore: twoFactorRequired
signature (#24518)
Improved type checking for decorator
twoFactorRequired
.
Chore: Add description to global OTR setting (#24333 by @pedrogssouza)
Chore: Add E2E tests for livechat/room.close (#24729 by @Muramatsu2602)
Chore: Add E2E tests for livechat/visitor (#24764 by @Muramatsu2602)
Create a new test suite file under tests/end-to-end/api/livechat
Create tests for the following endpoints:
Chore: Add error boundary to message component (#25223)
Not crash the whole application if something goes wrong in the MessageList component.
Chore: Add Livechat repo into Monorepo packages (#25312)
Chore: Add options to debug stdout and rate limiter (#25336)
Chore: Add root package.json to houston files (#25286)
See title
Chore: add some missing REST definitions (#24925 by @gerzonc)
On the mobile
client, we made an effort to collect more REST API
definitions that are missing on the server side during our migration to
TypeScript. Since we're both migrating to TypeScript, we thought it
would be a good idea to share those so you guys can benefit from our
initiative.
Chore: Add yarn plugin to check node and yarn version (#25224)
Chore: added Server Instances endpoint types (#24507)
Created typing for endpoint definitions on
instances.ts
.
Chore: added settings endpoint types (#24506)
Created typing for endpoint definitions on
settings.ts
.
Chore: APIClass types (#24747)
This pull request creates a new restivus
module (.d.ts)
for the api.js
file.
Chore: Bump fuselage (#25371)
Chore: Bump Fuselage packages (#25259)
Chore: Bump Fuselage packages (#25015)
It uses the last stable version of Fuselage packages.
Chore: Bump Fuselage packages (#24573)
It uses the last stable version of Fuselage packages.
Chore: bump fuselage version (#24453)
Chore: Cancel running jobs if PR is updated (#24708)
Chore: Convert admin custom sound to tsx (#25128)
Chore: Convert JS files to Typescript (#24410)
This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.
Chore: Convert LivechatAgentActivity to raw model and TS (#25123)
Chore: Convert Mailer to TS (#25121)
Chore: Convert NotificationStatus to TS (#25125)
Chore: Convert server functions from javascript to typescript (#24384)
This pull request will be used to rewrite some functions on the Chat Engine to Typescript, in order to increase security and specify variable types on the code.
Chore: Convert to typescript the me slashCommands files (#24321 by @eduardofcabrera & @ostjen)
Convert to typescript the me slashCommands files
Chore: Convert to typescript the mute and unmute slash commands files (#24325 by @eduardofcabrera & @ostjen)
Convert to typescript the mute and unmute slash commands files
Chore: Convert to typescript the slash commands create files (#24306 by @eduardofcabrera & @ostjen)
Convert Slash Commands create files to typescript.
Chore: Convert to typescript the slash commands invite files (#24311 by @eduardofcabrera & @ostjen)
Convert to typescript the slash commands invite files
Chore: Convert to typescript the unarchive slash commands files (#24331 by @eduardofcabrera & @ostjen)
Convert to typescript the unarchive slash commands files
Chore: converted more hooks to typescript (#24628)
Converted some functions on client/hooks/
from
JavaScript to Typescript.
Chore: Create README.md for Rest Typings (#25335)
Chore: Delete unused file (NewAdminInfoPage.js) (#24196)
Just removing a duplicated/unused file.
Chore: ensure scripts use cross-env and ignore some dirs (ROC-54) (#25218 by @souzaramon)
data and test-failure should be ignored
ensure scripts use cross-env
Chore: Fix Cypress tests (#24544)
Chore: Fix grammatical errors in Code of Conduct (#24759 by @aadishJ01)
Chore: fix grammatical errors in Features (#24771 by @aadishJ01)
Chore: Fix return type warnings (#25275)
Chore: Get Settings Statistics (#24397)
Chore: Improve logger to allow log of unknown
values
(#24726)
Chore: Improve PR title validation regex (#24467)
Chore: Improvements on role syncing (ldap, oauth and saml) (#23824)
Chore: Js to ts slash commands archive (#24304 by @eduardofcabrera)
Convert Slash Commands archive files to typescript
Chore: Micro services fixes and cleanup (#24753)
Chore: Migrate oauth2server to typescript (#25126)
Chore: Minor dependency updates (#25269)
Chore: Missing keys in APIsDisplay (#24464)
Chore: Monorepo (#25074)
Chore: move definitions to packages (#25085)
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 old scripts (#24911)
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 storybook build job from CI (#24530)
Chore: Remove unused Drone CI files (#25124)
Chore: roomTypes: Stop mixing client and server code together (#24536)
Chore: Run tests using microservices deployment on CI (#24513)
Chore: Set Docker image tag to latest only when really latest (#24366)
Chore: Skip local services changes when shutting down duplicated services (#24810)
Chore: Storybook mocking and examples improved (#24969)
Stories from ee/
included;
Differentiate root story kinds;
Mocking of ServerContext
via Storybook
parameters.
Chore: Sync with master (#25284)
Chore: Template to generate packages (#25174)
npx hygen package new test
Chore: Tests with Playwright (task: All works) (#25122 by @weslley543)
Chore: Tests with Playwright (task: ROC-28, 09-channels) (#25196)
Chore: TS conversion folder client (#25031)
Chore: TS migration SortList (#25167)
Chore: Unify ILivechatAgent with ILivechatAgentRecord (#24406)
Chore: Update Apps-Engine (#24651)
Chore: Update Apps-Engine (#24568)
Chore: Update fuselage deps to match monolith versions (#24501)
Chore: Update Livechat to the last version (#25257)
Chore: Update Livechat version (#25130)
Chore: Update Meteor to 2.5.6 (#24461)
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 ws package (#24477)
Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1 (#24574 by @dependabot[bot])
Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services (#24435 by @dependabot[bot])
Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services (#24299 by @dependabot[bot])
i18n: Language update from LingoHub π€ on 2022-01-31Z (#24357)
i18n: Language update from LingoHub π€ on 2022-02-07Z (#24429)
i18n: Language update from LingoHub π€ on 2022-02-14Z (#24493)
i18n: Language update from LingoHub π€ on 2022-02-21Z (#24558)
i18n: Language update from LingoHub π€ on 2022-02-28Z (#24644)
i18n: Language update from LingoHub π€ on 2022-03-07Z (#24717)
i18n: Language update from LingoHub π€ on 2022-03-14Z (#24823)
i18n: Language update from LingoHub π€ on 2022-03-21Z (#24895)
i18n: Language update from LingoHub π€ on 2022-03-28Z (#24971)
i18n: Language update from LingoHub π€ on 2022-04-04Z (#25043)
Merge master into develop & Set version to 4.5.0-develop (#24363)
Merge master into develop & Set version to 4.6.0-develop (#24653)
Merge master into develop & Set version to 4.7.0-develop (#25028)
Regression: Add isPending
status to message (#25299)
Regression: Add createdOTR index (#25017)
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: Add support to namespace within micro services (#24581)
Regression: Admin Sidebar colors inverted. (#24609)
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: bump onboarding-ui version (#25320)
Bump to 'next' the onboarding-ui package from fuselage.
Update from 'companyEmail' to 'email' adminData usage types
Regression: Bunch of settings fixes for VoIP (#24594)
Regression: Call doesn't stop ringing after agent unregistration (#24908)
Regression: Change preference to be default legacy messages (#25255)
Regression: CI playwright (#25168)
Regression: Custom roles displaying ID instead of name on some admin screens (#24999)
Regression: Do not show toast on incoming voip calls (#24619)
Regression: Encode registration info as JWT when signing key is provided (#24626)
Regression: Error is raised when there's no Asterisk queue available yet (#24980 by @amolghode1981)
Regression: Error setting user avatars and mentioning rooms on Slack Import (#24585)
Fix Mentioned room not found
error when importing
rooms from Slack;
Fix Forbidden
error when setting avatars for users
imported from Slack (on user import/creation);
Fix incorrect message count on imported rooms;
Fix missing username on messages imported from Slack;
Regression: Error when trying to load name of dm rooms for avatars and notifications (#24583)
Regression: eslint not running on packages (#25305)
Regression: Extension List panel UI not aligned with designs (#24645)
Regression: Fix account service login expiration (#24920)
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 double value on holdTime and empty msg on last message (#24630)
Regression: Fix English i18n react text (#25368)
Incorrect text in reaction tooltip has been fixed
Regression: Fix federation Matrix bridge startup (#25273)
Regression: Fix in-correct room status shown to agents (#24592)
Regression: Fix incoming voip call ringtone is not ringing (#24616)
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 room not getting created due to null visitor status (#24562)
Regression: Fix services Docker build on CI (#25181)
Regression: Fix size of custom emoji and render emoji on thread message preview (#25314)
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: Fix time fields and wrap up in Voip Room Contexual bar (#24625)
Regression: Fix time format on Voip system messages (#24603)
Regression: Fix translation for call started message (#24615)
Regression: Fix unexpected errors breaking ddp-streamer (#24948)
Regression: Fix wrong tab name for VoIP settings (#24647)
Regression: Fixes in Voice Contextual Bar and Directory (#24596)
Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart (#24624 by @amolghode1981)
Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests (#24756)
Regression: Mark all rooms as read modal closing instantly. (#24610)
Regression: Messages in new message template Crashing. (#25327)
Regression: No audio when call comes from Skype/IP phone (#24602 by @amolghode1981)
The audio was not rendered because of re-rendering of react element based on queueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted because after accepting call, queueCounter changes or a room gets created. The audio element gets recreated. But VoIP user probably holds the old one. The behaviour is not predictable when such case happens. If everything gets cleanly setup, even if the audio element goes headless, it still continues to play the remote audio. But in other cases, it is unreferenced the one on dom has its srcObject as null. This causes no audio.
This fix provides a way to re-initialise the rendering elements in VoIP user and calls this function on useEffect() if the re-render has happen.
Regression: Prevent button from losing state when rerendering (#24648)
Regression: Prevent connect to asterisk when VoIP is disabled (#24601)
Regression: Queue counter aggregator for incoming/hanged calls (#24635 by @amolghode1981)
Regression: Refresh server connection when MI server settings change (#24649)
Regression: Register services right away (#24800)
Regression: Revert Bugsnag version (#25313)
Regression: Rocket.Chat Webapp not loading. (#25349)
Regression: Role Sync not always working (#24850)
Regression: Server crashing if Voip credentials are invalid (#24646)
Regression: Show username and real name on the message system (#25254)
Regression: Shows error if micro service cannot connect to Mongo (#25301)
Regression: Use exact Node version on micro services Docker images (#25287)
Regression: Validate empty fields for Message template (#25250)
Regression: VoIP service button displayed when VoIP is disabled (#24598)
Regression: yarn dev triggers build dependencies (#25208)
Release 4.5.0 (#24652 by @LucasFASouza & @aswinidev & @dependabot[bot] & @lingohub[bot] & @ostjen)
Release 4.5.1 (#24782 by @Aman-Maheshwari & @amolghode1981 & @cuonghuunguyen)
Release 4.5.2 (#24814)
Release 4.5.3 (#24884 by @amolghode1981)
Release 4.5.4 (#24938)
Release 4.5.5 (#24998)
Release 4.6.0 (#25027 by @amolghode1981 & @aswinidev & @dependabot[bot] & @eduardofcabrera & @lingohub[bot])
Release 4.6.1 (#25095)
Release 4.6.2 (#25191 by @sidmohanty11)
Release 4.6.3 (#25235)
Release 4.7.0 (#25390 by @Himanshu664 & @dependabot[bot] & @lingohub[bot])
Release 4.7.1 (#25510 by @felipe-menelau)
Release 4.7.2 (#25580)
2022-04-07 Β· 2 π Β· 2 π©βπ»π¨βπ»
14.18.2
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.30.0
NPS never finishing sending results (#25067)
Proxy settings being ignored (#25022)
Modify Meteor's HTTP.call
to add back proxy
support
2022-02-09 Β· 1 π Β· 2 π Β· 3 π©βπ»π¨βπ»
14.18.2
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.30.0
2022-02-07 Β· 6 π Β· 1 π Β· 6 π©βπ»π¨βπ»
14.18.2
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.30.0
Add ?close to OAuth callback url (#24381)
Oembed request not respecting payload limit (#24418)
Outgoing webhook without scripts not saving messages (#24401)
Skip cloud steps for registered servers on setup wizard (#24407)
Startup errors creating indexes (#24409)
Fix bio
and prid
startup index creation
errors.
2022-01-28 Β· 4 π Β· 13 π Β· 29 π Β· 44 π Β· 34 π©βπ»π¨βπ»
14.18.2
6.14.15
3.6, 4.0, 4.2, 4.4, 5.0
1.30.0
EE: Allow to filter departments by Business Units on Livechat (#24162)
App empty states component, category filter and empty states error variation implementations (#23818)
Created and implemented the category filters component: Demo gif:
Created and implemented the empty states(States on fuselage)
component: Demo gif:
Implemented a variations system for the empty states component and
created a error message for network outage: Demo gif:
Apple Login (#24060)
Enabling emoji on custom status (#24170)
Add Rocket.Chat version to User-Agent header for oembed requests (#23605 by @sidmohanty11)
Added a Reset Button in the Account Profile Page (#24078 by @aswinidev)
Admin page header buttons consistency (#24168)
Importer text for CSV upload file format (#23817 by @ostjen)
lib/Statistics improved and metrics collector (#24177 by @ostjen)
On statistics
object the property get
is an async function now.
We need to collect additional data of feature activation through the statistics collector.
Limit recent emojis to 27 (#24210)
Limits the recent emoji list to a maximum of 3 rows instead of listing every emoji you've used so far.
Rewrite AddWebdavAccountModal to React Component (#24070)
Rewrite Omnichannel Queue Page to React (#24176)
Rewrite roomNotFound to React Component (#24044)
Setup Wizard Registration Flow (#23676)
This pull request brings a few improvements in our setup wizard flow, the very first contact with a Rocket.Chat. Some of them:
A brand new visual design;
Form validation improves;
Allow users to navigate back to all steps;
Optimized steps to register your workspace or keep standalone. And many more!
Show Channel Icons on Room Header & Info panels (#24239)
Updates Omnichannel Header & room Info component to render the source info Built on top of https://github.com/RocketChat/Rocket.Chat/pull/24237
Throw 404 error in invalid endpoints (#24053)
Throw 404 error in invalid endpoints" (#24118)
APPS: Action buttons not removed when app is disabled or uninstalled (#24107)
Fixes a problem where action buttons registered by any app would not be removed if the app was disabled or uninstalled
APPS: Prevents emails from being sent when apps framework is disabled (#24105)
Introduction of new event IPreEmailSent
was breaking the
email function when the Apps-Engine framework was disabled in the
administration
EE: Agent cannot change status to Available despite being within open business hours (#24112)
ENTERPRISE: Leading slashes in Engagement Dashboard API requests (#24142)
App Framework Enable hanging indefinitely (#24158)
Apps Contextual Bar not carrying title and room information (#24241)
Fixes:
the app's name being rendered instead of the view's title,
the room's information (IRoom
) wasn't being sent to
the app when a block action
happened
Fixed behavior with correct view title and room information included in the block action event:
https://user-images.githubusercontent.com/733282/150420847-59bfcf8a-24a9-4dc5-8609-0d92dba38b70.mp4
Avoid updating all rooms with visitor abandonment queries (#24252)
Change canned response model index to match other definition (#24235)
CSV Importer failing to import users (#24090)
setRealName
function to
_setRealName
.Custom Emoji Image preview (#24117 by @sidmohanty11)
Before,
After,
also if any error, (for example - if we upload a video mp4 file)
Discussions not loading message history if not joined (#24316)
Ensure Firefox 91 ESR support (#24096)
It:
Adds Firefox ESR
to
browserslist
;
Upgrades @rocket.chat/fuselage-hooks
to overcome a
bug related to Firefox implementation of ResizeObserver
API.
Enter not working on modal's multi-line input (#23981)
Right now, if we try to press enter for a new line on multi-line modal input... it auto triggers the submit event. This PR fixes this behaviour by not submitting the modal in case the enter was pressed within an input text with multiline expected
Errors on advanced sync prevent LDAP users from logging in (#23958 by @ostjen)
Filter ability for admin room checkboxes (#23970 by @sidmohanty11)
Now,
Before,
Fixed broken links in setup wizard (#24248 by @Himanshu664)
Fixing the changing custom status behavior (#24218)
Integration section crashing opening in My Account (#24068)
Make canned responses popup dependent on Canned_responses_enabled setting (#23804)
MAU when using micro services (#24204)
Message Erasure Type "Keep" Messages not working (#24024 by @arshxyz)
MongoError during startup saying "ns not found" (#24015)
Omnichannel Current chats pagination not working (#24039)
Omnichannel enabled setting not working when creating rooms (#24067)
openUserInfo not working after changing room types (#24098 by @grahhnt)
Password error should not be shown when selecting set random password (#21181)
We should not keep password
as required field when we
check set random password field. In this password should not be
required
Solved Report Message Blank (#24262)
After resolving issue #24261 :
Wrong german translation for 2FA-Promt (#24126 by @mbreslein-thd)
wrong new userInfo during user creation (#24051 by @Aman-Maheshwari)
Add: Alpine image as option for build (#12548)
Bump follow-redirects from 1.14.5 to 1.14.7 in /ee/server/services (#24182 by @dependabot[bot])
Chore: add script to fix code with prettier (#24054)
Chore: Apply generics to infer types of useForm hook (#22400)
Chore: Bump fuselage hooks (#24233)
Chore: Bump Livechat package version to 1.12.0 (#24232)
Chore: Convert model LoginServiceConfiguration to raw (#24187)
Chore: Fix Houston getNodeNpmVersions
regex to
correctly get Node and Npm complete versions (#24111)
Chore: Include REG_TOKEN in docker-compose (#24123)
Chore: Migrate useOutsideClick to fuselage-hooks (#24133)
Chore: Move callbacks
to /lib (#23456)
It moves to /lib
, migrates to TypeScript, and deprecates
the callbacks
API.
Chore: Prettier for us all (#24000)
Chore: Remove unused assets (#24023)
Chore: Removing hubot from docker-compose (#23591)
Remove hubot from docker-compose. This is forcing everyone to spin up Hubot every time they deploy Rocket.Chat and not that many people are using it. So we are wasting resources on peoples machines by forcing it
Chore: Replace isEmail
with
validateEmail
(#24020)
Follows #23816.
Chore: Replace Blaze templates (#24165)
It replaces some templates used by login and invitation flows with
React components. It also drops main
template, allowing
appLayout
to just handle components now.
Chore: Slash Commands Join to Typescript (#24254 by @eduardofcabrera & @ostjen)
Convert the slash commands .js files to .ts files.
Chore: Update Apps-Engine to 1.29.2 (#24171)
Chore: Update Apps-Engine version (#24335)
Chore: Update copyright notices (#24022)
Update date range in copyright notices to
2015-2022
.
Chore: Update Livechat to 1.11.1 (#24091)
Chore: Update mem to 8.1.1 (#23954)
Chore: Update Meteor to 2.5.3 (#24075)
Chore: Update Omnichannel widget version to 1.11.2 (#24169)
Chore: Update pino and pino-pretty (#24242)
i18n: Language update from LingoHub π€ on 2022-01-10Z (#24127)
i18n: Language update from LingoHub π€ on 2022-01-17Z (#24193)
i18n: Language update from LingoHub π€ on 2022-01-24Z (#24268)
Merge master into develop & Set version to 4.4.0-develop (#24049)
Regression: Align Omni-Source icon sizes with designs (#24269)
Regression: Create migration to fix index issue at boot (#24289)
Regression: Discussion room crashing (#24272)
Regression: Enable custom emoji on admin custom status page (#24186)
Regression: Fix Alpine release tag (#24259)
Regression: Fix Default Business hour overriding other Business Hours (#24288)
Regression: Fix handling of http requests in apps bridge (#24211)
Changes made during Meteor upgrade broke HTTP requests made in Rocket.Chat Apps
Regression: Fix Inactive Departments still visible on Livechat (#24267)
Regression: Fix incompatibility of apps http requests (#24276)
HTTP GET and HEAD requests made with an empty object as
data
were breaking, as the bridge converted this to the
request's body as '{}'
but meteor's new lib doesn't allow
for body content on either of this request methods.
To maintain compatibility, we forced an empty body whenever we have a GET or HEAD request. This was probably the case previously, with the body of requests made with this methods being ignored either before being sent or in the third party server receiving the request
Regression: Fix OmnichannelAppSourceRoomIcon sizes (#24322)
Regression: Fix pino child log levels (#24302)
Regression: Remove extra call to useOutsideClick
hook not following the function signature (#24243)
It migrates client/sidebar/header/actions/Search
component to TypeScript and mitigates a invalid call to
Array.prototype.every
:
Regression: Standalone register path failing when saving data (#24324)
Regression: Update tap-i18n package (#24298)
Fix the issue breaking IE11.
Release 4.3.3 (#24340)
2022-01-28 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
12.22.1
6.14.12
3.6, 4.0, 4.2, 4.4, 5.0
1.29.2
2022-01-19 Β· 5 π Β· 1 π Β· 10 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.29.2
ENTERPRISE: Leading slashes in Engagement Dashboard API requests (#24142)
App Framework Enable hanging indefinitely (#24158)
CSV Importer failing to import users (#24090)
setRealName
function to
_setRealName
.Integration section crashing opening in My Account (#24068)
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
2022-01-05 Β· 6 π Β· 1 π Β· 6 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.29.1
APPS: Action buttons not removed when app is disabled or uninstalled (#24107)
Fixes a problem where action buttons registered by any app would not be removed if the app was disabled or uninstalled
APPS: Prevents emails from being sent when apps framework is disabled (#24105)
Introduction of new event IPreEmailSent
was breaking the
email function when the Apps-Engine framework was disabled in the
administration
Ensure Firefox 91 ESR support (#24096)
It:
Adds Firefox ESR
to
browserslist
;
Upgrades @rocket.chat/fuselage-hooks
to overcome a
bug related to Firefox implementation of ResizeObserver
API.
Enter not working on modal's multi-line input (#23981)
Right now, if we try to press enter for a new line on multi-line modal input... it auto triggers the submit event. This PR fixes this behaviour by not submitting the modal in case the enter was pressed within an input text with multiline expected
Omnichannel Current chats pagination not working (#24039)
Omnichannel enabled setting not working when creating rooms (#24067)
2021-12-28 Β· 7 π Β· 5 π Β· 26 π Β· 37 π Β· 28 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.29.0
APPS: Add new email event for apps (#23925)
Introduces a new event called before an email is sent by the Mailer. Apps can intercept and modify the email that will be sent, or even prevent it from being sent altogether. For more details, check https://github.com/RocketChat/Rocket.Chat.Apps-engine/pull/461/files#diff-301e8a58164edbf315da2a43c4923f153dbc909573de1e60aa9f730f7488ac82
APPS: Allow apps to open contextual bar (#23843)
Opens a contextual bar using app ui interactions
(CONTEXTUAL_BAR_OPEN
)
https://user-images.githubusercontent.com/733282/146704076-d2d115f2-6ca6-4ed0-b450-81be580889a4.mp4
APPS: Allow Rocket.Chat Apps to register custom action buttons (#23679)
Add an action button manager that allows apps to register custom action buttons that trigger interaction callbacks in them
APPS: getUserUnreadMessageCount Bridge (#23972)
APPS: Possibility to set room closer via Apps LivechatBridge.closeRoom (#21025)
Add an optional param named closer
into
LivechatBridge.closeRoom
so that it will be possible to
close the room and send a close room message with the correct room
closer. If the param is not passed, use the room visitor as the room
closer.
EE: Introduce fallback department support (#23939)
Show Omnichannel room icon based on source definition (#23912)
Allow e-mail channel to be used without default department. (#23945)
Due to a missing condition in the e-mail input processing, Rocket.Chat was unable to receive e-mails from e-mail channels that did not have a default department.
Omnichannel Visitor Endpoints error handling (#23819)
Replace SortListItem and CreateListItem with ListItem (#24007)
Update "Message Erasure Type" setting's description (#23879)
Improves the "Message Erasure Type" setting's description by providing more details regarding the expected behavior of each option ("Keep Messages and User Name", "Delete All Messages" and "Remove link between user and messages");
Remove outdated translations (for this setting's description).
Webdav methods sanitization (#23924)
The improvement modify server_url
and
user_id
params into serverURL
and
userId
more suitable to our camelCase pattern. Also
converts the webdav methods into .ts helping us to prevent issues in the
next modal rewrites efforts.
Add CSP to authorize auto-close of CAS login window (#23215 by @goyome)
Add the hash of the JS inside the page that won't close ( window.close(); )
Add missing .png to clipboard uploaded file name (#23833)
broken Word Placement Anywhere
and
Run on edits
toggles in integration page (#23901
by @aswinidev)
Broken links present in some languages (#23987 by @aswinidev)
Changes on department agents should mark form as dirty (#19640 by @rafaelblink)
Custom emoji route in admin (#23882 by @sidmohanty11)
Custom status doesn't update properly (#23860)
DMs being created with username instead of user's name (#23848)
Email notifications settings not being honored on new DMs (#23574 by @ostjen)
Error when creating an inactive user in admin panel (#23859)
usersInRole
array used to send email to activate a
user.Fix no message size limit for method sendMessageLivechat (#23558)
Headers already sent error when user data download is disabled (#23805)
When using the export message tool when trying to download the file using the link sent via email if the feature "Export User Data" is disabled an error was being thrown causing the request to halt.
This is the error shown in the logs:
=== UnHandledPromiseRejection ===
Error [ERR_HTTP_HEADERS_SENT] [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at ServerResponse.setHeader (_http_outgoing.js:530:11)
at ServerResponse.res.setHeader (/app/bundle/programs/server/npm/node_modules/meteor/simple_json-routes/node_modules/connect/lib/patch.js:134:22)
at app/user-data-download/server/exportDownload.js:14:7
at /app/bundle/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/fiber_pool.js:43:40 {
code: 'ERR_HTTP_HEADERS_SENT'
}
---------------------------------
Errors like this can cause oplog processing errors.
Setting EXIT_UNHANDLEDPROMISEREJECTION will cause the process to exit allowing your service to automatically restart the process
Future node.js versions will automatically exit the process
=================================
Jitsi call already ended (#23904 by @Aman-Maheshwari)
LDAP Sync doing nothing when set to only import new users. (#23823)
Missing custom user status ellipsis (#23831)
Missing edit icon in sequential thread messages (#23948)
Modal keeps state if reset too fast. (#23791)
~Queued updates so the Modal has a chance to close.~ Used a random key to ensure modal doesn't keep it's state.
OTR not working (#23973)
A rule on the user notification streamer was changed recently, and the check for writing on the streamer was wrong. Changed it to allow all logged users.
Popover position for arabic languages (#23888)
Removing Edit message from messageBox on room changed (#23910)
Removing edit message from messageBox and local storage on messageBox destroyed.
Segmentation fault on CentOS 7 due to outdated sharp
(#23796)
Upgrades sharp
to avoid a segmentation fault on CentOS 7
during startup related to sharp.node
being loaded via
process.dlopen()
.
Suggested as a fix for versions 4.0.x
and
4.1.x
.
teams.leave client usage (#23959)
teams.removeMembers client usage (#23857)
Translations for App Select Settings not working (#23908)
Derived from PR https://github.com/RocketChat/Rocket.Chat/pull/19238
Wrong button for non trial apps (#23861)
This PR solves a bug on the marketplace that was happening with
WhatsApp where it was displaying a trial button even though it didn't
have a free trial period. The new verification I've added checks if the
app is subscription-based and then checks if it has 0 trial days in all
of its tiers. If it does, it shows a subscribe button. If it doesn't, it
displays a trial button. Also, I've exposed the itsEnterpriseOnly flag
as an extra measure in the case of apps like Facebook Messenger that are
enterprise-only and consequently should show the subscribe button.
Before: After:
Bump @rocket.chat/string-helpers from 0.29.0 to 0.30.1 in /ee/server/services (#23526 by @dependabot[bot])
Bump cookie-parser from 1.4.5 to 1.4.6 in /ee/server/services (#23921 by @dependabot[bot])
Bump mailparser from 3.2.0 to 3.4.0 (#23466 by @dependabot[bot])
Bump path-parse from 1.0.6 to 1.0.7 (#23689 by @dependabot[bot])
Bump pm2 from 5.1.1 to 5.1.2 in /ee/server/services (#23289 by @dependabot[bot])
Bump thehanimo/pr-title-checker from 1.2 to 1.3.4 (#23853 by @dependabot[bot])
Chore: Bump fuselage 0.31.0 (#24046)
Chore: Centralize email validation functionality (#23816)
Create lib for validating emails
Modify places that validate emails to use the new central function
Chore: Change Menu props to accept next fuselage version (#23839)
Chore: Create script to add new migrations (#23822)
Create NPM script to add new migrations
TODO: Infer next migration number from file list
Chore: Enable prefer-optional-chain ESLint rule for TypeScript files (#23786)
Code is bad. It rots. It requires periodic maintenance. It has bugs that need to be found. New features mean old code has to be adapted. The more code you have, the more places there are for bugs to hide. The longer checkouts or compiles take. The longer it takes a new employee to make sense of your system. If you have to refactor there's more stuff to move around. Furthermore, more code often means less flexibility and functionality. This is counter-intuitive, but a lot of times a simple, elegant solution is faster and more general than the plodding mess of code produced by a programmer of lesser talent. Code is produced by engineers. To make more code requires more engineers. Engineers have n^2 communication costs, and all that code they add to the system, while expanding its capability, also increases a whole basket of costs. You should do whatever possible to increase the productivity of individual programmers in terms of the expressive power of the code they write. Less code to do the same thing (and possibly better). Less programmers to hire. Less organizational communication costs.
β [Rich Skrenta][1]
Mixing two problem domains in code is prone to errors. In this small example
declare const y: { z: unknown } | undefined;
const x = y && y.z;
we're (1) checking the nullity of y
and (2) attributing
y.z
to x
, where (2) is clearly the
main problem we're solving with code. The optional chaining is a good
technique to handle nullity as a mere implementation detail:
declare const y: { z: unknown } | undefined;
const x = y?.z;
Attributing y.z
to x
is more easily
readable than the nullity check of y
.
This PR aims to add
@typescript-eslint/prefer-optional-chain
rule to ESlint
configuration at warning level.
Chore: Fix hasRole warning (#23914)
Chore: Remove the mobile-download-file
permission
(#23996)
mobile-download-file
permission and its
descriptions.Chore: Replace new typography (#23756)
Chore: Replace typography (#24021)
Chore: Update Apps-Engine to latest (#24045)
Chore: update docker image base to latest node 12 patch (#23875)
Chore: Update Livechat (#23913)
Chore: Update pino deps (#23922)
Chore: Use only LivechatTriggerRaw model (#23974)
i18n: Language update from LingoHub π€ on 2021-12-06Z (#23873)
i18n: Language update from LingoHub π€ on 2021-12-13Z (#23930)
i18n: Language update from LingoHub π€ on 2021-12-20Z (#23991)
i18n: Language update from LingoHub π€ on 2021-12-27Z (#24030)
Merge master into develop & Set version to 4.3.0-develop (#23827)
Regression: Add migration for omni rooms with no source (#24012)
Add a migration to add source property to all the omnichannel rooms
which don't have it yet. All these rooms will have source type as
other
Regression: Add optional chaining to possibly undefined fields (#24033)
Regression: addAction verification breaking rooms (#24019)
Regression: Ensure room action buttons only appear inside menu (#24035)
Currently, action buttons registered by apps to appear in the ROOM_ACTION context show in the first position of the list, but since they don't have an icon they are effectively invisible in the tab bar.
Here we change the order configuration of the button so we make sure it only shows inside the room menu
Regression: Fix omnichannel empty source usage (#24008)
Regression: Let Meteor.absoluteUrl.defaultOptions.rootUrl as baseURI (#24009)
Regression: Missing padding in popover with custom template (#23877)
Regression: Remove dangling console.log (#24034)
A empty array have been printed to console due to a promise chained
to console.log
and console.error
calls,
probably for debugging purposes.
Regression: Remove self from fallback departments dropdown (#24018)
Regression: Toolbox render item (#23862)
2021-12-14 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.1
2021-12-10 Β· 4 π Β· 2 π Β· 8 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.1
Error when creating an inactive user in admin panel (#23859)
usersInRole
array used to send email to activate a
user.Segmentation fault on CentOS 7 due to outdated sharp
(#23796)
Upgrades sharp
to avoid a segmentation fault on CentOS 7
during startup related to sharp.node
being loaded via
process.dlopen()
.
Suggested as a fix for versions 4.0.x
and
4.1.x
.
teams.removeMembers client usage (#23857)
Wrong button for non trial apps (#23861)
This PR solves a bug on the marketplace that was happening with
WhatsApp where it was displaying a trial button even though it didn't
have a free trial period. The new verification I've added checks if the
app is subscription-based and then checks if it has 0 trial days in all
of its tiers. If it does, it shows a subscribe button. If it doesn't, it
displays a trial button. Also, I've exposed the itsEnterpriseOnly flag
as an extra measure in the case of apps like Facebook Messenger that are
enterprise-only and consequently should show the subscribe button.
Before: After:
2021-11-30 Β· 9 π Β· 7 π Β· 26 π Β· 27 π Β· 24 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.1
Allow Omnichannel statistics to be collected. (#23694)
This PR adds the possibility for business stakeholders to see what is actually being used of the Omnichannel integrations.
Allow registering by REG_TOKEN environment variable (#23737)
You can provide the REG_TOKEN environment variable containing a registration token and it will automatically register to your cloud account. This simplifies the registration flow
Audio and Video calling in Livechat (#23004 by @Deepak-learner & @dhruvjain99)
Enable LDAP manual sync to deployments without EE license (#23761)
Open the Enterprise LDAP API that executes background sync to be used without any Enterprise License and enforce 2FA requirements.
Permission for download/uploading files on mobile (#23686 by @ostjen)
Permissions for interacting with Omnichannel Contact Center (#23389)
Adds a new permission, one that allows for control over user access to Omnichannel Contact Center,
REST endpoints to manage Omnichannel Business Units (#23750)
Basic documentation about endpoints can be found at https://www.postman.com/kaleman960/workspace/rocketchat-public-api/request/3865466-71502450-8c8f-42b4-8954-1cd3d01fcb0c
Show on-hold metrics on analytics pages and current chats (#23498)
Allow override of default department for SMS Livechat sessions (#23626 by @bhardwajaditya)
Engagement Dashboard (#23547)
Adds helpers onToggledFeature
for server and client
code to handle license activation/deactivation without server
restart;
Replaces usage of useEndpointData
with
useQuery
(from React Query);
Introduces view-engagement-dashboard
permission.
Improve the add user drop down for add a user in create channel modal for UserAutoCompleteMultiple (#23766 by @Jeanstaquet)
Seeing only the name of the person you are not adding is not practical in my opinion because two people can have the same name. Moreover, you can't see the username of the person you want to add in the dropdown. So I changed that and created another selection of users to show the username as well. I made this change so that it would appear in the key place for creating a room and adding a user.
Before:
After:
MKP12 - New UI - Merge Apps and Marketplace Tabs and Content (#23542)
Merged the Marketplace and Apps page into a single page with a tabs
component that changes between Markeplace and installed apps.
Re-naming department query param for Twilio (#23725)
Since the endpoint supports both, department ID and department Name,
so we're renaming it to reflect the same. departmentName
-> department
Reduce complexity in some functions (#23387)
Overhauls all places where eslint's complexity
rule is
disabled.
Stricter API types (#23735)
It:
Adds stricter types for API
;
Enables types for urlParams
;
Removes mandatory passage of undefined
payload on
client;
Corrects some regressions;
Reassures my belief in TypeScript supremacy.
"to users" not working in export message (#23576 by @ostjen)
ENTERPRISE: OAuth "Merge Roles" removes roles from users (#23588)
Fix OAuth "Merge Roles": the "Merge Roles" option now synchronize only the roles described in the "Roles to Sync" setting available in each Custom OAuth settings' group (instead of replacing users' roles by their OAuth roles);
Fix "Merge Roles" and "Channel Mapping" not being performed/updated on OAuth login.
ENTERPRISE: Private rooms and discussions can't be audited (#23673)
Add Private rooms (groups) and Discussions to the Message Auditing (Channels) autocomplete;
Update "Channels" tab name to "Rooms".
ENTERPRISE: Replace all occurrences of a placeholder on string instead of just first one (#23703)
Advanced LDAP Sync Features (#23608)
App update flow failing in HA setups (#23607)
The flow for app updates is broken in specific scenarios with HA setups. Here we change the method calls in the Apps-Engine to avoid race conditions
Apps scheduler "losing" jobs after server restart (#23566)
If a job is scheduled and the server restarted, said job won't be executed, giving the impression it's been lost.
What happens is that the scheduler is only started when some app tries to schedule an app - if that happens, all jobs that are "late" will be executed; if that doesn't happen, no job will run.
This PR starts the apps scheduler right after all apps have been loaded
Autofocus on search input in admin (#23738)
Removed "generic" autofocus on sidenav template.
Await promise to handle error when attempting to transfer a room (#23739)
broken avatar preview when changing avatar (#23659 by @Aman-Maheshwari)
Discussions created inside discussions (#23733)
Fix typo in FR translation (#23711 by @Cormoran96)
Fixed E2E default room settings not being honoured (#23468 by @TheDigitalEagle & @ostjen)
LDAP users being disabled when an AD security policy is enabled (#23820)
LDAP users not being re-activated on login (#23627)
Missing user roles in edit user tab (#23734)
New specific endpoint for contactChatHistoryMessages with right permissions (#23533)
Anyone with 'View Omnichannel Rooms' permission can see the History Messages.
Notifications are not being filtered (#23487)
Accounts_Default_User_Preferences_pushNotifications
setting's value to the
Accounts_Default_User_Preferences_mobileNotifications
setting's value;Accounts_Default_User_Preferences_mobileNotifications
setting (replaced by
Accounts_Default_User_Preferences_pushNotifications
);Omnichannel business hours page breaking navigation (#23595 by @Aman-Maheshwari)
Omnichannel contact center navigation (#23691)
Derives from: https://github.com/RocketChat/Rocket.Chat/pull/23656
This PR includes a different approach to solving navigation problems following the same code structure and UI definitions of other "ActionButtons" components in Sidebar.
Omnichannel status being changed on page refresh (#23587)
Omnichannel webhooks can't be saved (#23641 by @Aman-Maheshwari)
Performance issues when running Omnichannel job queue dispatcher (#23661)
PhotoSwipe crashing on show (#23499)
Waits for initial content to load before showing it.
Prevent UserAction.addStream without Subscription (#23705)
When you take an Omnichannel chat from queue, the guest's typing information will appear.
Registration not possible when any user is blocked for multiple failed logins (#23565 by @ostjen)
Chore: add no-bidi
rule (#23695)
Chore: add index on appId + associations for apps_persistence collection (#23675)
Chore: Api definitions (#23701)
Chore: Bump Rocket.Chat@livechat to 1.10 (#23768)
Chore: Convert Fiber models to async Step 1 (#23633)
Chore: Generic Table (#23745)
Chore: Mocha testing configuration (#23706)
We've been writing integration tests for the REST API quite regularly, but we can't say the same for UI-related modules. This PR is based on the assumption that improving the developer experience on writing tests would increase our coverage and promote the adoption even for newcomers.
Here as summary of the proposal:
Change Mocha configuration files:
.mocharc.base.json
);mocha_end_to_end.opts.js -> .mocharc.api.js
);.mocharc.client.js
);Add a Mocha test command exclusive for client modules
(npm run testunit-client
);
Enable fast watch mode:
ts-node
to only transpile code (skip type
checking);Configure mocha
environment on ESLint only for test
files (required when using Mocha's globals);
Adopt Chai as our assertion library:
chai-spies
,
chai-datetime
, chai-dom
);assert
with chai
;chai.expect
with expect
.Enable integration tests with React components:
Chore: Rearrange module typings (#23452)
Move all external module declarations (definitions and
augmentations) to /definition/externals
;
~Symlink some modules on /definition/externals
to
/ee/server/services/definition/externals
~ Share types with
/ee/server/services
;
Use TypeScript as server code entrypoint.
Chore: Remove duplicated 'name' key from rate limiter logs (#23771)
Chore: Remove useCallbacks (#23696)
Chore: Type omnichannel models (#23758)
Chore: Update settings.ts (#23769)
i18n: Language update from LingoHub π€ on 2021-11-01Z (#23603)
i18n: Language update from LingoHub π€ on 2021-11-29Z (#23812)
Merge master into develop & Set version to 4.2.0-develop (#23586)
Regression: Units endpoint to TS (#23757)
Regression: "When is the chat busier" and "Users by time of day" charts are not working (#23815)
Regression: Add @rocket.chat/emitter to EE services (#23802)
Regression: Add trash to raw models (#23774)
Regression: Current Chats not Filtering (#23803)
Regression: Fix incorrect API path for livechat calls (#23778)
Regression: Fix LDAP sync route (#23775)
Regression: Fix sendMessagesToAdmins not in Fiber (#23770)
Regression: Fix sort param on omnichannel endpoints (#23789)
Regression: Improve AggregationCursor types (#23692)
Regression: Include files on EE services build (#23793)
Regression: Mark Livechat WebRTC video calling as alpha (#23813)
2022-06-02 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
3.6, 4.0, 4.2, 4.4, 5.0
2021-11-08 Β· 3 π Β· 3 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.1
Notifications are not being filtered (#23487)
Accounts_Default_User_Preferences_pushNotifications
setting's value to the
Accounts_Default_User_Preferences_mobileNotifications
setting's value;Accounts_Default_User_Preferences_mobileNotifications
setting (replaced by
Accounts_Default_User_Preferences_pushNotifications
);Omnichannel status being changed on page refresh (#23587)
Performance issues when running Omnichannel job queue dispatcher (#23661)
2021-11-05 Β· 4 π Β· 3 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.1
Advanced LDAP Sync Features (#23608)
App update flow failing in HA setups (#23607)
The flow for app updates is broken in specific scenarios with HA setups. Here we change the method calls in the Apps-Engine to avoid race conditions
LDAP users not being re-activated on login (#23627)
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
2021-10-28 Β· 1 π Β· 4 π Β· 25 π Β· 38 π Β· 23 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
Add markdown to custom fields in user Info (#20947)
Added markdown to custom fields to render links
Allow Omnichannel to handle huge queues (#23392)
Make Livechat Instructions setting multi-line (#23515)
Since now we're supporting markdown text on this field (via this PR -
https://github.com/RocketChat/Rocket.Chat.Livechat/pull/648),
it would be nice to make this setting multiline so users can have more
space to edit the text
optimized groups.listAll response time (#22941 by @ostjen)
groups.listAll endpoint was having performance issues, specially when the total number of groups was high. This happened because the endpoint was loading all objects in memory then using splice to paginate, instead of paginating beforehand.
Considering 70k groups, this was the performance improvement:
before
after
APPS: Communication problem when updating and uninstalling apps in cluster (#23418)
Make the hook responsible for receiving app update events inside a cluster fetch the app's package (zip file) in the correct place.
Also shows a warning message on uninstalls inside a cluster. As there are many servers writing to the same place, some race conditions may occur. This prevents problems related to terminating the process in the middle due to errors being thrown and leaving the server in a faulty state.
ENTERPRISE: Omnichannel agent is not leaving the room when a forwarded chat is queued (#23404)
Admins can't update or reset user avatars when the "Allow User Avatar Change" setting is off (#23228)
edit-other-user-avatar
permission) to update or reset user
avatars even when the "Allow User Avatar Change" setting is off.Attachment buttons overlap in mobile view (#23377 by @Aman-Maheshwari)
Avoid last admin deactivate itself (#22949 by @ostjen)
Co-authored-by: @Kartik18g
BigBlueButton integration error due to missing file import (#23366 by @wolbernd)
Fixes BigBlueButton integration
Delay start of email inbox (#23521)
LDAP not stoping after wrong password (#23382)
Markdown quote message style (#23462)
Before:
After:
MONGO_OPTIONS being ignored for oplog connection (#23314 by @cuonghuunguyen)
MongoDB deprecation link (#23381)
OAuth login not working on mobile app (#23541)
Omni-Webhook's retry mechanism going in infinite loop (#23394)
Prevent starting Omni-Queue if Omnichannel is disabled (#23396)
Whenever the Routing system setting changes, and omnichannel is disabled, then we shouldn't start the queue.
Queue error handling and unlocking behavior (#23522)
Read only description in team creation (#23213)
resumeToken not working (#23379)
Rewrite missing webRTC feature (#23172)
SAML Users' roles being reset to default on login (#23411)
Remove roles
field update on
insertOrUpdateSAMLUser
function;
Add SAML syncRoles
event;
Server crashing when Routing method is not available at start (#23473)
unwanted toastr error message when deleting user (#23372 by @ostjen)
useEndpointAction replace by useEndpointActionExperimental (#23469)
user/agent upload not working via Apps Engine after 3.16.0 (#23393)
Fixes #22974
Users' roles
and type
being reset to
default on LDAP DataSync (#23378)
roles
and type
fields only if they
are specified in the data imported from LDAP (otherwise, no changes are
applied).Bump url-parse from 1.4.7 to 1.5.3 (#23376 by @dependabot[bot])
Bump: fuselage 0.30.1 (#23391)
Chore: Document REST API endpoints (banners) (#23361)
Describes endpoints for banners on REST API using a JSDoc annotation compatible with OpenAPI spec.
Chore: Document REST API endpoints (DNS) (#23405)
Describes endpoints for DNS on REST API using a JSDoc annotation compatible with OpenAPI spec.
Chore: Document REST API endpoints (E2E) (#23430)
Describes endpoints for end-to-end encryption on REST API using a JSDoc annotation compatible with OpenAPI spec.
Chore: Document REST API endpoints (Misc) (#23428)
Describes miscellaneous endpoints on REST API using a JSDoc annotation compatible with OpenAPI spec.
Chore: Ensure all permissions are created up to this point (#23514)
Chore: Fix some TS warnings (#23524)
Chore: Fixed a Typo in 11-admin.js test (#23355 by @badbart)
Chore: Improve watch OAuth settings logic (#23505)
Just prevent to perform 200 deletions for registers that not even exist
Chore: Make omnichannel settings dependent on omnichannel being enabled (#23495)
Chore: Migrate some React components/hooks to TypeScript (#23370)
Just low-hanging fruits.
Chore: Move addMinutesToADate
helper (#23490)
Chore: Move isEmail
helper (#23489)
Chore: Move isJSON
helper (#23491)
Chore: Move components away from /app/ (#23360)
We currently do NOT recommend placing React components under
/app
.
Chore: Partially migrate 2FA client code to TypeScript (#23419)
Additionally, hides toastr
behind an module to handle
UI's toast notifications.
Chore: Remove dangling README file (#23385)
Removes the elderly server/restapi/README.md
.
Chore: Replace promises
helper (#23488)
Chore: Startup Time (#23210)
The settings logic has been improved as a whole.
All the logic to get the data from the env var was confusing.
Setting default values was tricky to understand.
Every time the server booted, all settings were updated and callbacks were called 2x or more (horrible for environments with multiple instances and generating a turbulent startup).
Settings.get(......, callback);
was deprecated. We now
have better methods for each case.
Chore: Update Apps-Engine version (#23375)
Chore: Update Livechat Package (#23523)
Chore: Update pino and pino-pretty (#23510)
Chore: Upgrade Storybook (#23364)
i18n: Language update from LingoHub π€ on 2021-10-18Z (#23486)
Merge master into develop & Set version to 4.1.0-develop (#23362)
Regression: Debounce call based on params on omnichannel queue dispatch (#23577)
Regression: Fix enterprise setting validation (#23519)
Regression: Fix user typings style (#23511)
Regression: Mail body contains undefined
text (#23552)
Regression: Prevent settings from getting updated (#23556)
Regression: Prevent Settings Unit Test Error (#23506)
Regression: Routing method not available when called from listeners at startup (#23568)
Regression: Settings order (#23528)
Regression: Waiting_queue setting not being applied due to missing module key (#23531)
Regression: watchByRegex without Fibers (#23529)
Update the community open call link in README (#23497)
2021-10-25 Β· 1 π Β· 1 π Β· 2 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
2021-10-21 Β· 2 π Β· 1 π Β· 4 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
Queue error handling and unlocking behavior (#23522)
SAML Users' roles being reset to default on login (#23411)
Remove roles
field update on
insertOrUpdateSAMLUser
function;
Add SAML syncRoles
event;
2021-10-18 Β· 2 π Β· 1 π Β· 3 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
APPS: Communication problem when updating and uninstalling apps in cluster (#23418)
Make the hook responsible for receiving app update events inside a cluster fetch the app's package (zip file) in the correct place.
Also shows a warning message on uninstalls inside a cluster. As there are many servers writing to the same place, some race conditions may occur. This prevents problems related to terminating the process in the middle due to errors being thrown and leaving the server in a faulty state.
Server crashing when Routing method is not available at start (#23473)
2021-10-14 Β· 4 π Β· 1 π Β· 3 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
ENTERPRISE: Omnichannel agent is not leaving the room when a forwarded chat is queued (#23404)
Attachment buttons overlap in mobile view (#23377 by @Aman-Maheshwari)
Prevent starting Omni-Queue if Omnichannel is disabled (#23396)
Whenever the Routing system setting changes, and omnichannel is disabled, then we shouldn't start the queue.
user/agent upload not working via Apps Engine after 3.16.0 (#23393)
Fixes #22974
2021-10-06 Β· 7 π Β· 2 π Β· 7 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0
BigBlueButton integration error due to missing file import (#23366 by @wolbernd)
Fixes BigBlueButton integration
LDAP not stoping after wrong password (#23382)
MongoDB deprecation link (#23381)
resumeToken not working (#23379)
unwanted toastr error message when deleting user (#23372 by @ostjen)
Users' roles
and type
being reset to
default on LDAP DataSync (#23378)
roles
and type
fields only if they
are specified in the data imported from LDAP (otherwise, no changes are
applied).2021-10-01 Β· 15 οΈοΈοΈβ οΈ Β· 4 π Β· 11 π Β· 24 π Β· 67 π Β· 26 π©βπ»π¨βπ»
12.22.1
6.14.1
3.6, 4.0, 4.2, 4.4, 5.0
1.28.0-alpha.5428
ENTERPRISE: "Download CSV" button doesn't work in the Engagement Dashboard's Active Users section (#23013)
Fix "Download CSV" button in the Engagement Dashboard's Active Users section;
Add column headers to the CSV file downloaded from the Engagement Dashboard's Active Users section;
Split the data in multiple CSV files.
ENTERPRISE: CSV file downloaded in the Engagement Dashboard's New Users section contains undefined data (#23014)
ENTERPRISE: Missing headers in CSV files downloaded from the Engagement Dashboard (#23223)
LDAP Refactoring (#23171)
Moved role-sync and advanced SAML settings to EE (#23107 by @ostjen)
Remove deprecated endpoints (#23162)
The following REST endpoints were removed:
/api/v1/emoji-custom
/api/v1/info
/api/v1/permissions
/api/v1/permissions.list
The following Real time API Methods were removed:
getFullUserData
getServerInfo
livechat:saveOfficeHours
Remove Google Vision features (#23160)
Google Vision features like "block adult images" or label detection were not being maintained and totally broken. So we decided to remove its feature and maybe in the future release the same features as an app.
Remove old migrations up to version 2.4.14 (#23277)
To update to version 4.0.0 you'll need to be running at least version 3.0.0, otherwise you might loose some database migrations which might have unexpected effects.
This aims to clean up the code, since upgrades jumping 2 major versions are too risky and hard to maintain, we'll keep only migration from that last major (in this case 3.x).
Remove patch info from endpoint /api/info for non-logged in users (#16050)
Removed support of MongoDB 3.4; Deprecated MongoDB 3.6 and 4.0 (#22907 by @ostjen)
Stop sending audio notifications via stream (#23108)
Remove audio preferences and make them tied to desktop notification preferences.
TL;DR: new message sounds will play only if you receive a desktop notification. you'll still be able to chose to not play any sound though
Webhook will fail if user is not part of the channel (#23310)
Remove deprecated behavior added by https://github.com/RocketChat/Rocket.Chat/pull/18024 that accepts webhook integrations sending messages even if the user is not part of the channel.
Starting from 4.0.0 the webhook request will fail with
error-not-allowed
error:
{"success":false,"error":"error-not-allowed"}
APPS: Get livechat's room transcript via bridge method (#22985)
Adds a new method for retrieving a room's transcript via a new method in the Livechat bridge
Add activity indicators for Uploading and Recording using new API; Support thread context; Deprecate the old typing API (#22392 by @sumukhah)
Omnichannel source identification fields (#23090)
This PR adds new fields to the room schema that aids in the identification of the source that created an Omnichannel room, which can be either via livechat widget, SMS, app, etc.
Seats Cap (#23017 by @g-thome)
Adding New Members
Warning Admins
Warning Members
Emails
APPS: New storage strategy for Apps-Engine file packages (#22657)
This is an enabler for our initiative to support NPM packages in the Apps-Engine.
Currently, the packages (zip files) for Rocket.Chat Apps are stored as a base64 encoded string in a document in the database, which constrains us due to the size limit of a document in MongoDB (16Mb).
When we allow apps to include NPM packages, the size of the App
package itself will be potentially very large (I'm looking at
you node_modules
). Thus we'll be changing the strategy to
store apps either with GridFS or the host's File System itself.
APPS: Return task ids when using the scheduler api (#23023)
In the methods that create tasks (scheduleRecurring
and
scheduleOnce
) return the id
of the document
created in the database so the user can cancel each task
individually.
Add missing pt-BR translations, fix typos and unify language (#23176 by @gabrieloliverio)
Better text for auth banner (#23256 by @g-thome)
Change the text in the banner warning for auth changes
Canned response admin settings (#23190)
Change log format to JSON (#22975)
Change occurences of Livechat to Omnichannel in ES translations were applicable (#23199)
Do not re-create General room on every server start (#22957)
Show_Setup_Wizard
Setting's value to control
whether the general room should be created. This channel will only be
created if the Show_Setup_Wizard
Setting is 'pending'.Load code highlighting languages on demand and fixes on new message parser (#23232)
Now we have this setting called 'Code highlighting languages list' where you can define the languages that you want to be loaded by default.
Throw error if no appId is provided to useUIKitHandleAction (#23221)
Use PaginatedSelectFiltered in department edition (#23054)
"Parent channel or group" search in discussions' creation throws "Unexpected end of JSON input" error (#23076)
encodeURIComponent()
to encode values received by
_generateQueryFromParams()
."Read Only" and "Allow Reacting" system messages are missing in rooms (#23037 by @ostjen)
Add check before placing chat on-hold to confirm that contact sent last message (#23053)
Add missing custom fields to apps' users converter (#21176 by @cuonghuunguyen)
Avoid bots to be marked as unavailable when log off/login (#23262)
Can't edit profile information if any field update setting is disabled (#23110)
validateUserEditing
.Inaccurate use of 'Mobile notifications' instead of 'Push notifications' in i18n strings (#22978 by @ostjen)
'Notification_Mobile_Default_For'
key to
'Notification_Push_Default_For'
(and text to 'Send Push
Notifications For' for English Language);'Accounts_Default_User_Preferences_mobileNotifications'
key
to
'Accounts_Default_User_Preferences_pushNotifications'
;'Mobile_Notifications_Default_Alert'
key to
'Mobile_Push_Notifications_Default_Alert'
;Logging out from other clients (#23276)
Mark agents as unavailable when they logout (#23219)
Modals is cutting pixels of the content (#23243)
Fuselage Dependency: 543
Omnichannel On hold chats being forwarded to offline agents (#23185)
Omnichannel transcript button without user's email (#23150)
Prevent users to edit an existing role when adding a new one with the same name used before. (#22407 by @lucassartor)
Remove doubled "Canned Responses" strings (#23056)
Remove margin from quote inside quote (#21779)
Save department agents (#23209)
Sidebar not closing when clicking in Home or Directory on mobile view (#23218)
Merge Burger menu components into a single component
Show a badge with no-read messages in the Burger Button:
remove useSidebarClose hook
Stop queue when Omnichannel is disabled or the routing method does not support it (#23261)
Add missing key logs
Stop queue (and logs) when livechat is disabled or when routing method does not support queue
Stop ignoring offline bot agents from delegation (previously, if a bot was offline, even with "Assign new conversations to bot agent" enabled, bot will be ignored and chat will be left in limbo (since bot was assigned, but offline).
Toolbox click not working on Safari(iOS) (#23244)
transfer message when tranferring room by Apps Engine (#23074 by @cuonghuunguyen)
Update bugsnag package (#23104)
User list not being updated after creation/deletion of user (#23032 by @ostjen)
Wrap canned-responses endpoints with ee license (#23204)
Wrong docs link on Omni-Webhook page (#23117)
Bump @rocket.chat/string-helpers from 0.27.0 to 0.29.0 in /ee/server/services (#23138 by @dependabot[bot])
Bump @storybook/react from 6.3.6 to 6.3.8 (#23165 by @dependabot[bot])
Bump @types/cookie from 0.4.0 to 0.4.1 in /ee/server/services (#22600 by @dependabot[bot])
Bump @types/ejson from 2.1.2 to 2.1.3 in /ee/server/services (#23126 by @dependabot[bot])
Bump @types/express from 4.17.12 to 4.17.13 in /ee/server/services (#22598 by @dependabot[bot])
Bump @types/imap from 0.8.34 to 0.8.35 (#23122 by @dependabot[bot])
Bump @types/ws from 7.4.6 to 7.4.7 in /ee/server/services (#23095 by @dependabot[bot])
Bump actions/stale from 3.0.19 to 4 (#22673 by @dependabot[bot])
Bump csv-parse from 4.16.0 to 4.16.3 (#23120 by @dependabot[bot])
Bump ejson from 2.2.1 to 2.2.2 in /ee/server/services (#23236 by @dependabot[bot])
Bump iconv-lite from 0.4.24 to 0.6.3 (#22527 by @dependabot[bot])
Bump image-size from 0.6.3 to 1.0.0 (#22528 by @dependabot[bot])
Bump ip-range-check from 0.0.2 to 0.2.0 (#22532 by @dependabot[bot])
Bump jsrsasign from 10.3.0 to 10.4.0 (#23163 by @dependabot[bot])
Bump juice from 5.2.0 to 8.0.0 (#22177 by @dependabot[bot])
Bump object-path from 0.11.5 to 0.11.6 (#23088 by @dependabot[bot])
Bump pm2 from 5.1.0 to 5.1.1 in /ee/server/services (#23128 by @dependabot[bot])
Bump stylelint-order from 2.2.1 to 4.1.0 (#22036 by @dependabot[bot])
Bump supertest from 6.1.3 to 6.1.6 (#23139 by @dependabot[bot])
Bump tar from 6.1.0 to 6.1.11 in /ee/server/services (#23068 by @dependabot[bot])
Bump xml-crypto from 2.1.2 to 2.1.3 (#23141 by @dependabot[bot])
Chore: Change Ubuntu version to 20.04 on all GitHub Actions (#23200)
Chore: client endpoints typings (#23152)
Chore: Convert VerticalBar component to typescript (#22542)
Chore: Environmental variable for marketplace url (#22922)
Chore: Make SMTP empty on docker-compose so registration won't hang out of the box (#23255)
Chore: Move client helpers (#23178)
Moves helper modules under app/
to
client/lib/utils/
.
Chore: Re-enable session tests on local after removal of mongo-unit (#23263)
Chore: Remove non-used dependencies (#23109)
Chore: Remove wrong usages of Meteor.wrapAsync
(#23079)
Chore: Update Livechat widget to 1.9.4 (#23198)
Chore: Update pino and pino-pretty (#23269)
Chore: Update pino and pino-pretty (#23157)
Chore: Upgrade limax (#23187)
Upgrades limax
for faster slugify algorithm.
i18n: Language update from LingoHub π€ on 2021-08-30Z (#23061)
i18n: Language update from LingoHub π€ on 2021-09-06Z (#23123)
i18n: Language update from LingoHub π€ on 2021-09-13Z (#23184)
Merge master into develop & Set version to 4.0.0 (#23086)
Regression: "Join" button not working (#23320)
Regression: renderEmoji
helper referred as a
template (#23212)
Regression: Add default value when no cookies are present (#23318)
Regression: Blank screen in Jitsi video calls (#23322)
CallJitsWithData.js
file name.Regression: Create new loggers based on server log level (#23297)
Regression: Fix app storage migration (#23286)
The previous version of this migration didn't take into consideration apps that were installed prior to Rocket.Chat@3.8.0, which removed the typescript compiler from the server and into the CLI. As a result, the zip files inside each installed app's document in the database had typescript files in them instead of the now required javascript files.
As the new strategy of source code storage for apps changes the way the app is loaded, those zip files containing the source code are read everytime the app is started (or in this particular case, updated), and as the zips' contents were wrong, the operation was failing.
The fix extract the data from old apps and creates new zip files with
the compiled js
already present.
Regression: Fix Bugsnag not started error (#23308)
Regression: Fix channel icons on queue (#23304)
Regression: Fix user registration stuck (#23254)
Regression: Fix view logs admin screen (#23194)
Regression: invalid call
import (#23328)
Regression: invalid call
import (#23334)
Regression: LDAP Channel/Role Sync not working (#23311)
Regression: LDAP Issues (#23306)
Regression: LDAP Refactoring (#23231)
Regression: LDAP User Data Sync not always working (#23321)
Regression: LDAP: Handle base authentication and prevent crash (#23331)
When AD requires TLS the auth crashes the server if StartTLS is not set, the error shows at the end because the code was not waiting on this operation.
Regression: Log Sections not respecting Log Level setting (#23230)
Regression: Missing i18n key (#23282)
Regression: Properly trickle-down state from UsersPage to UsersTable (#23196)
Spotted by @gabriellsh.
Regression: Removed exclusive tests statement (#23333 by @ostjen)
Regression: Request seats link (#23312)
Regression: Request seats url (#23317)
Regression: SAML identifier mapping (#23330)
Regression: Seats Cap banner not being disabled if not enterprise (#23278)
Regression: View Logs administration page crashing (#23205)
Fixes the stdout.queue
endpoint; makes the components
type-safe.
Regression: wrong settings order (#23281)
Release 3.18.2 (#23338)
2022-05-30 Β· 1 π Β· 1 π©βπ»π¨βπ»
3.4, 3.6, 4.0, 4.2
2022-05-26 Β· 1 π Β· 1 π©βπ»π¨βπ»
3.4, 3.6, 4.0, 4.2
2021-10-01 Β· 2 π Β· 2 π Β· 4 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
Security Hotfix (https://docs.rocket.chat/guides/security/security-updates)
Update visitor info on email reception based on current inbox settings (#23280)
2021-09-06 Β· 1 π Β· 1 π Β· 2 π Β· 4 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
2021-08-31 Β· 5 π Β· 7 π Β· 20 π Β· 19 π Β· 25 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
ENTERPRISE: Maximum waiting time for chats in Omnichannel queue (#22955)
Add new settings to support closing chats that have been too long on waiting queue
Moved old settings to new "Queue Management" section
Fix issue when closing a livechat room that caused client to not to know if room was open or not
Banner for the updates regarding authentication services (#23055 by @g-thome)
Add a banner to inform admins about future authentication changes. This banner targets servers that use some sort of authentication service since they're the ones which this update concerns the most.
Report "Read Receipts" setting on stat collector (#23033)
REST endpoint to delete a DM and allow DM for two other users (#18022 by @abrom)
[NEW] Improve DM create/delete API management
Separate RegEx Settings for Channels and Usernames validation (#21937 by @aditya-mitra)
Now, there are 2 separate settings for validating names - One for channels and another for usernames.
This change also removes the old UTF8_Names_Validation
setting and adds 2 new settings UTF8_User_Names_Validation
and UTF8_Channel_Names_Validation
.
Add default permission 'start-discussion' and 'start-discussion-other-user' to app user (#22577)
Create thumbnails from uploaded images (#20907)
Exclude archived rooms from unread-message count (#22515 by @nmagedman)
Increase the verbosity of Omnichannel routing system debugging outputs (#22977)
Rewrite File Upload Modal (#22750)
Image preview:
Video preview:
Files larger than 10mb:
Types from currentChatsPage.tsx (#22967)
Use tag autocomplete in more places (#22902)
Use the proper autocomplete component for omnichannel tags, this adds proper sorting of results and better consistency.
"Read Only" field description is incorrect when the option is checked (#21868 by @epif4nio)
"Users By Time of the Day" chart displays incorrect data for Local Timezone (#22836)
endOf
and
startOf
methods.Atlassian Crowd connection not working (#22996 by @piotrkochan)
Audio recording doesn't stop in direct messages on channel switch (#22880)
Bad words falling if message is empty (#22930)
Broken download link on uploaded files (#22848 by @ostjen)
Uploaded files had wrong download links when the deploy had a sub directory. This misbehavior was caused by the wrong usage of the rtrim method, the 2nd parameter is a list of chars, not a string (this method was inspired by php)
Can't access other administration menus after opening Engagement Dashboard (#22870 by @ostjen)
Go command duplicating subfolder path on iframes. (#22796 by @ostjen)
Manually approve new users is not applied to SAML users (#22823 by @ostjen)
Production-environment dependencies (#22868)
@rocket.chat/icons
was incorrectly referred as
development dependency.
QuickActions for mobile screen (#23016)
Registration not possible with TOTP and email verification (#22778 by @ostjen)
Return transcript/dashboards based on timezone settings (#22850)
Added new setting to manage timezones
Applied new setting to omnichannel dashboards (realtime, analytics) [NOTE: Other dashboards aren't using this setting actually)
Change getAnalyticsBetweenDate query to filter out system messages instead of substracting them
Tab margin style (#22851)
Threads and discussions searches don't display proper results (#22914)
chat.getDiscussions
and chat.getThreadsList
)
are now case insensitive (do NOT differ capital from lower letters) and
match incomplete words or terms.Threads List being requested more than expected (#22879)
TypeError on Callout type prop (#22790 by @hrahul2605)
User is still asked for 2FA confirmation even if it is deactivated (#22801 by @ostjen)
User presence being processes even if presence monitor was disabled (#22927)
users registered via third party apps bypass custom required fields (#22396 by @g-thome)
moves the custom fields from the initial registration form to the "pick a username" screen so that everyone is forced to fill the custom required fields
Bump: Fuselage 0.29.0 (#23067)
Chore: Enable husky pre-push hook (back again) (#22994)
Chore: Fix RHEL container build issue due to gpg keyserver deprecation (#22672 by @jsm84)
Changed gpg keyserver in RHEL Dockerfile to openpgp.org due to deprecation of the SKS keyserver network.
Chore: Fix typo in rtl.css (#22431 by @eltociear)
Chore: Prevent new JS files being added (#22972)
We are moving our code base to TS, one way to help developers remember this is create a task that will notify you every time a new file is created.
Chore: Script to start Rocket.Chat in HA mode during development (#22398)
Sometimes we need to start Rocket.Chat in High-Availability mode (cluster) during development to test how a feature behaves or hunt down a bug. Currently, this involves a lot of commands with details that might be lost if you haven't done it in a while.
This PR intends to provide a really simple way for us to start many instances of Rocket.Chat connected in a cluster.
Chore: Update Livechat widget to 1.9.4 (#22990)
i18n: Language update from LingoHub π€ on 2021-08-09Z (#22888)
i18n: Language update from LingoHub π€ on 2021-08-16Z (#22937)
i18n: Language update from LingoHub π€ on 2021-08-23Z (#23007)
Merge master into develop & Set version to 3.18.0-develop (#22834)
Regression: Attachment not rendering on message (#23046)
Regression: File upload name suggestion (#22953)
Before:
After:
Regression: Fix creation of self-DMs (#23015)
Regression: Logs were missing from Omnichannel callback methods (#23048)
Regression: no-js-action bump version (#22997)
Regression: readNow blocked by a invalid condition (#22952)
Release 3.17.1 (#22942)
Release 3.17.2 (#23045)
2021-08-26 Β· 3 π Β· 1 π Β· 5 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
applyChatRestictions callback not working for community version (#22839 by @Shailesh351)
Building on top of https://github.com/RocketChat/Rocket.Chat/pull/22838
Error getting default agent when routing system algorithm is Auto Selection (#22976)
Fix Auto Selection algorithm on community edition (#22991)
When using the autoselection algo on community editions, all agents were marked as unavailable due to an unapplied filter
Fixed an issue when both user & system setting to manange EE max number of chats allowed were set to 0
2021-08-16 Β· 5 π Β· 1 π Β· 8 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
"Click to Join" button is not working if there are no muted users in the room (#22871)
room.muted
array so as to cover the case
in which it is undefined
;Apps-Engine's scheduler failing to update run tasks (#22882)
Agenda, the library
that manages scheduling, depended on setting a job property named
nextRunAt
as undefined
to signal whether it
should be run on schedule or not. Rocket.Chat's
current Mongo driver ignores undefined
values when
updating documents and this was causing jobs to never stop running as
Agenda couldn't clear that property (set them as
undefined
). This updates Rocket.Chat's dependency on
Agenda.js to point to a fork
that fixes the problem.
Close omnichannel conversations when agent is deactivated (#22917)
Message update not working in some cases (#22856)
Use correct param on saveBusinessHour method (#22835)
2021-07-30 Β· 7 π Β· 19 π Β· 39 π Β· 56 π Β· 28 π©βπ»π¨βπ»
12.22.1
6.14.1
3.4, 3.6, 4.0, 4.2
1.27.1
roles.delete
endpoint (#22497
by @lucassartor)
Collect data about LDAP, SAML, CAS and OAuth usage. (#22719)
Convert Team to Channel (#22476)
Monitoring Track messages' round trip time (#22676)
Track messages' roundtrip time from backend saves time to the time
when received back from the oplog allowing track of oplog slowness.
Prometheus metric:
rocketchat_messages_roundtrip_time
REST endpoint to remove User from Role (#20485 by @Cosnavel & @lucassartor & @ostjen)
Canned responses (#22703 by @rafaelblink)
Change message deletion confirmation modal to toast (#22544)
Changed a timed modal for a toast message
Configuration for indices in Apps-Engine models (#22705)
Add appId
field to the data saved by the
Scheduler
Add appId
index to
rocketchat_apps_persistence
model
Skip "trash collection" when deleting records from
rocketchat_apps_persistence
Add a new setting to control for how long we should keep logs from the apps
Make shortcut
field of canned responses unique (#22700)
Paginated department select on forward chat (#22123)
Changes the department dropdown to use the new paginated selects, allowing for searching and displaying more than 50 departments
Paginated multiselect for EE tags (#22315 by @rafaelblink)
This uses the paginated multiselect for the EE tags selection, allowing more than 50 tags to be shown.
Preview message URLs only once (#22516 by @nmagedman)
Refactor livechat.registerGuest
function (#22684)
Replace OTR Icon on Contextual Bar & Update Icons (#22377)
Replace remaing discussion creation modals with React modal. (#22448)
Return open room if available for visitors (#22742)
Rewrite Enter Encryption Password Modal (#22456)
Rewrite OTR modals (#22583)
Rewrite Save Encryption Password Modal (#22447)
Rewrite sidebar footer as React Component (#22687)
Rewrite URL check modal (#22540)
Sidebar icons margins (#22498)
Update README.md (#22462)
Wrong error message when trying to create a blocked username (#22452 by @lucassartor)
When trying to create a user with a blocked username, the UI was showing generic error message that it wasn't very detailed.
Old error message:
New error message:
ENTERPRISE: Engagement Dashboard displaying incorrect data about active users (#22381)
ENTERPRISE: Make AutoSelect algo take current agent load in consideration (#22611)
ENTERPRISE: Race condition on Omnichannel visitor abandoned callback (#22413)
As you can see here
the predictedVisitorAbandonment
flag is not set if the room
object doesn't have v.lastMessageTs
property. So we need to
always make sure the v.lastMessageTs
is set before this
method is called.
Currently the v.lastMessageTs
is being set in this
(lets call this hook-1) hook which has
HIGH
priority and the
predictedVisitorAbandonment
check is inturn performed in this
(let call this hook-2) hook which is also
HIGH
priority.
So ideally we'd except the hook-1 to be called b4
hook-2, however currently since both of them are at
same priority, there is no way to control which one is executed first.
Hence in this PR, I'm making the priority of hook-2 as
MEDIUM
to keeping the priority of hook-1
the same as b4, i.e. HIGH
. This should make sure that the
hook-1 is always executed b4
hook-2
Admin page crashing when commit hash is null (#22057 by @cprice-kgi)
If the commit hash happens to be null, the administration page will still attempt to slice the value and display it. This causes the admin page to not display, and essentially crash the web app. This fixes it by checking for a null value first.
Blank screen in message auditing DM tab (#22763 by @ostjen)
The DM tab in message auditing was displaying a blank screen, instead of the actual tab.
Bugs in AutoCompleteDepartment (#22414)
Call button is still displayed when the user doesn't have permission to use it (#22170)
Hide 'Call' buttons from the tab bar for muted users;
Display an error when a muted user attempts to enter a call using the 'Click to Join!' button.
Can't see full user profile on team's room (#22355)
TeamsMembers
component removedCannot create a discussion from top left sidebar as a user (#22618 by @lucassartor)
When trying to create a discussion using the top left sidebar modal
with an role that don't have the view-other-user-channels
permission, an empty list would be shown, which is a wrong behavior.
Also, when being able to use this modal, discussions were listed as
options, which is also a wrong behavior as there can't be nested
discussions.
This PR looks to fix both these issues.
Old behavior:
New behavior:
Channel is automatically getting added to the first option in move to team feature (#22670 by @ostjen)
Channels or Teams deleted are not removed from the sidebar. (#22613 by @ostjen)
Checks the list of agents if at least one is online (#22584)
Confirm owner change process when deleting own account (#22609)
Content-Security-Policy ignoring CDN configuration (#22791 by @nmagedman)
Create discussion modal - cancel button and invite users alignment (#22718 by @ostjen)
Changes in "open discussion" modal
Added cancel