From 491832e616ce586cbff727d95bed549279c09ea5 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Tue, 7 Jun 2022 22:48:10 -0600 Subject: [PATCH 1/6] [FIX] Fix prom-client new promise usage (#25781) ## Proposed changes (including videos or screenshots) ## Issue(s) ## Steps to test or reproduce ## Further comments Looks like the update of de dep had breaking changes and now uses promises at some calls. This PR fixes those promise usages and converts the file to TS (hopefully it helps us to spot the error in the future) --- .../{collectMetrics.js => collectMetrics.ts} | 51 ++++++++++--------- .../externals/meteor/facts-base.d.ts | 5 ++ .../definition/externals/meteor/mongo.d.ts | 1 + apps/meteor/package.json | 1 + yarn.lock | 8 +++ 5 files changed, 43 insertions(+), 23 deletions(-) rename apps/meteor/app/metrics/server/lib/{collectMetrics.js => collectMetrics.ts} (77%) create mode 100644 apps/meteor/definition/externals/meteor/facts-base.d.ts diff --git a/apps/meteor/app/metrics/server/lib/collectMetrics.js b/apps/meteor/app/metrics/server/lib/collectMetrics.ts similarity index 77% rename from apps/meteor/app/metrics/server/lib/collectMetrics.js rename to apps/meteor/app/metrics/server/lib/collectMetrics.ts index 46e32dd1d1d8..61eacebba057 100644 --- a/apps/meteor/app/metrics/server/lib/collectMetrics.js +++ b/apps/meteor/app/metrics/server/lib/collectMetrics.ts @@ -15,21 +15,23 @@ import { SystemLogger } from '../../../../server/lib/logger/system'; import { metrics } from './metrics'; import { getAppsStatistics } from '../../../statistics/server/lib/getAppsStatistics'; -Facts.incrementServerFact = function (pkg, fact, increment) { +Facts.incrementServerFact = function (pkg: 'pkg' | 'fact', fact: string | number, increment: number): void { metrics.meteorFacts.inc({ pkg, fact }, increment); }; -const setPrometheusData = async () => { +const setPrometheusData = async (): Promise => { metrics.info.set( { version: Info.version, - unique_id: settings.get('uniqueID'), - site_url: settings.get('Site_Url'), + // eslint-disable-next-line @typescript-eslint/camelcase + unique_id: settings.get('uniqueID'), + // eslint-disable-next-line @typescript-eslint/camelcase + site_url: settings.get('Site_Url'), }, 1, ); - const sessions = Array.from(Meteor.server.sessions.values()); + const sessions = Array.from<{ userId: string }>(Meteor.server.sessions.values()); const authenticatedSessions = sessions.filter((s) => s.userId); metrics.ddpSessions.set(Meteor.server.sessions.size); metrics.ddpAuthenticatedSessions.set(authenticatedSessions.length); @@ -53,7 +55,7 @@ const setPrometheusData = async () => { metrics.version.set({ version: statistics.version }, 1); metrics.migration.set(getControl().version); metrics.instanceCount.set(statistics.instanceCount); - metrics.oplogEnabled.set({ enabled: statistics.oplogEnabled }, 1); + metrics.oplogEnabled.set({ enabled: `${statistics.oplogEnabled}` }, 1); // User statistics metrics.totalUsers.set(statistics.totalUsers); @@ -85,17 +87,17 @@ const app = connect(); // const compression = require('compression'); // app.use(compression()); -app.use('/metrics', (req, res) => { +app.use('/metrics', (_req, res) => { res.setHeader('Content-Type', 'text/plain'); - const data = client.register.metrics(); + client.register.metrics().then((data) => { + metrics.metricsRequests.inc(); + metrics.metricsSize.set(data.length); - metrics.metricsRequests.inc(); - metrics.metricsSize.set(data.length); - - res.end(data); + res.end(data); + }); }); -app.use('/', (req, res) => { +app.use('/', (_req, res) => { const html = ` Rocket.Chat Prometheus Exporter @@ -112,8 +114,8 @@ app.use('/', (req, res) => { const server = http.createServer(app); -let timer; -let resetTimer; +let timer: number; +let resetTimer: number; let defaultMetricsInitiated = false; let gcStatsInitiated = false; const was = { @@ -122,19 +124,19 @@ const was = { resetInterval: 0, collectGC: false, }; -const updatePrometheusConfig = async () => { +const updatePrometheusConfig = async (): Promise => { const is = { port: process.env.PROMETHEUS_PORT || settings.get('Prometheus_Port'), - enabled: settings.get('Prometheus_Enabled'), - resetInterval: settings.get('Prometheus_Reset_Interval'), - collectGC: settings.get('Prometheus_Garbage_Collector'), + enabled: settings.get('Prometheus_Enabled'), + resetInterval: settings.get('Prometheus_Reset_Interval'), + collectGC: settings.get('Prometheus_Garbage_Collector'), }; if (Object.values(is).some((s) => s == null)) { return; } - if (Object.entries(is).every(([k, v]) => v === was[k])) { + if (Object.entries(is).every(([k, v]) => v === was[k as keyof typeof was])) { return; } @@ -162,8 +164,11 @@ const updatePrometheusConfig = async () => { Meteor.clearInterval(resetTimer); if (is.resetInterval) { resetTimer = Meteor.setInterval(() => { - client.register.getMetricsAsArray().forEach((metric) => { - metric.hashMap = {}; + client.register.getMetricsAsArray().then((metrics) => { + metrics.forEach((metric) => { + // @ts-expect-error + metric.hashMap = {}; + }); }); }, is.resetInterval); } @@ -177,7 +182,7 @@ const updatePrometheusConfig = async () => { } if (is.collectGC && gcStatsInitiated === false) { gcStatsInitiated = true; - gcStats()(); + gcStats(client.register)(); } } catch (error) { SystemLogger.error(error); diff --git a/apps/meteor/definition/externals/meteor/facts-base.d.ts b/apps/meteor/definition/externals/meteor/facts-base.d.ts new file mode 100644 index 000000000000..9b56d44d5ce2 --- /dev/null +++ b/apps/meteor/definition/externals/meteor/facts-base.d.ts @@ -0,0 +1,5 @@ +declare module 'meteor/facts-base' { + namespace Facts { + function incrementServerFact(pkg: 'pkg' | 'fact', fact: string | number, increment: number): void; + } +} diff --git a/apps/meteor/definition/externals/meteor/mongo.d.ts b/apps/meteor/definition/externals/meteor/mongo.d.ts index 7efb5b5b0860..7c973f888777 100644 --- a/apps/meteor/definition/externals/meteor/mongo.d.ts +++ b/apps/meteor/definition/externals/meteor/mongo.d.ts @@ -12,6 +12,7 @@ declare module 'meteor/mongo' { onSkippedEntries(callback: Function): void; waitUntilCaughtUp(): void; _defineTooFarBehind(value: number): void; + _entryQueue?: unknown[]; } interface MongoConnection { diff --git a/apps/meteor/package.json b/apps/meteor/package.json index 147a917ded98..a65e590deb82 100644 --- a/apps/meteor/package.json +++ b/apps/meteor/package.json @@ -119,6 +119,7 @@ "@types/nodemailer": "^6.4.4", "@types/parseurl": "^1.3.1", "@types/photoswipe": "^4.1.2", + "@types/prometheus-gc-stats": "^0.6.2", "@types/psl": "^1.1.0", "@types/react": "~17.0.42", "@types/react-dom": "~17.0.14", diff --git a/yarn.lock b/yarn.lock index e4a840710703..73009ff40ee9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4853,6 +4853,7 @@ __metadata: "@types/nodemailer": ^6.4.4 "@types/parseurl": ^1.3.1 "@types/photoswipe": ^4.1.2 + "@types/prometheus-gc-stats": ^0.6.2 "@types/proxy-from-env": ^1.0.1 "@types/psl": ^1.1.0 "@types/react": ~17.0.42 @@ -7665,6 +7666,13 @@ __metadata: languageName: node linkType: hard +"@types/prometheus-gc-stats@npm:^0.6.2": + version: 0.6.2 + resolution: "@types/prometheus-gc-stats@npm:0.6.2" + checksum: 403b3dbd792b83e592376e2002260cf57fb18f98c8b8528a24dc65e545cb8d0e9bf9941dc28edfa397b670b9a7336913da991005ef0278611209dde9b51406db + languageName: node + linkType: hard + "@types/prop-types@npm:*": version: 15.7.4 resolution: "@types/prop-types@npm:15.7.4" From 37b470063703c5b0ff12574ba52f489022860faa Mon Sep 17 00:00:00 2001 From: Tiago Evangelista Pinto Date: Wed, 8 Jun 2022 15:05:01 -0300 Subject: [PATCH 2/6] [FIX] AccountBox checks for condition (#25708) ## Proposed changes (including videos or screenshots) ## Issue(s) Close: #25704 ## Steps to test or reproduce ## Further comments Fixes #25704 --- .../app/ui-utils/client/lib/AccountBox.ts | 36 +++++++++++++------ .../client/sidebar/header/UserDropdown.tsx | 6 ++-- 2 files changed, 29 insertions(+), 13 deletions(-) diff --git a/apps/meteor/app/ui-utils/client/lib/AccountBox.ts b/apps/meteor/app/ui-utils/client/lib/AccountBox.ts index dddf7636a361..dfee8ff6f5a6 100644 --- a/apps/meteor/app/ui-utils/client/lib/AccountBox.ts +++ b/apps/meteor/app/ui-utils/client/lib/AccountBox.ts @@ -1,4 +1,4 @@ -import { IUActionButtonWhen, IUIActionButton } from '@rocket.chat/apps-engine/definition/ui/IUIActionButtonDescriptor'; +import { IUIActionButton, IUActionButtonWhen } from '@rocket.chat/apps-engine/definition/ui/IUIActionButtonDescriptor'; import { ReactiveVar } from 'meteor/reactive-var'; import { Tracker } from 'meteor/tracker'; import { Meteor } from 'meteor/meteor'; @@ -9,18 +9,28 @@ import { SideNav } from './SideNav'; import { appLayout } from '../../../../client/lib/appLayout'; import { applyDropdownActionButtonFilters } from '../../../ui-message/client/actionButtons/lib/applyButtonFilters'; -export interface IAccountBoxItem extends Omit { +export interface IAppAccountBoxItem extends IUIActionButton { name: string; icon?: string; href?: string; sideNav?: string; isAppButtonItem?: boolean; - subItems?: [IAccountBoxItem]; + subItems?: [IAppAccountBoxItem]; when?: Omit; } +type AccountBoxItem = { + name: string; + icon: string; + href: string; + sideNav?: string; + condition: () => boolean; +}; + +export const isAppAccountBoxItem = (item: IAppAccountBoxItem | AccountBoxItem): item is IAppAccountBoxItem => 'isAppButtonItem' in item; + export class AccountBoxBase { - private items = new ReactiveVar([]); + private items = new ReactiveVar([]); private status = 0; @@ -51,25 +61,31 @@ export class AccountBoxBase { this.status = 0; } - public async addItem(newItem: IAccountBoxItem): Promise { + public async addItem(newItem: IAppAccountBoxItem): Promise { Tracker.nonreactive(() => { const actual = this.items.get(); - actual.push(newItem as never); + actual.push(newItem); this.items.set(actual); }); } - public async deleteItem(item: IAccountBoxItem): Promise { + public async deleteItem(item: IAppAccountBoxItem): Promise { Tracker.nonreactive(() => { const actual = this.items.get(); - const itemIndex = actual.findIndex((actualItem: IAccountBoxItem) => actualItem.appId === item.appId); + const itemIndex = actual.findIndex((actualItem: IAppAccountBoxItem) => actualItem.appId === item.appId); actual.splice(itemIndex, 1); this.items.set(actual); }); } - public getItems(): IAccountBoxItem[] { - return this.items.get().filter((item: IAccountBoxItem) => applyDropdownActionButtonFilters(item)); + public getItems(): (IAppAccountBoxItem | AccountBoxItem)[] { + return this.items.get().filter((item: IAppAccountBoxItem | AccountBoxItem) => { + if ('condition' in item) { + return item.condition(); + } + + return applyDropdownActionButtonFilters(item); + }); } public addRoute(newRoute: any, router: any, wait = async (): Promise => null): Router { diff --git a/apps/meteor/client/sidebar/header/UserDropdown.tsx b/apps/meteor/client/sidebar/header/UserDropdown.tsx index a56c63d6abba..d74898a8e173 100644 --- a/apps/meteor/client/sidebar/header/UserDropdown.tsx +++ b/apps/meteor/client/sidebar/header/UserDropdown.tsx @@ -8,7 +8,7 @@ import React, { ReactElement } from 'react'; import { triggerActionButtonAction } from '../../../app/ui-message/client/ActionManager'; import { AccountBox, SideNav } from '../../../app/ui-utils/client'; -import { IAccountBoxItem } from '../../../app/ui-utils/client/lib/AccountBox'; +import { IAppAccountBoxItem, isAppAccountBoxItem } from '../../../app/ui-utils/client/lib/AccountBox'; import { userStatus } from '../../../app/user-status/client'; import { callbacks } from '../../../lib/callbacks'; import MarkdownText from '../../components/MarkdownText'; @@ -105,7 +105,7 @@ const UserDropdown = ({ user, onClose }: UserDropdownProps): ReactElement => { const accountBoxItems = useReactiveValue(getItems); - const appBoxItems = (): IAccountBoxItem[] => accountBoxItems.filter((item) => item.isAppButtonItem); + const appBoxItems = (): IAppAccountBoxItem[] => accountBoxItems.filter((item): item is IAppAccountBoxItem => isAppAccountBoxItem(item)); return ( @@ -176,7 +176,7 @@ const UserDropdown = ({ user, onClose }: UserDropdownProps): ReactElement => { {showAdmin && } {accountBoxItems - .filter((item) => !item.isAppButtonItem) + .filter((item) => !isAppAccountBoxItem(item)) .map((item, i) => { const action = (): void => { if (item.href) { From 7a5f1f5f9832e2b31c377de3ffabd81ec81b89b0 Mon Sep 17 00:00:00 2001 From: Patrick Pankotsch Date: Mon, 6 Jun 2022 16:40:57 +0200 Subject: [PATCH 3/6] [FIX] Bump meteor-node-stubs to version 1.2.3 (#25669) * Bumb meteoer-node-stubs to version 1.2.3 to fix issue #25460 * yarn.lock Co-authored-by: Guilherme Gazzo --- apps/meteor/package.json | 2 +- yarn.lock | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/meteor/package.json b/apps/meteor/package.json index a65e590deb82..ab070970acc2 100644 --- a/apps/meteor/package.json +++ b/apps/meteor/package.json @@ -294,7 +294,7 @@ "mailparser": "^3.4.0", "marked": "^0.7.0", "mem": "^8.1.1", - "meteor-node-stubs": "^1.2.1", + "meteor-node-stubs": "^1.2.3", "mime-db": "^1.52.0", "mime-type": "^4.0.0", "mkdirp": "^1.0.4", diff --git a/yarn.lock b/yarn.lock index 73009ff40ee9..cd5a1e06cb73 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4971,7 +4971,7 @@ __metadata: mailparser: ^3.4.0 marked: ^0.7.0 mem: ^8.1.1 - meteor-node-stubs: ^1.2.1 + meteor-node-stubs: ^1.2.3 mime-db: ^1.52.0 mime-type: ^4.0.0 mkdirp: ^1.0.4 @@ -23309,7 +23309,7 @@ __metadata: languageName: node linkType: hard -"meteor-node-stubs@npm:^1.2.1": +"meteor-node-stubs@npm:^1.2.3": version: 1.2.3 resolution: "meteor-node-stubs@npm:1.2.3" dependencies: From a17e366bd5b6c8784e2dafb114b6d5320806ea04 Mon Sep 17 00:00:00 2001 From: Duda Nogueira Date: Wed, 8 Jun 2022 15:22:49 -0300 Subject: [PATCH 4/6] [FIX] Wrong argument name preventing Omnichannel Chat Forward to User (#25723) --- .../client/components/Omnichannel/modals/ForwardChatModal.tsx | 2 +- packages/rest-typings/src/v1/users.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/meteor/client/components/Omnichannel/modals/ForwardChatModal.tsx b/apps/meteor/client/components/Omnichannel/modals/ForwardChatModal.tsx index 853dd7c7d293..e28465d697e2 100644 --- a/apps/meteor/client/components/Omnichannel/modals/ForwardChatModal.tsx +++ b/apps/meteor/client/components/Omnichannel/modals/ForwardChatModal.tsx @@ -59,7 +59,7 @@ const ForwardChatModal = ({ let uid; if (username) { - const { user } = await getUserData({ userName: username }); + const { user } = await getUserData({ username }); uid = user?._id; } diff --git a/packages/rest-typings/src/v1/users.ts b/packages/rest-typings/src/v1/users.ts index 0f9951f4dfec..e6b69c0ec199 100644 --- a/packages/rest-typings/src/v1/users.ts +++ b/packages/rest-typings/src/v1/users.ts @@ -2,7 +2,7 @@ import type { ITeam, IUser } from '@rocket.chat/core-typings'; export type UsersEndpoints = { 'users.info': { - GET: (params: { userId?: IUser['_id']; userName?: IUser['username'] }) => { + GET: (params: { userId?: IUser['_id']; username?: IUser['username'] }) => { user: IUser; }; }; From 7701b40f5f10be90a77e3fc099377ab26cbe0435 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Wed, 8 Jun 2022 23:05:39 -0300 Subject: [PATCH 5/6] Bump version to 4.8.1 --- apps/meteor/.docker/Dockerfile.rhel | 2 +- apps/meteor/.snapcraft/resources/prepareRocketChat | 2 +- apps/meteor/.snapcraft/snap/snapcraft.yaml | 2 +- apps/meteor/app/utils/rocketchat.info | 2 +- apps/meteor/package.json | 2 +- package.json | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/meteor/.docker/Dockerfile.rhel b/apps/meteor/.docker/Dockerfile.rhel index 2328d2651396..5e04c5e6337a 100644 --- a/apps/meteor/.docker/Dockerfile.rhel +++ b/apps/meteor/.docker/Dockerfile.rhel @@ -1,6 +1,6 @@ FROM registry.access.redhat.com/ubi8/nodejs-12 -ENV RC_VERSION 4.8.0 +ENV RC_VERSION 4.8.1 MAINTAINER buildmaster@rocket.chat diff --git a/apps/meteor/.snapcraft/resources/prepareRocketChat b/apps/meteor/.snapcraft/resources/prepareRocketChat index 5768dcd8abe6..07c2dded465b 100755 --- a/apps/meteor/.snapcraft/resources/prepareRocketChat +++ b/apps/meteor/.snapcraft/resources/prepareRocketChat @@ -1,6 +1,6 @@ #!/bin/bash -curl -SLf "https://releases.rocket.chat/4.8.0/download/" -o rocket.chat.tgz +curl -SLf "https://releases.rocket.chat/4.8.1/download/" -o rocket.chat.tgz tar xf rocket.chat.tgz --strip 1 diff --git a/apps/meteor/.snapcraft/snap/snapcraft.yaml b/apps/meteor/.snapcraft/snap/snapcraft.yaml index b561a06408a6..543a4e12bb22 100644 --- a/apps/meteor/.snapcraft/snap/snapcraft.yaml +++ b/apps/meteor/.snapcraft/snap/snapcraft.yaml @@ -7,7 +7,7 @@ # 5. `snapcraft snap` name: rocketchat-server -version: 4.8.0 +version: 4.8.1 summary: Rocket.Chat server description: Have your own Slack like online chat, built with Meteor. https://rocket.chat/ confinement: strict diff --git a/apps/meteor/app/utils/rocketchat.info b/apps/meteor/app/utils/rocketchat.info index bef5f29b5973..e8e4fcd30038 100644 --- a/apps/meteor/app/utils/rocketchat.info +++ b/apps/meteor/app/utils/rocketchat.info @@ -1,3 +1,3 @@ { - "version": "4.8.0" + "version": "4.8.1" } diff --git a/apps/meteor/package.json b/apps/meteor/package.json index ab070970acc2..9aeb463fb026 100644 --- a/apps/meteor/package.json +++ b/apps/meteor/package.json @@ -1,7 +1,7 @@ { "name": "@rocket.chat/meteor", "description": "The Ultimate Open Source WebChat Platform", - "version": "4.8.0", + "version": "4.8.1", "private": true, "author": { "name": "Rocket.Chat", diff --git a/package.json b/package.json index 374f815f9db7..6c270e65198f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rocket.chat", - "version": "4.8.0", + "version": "4.8.1", "description": "Rocket.Chat Monorepo", "main": "index.js", "private": true, From 0b106e3645c313592a99610e60f7bcca5b99cf93 Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Wed, 8 Jun 2022 23:16:26 -0300 Subject: [PATCH 6/6] Bump version to 4.8.1 --- .github/history.json | 17349 ++++++++++++++++++++++++++++++++++++++++- HISTORY.md | 33 + 2 files changed, 17381 insertions(+), 1 deletion(-) diff --git a/.github/history.json b/.github/history.json index 4999aea0a0f9..cd3eda29964f 100644 --- a/.github/history.json +++ b/.github/history.json @@ -86043,6 +86043,17353 @@ ] } ] + }, + "3.18.6": { + "node_version": "14.18.3", + "npm_version": "6.14.15", + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "25580", + "title": "Release 4.7.2", + "userLogin": "d-gubert", + "contributors": [ + "tiagoevanp", + "d-gubert", + "MartinSchoeler", + "ggazzo", + "cauefcr", + "geekgonecrazy" + ] + }, + { + "pr": "25544", + "title": "[FIX] Initial User not added to default channel", + "userLogin": "geekgonecrazy", + "description": "If injecting initial user. The user wasnโ€™t added to the default General channel", + "milestone": "4.7.2", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25520", + "title": "[FIX] User abandonment setting was not working doe to failing event hook", + "userLogin": "cauefcr", + "description": "A setting watcher and the query for grabbing abandoned chats were broken, now they're not.", + "milestone": "4.7.2", + "contributors": [ + "cauefcr", + "tiagoevanp" + ] + }, + { + "pr": "25495", + "title": "[FIX] Dynamic load matrix is enabled and handle failure ", + "userLogin": "ggazzo", + "milestone": "4.7.2", + "contributors": [ + "ggazzo", + "geekgonecrazy" + ] + }, + { + "pr": "25409", + "title": "[FIX] One of the triggers was not working correctly", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "tiagoevanp" + ] + }, + { + "pr": "25407", + "title": "[FIX] UI/UX issues on Live Chat widget", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "dougfabris" + ] + }, + { + "pr": "25312", + "title": "Chore: Add Livechat repo into Monorepo packages", + "userLogin": "tiagoevanp", + "milestone": "4.7.2", + "contributors": [ + "tiagoevanp", + "ggazzo", + "web-flow", + "MartinSchoeler" + ] + }, + { + "pr": "25510", + "title": "Release 4.7.1", + "userLogin": "d-gubert", + "contributors": [ + "felipe-menelau", + "d-gubert", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25471", + "title": "[FIX] Spotlight results showing usernames instead of real names", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25434", + "title": "[FIX] LDAP sync removing users from channels when multiple groups are mapped to it", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25441", + "title": "[NEW] Use setting to determine if initial general channel is needed", + "userLogin": "felipe-menelau", + "description": "- Adds flag responsible for overwriting #general channel creation", + "milestone": "4.7.1", + "contributors": [ + "felipe-menelau", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25390", + "title": "Release 4.7.0", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "web-flow", + "lingohub[bot]", + "dependabot[bot]", + "ggazzo", + "dougfabris", + "gabriellsh", + "tmontini", + "debdutdeb", + "Himanshu664", + "yash-rajpal", + "MartinSchoeler" + ] + }, + { + "pr": "25380", + "title": "Regression: Fix clicking on visitor's chat in the sidebar does not display the chat window", + "userLogin": "filipemarins", + "description": "Fix: livechat room not opening.", + "milestone": "4.7.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25314", + "title": "Regression: Fix size of custom emoji and render emoji on thread message preview", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25371", + "title": "Chore: Bump fuselage", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25336", + "title": "Chore: Add options to debug stdout and rate limiter", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25368", + "title": "Regression: Fix English i18n react text", + "userLogin": "d-gubert", + "description": "Incorrect text in reaction tooltip has been fixed", + "milestone": "4.7.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25349", + "title": "Regression: Rocket.Chat Webapp not loading.", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "gabriellsh" + ] + }, + { + "pr": "25317", + "title": "Regression: Fix multi line is not showing an empty line between lines", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25320", + "title": "Regression: bump onboarding-ui version", + "userLogin": "guijun13", + "description": "- Bump to 'next' the onboarding-ui package from fuselage.\r\n- Update from 'companyEmail' to 'email' adminData usage types", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25335", + "title": "Chore: Create README.md for Rest Typings", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25327", + "title": "Regression: Messages in new message template Crashing.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25323", + "title": "Regression: Better MongoDB connection management for micro services", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25250", + "title": "Regression: Validate empty fields for Message template", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25319", + "title": "Regression: Fix the alpine image and dev UX installing matrix-rust-sdk-bindings", + "userLogin": "geekgonecrazy", + "description": "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.\r\n\r\nThis temporarily switches to a fork of the matrix-appservice-bridge package.\r\n\r\nMade changes to one of its child dependencies `matrix-rust-sdk-bindings` that adds pre-built binaries for mac and musl (for alpine).", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy", + "web-flow", + "d-gubert" + ] + }, + { + "pr": "25255", + "title": "Regression: Change preference to be default legacy messages", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25306", + "title": "Regression: Fix reply button not working when hideFlexTab is enabled", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25311", + "title": "Regression: Add eslint package to micro services Dockerfile", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25218", + "title": "Chore: ensure scripts use cross-env and ignore some dirs (ROC-54)", + "userLogin": "souzaramon", + "description": "- data and test-failure should be ignored\r\n- ensure scripts use cross-env", + "contributors": [ + "souzaramon" + ] + }, + { + "pr": "25313", + "title": "Regression: Revert Bugsnag version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25305", + "title": "Regression: eslint not running on packages", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ggazzo" + ] + }, + { + "pr": "25299", + "title": "Regression: Add `isPending` status to message", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25301", + "title": "Regression: Shows error if micro service cannot connect to Mongo", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25287", + "title": "Regression: Use exact Node version on micro services Docker images", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25286", + "title": "Chore: Add root package.json to houston files", + "userLogin": "d-gubert", + "description": "See title", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25284", + "title": "Chore: Sync with master", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "25269", + "title": "Chore: Minor dependency updates", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25224", + "title": "Chore: Add yarn plugin to check node and yarn version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25235", + "title": "Release 4.6.3", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25280", + "title": "Chore: Remove package-lock.json from houston files", + "userLogin": "d-gubert", + "description": "Houston config in the `package.json` file still mentioned `package-lock.json`, but it doesn't exist anymore", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25260", + "title": "[FIX] Adjust email label in Setup Wizard i18n files", + "userLogin": "guijun13", + "description": "- remove 'Company' label on onboarding email keys in certain languages", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25275", + "title": "Chore: Fix return type warnings", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23870", + "title": "[NEW] Expand Apps Engine's environment variable allowed list", + "userLogin": "cuonghuunguyen", + "milestone": "4.7.0", + "contributors": [ + null, + "debdutdeb", + "web-flow", + "cuonghuunguyen", + "dougfabris" + ] + }, + { + "pr": "25273", + "title": "Regression: Fix federation Matrix bridge startup", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25092", + "title": "[FIX] Message preview not available for queued chats", + "userLogin": "murtaza98", + "milestone": "4.7.0", + "contributors": [ + "murtaza98", + "KevLehman" + ] + }, + { + "pr": "23688", + "title": "[NEW] Alpha Matrix Federation", + "userLogin": "alansikora", + "description": "Experimental support for Matrix Federation with a Bridge\r\n\r\nhttps://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4", + "milestone": "4.7.0", + "contributors": [ + "alansikora", + "geekgonecrazy", + "MarcosSpessatto", + "rodrigok" + ] + }, + { + "pr": "25259", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25261", + "title": "[FIX] Incorrect websocket url in livechat widget", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "25007", + "title": "[FIX] Showing Blank Message Inside Report", + "userLogin": "nishant23122000", + "description": "https://user-images.githubusercontent.com/53515714/161038085-4a86c7ae-6751-4996-9767-b1c9e0331a6c.mp4", + "contributors": [ + "nishant23122000" + ] + }, + { + "pr": "25251", + "title": "Regression: Add select message to system message and thread preview and allow select on legacy template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "web-flow", + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25239", + "title": "[FIX] Add katex render to new message react template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "25257", + "title": "Chore: Update Livechat to the last version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24515", + "title": "[FIX] Custom sound error toast messages", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25211", + "title": "Regression: Avatar not loading on first direct message", + "userLogin": "filipemarins", + "description": "fix avatar not loading on a first direct message", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo" + ] + }, + { + "pr": "25254", + "title": "Regression: Show username and real name on the message system", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25217", + "title": "[IMPROVE] Performance for some Omnichannel features", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25200", + "title": "[FIX] room creation fails if app framework is disabled", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24565", + "title": "[IMPROVE] Add OTR Room States", + "userLogin": "yash-rajpal", + "description": "Earlier OTR room uses only 2 states, we need more states to support future features. \r\nThis adds more states for the OTR contextualBar.\r\n\r\n- Expired\r\n\"Screen\r\n\r\n- Declined\r\nScreen Shot 2022-04-20 at 13 49 28\r\n\r\n- Error\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "dougfabris" + ] + }, + { + "pr": "25170", + "title": "[FIX] Client disconnection on network loss", + "userLogin": "amolghode1981", + "description": "Agent gets disconnected (or Unregistered) from asterisk in multiple ways. The goal is that agent should remain online\r\nunless agent explicitly logs off.\r\nAgent can stop receiving calls in multiple ways due to network loss. Network loss can happen in following ways.\r\n1. User tries to switch the network. User experiences a glitch of disconnectivity. This can be simulated by turning the network off\r\nin the network tab of chrome's dev tool. This can disconnect the UA if the disconnection happens just before the registration refresh.\r\n2. Second reason is when computer goes in sleep mode.\r\n3. Third reason is that when asterisk is crashed/in maintenance mode/explicitly stopped.\r\n\r\nSolution:\r\nThe idea is to detect the network disconnection and start the start the attempts to reconnect.\r\nThe detection of the disconnection does not happen in case#1. The SIPUA's UserAgent transport does not\r\ncall onDisconnected when network loss of such kind happens. To tackle this problem, window's online and offline event handlers are\r\nused.\r\n\r\nThe number of retries is configurable but ideally it is to be kept at -1. Whenever disconnection happens, it should keep on trying to\r\nreconnect with increasing backoff time. This behaviour is useful when the asterisk is stopped.\r\n\r\nWhen the server is disconnected, it should be indicated on the phone button.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25244", + "title": "[FIX] Read receipts show with color gray when not read yet", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25230", + "title": "[FIX] VoIP disabled/enabled sequence puts voip agent in error state", + "userLogin": "amolghode1981", + "description": "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)\r\n\r\nIt 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.\r\n\r\nSolution:\r\n\r\n1. 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.\r\n2. From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.\r\n3. 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.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25087", + "title": "[NEW] Add expire index to integration history", + "userLogin": "geekgonecrazy", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy" + ] + }, + { + "pr": "24521", + "title": "Chore: update OTR icon", + "userLogin": "kibonusp", + "description": "I changed the shredder icon in OTR contextual bar to the stopwatch icon, recently added to the fuselage.", + "milestone": "4.7.0", + "contributors": [ + "kibonusp", + "yash-rajpal", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "25237", + "title": "[FIX] Toolbox hiding under contextual bar", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25231", + "title": "[IMPROVE] Added MaxNickNameLength and MaxBioLength constants", + "userLogin": "aakash-gitdev", + "contributors": [ + "aakash-gitdev", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25175", + "title": "[FIX] Reply button behavior on broadcast channel", + "userLogin": "filipemarins", + "description": "Hide reply button for the user that sent the message", + "contributors": [ + "filipemarins", + "web-flow" + ] + }, + { + "pr": "25216", + "title": "[FIX] Read receipts showing before message read", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25222", + "title": "[FIX] Add reaction not working in legacy messages", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25223", + "title": "Chore: Add error boundary to message component", + "userLogin": "gabriellsh", + "description": "Not crash the whole application if something goes wrong in the MessageList component.\r\n\r\n![image](https://user-images.githubusercontent.com/40830821/162269915-931c5c3c-c979-4234-b74c-371f67467ce0.png)", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25130", + "title": "Chore: Update Livechat version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25073", + "title": "[FIX] AgentOverview analytics wrong departmentId parameter", + "userLogin": "paulobernardoaf", + "description": "When filtering the analytics charts by department, data would not appear because the object:\r\n```js\r\n{\r\n value: \"department-id\",\r\n label: \"department-name\"\r\n}\r\n```\r\nwas being used in the `departmentId` parameter.\r\n\r\n- Before:\r\n![image](https://user-images.githubusercontent.com/30026625/161832057-d96ffd21-a7dd-421e-bfaa-3b9f4a9127b2.png)\r\n\r\n- After:\r\n![image](https://user-images.githubusercontent.com/30026625/161831092-9ee77b51-b083-4f45-9c48-ab2e0511c4d6.png)", + "milestone": "4.7.0", + "contributors": [ + "paulobernardoaf" + ] + }, + { + "pr": "25056", + "title": "[FIX] Close room when dismiss wrap up call modal", + "userLogin": "tiagoevanp", + "milestone": "4.7.0", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25208", + "title": "Regression: yarn dev triggers build dependencies", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24714", + "title": "[FIX] Added invalid password error message", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25196", + "title": "Chore: Tests with Playwright (task: ROC-28, 09-channels)", + "userLogin": "tmontini", + "contributors": [ + "tmontini" + ] + }, + { + "pr": "25174", + "title": "Chore: Template to generate packages", + "userLogin": "ggazzo", + "description": "```\r\nnpx hygen package new test\r\n```", + "contributors": [ + "ggazzo", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "25193", + "title": "Regression: Fix micro services Docker build", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25191", + "title": "Release 4.6.2", + "userLogin": "sampaiodiego", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25101", + "title": "[FIX] Database indexes not being created", + "userLogin": "sampaiodiego", + "milestone": "4.6.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25095", + "title": "Release 4.6.1", + "userLogin": "sampaiodiego", + "contributors": [ + "dougfabris", + "sampaiodiego", + "gabriellsh", + "yash-rajpal", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25180", + "title": "Chore: Remove duplicated useUserRoom", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25167", + "title": "Chore: TS migration SortList", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25181", + "title": "Regression: Fix services Docker build on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25089", + "title": "[FIX] UserCard sanitization", + "userLogin": "dougfabris", + "description": "- Rewrites the component to TS\r\n- Fixes some visual issues\r\n\r\n### before\r\n![Screen Shot 2022-04-07 at 00 23 11](https://user-images.githubusercontent.com/27704687/162113925-5c9484d1-23e9-4623-8b86-3fbc71b461a1.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-07 at 00 07 13](https://user-images.githubusercontent.com/27704687/162112353-afd6aac6-b27c-4470-a642-631b8080d59e.png)", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25085", + "title": "Chore: move definitions to packages", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25168", + "title": "Regression: CI playwright", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25125", + "title": "Chore: Convert NotificationStatus to TS", + "userLogin": "jeanfbrito", + "contributors": [ + "jeanfbrito", + "ggazzo" + ] + }, + { + "pr": "25148", + "title": "[FIX] Message menu action not working on legacy messages.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25122", + "title": "Chore: Tests with Playwright (task: All works)", + "userLogin": "weslley543", + "contributors": [ + "weslley543" + ] + }, + { + "pr": "25129", + "title": "Chore: Remove old files from removed Omnichannel feature", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25128", + "title": "Chore: Convert admin custom sound to tsx", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25126", + "title": "Chore: Migrate oauth2server to typescript", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25123", + "title": "Chore: Convert LivechatAgentActivity to raw model and TS", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25124", + "title": "Chore: Remove unused Drone CI files", + "userLogin": "geekgonecrazy", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25121", + "title": "Chore: Convert Mailer to TS", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "sampaiodiego" + ] + }, + { + "pr": "25107", + "title": "Regression: Fix CI monorepo build", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25074", + "title": "Chore: Monorepo ", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "sampaiodiego", + "ggazzo" + ] + }, + { + "pr": "25097", + "title": "[IMPROVE] Rename upgrade tab routes", + "userLogin": "guijun13", + "description": "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.", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25076", + "title": "Bump eslint-plugin-anti-trojan-source from 1.0.6 to 1.1.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24936", + "title": "[FIX] End call button disappearing when on-hold", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24932", + "title": "[FIX] Use correct room property for call ended at", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "23971", + "title": "[NEW] Message Template React Component", + "userLogin": "ggazzo", + "description": "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).\r\n\r\n\r\n\r\n![Screen Shot 2022-04-05 at 11 14 18](https://user-images.githubusercontent.com/27704687/161774027-38dd9c7b-eeeb-45e2-b9d8-ea2a9be8486d.png)\r\nIn case you encounter any problems, or want to compare, temporarily it is possible to use the old version\r\n\r\n\"image\"", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "19866", + "title": "[FIX] Video and Audio not skipping forward", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "tassoevan", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24405", + "title": "[IMPROVE] Add tooltip to sidebar room menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24431", + "title": "[IMPROVE] Added tooltip options for message menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "24166", + "title": "[FIX] Replace encrypted text to Encrypted Message Placeholder", + "userLogin": "yash-rajpal", + "description": "### before \r\n![image](https://user-images.githubusercontent.com/27704687/150807900-154a9cdb-ee13-4333-8628-f287ab914b40.png)\r\n\r\n### after\r\n\"Screenshot", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24984", + "title": "[FIX] Prevent sequential messages edited icon to hide on hover", + "userLogin": "dougfabris", + "description": "### before\r\n\"Screen\r\n\r\n### after\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25024", + "title": "[IMPROVE] Improve active/hover colors in account sidebar", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24856", + "title": "[FIX] Full error message is visible", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "tassoevan" + ] + }, + { + "pr": "24708", + "title": "Chore: Cancel running jobs if PR is updated", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24900", + "title": "Chore: organize test files and fix code coverage", + "userLogin": "tmontini", + "contributors": [ + null, + "tmontini", + "rodrigok" + ] + }, + { + "pr": "24464", + "title": "Chore: Missing keys in APIsDisplay", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "25057", + "title": "Bump ejson from 2.2.1 to 2.2.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25053", + "title": "Chore: Remove Alpine image deps after using them", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25052", + "title": "Bump pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25031", + "title": "Chore: TS conversion folder client", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24991", + "title": "Bump minimist from 1.2.5 to 1.2.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25002", + "title": "Bump template-file from 6.0.0 to 6.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25042", + "title": "Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25043", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-04-04Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "25028", + "title": "Merge master into develop & Set version to 4.7.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "AllanPazRibeiro", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25027", + "title": "Release 4.6.0", + "userLogin": "sampaiodiego", + "contributors": [ + "pierre-lehnen-rc", + "aswinidev", + "web-flow", + "renatobecker", + "sampaiodiego", + "dependabot[bot]", + "lingohub[bot]", + "matheusbsilva137", + "amolghode1981", + "debdutdeb", + "eduardofcabrera", + "juliajforesti", + "tiagoevanp", + "KevLehman" + ] + }, + { + "pr": "25021", + "title": "Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25020", + "title": "Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25019", + "title": "Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25018", + "title": "Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25017", + "title": "Regression: Add createdOTR index", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24998", + "title": "Release 4.5.5", + "userLogin": "sampaiodiego", + "contributors": [ + "MartinSchoeler", + "sampaiodiego", + "filipemarins", + "tiagoevanp" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24938", + "title": "Release 4.5.4", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "geekgonecrazy", + "AllanPazRibeiro" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25015", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "description": "It uses the last stable version of Fuselage packages.", + "milestone": "4.6.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24999", + "title": "Regression: Custom roles displaying ID instead of name on some admin screens", + "userLogin": "pierre-lehnen-rc", + "description": "![image](https://user-images.githubusercontent.com/55164754/160981416-555bcaa1-c075-4260-937c-64523472da43.png)\r\n![image](https://user-images.githubusercontent.com/55164754/160981452-6eae4e74-8425-4073-8256-472aba72b9db.png)", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24835", + "title": "[NEW] Upgrade Tab", + "userLogin": "gabriellsh", + "description": "![image](https://user-images.githubusercontent.com/27704687/160172260-c656282e-a487-4092-948d-d11c9bacb598.png)", + "milestone": "4.6.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "web-flow", + "tassoevan", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24980", + "title": "Regression: Error is raised when there's no Asterisk queue available yet", + "userLogin": "amolghode1981", + "milestone": "4.6.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24969", + "title": "Chore: Storybook mocking and examples improved", + "userLogin": "tassoevan", + "description": "- Stories from `ee/` included;\r\n- Differentiate root story kinds;\r\n- Mocking of `ServerContext` via Storybook parameters.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24989", + "title": "Revert: [NEW] Engagement Statistics", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24897", + "title": "[FIX] Room archived/unarchived system messages aren't sent when editing room settings", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Fix the \"Hide System Messages\" option for the \"Room archived\" and \"Room unarchived\" system messages;", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24925", + "title": "Chore: add some missing REST definitions", + "userLogin": "gerzonc", + "description": "On the [mobile client](https://github.com/RocketChat/Rocket.Chat.ReactNative), 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.", + "contributors": [ + "gerzonc" + ] + }, + { + "pr": "24971", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24921", + "title": "[FIX] Register with Secret URL", + "userLogin": "yash-rajpal", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "24948", + "title": "Regression: Fix unexpected errors breaking ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24320", + "title": "[FIX] LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Display the avatar image preview (orientation) according to the `FileUpload_RotateImages` setting.", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24908", + "title": "Regression: Call doesn't stop ringing after agent unregistration", + "userLogin": "MartinSchoeler", + "milestone": "4.6.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24777", + "title": "[NEW] Engagement Statistics", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24920", + "title": "Regression: Fix account service login expiration", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24867", + "title": "[FIX] Duplicated \"jump to message\" button on starred messages", + "userLogin": "Himanshu664", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24860", + "title": "[FIX] External search providers not working", + "userLogin": "tkurz", + "contributors": [ + "tkurz" + ] + }, + { + "pr": "24052", + "title": "[FIX] Several issues related to custom roles", + "userLogin": "pierre-lehnen-rc", + "description": "- Throw an error when trying to delete a role (User or Subscription role) that are still being used;\r\n- Fix \"Invalid Role\" error for custom roles in Role Editing sidebar;\r\n- Fix \"Users in Role\" screen for custom roles.", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24781", + "title": "[NEW] Telemetry Events", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24887", + "title": "[IMPROVE] Adding new statistics related to voip and omnichannel", + "userLogin": "cauefcr", + "description": "- Total of Canned response messages sent\r\n- Total of tags used\r\n- Last-Chatted Agent Preferred (enabled/disabled)\r\n- Assign new conversations to the contact manager (enabled/disabled)\r\n- How to handle Visitor Abandonment setting\r\n- Amount of chats placed on hold\r\n- VoIP Enabled\r\n- Amount of VoIP Calls\r\n- Amount of VoIP Extensions connected\r\n- Amount of Calls placed on hold (1x per call)\r\n- Fixed Session Aggregation type definitions", + "milestone": "4.6.0", + "contributors": [ + "cauefcr", + "KevLehman" + ] + }, + { + "pr": "24911", + "title": "Chore: Remove old scripts", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24898", + "title": "[FIX] DDP Rate Limiter Translation key", + "userLogin": "gabriellsh", + "description": "Before:\r\n\"image\"\r\n\r\n\r\nNow:\r\n\"image\"", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24831", + "title": "[FIX][ENTERPRISE] Notifications not being sent by ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24884", + "title": "Release 4.5.3", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "tiagoevanp", + "sampaiodiego", + "KevLehman", + "amolghode1981", + "ggazzo" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24814", + "title": "Release 4.5.2", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "MartinSchoeler", + "pierre-lehnen-rc", + "tassoevan", + "debdutdeb", + "KevLehman", + "murtaza98", + "sampaiodiego", + "juliajforesti" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24782", + "title": "Release 4.5.1", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "renatobecker", + "pierre-lehnen-rc", + "sampaiodiego", + "matheusbsilva137", + "amolghode1981", + "juliajforesti", + "tiagoevanp", + "KevLehman", + "MartinSchoeler", + "Aman-Maheshwari", + "cuonghuunguyen" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24606", + "title": "[FIX] Push privacy config to not show username not being respected", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24896", + "title": "[FIX] Wrong business hour behavior", + "userLogin": "murtaza98", + "milestone": "4.6.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24845", + "title": "[FIX] Ignore customClass on messages", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24879", + "title": "[FIX] Apple OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24895", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24749", + "title": "[IMPROVE] New omnichannel statistics and async statistics processing.", + "userLogin": "cauefcr", + "description": "https://app.clickup.com/t/1z4zg4e", + "contributors": [ + "cauefcr" + ] + }, + { + "pr": "24882", + "title": "[FIX] Missing dependency on useEffect at CallProvider", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24779", + "title": "[FIX] auto-join team channels not honoring user preferences", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24869", + "title": "Bump pino from 7.8.1 to 7.9.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24870", + "title": "Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24850", + "title": "Regression: Role Sync not always working", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24823", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24833", + "title": "Bump @types/mailparser from 3.0.2 to 3.4.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24832", + "title": "Bump @types/clipboard from 2.0.1 to 2.0.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24822", + "title": "Bump @types/nodemailer from 6.4.2 to 6.4.4", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24821", + "title": "Bump body-parser from 1.19.0 to 1.19.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24820", + "title": "Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24764", + "title": "Chore: Add E2E tests for livechat/visitor", + "userLogin": "Muramatsu2602", + "description": "- Create a new test suite file under tests/end-to-end/api/livechat\r\n- Create tests for the following endpoints:\r\n + livechat/visitor (create visitor, update visitor, add custom fields to visitors)", + "contributors": [ + "Muramatsu2602", + "KevLehman" + ] + }, + { + "pr": "24729", + "title": "Chore: Add E2E tests for livechat/room.close", + "userLogin": "Muramatsu2602", + "description": "* Create a new test suite file under tests/end-to-end/api/livechat\r\n * Create tests for the following endpoint:\r\n\t + ivechat/room.close", + "contributors": [ + "Muramatsu2602", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24785", + "title": "[FIX] German translation for Monitore", + "userLogin": "JMoVS", + "contributors": [ + "JMoVS", + "web-flow" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24747", + "title": "Chore: APIClass types", + "userLogin": "felipe-rod123", + "description": "This pull request creates a new `restivus` module (.d.ts) for the `api.js` file.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24801", + "title": "Bump is-svg from 4.3.1 to 4.3.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24803", + "title": "Bump prometheus-gc-stats from 0.6.2 to 0.6.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24810", + "title": "Chore: Skip local services changes when shutting down duplicated services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24629", + "title": "[FIX] \"Match error\" when converting a team to a channel", + "userLogin": "matheusbsilva137", + "description": "- Fix \"Match error\" when trying to convert a channel to a team;", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24397", + "title": "Chore: Get Settings Statistics", + "userLogin": "albuquerquefabio", + "contributors": [ + "albuquerquefabio" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24628", + "title": "Chore: converted more hooks to typescript", + "userLogin": "felipe-rod123", + "description": "Converted some functions on `client/hooks/` from JavaScript to Typescript.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24506", + "title": "Chore: added settings endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `settings.ts`.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24226", + "title": "[FIX] Handle Other Formats inside Upload Avatar", + "userLogin": "nishant23122000", + "description": "After resolving issue #24213 : \r\n\r\n\r\nhttps://user-images.githubusercontent.com/53515714/150325012-91413025-786e-4ce0-ae75-629f6b05b024.mp4", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "24424", + "title": "[FIX] Prune Message issue", + "userLogin": "nishant23122000", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24507", + "title": "Chore: added Server Instances endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `instances.ts`.", + "contributors": [ + "felipe-rod123" + ] + }, + { + "pr": "24758", + "title": "[FIX] Prevent call button toggle when user is on call", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24800", + "title": "Regression: Register services right away", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24384", + "title": "Chore: Convert server functions from javascript to typescript", + "userLogin": "felipe-rod123", + "description": "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.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24793", + "title": "[FIX][ENTERPRISE] Auto reload feature of ddp-streamer micro service", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24783", + "title": "Bump pino from 7.8.0 to 7.8.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23121", + "title": "Bump jschardet from 1.6.0 to 3.0.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24753", + "title": "Chore: Micro services fixes and cleanup", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24756", + "title": "Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "24771", + "title": "Chore: fix grammatical errors in Features", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "24759", + "title": "Chore: Fix grammatical errors in Code of Conduct", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24544", + "title": "Chore: Fix Cypress tests", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "tassoevan", + "dougfabris" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24739", + "title": "[IMPROVE][ENTERPRISE] Don't start presence monitor when running micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24738", + "title": "[FIX][ENTERPRISE] DDP streamer not sending data to all clients", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24710", + "title": "[FIX] DDP streamer errors", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24724", + "title": "[FIX][ENTERPRISE] Presence micro service logic", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24717", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24726", + "title": "Chore: Improve logger to allow log of `unknown` values", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24542", + "title": "[FIX] Date Message Export Filter Fix", + "userLogin": "eduardofcabrera", + "description": "Fix message export filter to get all messages between \"from date\" and \"to date\", including \"to date\".", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24709", + "title": "[FIX] API Error preventing adding an email to users without one (like bot/app users)", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24716", + "title": "Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24476", + "title": "[FIX] Nextcloud OAuth for incomplete token URL", + "userLogin": "debdutdeb", + "milestone": "4.6.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24698", + "title": "Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23824", + "title": "Chore: Improvements on role syncing (ldap, oauth and saml)", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan" + ] + }, + { + "pr": "24689", + "title": "Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24642", + "title": "Bump actions/setup-node from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24644", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24668", + "title": "Bump actions/checkout from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24574", + "title": "Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24667", + "title": "Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24666", + "title": "Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24640", + "title": "Bump url-parse from 1.5.7 to 1.5.10", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24653", + "title": "Merge master into develop & Set version to 4.6.0-develop", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "24652", + "title": "Release 4.5.0", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "sampaiodiego", + "web-flow", + "aswinidev", + "debdutdeb", + "dependabot[bot]", + "lingohub[bot]", + "ostjen", + "KevLehman", + "dougfabris", + "LucasFASouza", + "felipe-rod123", + "guijun13", + "pierre-lehnen-rc", + "filipemarins", + "matheusbsilva137", + "gabriellsh" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24028", + "title": "[IMPROVE] Updated links in readme", + "userLogin": "aswinidev", + "contributors": [ + "aswinidev", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24459", + "title": "Release 4.4.2", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "dougfabris", + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "24450", + "title": "[FIX] OAuth mismatch redirect_uri error", + "userLogin": "sampaiodiego", + "milestone": "4.4.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24453", + "title": "Chore: bump fuselage version", + "userLogin": "dougfabris", + "milestone": "4.4.2", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "24432", + "title": "Release 4.4.1", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "sampaiodiego", + "pierre-lehnen-rc", + "dougfabris", + "ostjen" + ] + }, + { + "pr": "24387", + "title": "[FIX] Slash commands previews not working", + "userLogin": "ostjen", + "milestone": "4.4.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24381", + "title": "[FIX] Add ?close to OAuth callback url", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24409", + "title": "[FIX] Startup errors creating indexes", + "userLogin": "sampaiodiego", + "description": "Fix `bio` and `prid` startup index creation errors.", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24401", + "title": "[FIX] Outgoing webhook without scripts not saving messages", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24407", + "title": "[FIX] Skip cloud steps for registered servers on setup wizard", + "userLogin": "dougfabris", + "milestone": "4.4.1", + "contributors": [ + "dougfabris", + "tassoevan", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24418", + "title": "[FIX] Oembed request not respecting payload limit", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24651", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24649", + "title": "Regression: Refresh server connection when MI server settings change", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24648", + "title": "Regression: Prevent button from losing state when rerendering", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24585", + "title": "Regression: Error setting user avatars and mentioning rooms on Slack Import", + "userLogin": "matheusbsilva137", + "description": "- Fix `Mentioned room not found` error when importing rooms from Slack;\r\n- Fix `Forbidden` error when setting avatars for users imported from Slack (on user import/creation);\r\n- Fix incorrect message count on imported rooms;\r\n- Fix missing username on messages imported from Slack;", + "contributors": [ + "matheusbsilva137", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24647", + "title": "Regression: Fix wrong tab name for VoIP settings", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24646", + "title": "Regression: Server crashing if Voip credentials are invalid", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24645", + "title": "Regression: Extension List panel UI not aligned with designs", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24635", + "title": "Regression: Queue counter aggregator for incoming/hanged calls", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24630", + "title": "Regression: Fix double value on holdTime and empty msg on last message", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24624", + "title": "Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "24601", + "title": "Regression: Prevent connect to asterisk when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24626", + "title": "Regression: Encode registration info as JWT when signing key is provided", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24625", + "title": "Regression: Fix time fields and wrap up in Voip Room Contexual bar", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24592", + "title": "Regression: Fix in-correct room status shown to agents", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24619", + "title": "Regression: Do not show toast on incoming voip calls", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24616", + "title": "Regression: Fix incoming voip call ringtone is not ringing", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24610", + "title": "Regression: Mark all rooms as read modal closing instantly.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24615", + "title": "Regression: Fix translation for call started message", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24594", + "title": "Regression: Bunch of settings fixes for VoIP", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24609", + "title": "Regression: Admin Sidebar colors inverted.", + "userLogin": "gabriellsh", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24602", + "title": "Regression: No audio when call comes from Skype/IP phone", + "userLogin": "amolghode1981", + "description": "The audio was not rendered because of re-rendering of react element based on\r\nqueueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted\r\nbecause after accepting call, queueCounter changes or a room gets created.\r\nThe audio element gets recreated. But VoIP user probably holds the old one.\r\nThe behaviour is not predictable when such case happens. If everything gets cleanly setup,\r\neven if the audio element goes headless, it still continues to play the remote audio.\r\nBut in other cases, it is unreferenced the one on dom has its srcObject as null.\r\nThis causes no audio.\r\n\r\nThis fix provides a way to re-initialise the rendering elements in VoIP user\r\nand calls this function on useEffect() if the re-render has happen.", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24596", + "title": "Regression: Fixes in Voice Contextual Bar and Directory", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24603", + "title": "Regression: Fix time format on Voip system messages", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24598", + "title": "Regression: VoIP service button displayed when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24581", + "title": "Regression: Add support to namespace within micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24583", + "title": "Regression: Error when trying to load name of dm rooms for avatars and notifications", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24567", + "title": "[NEW] Marketplace sort filter", + "userLogin": "ujorgeleite", + "description": "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.\r\nDemo gif:\r\n![Marketplace sort filter](https://user-images.githubusercontent.com/43561537/155033709-e07a6306-a85a-4f7f-9624-b53ba5dd7fa9.gif)", + "milestone": "4.5.0", + "contributors": [ + "rique223", + "ujorgeleite" + ] + }, + { + "pr": "23102", + "title": "[NEW] VoIP Support for Omnichannel", + "userLogin": "KevLehman", + "description": "- Created VoipService to manage VoIP connections and PBX connection\r\n- Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)\r\n- Created Basic interfaces to support new services and new model\r\n- Created Endpoints for management interfaces\r\n- Implemented asterisk connector on VoIP service\r\n- Created UI components to show calls incoming and to allow answering/rejecting calls\r\n- Added new settings to control call server/management server connection values\r\n- Added endpoints to associate Omnichannel Agents with PBX Extensions\r\n- Added support for event listening on server side, to get metadata about calls being received/ongoing\r\n- Created new pages to update settings & to see user-extension association\r\n- Created new page to see ongoing calls (and past calls)\r\n- Added support for remote hangup/hold on calls\r\n- Implemented call metrics calculation (hold time, waiting time, talk time)\r\n- Show a notificaiton when call is received", + "milestone": "4.5.0", + "contributors": [ + "KevLehman", + "amolghode1981", + "web-flow", + "tiagoevanp", + "murtaza98", + "MartinSchoeler" + ] + }, + { + "pr": "24562", + "title": "Regression: Fix room not getting created due to null visitor status", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24573", + "title": "Chore: Bump Fuselage packages", + "userLogin": "tassoevan", + "description": "It uses the last stable version of Fuselage packages.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24558", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24572", + "title": "[FIX] 2FA via email when logging in using OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24568", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24536", + "title": "Chore: roomTypes: Stop mixing client and server code together", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.0", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24529", + "title": "[IMPROVE] Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components", + "userLogin": "juliajforesti", + "description": "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\r\n\r\n### before\r\n![Screen Shot 2022-02-19 at 13 33 28](https://user-images.githubusercontent.com/27704687/154809737-8181a06c-4f20-48ea-90f7-01e828b9a452.png)\r\n\r\n### after\r\n![Screen Shot 2022-02-19 at 13 30 58](https://user-images.githubusercontent.com/27704687/154809653-a8ec9a80-c0dd-4a25-9c00-0f96147d79e9.png)", + "contributors": [ + "juliajforesti", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24513", + "title": "Chore: Run tests using microservices deployment on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "24556", + "title": "Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24501", + "title": "Chore: Update fuselage deps to match monolith versions", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24538", + "title": "Bump adm-zip from 0.4.14 to 0.5.9", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24454", + "title": "[IMPROVE] Purchase Type Filter for marketplace apps and Categories filter anchor refactoring", + "userLogin": "rique223", + "description": "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.\r\n\r\nDemo gif:\r\n![purchaseTypeFIlter](https://user-images.githubusercontent.com/43561537/153101228-7b7ebdc3-2d34-420f-aa9d-f7cbc8d4b53f.gif)\r\n\r\nRefactored the categories filter anchor from a plain fuselage select to a select button with dynamic colors.\r\nDemo gif:\r\n![New categories filter anchor(PR)](https://user-images.githubusercontent.com/43561537/153422427-28012b7d-e0ec-45f4-861d-c9368c57ad04.gif)", + "contributors": [ + "rique223", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24475", + "title": "[IMPROVE] Skip encryption for slash commands in E2E rooms", + "userLogin": "yash-rajpal", + "description": "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.", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24304", + "title": "Chore: Js to ts slash commands archive", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands archive files to typescript", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24114", + "title": "[NEW] E2E password generator", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "eduardofcabrera", + "tassoevan" + ] + }, + { + "pr": "24553", + "title": "[FIX] Omnichannel managers can't join chats in progress", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24559", + "title": "[FIX] Room context tabs not working in Omnichannel current chats page", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24173", + "title": "[FIX] respect `Accounts_Registration_Users_Default_Roles` setting", + "userLogin": "debdutdeb", + "description": "- Fix `user` role being added as default regardless of the `Accounts_Registration_Users_Default_Roles` setting.", + "milestone": "4.5.0", + "contributors": [ + "debdutdeb", + "web-flow", + "matheusbsilva137" + ] + }, + { + "pr": "24485", + "title": "[FIX] Skip admin info in setup wizard for servers with admin registered", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24537", + "title": "Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24209", + "title": "[IMPROVE] Team system messages feedback", + "userLogin": "ostjen", + "description": "- Delete some keys that aren't being used (eg: User_left_female).\r\n- Add new Teams' system messages:\r\n - `added-user-to-team`: **added** @\\user to this Team;\r\n - `removed-user-from-team`: **removed** @\\user from this Team;\r\n - `user-converted-to-team`: **converted** #\\room to a Team;\r\n - `user-converted-to-channel`: **converted** #\\room to a Channel;\r\n - `user-removed-room-from-team`: **removed** @\\user from this Team;\r\n - `user-deleted-room-from-team`: **deleted** #\\room from this Team;\r\n - `user-added-room-to-team`: **deleted** #\\room to this Team;\r\n- Add the corresponding options to hide each new system message and the missing `ujt` and `ult` hide options.", + "milestone": "4.5.0", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow", + "dougfabris", + "matheusbsilva137" + ] + }, + { + "pr": "24467", + "title": "Chore: Improve PR title validation regex", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24058", + "title": "Bump date-fns from 2.24.0 to 2.28.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24508", + "title": "[FIX] Read receipts showing first messages of the room as read even if not read by everyone", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24530", + "title": "Chore: Remove storybook build job from CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24528", + "title": "Bump url-parse from 1.5.3 to 1.5.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24333", + "title": "Chore: Add description to global OTR setting", + "userLogin": "pedrogssouza", + "contributors": [ + "pedrogssouza", + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24382", + "title": "[IMPROVE] OTR system messages", + "userLogin": "yash-rajpal", + "description": "OTR system messages to indicate key refresh and joining chat to users.", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24121", + "title": "[IMPROVE] Descriptive tooltip for Encrypted Key on Room Header", + "userLogin": "yash-rajpal", + "milestone": "4.5.0", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24522", + "title": "Bump express from 4.17.2 to 4.17.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24518", + "title": "Chore: `twoFactorRequired` signature", + "userLogin": "tassoevan", + "description": "Improved type checking for decorator `twoFactorRequired`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24517", + "title": "Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24441", + "title": "[FIX] GDPR action to forget visitor data on request", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24306", + "title": "Chore: Convert to typescript the slash commands create files", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands create files to typescript.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24325", + "title": "Chore: Convert to typescript the mute and unmute slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the mute and unmute slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24321", + "title": "Chore: Convert to typescript the me slashCommands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the me slashCommands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "23512", + "title": "Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24311", + "title": "Chore: Convert to typescript the slash commands invite files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the slash commands invite files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24509", + "title": "Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24451", + "title": "[IMPROVE] ChatBox Text to File Description", + "userLogin": "eduardofcabrera", + "description": "The text content from chatbox goes to the file description when drag and drop a file.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24461", + "title": "Chore: Update Meteor to 2.5.6", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "24477", + "title": "Chore: Update ws package", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24498", + "title": "Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24491", + "title": "Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24493", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24331", + "title": "Chore: Convert to typescript the unarchive slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the unarchive slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24483", + "title": "[IMPROVE] Add tooltips on action buttons of Canned Response message composer", + "userLogin": "LucasFASouza", + "description": "The tooltips were missing on the action buttons of CR message composer.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153620327-91107245-4b47-4d39-a99a-6da6d1cf5734.png)\r\n\r\nUsers can now feel more encouraged to use these actions knowing what they are supposed to do.", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24196", + "title": "Chore: Delete unused file (NewAdminInfoPage.js)", + "userLogin": "gabriellsh", + "description": "Just removing a duplicated/unused file.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24388", + "title": "[IMPROVE][ENTERPRISE] Improve how micro services are loaded", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "24458", + "title": "[IMPROVE] Add return button in chats opened from the list of current chats", + "userLogin": "LucasFASouza", + "description": "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.\r\nNow, the same UI/UX is supported for chats opened from Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153283190-bd5c9748-c36b-4874-a704-6043afc7e3a1.png)\r\n\r\nThe chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153285591-fad8e4a0-d2ea-4a02-8b2a-15e383b3c876.png)", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24469", + "title": "Bump express from 4.17.1 to 4.17.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24472", + "title": "Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24275", + "title": "[IMPROVE] Close modal on esc and outside click", + "userLogin": "gabriellsh", + "description": "This is a QUICK change in order to close modals pressing Esc button and clicking outside of it **intentionally**.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24435", + "title": "Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24041", + "title": "[IMPROVE] Add user to room on \"Click to Join!\" button press", + "userLogin": "matheusbsilva137", + "description": "- Add user to room on \"Click to Join!\" button press;\r\n- Display the \"Join\" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).", + "contributors": [ + "matheusbsilva137", + "web-flow", + "tassoevan", + "pierre-lehnen-rc", + "ostjen" + ] + }, + { + "pr": "24310", + "title": "[FIX] Implement client errors on ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23963", + "title": "Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23961", + "title": "Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24466", + "title": "[FIX] typo on register server tooltip of setup wizard", + "userLogin": "filipemarins", + "milestone": "4.5.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "24037", + "title": "[FIX] Inconsistent validation of user's access to rooms", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24450", + "title": "[FIX] OAuth mismatch redirect_uri error", + "userLogin": "sampaiodiego", + "milestone": "4.4.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24305", + "title": "[FIX] Prevent Apps Bridge to remove visitor status from room", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "d-gubert" + ] + }, + { + "pr": "24453", + "title": "Chore: bump fuselage version", + "userLogin": "dougfabris", + "milestone": "4.4.2", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "24253", + "title": "[FIX] Issues on selecting users when importing CSV", + "userLogin": "guijun13", + "description": "* Fix users selecting by fixing their _id\r\n* Add condition to disable 'Start importing' button if `usersCount`, `channelsCount` and `messageCount` equals 0, or if messageCount is alone\r\n* Remove `disabled={usersCount === 0}` on user Tab", + "contributors": [ + "guijun13", + "tassoevan", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24299", + "title": "Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24418", + "title": "[FIX] Oembed request not respecting payload limit", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24429", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24407", + "title": "[FIX] Skip cloud steps for registered servers on setup wizard", + "userLogin": "dougfabris", + "milestone": "4.4.1", + "contributors": [ + "dougfabris", + "tassoevan", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24410", + "title": "Chore: Convert JS files to Typescript", + "userLogin": "felipe-rod123", + "description": "This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24369", + "title": "[IMPROVE] Convert tag edit with department data to tsx", + "userLogin": "LucasFASouza", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24401", + "title": "[FIX] Outgoing webhook without scripts not saving messages", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24334", + "title": "[IMPROVE] CloudLoginModal visual consistency", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/151585064-dc6a1e29-9903-4241-8fbd-dfbe6c55fbef.png)\r\n\r\n### after\r\n![Screen Shot 2022-01-28 at 13 32 02](https://user-images.githubusercontent.com/27704687/151585101-75b98502-9aae-4198-bc3e-4956750e5d8b.png)", + "milestone": "4.5.0", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24409", + "title": "[FIX] Startup errors creating indexes", + "userLogin": "sampaiodiego", + "description": "Fix `bio` and `prid` startup index creation errors.", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24406", + "title": "Chore: Unify ILivechatAgent with ILivechatAgentRecord", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24381", + "title": "[FIX] Add ?close to OAuth callback url", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24387", + "title": "[FIX] Slash commands previews not working", + "userLogin": "ostjen", + "milestone": "4.4.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24357", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-31Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24341", + "title": "Bump simple-get from 4.0.0 to 4.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24366", + "title": "Chore: Set Docker image tag to latest only when really latest", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24109", + "title": "[IMPROVE] Added a new \"All\" tab which shows all integrations in Integrations", + "userLogin": "aswinidev", + "milestone": "4.5.0", + "contributors": [ + "aswinidev", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24363", + "title": "Merge master into develop & Set version to 4.5.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24342", + "title": "Release 4.4.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "KevLehman", + "murtaza98", + "arshxyz", + "sidmohanty11", + "matheusbsilva137", + "Aman-Maheshwari", + "MartinSchoeler", + "ostjen", + "tassoevan", + "d-gubert", + "debdutdeb", + "yash-rajpal", + "dougfabris", + "aswinidev" + ] + }, + { + "pr": "24340", + "title": "Release 4.3.3", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24335", + "title": "Chore: Update Apps-Engine version", + "userLogin": "d-gubert", + "milestone": "4.4.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24322", + "title": "Regression: Fix OmnichannelAppSourceRoomIcon sizes", + "userLogin": "tiagoevanp", + "milestone": "4.4.0", + "contributors": [ + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24324", + "title": "Regression: Standalone register path failing when saving data", + "userLogin": "dougfabris", + "milestone": "4.4.0", + "contributors": [ + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24316", + "title": "[FIX] Discussions not loading message history if not joined", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24289", + "title": "Regression: Create migration to fix index issue at boot", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24272", + "title": "Regression: Discussion room crashing", + "userLogin": "gabriellsh", + "milestone": "4.4.0", + "contributors": [ + "gabriellsh", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24298", + "title": "Regression: Update tap-i18n package", + "userLogin": "sampaiodiego", + "description": "Fix the issue breaking IE11.", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24302", + "title": "Regression: Fix pino child log levels", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24259", + "title": "Regression: Fix Alpine release tag", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "23676", + "title": "[IMPROVE] Setup Wizard Registration Flow", + "userLogin": "dougfabris", + "description": "This pull request brings a few improvements in our setup wizard flow, the very first contact with a Rocket.Chat. Some of them: \r\n- A brand new visual design;\r\n- Form validation improves;\r\n- Allow users to navigate back to all steps;\r\n- Optimized steps to register your workspace or keep standalone. And many more!\r\n\r\n\r\n![Kapture 2022-01-20 at 11 19 47](https://user-images.githubusercontent.com/27704687/150356868-425666b4-511f-4690-9ce5-e61b839b1d19.gif)", + "milestone": "4.4.0", + "contributors": [ + "dougfabris", + "gabriellsh", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24254", + "title": "Chore: Slash Commands Join to Typescript", + "userLogin": "eduardofcabrera", + "description": "Convert the slash commands .js files to .ts files.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24288", + "title": "Regression: Fix Default Business hour overriding other Business Hours", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24268", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-24Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24276", + "title": "Regression: Fix incompatibility of apps http requests", + "userLogin": "d-gubert", + "description": "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.\n\nTo 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", + "milestone": "4.4.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24177", + "title": "[IMPROVE] lib/Statistics improved and metrics collector", + "userLogin": "albuquerquefabio", + "description": "- On `statistics` object the property `get` is an async function now.\r\n- We need to collect additional data of feature activation through the statistics collector.\r\n - Some codes were splitted into another file just to organize.", + "contributors": [ + "albuquerquefabio", + "ostjen", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24218", + "title": "[FIX] Fixing the changing custom status behavior", + "userLogin": "AllanPazRibeiro", + "milestone": "4.4.0", + "contributors": [ + "AllanPazRibeiro", + "web-flow", + "d-gubert" + ] + }, + { + "pr": "24269", + "title": "Regression: Align Omni-Source icon sizes with designs", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "24267", + "title": "Regression: Fix Inactive Departments still visible on Livechat", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24262", + "title": "[FIX] Solved Report Message Blank ", + "userLogin": "nishant23122000", + "description": "After resolving issue #24261 :\r\n\r\nhttps://user-images.githubusercontent.com/53515714/150629459-5f0a9cf6-9b0e-417f-8fc1-44c810bd5428.mp4", + "contributors": [ + "nishant23122000" + ] + }, + { + "pr": "23958", + "title": "[FIX] Errors on advanced sync prevent LDAP users from logging in", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24187", + "title": "Chore: Convert model LoginServiceConfiguration to raw", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "albuquerquefabio" + ] + }, + { + "pr": "23804", + "title": "[FIX] Make canned responses popup dependent on Canned_responses_enabled setting", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24126", + "title": "[FIX] Wrong german translation for 2FA-Promt", + "userLogin": "mbreslein-thd", + "milestone": "4.4.0", + "contributors": [ + "mbreslein-thd", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24182", + "title": "Bump follow-redirects from 1.14.5 to 1.14.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24242", + "title": "Chore: Update pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24252", + "title": "[FIX] Avoid updating all rooms with visitor abandonment queries", + "userLogin": "KevLehman", + "milestone": "4.4.0", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "12548", + "title": "Add: Alpine image as option for build", + "userLogin": "geekgonecrazy", + "milestone": "4.0.0", + "contributors": [ + "geekgonecrazy", + "web-flow", + "LuluGO", + "ggazzo", + "rodrigok", + "sampaiodiego" + ] + }, + { + "pr": "24248", + "title": "[FIX] Fixed broken links in setup wizard", + "userLogin": "Himanshu664", + "milestone": "4.4.0", + "contributors": [ + "Himanshu664", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24241", + "title": "[FIX] Apps Contextual Bar not carrying title and room information ", + "userLogin": "thassiov", + "description": "Fixes:\r\n\r\n- the app's name being rendered instead of the view's title,\r\n- the room's information (`IRoom`) wasn't being sent to the app when a `block action` happened\r\n\r\nFixed behavior with correct view title and room information included in the block action event:\r\n\r\nhttps://user-images.githubusercontent.com/733282/150420847-59bfcf8a-24a9-4dc5-8609-0d92dba38b70.mp4", + "milestone": "4.4.0", + "contributors": [ + "thassiov", + "web-flow" + ] + }, + { + "pr": "24233", + "title": "Chore: Bump fuselage hooks", + "userLogin": "dougfabris", + "milestone": "4.4.0", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24243", + "title": "Regression: Remove extra call to `useOutsideClick` hook not following the function signature", + "userLogin": "tassoevan", + "description": "It migrates `client/sidebar/header/actions/Search` component to TypeScript and mitigates a invalid call to `Array.prototype.every`:\r\n\r\n![image](https://user-images.githubusercontent.com/2263066/150441397-3ff403b2-10c1-4a29-b37f-892d7d4a9252.png)", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24235", + "title": "[FIX] Change canned response model index to match other definition", + "userLogin": "KevLehman", + "milestone": "4.4.0", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "24239", + "title": "[IMPROVE] Show Channel Icons on Room Header & Info panels", + "userLogin": "murtaza98", + "description": "Updates Omnichannel Header & room Info component to render the source info\r\nBuilt on top of https://github.com/RocketChat/Rocket.Chat/pull/24237", + "milestone": "4.4.0", + "contributors": [ + "d-gubert", + "murtaza98", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "24098", + "title": "[FIX] openUserInfo not working after changing room types", + "userLogin": "grahhnt", + "milestone": "4.4.0", + "contributors": [ + "grahhnt", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24232", + "title": "Chore: Bump Livechat package version to 1.12.0", + "userLogin": "tiagoevanp", + "milestone": "4.4.0", + "contributors": [ + "tiagoevanp", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23818", + "title": "[NEW] App empty states component, category filter and empty states error variation implementations", + "userLogin": "rique223", + "description": "Created and implemented the category filters component:\r\nDemo gif:\r\n![categories_filter_demo](https://user-images.githubusercontent.com/43561537/148579731-1de83bf8-91ce-47e7-b6e5-7781384fdef9.gif)\r\n\r\nCreated and implemented the empty states(States on fuselage) component:\r\nDemo gif:\r\n![empty_states_demo](https://user-images.githubusercontent.com/43561537/148579930-49c2ff69-88f4-4a57-a24a-060868d76209.gif)\r\n\r\nImplemented a variations system for the empty states component and created a error message for network outage:\r\nDemo gif:\r\n![empty_states_variation_demo](https://user-images.githubusercontent.com/43561537/148580047-39adf8ef-2ee0-4c3e-8709-5faea4a5e335.gif)", + "milestone": "4.4.0", + "contributors": [ + "rique223", + "ggazzo" + ] + }, + { + "pr": "24176", + "title": "[IMPROVE] Rewrite Omnichannel Queue Page to React", + "userLogin": "tiagoevanp", + "description": "![image](https://user-images.githubusercontent.com/17487063/149458880-03c201ab-11cd-4c71-82aa-51bd557d3b6e.png)", + "milestone": "4.4.0", + "contributors": [ + "tiagoevanp", + "KevLehman" + ] + }, + { + "pr": "24162", + "title": "[NEW][EE] Allow to filter departments by Business Units on Livechat", + "userLogin": "murtaza98", + "milestone": "4.4.0", + "contributors": [ + "murtaza98", + "web-flow", + "renatobecker" + ] + }, + { + "pr": "24112", + "title": "[FIX][EE] Agent cannot change status to Available despite being within open business hours", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "24211", + "title": "Regression: Fix handling of http requests in apps bridge", + "userLogin": "d-gubert", + "description": "Changes made during Meteor upgrade broke HTTP requests made in Rocket.Chat Apps", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24217", + "title": "Release 4.3.2", + "userLogin": "sampaiodiego", + "contributors": [ + "matheusbsilva137", + "sampaiodiego", + "pierre-lehnen-rc", + "geekgonecrazy", + "d-gubert", + "dougfabris" + ] + }, + { + "pr": "24068", + "title": "[FIX] Integration section crashing opening in My Account", + "userLogin": "dougfabris", + "milestone": "4.3.2", + "contributors": [ + "dougfabris", + "tassoevan", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "24171", + "title": "Chore: Update Apps-Engine to 1.29.2", + "userLogin": "d-gubert", + "milestone": "4.3.2", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24158", + "title": "[FIX] App Framework Enable hanging indefinitely", + "userLogin": "geekgonecrazy", + "milestone": "4.3.2", + "contributors": [ + "geekgonecrazy", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24090", + "title": "[FIX] CSV Importer failing to import users", + "userLogin": "pierre-lehnen-rc", + "description": "- Update use of `setRealName` function to `_setRealName`.", + "milestone": "4.3.2", + "contributors": [ + "pierre-lehnen-rc", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24142", + "title": "[FIX][ENTERPRISE] Leading slashes in Engagement Dashboard API requests", + "userLogin": "matheusbsilva137", + "description": "- Remove trailing slashes from Engagement Dashboard API requests;", + "milestone": "4.3.2", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24108", + "title": "Release 4.3.1", + "userLogin": "sampaiodiego", + "contributors": [ + "murtaza98", + "sampaiodiego", + "MartinSchoeler", + "tassoevan", + "d-gubert" + ] + }, + { + "pr": "24107", + "title": "[FIX][APPS] Action buttons not removed when app is disabled or uninstalled", + "userLogin": "d-gubert", + "description": "Fixes a problem where action buttons registered by any app would not be removed if the app was disabled or uninstalled", + "milestone": "4.3.1", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24105", + "title": "[FIX][APPS] Prevents emails from being sent when apps framework is disabled", + "userLogin": "d-gubert", + "description": "Introduction of new event `IPreEmailSent` was breaking the email function when the Apps-Engine framework was disabled in the administration", + "milestone": "4.3.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24096", + "title": "[FIX] Ensure Firefox 91 ESR support", + "userLogin": "tassoevan", + "description": "It:\r\n- Adds `Firefox ESR` to `browserslist`;\r\n- Upgrades `@rocket.chat/fuselage-hooks` to overcome a bug related to Firefox implementation of `ResizeObserver` API.", + "milestone": "4.3.1", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24091", + "title": "Chore: Update Livechat to 1.11.1", + "userLogin": "MartinSchoeler", + "milestone": "4.3.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24067", + "title": "[FIX] Omnichannel enabled setting not working when creating rooms", + "userLogin": "murtaza98", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23981", + "title": "[FIX] Enter not working on modal's multi-line input", + "userLogin": "murtaza98", + "description": "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", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "web-flow", + "tiagoevanp" + ] + }, + { + "pr": "24039", + "title": "[FIX] Omnichannel Current chats pagination not working", + "userLogin": "murtaza98", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "24204", + "title": "[FIX] MAU when using micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24210", + "title": "[IMPROVE] Limit recent emojis to 27", + "userLogin": "sampaiodiego", + "description": "Limits the recent emoji list to a maximum of 3 rows instead of listing every emoji you've used so far.\r\n\r\n![image](https://user-images.githubusercontent.com/8591547/150033087-92721b76-9203-42fe-ac2e-5b9eca50edab.png)", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24169", + "title": "Chore: Update Omnichannel widget version to 1.11.2", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24165", + "title": "Chore: Replace Blaze templates", + "userLogin": "tassoevan", + "description": "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.", + "contributors": [ + "tassoevan", + "ggazzo" + ] + }, + { + "pr": "23591", + "title": "Chore: Removing hubot from docker-compose", + "userLogin": "geekgonecrazy", + "description": "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", + "contributors": [ + "geekgonecrazy", + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24168", + "title": "[IMPROVE] Admin page header buttons consistency", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/149371746-66e5e6e4-5c8e-46d7-b230-ecbc4502b665.png)\r\n![image](https://user-images.githubusercontent.com/27704687/149371759-c3d948af-d877-486c-a263-da12c0b70185.png)\r\n![image](https://user-images.githubusercontent.com/27704687/149371769-09b0623d-a5c5-43e0-a4ef-73ba0bcf1730.png)\r\n![image](https://user-images.githubusercontent.com/27704687/149371782-b1b898c7-3aad-47ee-8c5c-cf9cb816d72b.png)\r\n![image](https://user-images.githubusercontent.com/27704687/149371796-b88514d2-3c8d-4d9d-a45b-24f48783e95c.png)\r\n\r\n\r\n### after\r\n![Screen Shot 2022-01-13 at 13 38 00](https://user-images.githubusercontent.com/27704687/149371084-668d5f14-e03e-4cdd-8763-058db9c2f16c.png)\r\n![Screen Shot 2022-01-13 at 13 38 18](https://user-images.githubusercontent.com/27704687/149371126-23a059cb-efa7-4ffb-970b-da23d8742bb1.png)\r\n![Screen Shot 2022-01-13 at 13 38 38](https://user-images.githubusercontent.com/27704687/149371181-c8bbbbbd-ed6d-48b4-844f-09fdce0080b6.png)\r\n![Screen Shot 2022-01-13 at 13 38 59](https://user-images.githubusercontent.com/27704687/149371232-3d292f5e-e8b0-41e1-b065-90a80a5f08ce.png)\r\n![Screen Shot 2022-01-13 at 13 39 08](https://user-images.githubusercontent.com/27704687/149371263-64fd09e4-456e-48ee-9976-83f42b90e4d9.png)", + "milestone": "4.4.0", + "contributors": [ + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24193", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-17Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24068", + "title": "[FIX] Integration section crashing opening in My Account", + "userLogin": "dougfabris", + "milestone": "4.3.2", + "contributors": [ + "dougfabris", + "tassoevan", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "24044", + "title": "[IMPROVE] Rewrite roomNotFound to React Component", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/147608307-468e6955-5db4-40c5-86a7-91448ac03427.png)\r\n![image](https://user-images.githubusercontent.com/27704687/147608377-d979adf5-615f-4180-8587-449369bf87f8.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/149158027-e39bc0a0-4c33-465b-83e0-873e558a037b.png)\r\n![image](https://user-images.githubusercontent.com/27704687/149157692-3e73c0b4-1759-430c-b1c4-b521e47d774d.png)", + "milestone": "4.4.0", + "contributors": [ + "dougfabris", + "tassoevan", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "24186", + "title": "Regression: Enable custom emoji on admin custom status page", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "AllanPazRibeiro", + "web-flow" + ] + }, + { + "pr": "24075", + "title": "Chore: Update Meteor to 2.5.3", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "ggazzo" + ] + }, + { + "pr": "24060", + "title": "[NEW] Apple Login", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24171", + "title": "Chore: Update Apps-Engine to 1.29.2", + "userLogin": "d-gubert", + "milestone": "4.3.2", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24170", + "title": "[NEW] Enabling emoji on custom status", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "AllanPazRibeiro" + ] + }, + { + "pr": "24158", + "title": "[FIX] App Framework Enable hanging indefinitely", + "userLogin": "geekgonecrazy", + "milestone": "4.3.2", + "contributors": [ + "geekgonecrazy", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24090", + "title": "[FIX] CSV Importer failing to import users", + "userLogin": "pierre-lehnen-rc", + "description": "- Update use of `setRealName` function to `_setRealName`.", + "milestone": "4.3.2", + "contributors": [ + "pierre-lehnen-rc", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24142", + "title": "[FIX][ENTERPRISE] Leading slashes in Engagement Dashboard API requests", + "userLogin": "matheusbsilva137", + "description": "- Remove trailing slashes from Engagement Dashboard API requests;", + "milestone": "4.3.2", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24127", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-10Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24133", + "title": "Chore: Migrate useOutsideClick to fuselage-hooks", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24123", + "title": "Chore: Include REG_TOKEN in docker-compose", + "userLogin": "geekgonecrazy", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "24117", + "title": "[FIX] Custom Emoji Image preview", + "userLogin": "sidmohanty11", + "description": "Before,\r\n\r\n![custom-img-preview-rc3](https://user-images.githubusercontent.com/73601258/148431936-c82d4200-69b1-484b-8be2-d72f5c28202b.png)\r\n\r\nAfter,\r\n\r\n![custom-img-preview-rc1](https://user-images.githubusercontent.com/73601258/148431955-8842a2e3-b9f3-4d68-b0d8-c5444419f767.png)\r\n\r\nalso if any error, (for example - if we upload a video mp4 file) \r\n\r\n![custom-img-preview-rc2](https://user-images.githubusercontent.com/73601258/148431998-64bc1fbb-9958-495c-89c1-61df06adec75.png)", + "contributors": [ + "sidmohanty11", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24078", + "title": "[IMPROVE] Added a Reset Button in the Account Profile Page", + "userLogin": "aswinidev", + "contributors": [ + "aswinidev", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "24118", + "title": "Revert: \"[IMPROVE] Throw 404 error in invalid endpoints\"", + "userLogin": "matheusbsilva137", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24070", + "title": "[IMPROVE] Rewrite AddWebdavAccountModal to React Component ", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/147777054-bf2f84e4-5226-4ebc-ab6e-287b83889b85.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/147769132-2b938ae8-aba3-4230-876d-572e46268b9a.png)", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "21181", + "title": "[FIX] Password error should not be shown when selecting set random password", + "userLogin": "yash-rajpal", + "description": "We should not keep `password` as required field when we check set random password field. In this password should not be required", + "milestone": "4.4.0", + "contributors": [ + "yash-rajpal", + "pierre-lehnen-rc", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "22400", + "title": "Chore: Apply generics to infer types of useForm hook", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24023", + "title": "Chore: Remove unused assets", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24020", + "title": "Chore: Replace `isEmail` with `validateEmail`", + "userLogin": "tassoevan", + "description": "Follows #23816.", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24111", + "title": "Chore: Fix Houston `getNodeNpmVersions` regex to correctly get Node and Npm complete versions", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "23456", + "title": "Chore: Move `callbacks` to /lib", + "userLogin": "tassoevan", + "description": "It moves to `/lib`, migrates to TypeScript, and deprecates the `callbacks` API.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24107", + "title": "[FIX][APPS] Action buttons not removed when app is disabled or uninstalled", + "userLogin": "d-gubert", + "description": "Fixes a problem where action buttons registered by any app would not be removed if the app was disabled or uninstalled", + "milestone": "4.3.1", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24105", + "title": "[FIX][APPS] Prevents emails from being sent when apps framework is disabled", + "userLogin": "d-gubert", + "description": "Introduction of new event `IPreEmailSent` was breaking the email function when the Apps-Engine framework was disabled in the administration", + "milestone": "4.3.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24096", + "title": "[FIX] Ensure Firefox 91 ESR support", + "userLogin": "tassoevan", + "description": "It:\r\n- Adds `Firefox ESR` to `browserslist`;\r\n- Upgrades `@rocket.chat/fuselage-hooks` to overcome a bug related to Firefox implementation of `ResizeObserver` API.", + "milestone": "4.3.1", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24022", + "title": "Chore: Update copyright notices", + "userLogin": "tassoevan", + "description": "Update date range in copyright notices to `2015-2022`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23817", + "title": "[IMPROVE] Importer text for CSV upload file format", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24091", + "title": "Chore: Update Livechat to 1.11.1", + "userLogin": "MartinSchoeler", + "milestone": "4.3.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24067", + "title": "[FIX] Omnichannel enabled setting not working when creating rooms", + "userLogin": "murtaza98", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23981", + "title": "[FIX] Enter not working on modal's multi-line input", + "userLogin": "murtaza98", + "description": "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", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "web-flow", + "tiagoevanp" + ] + }, + { + "pr": "23605", + "title": "[IMPROVE] Add Rocket.Chat version to User-Agent header for oembed requests", + "userLogin": "sidmohanty11", + "contributors": [ + "sidmohanty11" + ] + }, + { + "pr": "24051", + "title": "[FIX] wrong new userInfo during user creation", + "userLogin": "Aman-Maheshwari", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "24053", + "title": "[IMPROVE] Throw 404 error in invalid endpoints", + "userLogin": "matheusbsilva137", + "description": "- Throw 404 error when trying to call invalid endpoints.", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "23970", + "title": "[FIX] Filter ability for admin room checkboxes", + "userLogin": "sidmohanty11", + "description": "Now,\r\n\r\nhttps://user-images.githubusercontent.com/73601258/146380812-d3aa5561-64e1-4515-a639-3b6d87432ae4.mp4\r\n\r\nBefore,\r\n\r\nhttps://user-images.githubusercontent.com/73601258/146385538-85a70fce-9974-40e0-8757-eda1a5d411b7.mp4", + "milestone": "4.4.0", + "contributors": [ + "sidmohanty11", + "yash-rajpal", + "web-flow", + "matheusbsilva137" + ] + }, + { + "pr": "24024", + "title": "[FIX] Message Erasure Type \"Keep\" Messages not working", + "userLogin": "arshxyz", + "contributors": [ + "arshxyz", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24039", + "title": "[FIX] Omnichannel Current chats pagination not working", + "userLogin": "murtaza98", + "milestone": "4.3.1", + "contributors": [ + "murtaza98", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23954", + "title": "Chore: Update mem to 8.1.1", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24015", + "title": "[FIX] MongoError during startup saying \"ns not found\"", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24054", + "title": "Chore: add script to fix code with prettier", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24000", + "title": "Chore: Prettier for us all", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24049", + "title": "Merge master into develop & Set version to 4.4.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24047", + "title": "Release 4.3.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "Aman-Maheshwari", + "juliajforesti", + "ggazzo", + "dougfabris", + "goyome", + "tiagoevanp", + "KevLehman", + "matheusbsilva137", + "rique223", + "lingohub[bot]", + "gabriellsh", + "cuonghuunguyen", + "tassoevan", + "murtaza98", + "MartinSchoeler", + "dependabot[bot]" + ] + }, + { + "pr": "24046", + "title": "Chore: Bump fuselage 0.31.0", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "tassoevan" + ] + }, + { + "pr": "24045", + "title": "Chore: Update Apps-Engine to latest", + "userLogin": "d-gubert", + "milestone": "4.3.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24021", + "title": "Chore: Replace typography", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "23940", + "title": "Release 4.2.2", + "userLogin": "ggazzo", + "contributors": [ + "qwertiko", + "ggazzo" + ] + }, + { + "pr": "23347", + "title": "[FIX] creating room with federated member", + "userLogin": "qwertiko", + "milestone": "4.2.2", + "contributors": [ + "qwertiko", + "web-flow" + ] + }, + { + "pr": "23917", + "title": "Release 4.2.1", + "userLogin": "sampaiodiego", + "contributors": [ + "tiagoevanp", + "sampaiodiego", + "matheusbsilva137", + "rique223", + "dougfabris", + "tassoevan", + "MartinSchoeler" + ] + }, + { + "pr": "23913", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.2.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "23796", + "title": "[FIX] Segmentation fault on CentOS 7 due to outdated `sharp`", + "userLogin": "tassoevan", + "description": "Upgrades `sharp` to avoid a segmentation fault on CentOS 7 during startup related to `sharp.node` being loaded via `process.dlopen()`.\r\n\r\nSuggested as a fix for versions `4.0.x` and `4.1.x`.", + "milestone": "4.2.1", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23857", + "title": "[FIX] teams.removeMembers client usage", + "userLogin": "dougfabris", + "milestone": "4.2.1", + "contributors": [ + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "23861", + "title": "[FIX] Wrong button for non trial apps", + "userLogin": "rique223", + "description": "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. \r\nBefore:\r\n![image](https://user-images.githubusercontent.com/43561537/144687716-baef06ce-7a80-42fc-8393-b0283c0f349a.png) \r\nAfter:\r\n![image](https://user-images.githubusercontent.com/43561537/144687924-1a3eb3a7-783f-4450-abd2-1efa0de64658.png)", + "milestone": "4.2.1", + "contributors": [ + "rique223" + ] + }, + { + "pr": "23859", + "title": "[FIX] Error when creating an inactive user in admin panel", + "userLogin": "matheusbsilva137", + "description": "- Fix `usersInRole` array used to send email to activate a user.", + "milestone": "4.2.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23821", + "title": "[NEW] Create new setting to clean local storage at end of chats", + "userLogin": "tiagoevanp", + "description": "Include setting to handle with and clear the localStorage on Livechat widget. \r\n\r\n![image](https://user-images.githubusercontent.com/17487063/144171179-95f7cf41-0192-4532-bedf-99e0b01f2c61.png)\r\n\r\nThis behavior is only possible to happen when https://github.com/RocketChat/Rocket.Chat.Livechat/pull/666 merged and released.", + "milestone": "4.2.1", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24035", + "title": "Regression: Ensure room action buttons only appear inside menu", + "userLogin": "d-gubert", + "description": "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.\r\n\r\nHere we change the order configuration of the button so we make sure it only shows inside the room menu", + "milestone": "4.3.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24030", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-12-27Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24033", + "title": "Regression: Add optional chaining to possibly undefined fields", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24034", + "title": "Regression: Remove dangling console.log", + "userLogin": "tassoevan", + "description": "A empty array have been printed to console due to a promise chained to `console.log` and `console.error` calls, probably for debugging purposes.", + "milestone": "4.3.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24018", + "title": "Regression: Remove self from fallback departments dropdown", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24019", + "title": "Regression: addAction verification breaking rooms", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "24009", + "title": "Regression: Let Meteor.absoluteUrl.defaultOptions.rootUrl as baseURI", + "userLogin": "tassoevan", + "milestone": "4.3.0", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24012", + "title": "Regression: Add migration for omni rooms with no source", + "userLogin": "murtaza98", + "description": "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`", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24008", + "title": "Regression: Fix omnichannel empty source usage", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23924", + "title": "[IMPROVE] Webdav methods sanitization", + "userLogin": "dougfabris", + "description": "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.", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23875", + "title": "Chore: update docker image base to latest node 12 patch", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24007", + "title": "[IMPROVE] Replace SortListItem and CreateListItem with ListItem", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "23912", + "title": "[NEW] Show Omnichannel room icon based on source definition", + "userLogin": "AllanPazRibeiro", + "milestone": "4.3.0", + "contributors": [ + "AllanPazRibeiro", + "ggazzo", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "23925", + "title": "[NEW][APPS] Add new email event for apps", + "userLogin": "d-gubert", + "description": "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", + "milestone": "4.3.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "19640", + "title": "[FIX] Changes on department agents should mark form as dirty", + "userLogin": "rafaelblink", + "milestone": "4.3.0", + "contributors": [ + "rafaelblink", + "web-flow", + "gabriellsh", + "renatobecker", + "dougfabris" + ] + }, + { + "pr": "23904", + "title": "[FIX] Jitsi call already ended", + "userLogin": "Aman-Maheshwari", + "description": "- Fix Jitsi timeout update -- which caused the \"Jitsi call already ended\" error when trying to join a call some time after its creation;", + "contributors": [ + "Aman-Maheshwari", + "yash-rajpal" + ] + }, + { + "pr": "23939", + "title": "[NEW][EE] Introduce fallback department support", + "userLogin": "KevLehman", + "milestone": "4.3.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23959", + "title": "[FIX] teams.leave client usage", + "userLogin": "dougfabris", + "milestone": "4.3.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23679", + "title": "[NEW][APPS] Allow Rocket.Chat Apps to register custom action buttons", + "userLogin": "d-gubert", + "description": "Add an action button manager that allows apps to register custom action buttons that trigger interaction callbacks in them", + "milestone": "4.3.0", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "23995", + "title": "[FIX] Prevent the app from crashing when you look at the notification preferences of a room in which you are not a member", + "userLogin": "dougfabris", + "description": "Before, when you look at the notification rules of a room in which you are not a member the app crashed, i corrected this problem.\r\nIndeed, there was a not check if the subscription was undefined", + "milestone": "4.3.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23843", + "title": "[NEW][APPS] Allow apps to open contextual bar", + "userLogin": "thassiov", + "description": "Opens a contextual bar using app ui interactions (`CONTEXTUAL_BAR_OPEN`)\r\n\r\nhttps://user-images.githubusercontent.com/733282/146704076-d2d115f2-6ca6-4ed0-b450-81be580889a4.mp4", + "milestone": "4.3.0", + "contributors": [ + "thassiov" + ] + }, + { + "pr": "23786", + "title": "Chore: Enable prefer-optional-chain ESLint rule for TypeScript files", + "userLogin": "tassoevan", + "description": "> 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.\r\n> 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.\r\n> 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.\r\n> 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.\r\n> 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.\r\n\r\nโ€” [Rich Skrenta][1]\r\n\r\nMixing two problem domains in code is prone to errors. In this small example\r\n\r\n```ts\r\ndeclare const y: { z: unknown } | undefined;\r\n\r\nconst x = y && y.z;\r\n```\r\n\r\nwe'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:\r\n\r\n```ts\r\ndeclare const y: { z: unknown } | undefined;\r\n\r\nconst x = y?.z;\r\n```\r\n\r\nAttributing `y.z` to `x` is more easily readable than the nullity check of `y`.\r\n\r\nThis PR aims to add `@typescript-eslint/prefer-optional-chain` rule to ESlint configuration at warning level.", + "contributors": [ + "tassoevan", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23996", + "title": "Chore: Remove the `mobile-download-file` permission", + "userLogin": "matheusbsilva137", + "description": "- Remove the `mobile-download-file` permission and its descriptions.", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23823", + "title": "[FIX] LDAP Sync doing nothing when set to only import new users.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.3.0", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23816", + "title": "Chore: Centralize email validation functionality", + "userLogin": "KevLehman", + "description": "- Create lib for validating emails\r\n- Modify places that validate emails to use the new central function", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23972", + "title": "[NEW][APPS] getUserUnreadMessageCount Bridge", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "d-gubert" + ] + }, + { + "pr": "23993", + "title": "Chore: Deleted LivechatPageVisited", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23987", + "title": "[FIX] Broken links present in some languages", + "userLogin": "aswinidev", + "contributors": [ + "aswinidev" + ] + }, + { + "pr": "23846", + "title": "Chore: added last login to users.list", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23574", + "title": "[FIX] Email notifications settings not being honored on new DMs", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23805", + "title": "[FIX] Headers already sent error when user data download is disabled", + "userLogin": "sampaiodiego", + "description": "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.\r\n\r\nThis is the error shown in the logs:\r\n```\r\n=== UnHandledPromiseRejection ===\r\nError [ERR_HTTP_HEADERS_SENT] [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client\r\n at ServerResponse.setHeader (_http_outgoing.js:530:11)\r\n at ServerResponse.res.setHeader (/app/bundle/programs/server/npm/node_modules/meteor/simple_json-routes/node_modules/connect/lib/patch.js:134:22)\r\n at app/user-data-download/server/exportDownload.js:14:7\r\n at /app/bundle/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/fiber_pool.js:43:40 {\r\n code: 'ERR_HTTP_HEADERS_SENT'\r\n}\r\n---------------------------------\r\nErrors like this can cause oplog processing errors.\r\nSetting EXIT_UNHANDLEDPROMISEREJECTION will cause the process to exit allowing your service to automatically restart the process\r\nFuture node.js versions will automatically exit the process\r\n=================================\r\n```", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23991", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-12-20Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "23901", + "title": "[FIX] broken `Word Placement Anywhere` and `Run on edits` toggles in integration page", + "userLogin": "aswinidev", + "milestone": "4.3.0", + "contributors": [ + "aswinidev" + ] + }, + { + "pr": "23973", + "title": "[FIX] OTR not working", + "userLogin": "gabriellsh", + "description": "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.", + "milestone": "4.3.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23833", + "title": "[FIX] Add missing .png to clipboard uploaded file name", + "userLogin": "dougfabris", + "milestone": "4.3.0", + "contributors": [ + "dougfabris", + "gabriellsh" + ] + }, + { + "pr": "23974", + "title": "Chore: Use only LivechatTriggerRaw model", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23948", + "title": "[FIX] Missing edit icon in sequential thread messages", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/146083450-ca6d7197-dc55-4058-8212-943b42c82473.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/146083055-36c9731a-33c6-483a-93a5-1355d8689e3a.png)", + "milestone": "4.3.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23910", + "title": "[FIX] Removing Edit message from messageBox on room changed", + "userLogin": "yash-rajpal", + "description": "Removing edit message from messageBox and local storage on messageBox destroyed.", + "milestone": "4.3.0", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "23945", + "title": "[IMPROVE] Allow e-mail channel to be used without default department.", + "userLogin": "cauefcr", + "description": "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.", + "contributors": [ + "cauefcr", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23466", + "title": "Bump mailparser from 3.2.0 to 3.4.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23853", + "title": "Bump thehanimo/pr-title-checker from 1.2 to 1.3.4", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23882", + "title": "[FIX] Custom emoji route in admin", + "userLogin": "sidmohanty11", + "description": "https://user-images.githubusercontent.com/73601258/144975689-912cfd73-da16-433c-899a-4d4ffac8e146.mp4", + "milestone": "4.3.0", + "contributors": [ + "sidmohanty11", + "dougfabris" + ] + }, + { + "pr": "23888", + "title": "[FIX] Popover position for arabic languages", + "userLogin": "yash-rajpal", + "milestone": "4.3.0", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "23347", + "title": "[FIX] creating room with federated member", + "userLogin": "qwertiko", + "milestone": "4.2.2", + "contributors": [ + "qwertiko", + "web-flow" + ] + }, + { + "pr": "23930", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-12-13Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "21025", + "title": "[NEW][APPS] Possibility to set room closer via Apps LivechatBridge.closeRoom", + "userLogin": "cuonghuunguyen", + "description": "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.\r\nIf the param is not passed, use the room visitor as the room closer.", + "contributors": [ + null, + "d-gubert" + ] + }, + { + "pr": "23860", + "title": "[FIX] Custom status doesn't update properly", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "gabriellsh" + ] + }, + { + "pr": "23921", + "title": "Bump cookie-parser from 1.4.5 to 1.4.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23914", + "title": "Chore: Fix hasRole warning", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23922", + "title": "Chore: Update pino deps", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23689", + "title": "Bump path-parse from 1.0.6 to 1.0.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23526", + "title": "Bump @rocket.chat/string-helpers from 0.29.0 to 0.30.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23289", + "title": "Bump pm2 from 5.1.1 to 5.1.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23913", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.2.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "23908", + "title": "[FIX] Translations for App Select Settings not working", + "userLogin": "murtaza98", + "description": "Derived from PR https://github.com/RocketChat/Rocket.Chat/pull/19238", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23848", + "title": "[FIX] DMs being created with username instead of user's name", + "userLogin": "gabriellsh", + "milestone": "4.3.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23879", + "title": "[IMPROVE] Update \"Message Erasure Type\" setting's description", + "userLogin": "matheusbsilva137", + "description": "- 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\");\r\n- Remove outdated translations (for this setting's description).", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23796", + "title": "[FIX] Segmentation fault on CentOS 7 due to outdated `sharp`", + "userLogin": "tassoevan", + "description": "Upgrades `sharp` to avoid a segmentation fault on CentOS 7 during startup related to `sharp.node` being loaded via `process.dlopen()`.\r\n\r\nSuggested as a fix for versions `4.0.x` and `4.1.x`.", + "milestone": "4.2.1", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23819", + "title": "[IMPROVE] Omnichannel Visitor Endpoints error handling", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23857", + "title": "[FIX] teams.removeMembers client usage", + "userLogin": "dougfabris", + "milestone": "4.2.1", + "contributors": [ + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "23862", + "title": "Regression: Toolbox render item", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23558", + "title": "[FIX] Fix no message size limit for method sendMessageLivechat", + "userLogin": "cuonghuunguyen", + "contributors": [ + null + ] + }, + { + "pr": "23791", + "title": "[FIX] Modal keeps state if reset too fast.", + "userLogin": "gabriellsh", + "description": "~Queued updates so the Modal has a chance to close.~\r\nUsed a random key to ensure modal doesn't keep it's state.", + "milestone": "4.3.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23877", + "title": "Regression: Missing padding in popover with custom template", + "userLogin": "dougfabris", + "description": "![Screen Shot 2021-12-06 at 14 16 40](https://user-images.githubusercontent.com/27704687/144891474-a5bf982e-56af-46df-b472-adf9d999ce02.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23873", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-12-06Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego" + ] + }, + { + "pr": "23861", + "title": "[FIX] Wrong button for non trial apps", + "userLogin": "rique223", + "description": "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. \r\nBefore:\r\n![image](https://user-images.githubusercontent.com/43561537/144687716-baef06ce-7a80-42fc-8393-b0283c0f349a.png) \r\nAfter:\r\n![image](https://user-images.githubusercontent.com/43561537/144687924-1a3eb3a7-783f-4450-abd2-1efa0de64658.png)", + "milestone": "4.2.1", + "contributors": [ + "rique223" + ] + }, + { + "pr": "23859", + "title": "[FIX] Error when creating an inactive user in admin panel", + "userLogin": "matheusbsilva137", + "description": "- Fix `usersInRole` array used to send email to activate a user.", + "milestone": "4.2.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23822", + "title": "Chore: Create script to add new migrations", + "userLogin": "KevLehman", + "description": "- Create NPM script to add new migrations\r\n- TODO: Infer next migration number from file list", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23712", + "title": "[FIX] No hover effect for items in kebab menu.", + "userLogin": "Aman-Maheshwari", + "milestone": "4.3.0", + "contributors": [ + "Aman-Maheshwari", + "dougfabris" + ] + }, + { + "pr": "23821", + "title": "[NEW] Create new setting to clean local storage at end of chats", + "userLogin": "tiagoevanp", + "description": "Include setting to handle with and clear the localStorage on Livechat widget. \r\n\r\n![image](https://user-images.githubusercontent.com/17487063/144171179-95f7cf41-0192-4532-bedf-99e0b01f2c61.png)\r\n\r\nThis behavior is only possible to happen when https://github.com/RocketChat/Rocket.Chat.Livechat/pull/666 merged and released.", + "milestone": "4.2.1", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "23215", + "title": "[FIX] Add CSP to authorize auto-close of CAS login window", + "userLogin": "goyome", + "description": "Add the hash of the JS inside the page that won't close ( window.close(); )", + "milestone": "4.1.0", + "contributors": [ + "goyome", + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23831", + "title": "[FIX] Missing custom user status ellipsis", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/144270229-baca14f5-e168-42b7-86d1-e7217be561a9.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/144274255-39216e69-8283-45c5-8a77-b835d284f655.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23781", + "title": "[IMPROVE] Rewrite remove room invite modal", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/143086855-1904dbf3-fb32-4318-b744-95390d68ada2.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/143086365-d96fc9d2-12c6-4123-96a6-d8fd91cdf93a.png)", + "milestone": "4.3.0", + "contributors": [ + "dougfabris", + "gabriellsh" + ] + }, + { + "pr": "23839", + "title": "Chore: Change Menu props to accept next fuselage version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23756", + "title": "Chore: Replace new typography", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "23690", + "title": "[FIX] error after properly deleting user from admin panel", + "userLogin": "Aman-Maheshwari", + "milestone": "4.3.0", + "contributors": [ + "Aman-Maheshwari", + "dougfabris" + ] + }, + { + "pr": "23827", + "title": "Merge master into develop & Set version to 4.3.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23825", + "title": "Release 4.2.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "rique223", + "matheusbsilva137", + "tassoevan", + "KevLehman", + "lingohub[bot]", + "d-gubert", + "dudanogueira", + "ostjen", + "pierre-lehnen-rc", + "renatobecker", + "cauefcr", + "ggazzo", + "rodrigok", + "tiagoevanp", + "bhardwajaditya", + "Aman-Maheshwari", + "dougfabris" + ] + }, + { + "pr": "23774", + "title": "Regression: Add trash to raw models", + "userLogin": "sampaiodiego", + "milestone": "4.2.0", + "contributors": [ + "sampaiodiego", + "ggazzo" + ] + }, + { + "pr": "23820", + "title": "[FIX] LDAP users being disabled when an AD security policy is enabled", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.2.0", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23815", + "title": "Regression: \"When is the chat busier\" and \"Users by time of day\" charts are not working", + "userLogin": "matheusbsilva137", + "description": "- Fix \"When is the chat busier\" (Hours) and \"Users by time of day\" charts, which weren't displaying any data;", + "milestone": "4.2.0", + "contributors": [ + "murtaza98", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "23812", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-11-29Z", + "userLogin": "lingohub[bot]", + "milestone": "4.2.0", + "contributors": [ + null, + "sampaiodiego" + ] + }, + { + "pr": "23813", + "title": "Regression: Mark Livechat WebRTC video calling as alpha", + "userLogin": "murtaza98", + "description": "![image](https://user-images.githubusercontent.com/34130764/143832378-82b99a72-23e8-4115-8b28-a0d210de598b.png)", + "milestone": "4.2.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23803", + "title": "Regression: Current Chats not Filtering", + "userLogin": "MartinSchoeler", + "milestone": "4.2.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "23802", + "title": "Regression: Add @rocket.chat/emitter to EE services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23793", + "title": "Regression: Include files on EE services build", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23789", + "title": "Regression: Fix sort param on omnichannel endpoints", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23778", + "title": "Regression: Fix incorrect API path for livechat calls", + "userLogin": "murtaza98", + "milestone": "4.2.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23775", + "title": "Regression: Fix LDAP sync route", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "23769", + "title": "Chore: Update settings.ts", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23565", + "title": "[FIX] Registration not possible when any user is blocked for multiple failed logins", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23770", + "title": "Regression: Fix sendMessagesToAdmins not in Fiber", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23771", + "title": "Chore: Remove duplicated 'name' key from rate limiter logs", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23761", + "title": "[NEW] Enable LDAP manual sync to deployments without EE license", + "userLogin": "rodrigok", + "description": "Open the Enterprise LDAP API that executes background sync to be used without any Enterprise License and enforce 2FA requirements.", + "milestone": "4.2.0", + "contributors": [ + "rodrigok", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "23732", + "title": "[NEW] Rate limiting for user registering", + "userLogin": "ostjen", + "milestone": "4.2.0", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23675", + "title": "Chore: add index on appId + associations for apps_persistence collection", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23768", + "title": "Chore: Bump Rocket.Chat@livechat to 1.10", + "userLogin": "KevLehman", + "milestone": "4.2.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23766", + "title": "[IMPROVE] Improve the add user drop down for add a user in create channel modal for UserAutoCompleteMultiple", + "userLogin": "dougfabris", + "description": "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.\r\n\r\nBefore:\r\n\r\nhttps://user-images.githubusercontent.com/45966964/115287805-faac8d00-a150-11eb-871f-147ab011ced0.mp4\r\n\r\n\r\nAfter:\r\n\r\nhttps://user-images.githubusercontent.com/45966964/115287664-d2249300-a150-11eb-8cf6-0e04730b425d.mp4", + "milestone": "4.2.0", + "contributors": [ + "Jeanstaquet", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "23533", + "title": "[FIX] New specific endpoint for contactChatHistoryMessages with right permissions", + "userLogin": "tiagoevanp", + "description": "Anyone with 'View Omnichannel Rooms' permission can see the History Messages.", + "milestone": "4.2.0", + "contributors": [ + "tiagoevanp", + "web-flow", + "KevLehman", + "ggazzo" + ] + }, + { + "pr": "23588", + "title": "[FIX][ENTERPRISE] OAuth \"Merge Roles\" removes roles from users", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Fix \"Merge Roles\" and \"Channel Mapping\" not being performed/updated on OAuth login.", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "23547", + "title": "[IMPROVE] Engagement Dashboard", + "userLogin": "tassoevan", + "description": "- Adds helpers `onToggledFeature` for server and client code to handle license activation/deactivation without server restart;\r\n- Replaces usage of `useEndpointData` with `useQuery` (from [React Query](https://react-query.tanstack.com/));\r\n- Introduces `view-engagement-dashboard` permission.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23004", + "title": "[NEW] Audio and Video calling in Livechat", + "userLogin": "murtaza98", + "contributors": [ + "dhruvjain99", + "murtaza98", + "Deepak-learner" + ] + }, + { + "pr": "23758", + "title": "Chore: Type omnichannel models", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "ggazzo" + ] + }, + { + "pr": "23737", + "title": "[NEW] Allow registering by REG_TOKEN environment variable", + "userLogin": "geekgonecrazy", + "description": "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", + "contributors": [ + "geekgonecrazy" + ] + }, + { + "pr": "23686", + "title": "[NEW] Permission for download/uploading files on mobile", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23735", + "title": "[IMPROVE] Stricter API types", + "userLogin": "tassoevan", + "description": "It:\r\n- Adds stricter types for `API`;\r\n- Enables types for `urlParams`;\r\n- Removes mandatory passage of `undefined` payload on client;\r\n- Corrects some regressions;\r\n- Reassures my belief in TypeScript supremacy.", + "contributors": [ + "tassoevan", + "ggazzo" + ] + }, + { + "pr": "23757", + "title": "Regression: Units endpoint to TS", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23750", + "title": "[NEW] REST endpoints to manage Omnichannel Business Units", + "userLogin": "KevLehman", + "description": "Basic documentation about endpoints can be found at https://www.postman.com/kaleman960/workspace/rocketchat-public-api/request/3865466-71502450-8c8f-42b4-8954-1cd3d01fcb0c", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23738", + "title": "[FIX] Autofocus on search input in admin", + "userLogin": "gabriellsh", + "description": "Removed \"generic\" autofocus on sidenav template.", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23745", + "title": "Chore: Generic Table ", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "21314", + "title": "[FIX] User logout after reset E2E key", + "userLogin": "siva2204", + "description": "user Is logged out after they Reset E2E key ,so that they can sign in again to generate new key.", + "contributors": [ + "siva2204", + "tassoevan" + ] + }, + { + "pr": "23739", + "title": "[FIX] Await promise to handle error when attempting to transfer a room", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23673", + "title": "[FIX][ENTERPRISE] Private rooms and discussions can't be audited", + "userLogin": "matheusbsilva137", + "description": "- Add Private rooms (groups) and Discussions to the Message Auditing (Channels) autocomplete;\r\n- Update \"Channels\" tab name to \"Rooms\".", + "contributors": [ + "matheusbsilva137", + "gabriellsh" + ] + }, + { + "pr": "23734", + "title": "[FIX] Missing user roles in edit user tab", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23733", + "title": "[FIX] Discussions created inside discussions", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23694", + "title": "[NEW] Allow Omnichannel statistics to be collected.", + "userLogin": "cauefcr", + "description": "This PR adds the possibility for business stakeholders to see what is actually being used of the Omnichannel integrations.", + "contributors": [ + "cauefcr", + "web-flow" + ] + }, + { + "pr": "23725", + "title": "[IMPROVE] Re-naming department query param for Twilio", + "userLogin": "murtaza98", + "description": "Since the endpoint supports both, department ID and department Name, so we're renaming it to reflect the same. `departmentName` -> `department`", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23468", + "title": "[FIX] Fixed E2E default room settings not being honoured", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "TheDigitalEagle", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23659", + "title": "[FIX] broken avatar preview when changing avatar", + "userLogin": "Aman-Maheshwari", + "contributors": [ + "Aman-Maheshwari" + ] + }, + { + "pr": "23705", + "title": "[FIX] Prevent UserAction.addStream without Subscription", + "userLogin": "tiagoevanp", + "description": "When you take an Omnichannel chat from queue, the guest's typing information will appear.", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "23499", + "title": "[FIX] PhotoSwipe crashing on show", + "userLogin": "tassoevan", + "description": "Waits for initial content to load before showing it.", + "contributors": [ + "tassoevan", + "dougfabris" + ] + }, + { + "pr": "23695", + "title": "Chore: add `no-bidi` rule", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23711", + "title": "[FIX] Fix typo in FR translation", + "userLogin": "Cormoran96", + "contributors": [ + "Cormoran96" + ] + }, + { + "pr": "23706", + "title": "Chore: Mocha testing configuration", + "userLogin": "tassoevan", + "description": "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.\r\n\r\nHere as summary of the proposal:\r\n\r\n- Change Mocha configuration files:\r\n - Add a base configuration (`.mocharc.base.json`);\r\n - Rename the configuration for REST API tests (`mocha_end_to_end.opts.js -> .mocharc.api.js`);\r\n - Add a configuration for client modules (`.mocharc.client.js`);\r\n - Enable ESLint for them.\r\n- Add a Mocha test command exclusive for client modules (`npm run testunit-client`);\r\n- Enable fast watch mode:\r\n - Configure `ts-node` to only transpile code (skip type checking);\r\n - Define a list of files to be watched.\r\n- Configure `mocha` environment on ESLint only for test files (required when using Mocha's globals);\r\n- Adopt Chai as our assertion library:\r\n - Unify the setup of Chai plugins (`chai-spies`, `chai-datetime`, `chai-dom`);\r\n - Replace `assert` with `chai`;\r\n - Replace `chai.expect` with `expect`.\r\n- Enable integration tests with React components:\r\n - Enable JSX support on our default Babel configuration;\r\n - Adopt [testing library](https://testing-library.com/).", + "contributors": [ + "tassoevan", + "KevLehman", + "ggazzo" + ] + }, + { + "pr": "23701", + "title": "Chore: Api definitions", + "userLogin": "ggazzo", + "contributors": [ + "tassoevan", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "23703", + "title": "[FIX][ENTERPRISE] Replace all occurrences of a placeholder on string instead of just first one", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23380", + "title": "[FIX] Horizontal rule render for inline marked options", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/140845391-f84863de-34c5-40c9-86e9-5661fc8d6305.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/140845062-8ffd297b-5430-4aa8-82a1-ec2bdaa5e265.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23641", + "title": "[FIX] Omnichannel webhooks can't be saved", + "userLogin": "Aman-Maheshwari", + "contributors": [ + "Aman-Maheshwari" + ] + }, + { + "pr": "23595", + "title": "[FIX] Omnichannel business hours page breaking navigation", + "userLogin": "Aman-Maheshwari", + "contributors": [ + "Aman-Maheshwari", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "23626", + "title": "[IMPROVE] Allow override of default department for SMS Livechat sessions", + "userLogin": "bhardwajaditya", + "contributors": [ + "bhardwajaditya" + ] + }, + { + "pr": "23691", + "title": "[FIX] Omnichannel contact center navigation", + "userLogin": "tiagoevanp", + "description": "Derives from: https://github.com/RocketChat/Rocket.Chat/pull/23656\r\n\r\nThis PR includes a different approach to solving navigation problems following the same code structure and UI definitions of other \"ActionButtons\" components in Sidebar.", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "23692", + "title": "Regression: Improve AggregationCursor types", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23696", + "title": "Chore: Remove useCallbacks", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23387", + "title": "[IMPROVE] Reduce complexity in some functions", + "userLogin": "tassoevan", + "description": "Overhauls all places where eslint's `complexity` rule is disabled.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23633", + "title": "Chore: Convert Fiber models to async Step 1", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "sampaiodiego" + ] + }, + { + "pr": "23671", + "title": "Release 4.1.2", + "userLogin": "ggazzo", + "contributors": [ + "KevLehman", + "ggazzo", + "renatobecker", + "matheusbsilva137" + ] + }, + { + "pr": "23487", + "title": "[FIX] Notifications are not being filtered", + "userLogin": "matheusbsilva137", + "description": "- Add a migration to update the `Accounts_Default_User_Preferences_pushNotifications` setting's value to the `Accounts_Default_User_Preferences_mobileNotifications` setting's value;\r\n - Remove the `Accounts_Default_User_Preferences_mobileNotifications` setting (replaced by `Accounts_Default_User_Preferences_pushNotifications`);\r\n - Rename 'mobileNotifications' user's preference to 'pushNotifications'.", + "milestone": "4.1.2", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23661", + "title": "[FIX] Performance issues when running Omnichannel job queue dispatcher", + "userLogin": "renatobecker", + "milestone": "4.1.2", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "23587", + "title": "[FIX] Omnichannel status being changed on page refresh", + "userLogin": "KevLehman", + "milestone": "4.1.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23389", + "title": "[NEW] Permissions for interacting with Omnichannel Contact Center", + "userLogin": "cauefcr", + "description": "Adds a new permission, one that allows for control over user access to Omnichannel Contact Center,", + "contributors": [ + "cauefcr", + "web-flow" + ] + }, + { + "pr": "23587", + "title": "[FIX] Omnichannel status being changed on page refresh", + "userLogin": "KevLehman", + "milestone": "4.1.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23661", + "title": "[FIX] Performance issues when running Omnichannel job queue dispatcher", + "userLogin": "renatobecker", + "milestone": "4.1.2", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "23645", + "title": "Release 4.1.1", + "userLogin": "sampaiodiego", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego", + "dudanogueira", + "d-gubert" + ] + }, + { + "pr": "23607", + "title": "[FIX] App update flow failing in HA setups", + "userLogin": "d-gubert", + "description": "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", + "milestone": "4.1.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23627", + "title": "[FIX] LDAP users not being re-activated on login", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.1.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23608", + "title": "[FIX] Advanced LDAP Sync Features", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.1.1", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23608", + "title": "[FIX] Advanced LDAP Sync Features", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.1.1", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23627", + "title": "[FIX] LDAP users not being re-activated on login", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.1.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23576", + "title": "[FIX] \"to users\" not working in export message", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow" + ] + }, + { + "pr": "23607", + "title": "[FIX] App update flow failing in HA setups", + "userLogin": "d-gubert", + "description": "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", + "milestone": "4.1.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23566", + "title": "[FIX] Apps scheduler \"losing\" jobs after server restart", + "userLogin": "d-gubert", + "description": "If a job is scheduled and the server restarted, said job won't be executed, giving the impression it's been lost.\r\n\r\nWhat 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.\r\n\r\nThis PR starts the apps scheduler right after all apps have been loaded", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23603", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-11-01Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego" + ] + }, + { + "pr": "23498", + "title": "[NEW] Show on-hold metrics on analytics pages and current chats", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23452", + "title": "Chore: Rearrange module typings", + "userLogin": "tassoevan", + "description": "- Move all external module declarations (definitions and augmentations) to `/definition/externals`;\r\n- ~Symlink some modules on `/definition/externals` to `/ee/server/services/definition/externals`~ Share types with `/ee/server/services`;\r\n- Use TypeScript as server code entrypoint.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23487", + "title": "[FIX] Notifications are not being filtered", + "userLogin": "matheusbsilva137", + "description": "- Add a migration to update the `Accounts_Default_User_Preferences_pushNotifications` setting's value to the `Accounts_Default_User_Preferences_mobileNotifications` setting's value;\r\n - Remove the `Accounts_Default_User_Preferences_mobileNotifications` setting (replaced by `Accounts_Default_User_Preferences_pushNotifications`);\r\n - Rename 'mobileNotifications' user's preference to 'pushNotifications'.", + "milestone": "4.1.2", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23542", + "title": "[IMPROVE] MKP12 - New UI - Merge Apps and Marketplace Tabs and Content", + "userLogin": "rique223", + "description": "Merged the Marketplace and Apps page into a single page with a tabs component that changes between Markeplace and installed apps.\r\n![page merging](https://user-images.githubusercontent.com/43561537/138516558-f86d62e6-1a5c-4817-a229-a1b876323960.gif)", + "contributors": [ + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "23586", + "title": "Merge master into develop & Set version to 4.2.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23581", + "title": "Release 4.1.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "tassoevan", + "dougfabris", + "Darshilp326", + "ostjen", + "d-gubert", + "wolbernd", + "rodrigok", + "matheusbsilva137", + "Aman-Maheshwari", + "Sing-Li", + "murtaza98", + "yash-rajpal", + "badbart", + "AbhJ", + "dragoneena12" + ] + }, + { + "pr": "23554", + "title": "Release 4.0.5", + "userLogin": "sampaiodiego", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "23541", + "title": "[FIX] OAuth login not working on mobile app", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.0.5", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23532", + "title": "Release 4.0.4", + "userLogin": "sampaiodiego", + "contributors": [ + "KevLehman", + "sampaiodiego", + "matheusbsilva137" + ] + }, + { + "pr": "23411", + "title": "[FIX] SAML Users' roles being reset to default on login", + "userLogin": "matheusbsilva137", + "description": "- Remove `roles` field update on `insertOrUpdateSAMLUser` function;\r\n- Add SAML `syncRoles` event;", + "milestone": "4.0.4", + "contributors": [ + "matheusbsilva137", + "pierre-lehnen-rc" + ] + }, + { + "pr": "23522", + "title": "[FIX] Queue error handling and unlocking behavior", + "userLogin": "KevLehman", + "milestone": "4.0.4", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23496", + "title": "Release 4.0.3", + "userLogin": "sampaiodiego", + "contributors": [ + "KevLehman", + "sampaiodiego", + "thassiov" + ] + }, + { + "pr": "23418", + "title": "[FIX][APPS] Communication problem when updating and uninstalling apps in cluster", + "userLogin": "thassiov", + "description": "- Make the hook responsible for receiving app update events inside a cluster fetch the app's package (zip file) in the correct place.\r\n- 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.", + "milestone": "4.0.3", + "contributors": [ + "thassiov" + ] + }, + { + "pr": "23473", + "title": "[FIX] Server crashing when Routing method is not available at start", + "userLogin": "KevLehman", + "milestone": "4.0.3", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23460", + "title": "Release 4.0.2", + "userLogin": "sampaiodiego", + "contributors": [ + "murtaza98", + "sampaiodiego", + "Aman-Maheshwari" + ] + }, + { + "pr": "23377", + "title": "[FIX] Attachment buttons overlap in mobile view", + "userLogin": "Aman-Maheshwari", + "milestone": "4.0.2", + "contributors": [ + "Aman-Maheshwari" + ] + }, + { + "pr": "23393", + "title": "[FIX] user/agent upload not working via Apps Engine after 3.16.0", + "userLogin": "murtaza98", + "description": "Fixes #22974", + "milestone": "4.0.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23404", + "title": "[FIX][ENTERPRISE] Omnichannel agent is not leaving the room when a forwarded chat is queued", + "userLogin": "murtaza98", + "milestone": "4.0.2", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23396", + "title": "[FIX] Prevent starting Omni-Queue if Omnichannel is disabled", + "userLogin": "murtaza98", + "description": "Whenever the Routing system setting changes, and omnichannel is disabled, then we shouldn't start the queue.", + "milestone": "4.0.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23386", + "title": "Release 4.0.1", + "userLogin": "sampaiodiego", + "contributors": [ + "rodrigok", + "sampaiodiego", + "ostjen", + "wolbernd", + "d-gubert", + "matheusbsilva137" + ] + }, + { + "pr": "23378", + "title": "[FIX] Users' `roles` and `type` being reset to default on LDAP DataSync", + "userLogin": "matheusbsilva137", + "description": "- Update `roles` and `type` fields only if they are specified in the data imported from LDAP (otherwise, no changes are applied).", + "milestone": "4.0.1", + "contributors": [ + "matheusbsilva137", + "sampaiodiego" + ] + }, + { + "pr": "23374", + "title": "[FIX] imported migration v240", + "userLogin": "ostjen", + "milestone": "4.0.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23375", + "title": "Chore: Update Apps-Engine version", + "userLogin": "d-gubert", + "milestone": "4.0.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23366", + "title": "[FIX] BigBlueButton integration error due to missing file import", + "userLogin": "wolbernd", + "description": "Fixes BigBlueButton integration", + "milestone": "4.0.1", + "contributors": [ + "wolbernd", + "web-flow" + ] + }, + { + "pr": "23372", + "title": "[FIX] unwanted toastr error message when deleting user", + "userLogin": "ostjen", + "milestone": "4.0.1", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23379", + "title": "[FIX] resumeToken not working", + "userLogin": "sampaiodiego", + "milestone": "4.0.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23381", + "title": "[FIX] MongoDB deprecation link", + "userLogin": "sampaiodiego", + "milestone": "4.0.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23382", + "title": "[FIX] LDAP not stoping after wrong password", + "userLogin": "rodrigok", + "milestone": "4.0.1", + "contributors": [ + "rodrigok" + ] + }, + { + "pr": "23577", + "title": "Regression: Debounce call based on params on omnichannel queue dispatch", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23556", + "title": "Regression: Prevent settings from getting updated", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23568", + "title": "Regression: Routing method not available when called from listeners at startup", + "userLogin": "KevLehman", + "milestone": "4.1.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23391", + "title": "Bump: fuselage 0.30.1", + "userLogin": "ggazzo", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23564", + "title": "Revert: \"[FIX] Apps scheduler \"losing\" jobs after server restart\"", + "userLogin": "d-gubert", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "23539", + "title": "[FIX] Apps scheduler \"losing\" jobs after server restart", + "userLogin": "d-gubert", + "description": "If a job is scheduled and the server restarted, said job won't be executed, giving the impression it's been lost.\r\n\r\nWhat 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.\r\n\r\nThis PR starts the apps scheduler right after all apps have been loaded", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23552", + "title": "Regression: Mail body contains `undefined` text", + "userLogin": "tassoevan", + "description": "### Before\r\n![image](https://user-images.githubusercontent.com/2263066/138733018-10449892-5c2d-46fb-9355-00e98e0d6c9f.png)\r\n\r\n### After\r\n![image](https://user-images.githubusercontent.com/2263066/138733074-a1b88a77-bf64-41c3-a6c3-ac9e1cb63de1.png)", + "contributors": [ + "tassoevan", + "sampaiodiego" + ] + }, + { + "pr": "23541", + "title": "[FIX] OAuth login not working on mobile app", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.0.5", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23531", + "title": "Regression: Waiting_queue setting not being applied due to missing module key", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23528", + "title": "Regression: Settings order", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23529", + "title": "Regression: watchByRegex without Fibers", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23524", + "title": "Chore: Fix some TS warnings", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23521", + "title": "[FIX] Delay start of email inbox", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23495", + "title": "Chore: Make omnichannel settings dependent on omnichannel being enabled", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23523", + "title": "Chore: Update Livechat Package", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "23411", + "title": "[FIX] SAML Users' roles being reset to default on login", + "userLogin": "matheusbsilva137", + "description": "- Remove `roles` field update on `insertOrUpdateSAMLUser` function;\r\n- Add SAML `syncRoles` event;", + "milestone": "4.0.4", + "contributors": [ + "matheusbsilva137", + "pierre-lehnen-rc" + ] + }, + { + "pr": "23522", + "title": "[FIX] Queue error handling and unlocking behavior", + "userLogin": "KevLehman", + "milestone": "4.0.4", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23314", + "title": "[FIX] MONGO_OPTIONS being ignored for oplog connection", + "userLogin": "cuonghuunguyen", + "contributors": [ + "cuonghuunguyen", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23392", + "title": "[IMPROVE] Allow Omnichannel to handle huge queues ", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23515", + "title": "[IMPROVE] Make Livechat Instructions setting multi-line", + "userLogin": "murtaza98", + "description": "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\r\n![image](https://user-images.githubusercontent.com/34130764/138146712-13e4968b-5312-4d53-b44c-b5699c5e49c1.png)", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23505", + "title": "Chore: Improve watch OAuth settings logic", + "userLogin": "ggazzo", + "description": "Just prevent to perform 200 deletions for registers that not even exist", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23518", + "title": "Regression: Incorrect behavior in jump to recent message button", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23519", + "title": "Regression: Fix enterprise setting validation", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23514", + "title": "Chore: Ensure all permissions are created up to this point", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23469", + "title": "[FIX] useEndpointAction replace by useEndpointActionExperimental", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "23394", + "title": "[FIX] Omni-Webhook's retry mechanism going in infinite loop", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23511", + "title": "Regression: Fix user typings style", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23510", + "title": "Chore: Update pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23506", + "title": "Regression: Prevent Settings Unit Test Error ", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "23486", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-10-18Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "KevLehman" + ] + }, + { + "pr": "23376", + "title": "Bump url-parse from 1.4.7 to 1.5.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23172", + "title": "[FIX] Rewrite missing webRTC feature", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "23488", + "title": "Chore: Replace `promises` helper", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23210", + "title": "Chore: Startup Time", + "userLogin": "ggazzo", + "description": "The settings logic has been improved as a whole.\r\n\r\nAll the logic to get the data from the env var was confusing.\r\n\r\nSetting default values was tricky to understand.\r\n\r\nEvery 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).\r\n\r\n`Settings.get(......, callback);` was deprecated. We now have better methods for each case.", + "milestone": "4.1.0", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "23494", + "title": "[FIX] Missing avatarETag in Room Avatars", + "userLogin": "dougfabris", + "description": "### before\r\n![before](https://user-images.githubusercontent.com/27704687/137982103-1f4c8d0c-b4e1-4604-ba0f-6e3881813577.gif)\r\n\r\n### after\r\n![Peek 2021-10-19 16-59](https://user-images.githubusercontent.com/27704687/137981755-61dad9c0-4c50-4af3-9337-4e7a2633023a.gif)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23491", + "title": "Chore: Move `isJSON` helper", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23497", + "title": "Update the community open call link in README", + "userLogin": "Sing-Li", + "contributors": [ + "Sing-Li", + "web-flow", + "geekgonecrazy" + ] + }, + { + "pr": "23490", + "title": "Chore: Move `addMinutesToADate` helper", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23489", + "title": "Chore: Move `isEmail` helper", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23228", + "title": "[FIX] Admins can't update or reset user avatars when the \"Allow User Avatar Change\" setting is off", + "userLogin": "matheusbsilva137", + "description": "- Allow admins (or any other user with the `edit-other-user-avatar` permission) to update or reset user avatars even when the \"Allow User Avatar Change\" setting is off.", + "contributors": [ + "matheusbsilva137", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23473", + "title": "[FIX] Server crashing when Routing method is not available at start", + "userLogin": "KevLehman", + "milestone": "4.0.3", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "22949", + "title": "[FIX] Avoid last admin deactivate itself", + "userLogin": "ostjen", + "description": "Co-authored-by: @Kartik18g", + "contributors": [ + "ostjen", + "web-flow", + null + ] + }, + { + "pr": "23418", + "title": "[FIX][APPS] Communication problem when updating and uninstalling apps in cluster", + "userLogin": "thassiov", + "description": "- Make the hook responsible for receiving app update events inside a cluster fetch the app's package (zip file) in the correct place.\r\n- 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.", + "milestone": "4.0.3", + "contributors": [ + "thassiov" + ] + }, + { + "pr": "23474", + "title": "[FIX] Allow files with no/unknown extension to be uploaded", + "userLogin": "gabriellsh", + "description": "Let the server block uploads based on mime type if the browser can't recognize the extension.", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "23455", + "title": "[IMPROVE] Rewrite read receipts to react.", + "userLogin": "gabriellsh", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/137547164-95089054-7639-4484-98b1-dad858d5e3a7.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/40830821/137206897-f31b75c5-d962-4595-844a-d7842dfe33a5.png)", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "23471", + "title": "[FIX] Team's tag inaccessible for members", + "userLogin": "dougfabris", + "description": "### before\r\n![before_video](https://user-images.githubusercontent.com/27704687/137529529-d30b4f0b-af2b-4d81-ba38-e81b48e77519.gif)\r\n\r\n### after\r\n![after_video](https://user-images.githubusercontent.com/27704687/137529526-cf0bc6db-fa08-4bf9-8599-af647a0e3307.gif)", + "contributors": [ + "dougfabris", + "matheusbsilva137" + ] + }, + { + "pr": "23417", + "title": "[IMPROVE] Rewrite Edit Status Modal", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/136571489-76d9e218-440b-4e52-a802-508fc8a03d15.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/136571431-3b1a41c0-d419-437c-93c0-39c2e297dab5.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23472", + "title": "[IMPROVE] Rewrite \"Message too long\" modal to react", + "userLogin": "gabriellsh", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/137536256-95ba71d2-4185-40b2-b13d-08138499c44b.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/40830821/137533488-e6c74a55-23c8-457e-a00b-f907767a3fe3.png)", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23462", + "title": "[FIX] Markdown quote message style", + "userLogin": "tiagoevanp", + "description": "Before:\r\n![image](https://user-images.githubusercontent.com/17487063/137496669-3abecab4-cf90-45cb-8b1b-d9411a5682dd.png)\r\n\r\nAfter:\r\n![image](https://user-images.githubusercontent.com/17487063/137496905-fd727f90-f707-4ec6-8139-ba2eb1a2146e.png)", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "22950", + "title": "[NEW] Stream to get individual presence updates", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "ggazzo" + ] + }, + { + "pr": "23396", + "title": "[FIX] Prevent starting Omni-Queue if Omnichannel is disabled", + "userLogin": "murtaza98", + "description": "Whenever the Routing system setting changes, and omnichannel is disabled, then we shouldn't start the queue.", + "milestone": "4.0.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23373", + "title": "[FIX] Merge teams as conversation when group by type is disabled", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/136074414-b23dfc49-7c6a-4fd3-b344-9973d4afe1ca.png)\r\n\r\n### after\r\n![image](https://user-images.githubusercontent.com/27704687/136074065-6f7483db-a506-4a94-ad9b-baf744b6b574.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23404", + "title": "[FIX][ENTERPRISE] Omnichannel agent is not leaving the room when a forwarded chat is queued", + "userLogin": "murtaza98", + "milestone": "4.0.2", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23419", + "title": "Chore: Partially migrate 2FA client code to TypeScript", + "userLogin": "tassoevan", + "description": "Additionally, hides `toastr` behind an module to handle UI's toast notifications.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "19457", + "title": "[FIX] Show jump to recent messages button", + "userLogin": "dragoneena12", + "description": "Show the button to scroll to the last message when you just moved up from last message.\r\n\r\n![image](https://user-images.githubusercontent.com/27704687/136297875-f07f07d2-945b-4365-ad4a-85138305cf50.png)", + "contributors": [ + "dragoneena12", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "23342", + "title": "Chore: clean README", + "userLogin": "AbhJ", + "contributors": [ + "AbhJ", + "web-flow" + ] + }, + { + "pr": "23355", + "title": "Chore: Fixed a Typo in 11-admin.js test", + "userLogin": "badbart", + "contributors": [ + "badbart", + "web-flow" + ] + }, + { + "pr": "23405", + "title": "Chore: Document REST API endpoints (DNS)", + "userLogin": "tassoevan", + "description": "Describes endpoints for DNS on REST API using a JSDoc annotation compatible with OpenAPI spec.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23430", + "title": "Chore: Document REST API endpoints (E2E)", + "userLogin": "tassoevan", + "description": "Describes endpoints for end-to-end encryption on REST API using a JSDoc annotation compatible with OpenAPI spec.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23428", + "title": "Chore: Document REST API endpoints (Misc)", + "userLogin": "tassoevan", + "description": "Describes miscellaneous endpoints on REST API using a JSDoc annotation compatible with OpenAPI spec.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "20947", + "title": "[IMPROVE] Add markdown to custom fields in user Info", + "userLogin": "yash-rajpal", + "description": "Added markdown to custom fields to render links", + "contributors": [ + "yash-rajpal", + "dougfabris" + ] + }, + { + "pr": "23393", + "title": "[FIX] user/agent upload not working via Apps Engine after 3.16.0", + "userLogin": "murtaza98", + "description": "Fixes #22974", + "milestone": "4.0.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "23377", + "title": "[FIX] Attachment buttons overlap in mobile view", + "userLogin": "Aman-Maheshwari", + "milestone": "4.0.2", + "contributors": [ + "Aman-Maheshwari" + ] + }, + { + "pr": "23378", + "title": "[FIX] Users' `roles` and `type` being reset to default on LDAP DataSync", + "userLogin": "matheusbsilva137", + "description": "- Update `roles` and `type` fields only if they are specified in the data imported from LDAP (otherwise, no changes are applied).", + "milestone": "4.0.1", + "contributors": [ + "matheusbsilva137", + "sampaiodiego" + ] + }, + { + "pr": "23382", + "title": "[FIX] LDAP not stoping after wrong password", + "userLogin": "rodrigok", + "milestone": "4.0.1", + "contributors": [ + "rodrigok" + ] + }, + { + "pr": "23381", + "title": "[FIX] MongoDB deprecation link", + "userLogin": "sampaiodiego", + "milestone": "4.0.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23385", + "title": "Chore: Remove dangling README file", + "userLogin": "tassoevan", + "description": "Removes the elderly `server/restapi/README.md`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23379", + "title": "[FIX] resumeToken not working", + "userLogin": "sampaiodiego", + "milestone": "4.0.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23372", + "title": "[FIX] unwanted toastr error message when deleting user", + "userLogin": "ostjen", + "milestone": "4.0.1", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23370", + "title": "Chore: Migrate some React components/hooks to TypeScript", + "userLogin": "tassoevan", + "description": "Just low-hanging fruits.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23366", + "title": "[FIX] BigBlueButton integration error due to missing file import", + "userLogin": "wolbernd", + "description": "Fixes BigBlueButton integration", + "milestone": "4.0.1", + "contributors": [ + "wolbernd", + "web-flow" + ] + }, + { + "pr": "23375", + "title": "Chore: Update Apps-Engine version", + "userLogin": "d-gubert", + "milestone": "4.0.1", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "23374", + "title": "[FIX] imported migration v240", + "userLogin": "ostjen", + "milestone": "4.0.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "22941", + "title": "[IMPROVE] optimized groups.listAll response time", + "userLogin": "ostjen", + "description": "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.\r\n\r\nConsidering 70k groups, this was the performance improvement:\r\n\r\nbefore\r\n![image](https://user-images.githubusercontent.com/28611993/129601314-bdf89337-79fa-4446-9f44-95264af4adb3.png)\r\n\r\nafter\r\n![image](https://user-images.githubusercontent.com/28611993/129601358-5872e166-f923-4c1c-b21d-eb9507365ecf.png)", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "21673", + "title": "[IMPROVE] Update toast message for remove and delete rooms from teams", + "userLogin": "Darshilp326", + "description": "Added success messages to remove and delete room actions.\r\n\r\nBEFORE\r\n\r\nhttps://user-images.githubusercontent.com/55157259/115400805-520d3480-a207-11eb-9be9-8db9b6cda590.mp4\r\n\r\nAFTER\r\n\r\nhttps://user-images.githubusercontent.com/55157259/115400846-5afe0600-a207-11eb-9479-1d8e92fdc787.mp4", + "contributors": [ + "Darshilp326", + "dougfabris" + ] + }, + { + "pr": "23213", + "title": "[FIX] Read only description in team creation", + "userLogin": "dougfabris", + "description": "![image](https://user-images.githubusercontent.com/27704687/133608433-8ca788a3-71a8-4d40-8c40-8156ab03c606.png)\r\n\r\n![image](https://user-images.githubusercontent.com/27704687/133608400-4cdc7a67-95e5-46c6-8c65-29ab107cd314.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23364", + "title": "Chore: Upgrade Storybook", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23360", + "title": "Chore: Move components away from /app/", + "userLogin": "tassoevan", + "description": "We currently do NOT recommend placing React components under `/app`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23361", + "title": "Chore: Document REST API endpoints (banners)", + "userLogin": "tassoevan", + "description": "Describes endpoints for banners on REST API using a JSDoc annotation compatible with OpenAPI spec.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23339", + "title": "Release 4.0.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "lingohub[bot]", + "dependabot[bot]", + "graywolf336", + "MarcosSpessatto", + "murtaza98", + "KevLehman" + ] + }, + { + "pr": "23362", + "title": "Merge master into develop & Set version to 4.1.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "23328", + "title": "Regression: invalid `call` import", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23331", + "title": "Regression: LDAP: Handle base authentication and prevent crash", + "userLogin": "rodrigok", + "description": "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.", + "milestone": "4.0.0", + "contributors": [ + "rodrigok", + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23334", + "title": "Regression: invalid `call` import", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23321", + "title": "Regression: LDAP User Data Sync not always working", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23333", + "title": "Regression: Removed exclusive tests statement", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23322", + "title": "Regression: Blank screen in Jitsi video calls", + "userLogin": "matheusbsilva137", + "description": "- Fix Jitsi calls being disposed even when \"Open in new window\" setting is disabled;\r\n - Fix misspelling on `CallJitsWithData.js` file name.", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23330", + "title": "Regression: SAML identifier mapping", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23319", + "title": "[BREAK] Moved SAML custom field map to EE", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23320", + "title": "Regression: \"Join\" button not working", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23318", + "title": "Regression: Add default value when no cookies are present", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23317", + "title": "Regression: Request seats url", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23310", + "title": "[BREAK] Webhook will fail if user is not part of the channel", + "userLogin": "sampaiodiego", + "description": "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.\r\n\r\nStarting from 4.0.0 the webhook request will fail with `error-not-allowed` error:\r\n\r\n```\r\n{\"success\":false,\"error\":\"error-not-allowed\"}\r\n```", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23311", + "title": "Regression: LDAP Channel/Role Sync not working", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23312", + "title": "Regression: Request seats link", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23306", + "title": "Regression: LDAP Issues", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23302", + "title": "[BREAK] Remove cordova compatibility setting", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "23308", + "title": "Regression: Fix Bugsnag not started error", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23307", + "title": "Regression: Change some logs to new format", + "userLogin": "KevLehman", + "milestone": "3.18.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23297", + "title": "Regression: Create new loggers based on server log level", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23304", + "title": "Regression: Fix channel icons on queue", + "userLogin": "MartinSchoeler", + "milestone": "4.0.0", + "contributors": [ + "KevLehman", + "MartinSchoeler" + ] + }, + { + "pr": "23280", + "title": "[FIX] Update visitor info on email reception based on current inbox settings", + "userLogin": "KevLehman", + "milestone": "3.18.2", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23286", + "title": "Regression: Fix app storage migration", + "userLogin": "thassiov", + "description": "The previous version of this migration didn't take into consideration apps that were installed prior to [Rocket.Chat@3.8.0](https://github.com/RocketChat/Rocket.Chat/releases/tag/3.8.0), which [removed the typescript compiler from the server](https://github.com/RocketChat/Rocket.Chat/pull/18687) 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.\r\n\r\nAs 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](https://github.com/RocketChat/Rocket.Chat/pull/23286/files#diff-caf9f7a22478639e58d6514be039140a42ce1ab2d999c3efe5678c38ee36d0ccR43)), and as the zips' contents were wrong, the operation was failing.\r\n\r\nThe fix extract the data from old apps and creates new zip files with the compiled `js` already present.", + "contributors": [ + "thassiov" + ] + }, + { + "pr": "23278", + "title": "Regression: Seats Cap banner not being disabled if not enterprise", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "23218", + "title": "[FIX] Sidebar not closing when clicking in Home or Directory on mobile view", + "userLogin": "dougfabris", + "description": "### Additional fixed\r\n- Merge Burger menu components into a single component\r\n- Show a badge with no-read messages in the Burger Button:\r\n![image](https://user-images.githubusercontent.com/27704687/133679378-20fea2c0-4ac1-4b4e-886e-45154cc6afea.png)\r\n- remove useSidebarClose hook", + "contributors": [ + "dougfabris", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "23281", + "title": "Regression: wrong settings order", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "22407", + "title": "[FIX] Prevent users to edit an existing role when adding a new one with the same name used before.", + "userLogin": "dougfabris", + "description": "### before\r\n![Peek 2021-07-13 16-31](https://user-images.githubusercontent.com/27704687/125513721-953d84f4-1c95-45ca-80e1-b00992b874f6.gif)\r\n\r\n### after\r\n![Peek 2021-07-13 16-34](https://user-images.githubusercontent.com/27704687/125514098-91ee8014-51e5-4c62-9027-5538acf57d08.gif)", + "contributors": [ + null, + "lucassartor", + "dougfabris", + "ggazzo", + "web-flow", + "pierre-lehnen-rc", + "tassoevan" + ] + }, + { + "pr": "23282", + "title": "Regression: Missing i18n key", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "23201", + "title": "[BREAK] Moved advanced oAuth features to EE", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "23256", + "title": "[IMPROVE] Better text for auth banner", + "userLogin": "g-thome", + "description": "Change the text in the banner warning for auth changes", + "contributors": [ + "g-thome", + "tassoevan", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "23090", + "title": "[NEW] Omnichannel source identification fields", + "userLogin": "d-gubert", + "description": "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.", + "milestone": "4.0.0", + "contributors": [ + "d-gubert", + "KevLehman", + "web-flow", + "tiagoevanp", + "MartinSchoeler" + ] + }, + { + "pr": "23231", + "title": "Regression: LDAP Refactoring", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "web-flow", + "ggazzo" + ] + }, + { + "pr": "22657", + "title": "[IMPROVE][APPS] New storage strategy for Apps-Engine file packages", + "userLogin": "d-gubert", + "description": "This is an enabler for our initiative to support NPM packages in the Apps-Engine. \r\n\r\nCurrently, 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).\r\n\r\nWhen 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.", + "milestone": "4.0.0", + "contributors": [ + "d-gubert", + "web-flow", + "thassiov" + ] + }, + { + "pr": "23243", + "title": "[FIX] Modals is cutting pixels of the content", + "userLogin": "dougfabris", + "description": "Fuselage Dependency: [543](https://github.com/RocketChat/Rocket.Chat.Fuselage/pull/543)\r\n![image](https://user-images.githubusercontent.com/27704687/134049227-3cd1deed-34ba-454f-a95e-e99b79a7a7b9.png)", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "23232", + "title": "[IMPROVE] Load code highlighting languages on demand and fixes on new message parser", + "userLogin": "ggazzo", + "description": "Now we have this setting called 'Code highlighting languages list' where you can define the languages that you want to be loaded by default.", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "23223", + "title": "[BREAK][ENTERPRISE] Missing headers in CSV files downloaded from the Engagement Dashboard", + "userLogin": "matheusbsilva137", + "description": "- Add headers to all CSV files downloaded from the \"Messages\" and \"Channels\" tabs from the Engagement Dashboard;\r\n - Add headers to the CSV file downloaded from the \"Users by time of day\" section (in the \"Users\" tab).", + "contributors": [ + "matheusbsilva137", + "casalsgh", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23074", + "title": "[FIX] transfer message when tranferring room by Apps Engine", + "userLogin": "cuonghuunguyen", + "milestone": "4.0.0", + "contributors": [ + "cuonghuunguyen", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "22392", + "title": "[NEW] Add activity indicators for Uploading and Recording using new API; Support thread context; Deprecate the old typing API", + "userLogin": "sumukhah", + "milestone": "4.0.0", + "contributors": [ + "sumukhah", + "rodrigok" + ] + }, + { + "pr": "23236", + "title": "Bump ejson from 2.2.1 to 2.2.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23056", + "title": "[FIX] Remove doubled \"Canned Responses\" strings", + "userLogin": "matheusbsilva137", + "description": "- Remove doubled canned response setting introduced in #22703 (by setting id change);\r\n - Update \"Canned Responses\" keys to \"Canned_Responses\".", + "contributors": [ + "matheusbsilva137", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23110", + "title": "[FIX] Can't edit profile information if any field update setting is disabled", + "userLogin": "matheusbsilva137", + "description": "- Check which fields have been updated before throwing errors in `validateUserEditing`.", + "contributors": [ + "matheusbsilva137", + "web-flow", + "casalsgh" + ] + }, + { + "pr": "23037", + "title": "[FIX] \"Read Only\" and \"Allow Reacting\" system messages are missing in rooms", + "userLogin": "matheusbsilva137", + "description": "- Add system message to notify changes on the **\"Read Only\"** setting;\r\n - Add system message to notify changes on the **\"Allow Reacting\"** setting;\r\n - Fix \"Allow Reacting\" setting's description (updated from \"Only authorized users can write new messages\" to \"Only authorized users can react to messages\").\r\n![system-messages](https://user-images.githubusercontent.com/36537004/130883527-9eb47fcd-c8e5-41fb-af34-5d99bd0a6780.PNG)", + "contributors": [ + "matheusbsilva137", + "web-flow", + "ostjen", + "casalsgh" + ] + }, + { + "pr": "23277", + "title": "[BREAK] Remove old migrations up to version 2.4.14", + "userLogin": "sampaiodiego", + "description": "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.\r\n\r\nThis 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).", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23276", + "title": "[FIX] Logging out from other clients", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23262", + "title": "[FIX] Avoid bots to be marked as unavailable when log off/login", + "userLogin": "KevLehman", + "milestone": "4.0.0", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23261", + "title": "[FIX] Stop queue when Omnichannel is disabled or the routing method does not support it", + "userLogin": "KevLehman", + "description": "- Add missing key logs\r\n- Stop queue (and logs) when livechat is disabled or when routing method does not support queue\r\n- 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).", + "milestone": "4.0.0", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23017", + "title": "[NEW] Seats Cap", + "userLogin": "tassoevan", + "description": "- Adding New Members\r\n - Awareness of seats usage while adding new members\r\n - Seats Cap about to be reached\r\n - Seats Cap reached\r\n - Request more seats\r\n- Warning Admins\r\n - System telling admins max seats are about to exceed\r\n - System telling admins max seats were exceed\r\n - Metric on Info Page\r\n - Request more seats\r\n- Warning Members\r\n - Invite link\r\n - Block creating new invite links\r\n - Block existing invite links (feedback on register process) \r\n - Register to Workspaces\r\n- Emails\r\n - System telling admins max seats are about to exceed\r\n - System telling admins max seats were exceed", + "contributors": [ + "tassoevan", + "pierre-lehnen-rc", + "web-flow", + "ggazzo", + "gabriellsh", + "g-thome" + ] + }, + { + "pr": "23269", + "title": "Chore: Update pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23255", + "title": "Chore: Make SMTP empty on docker-compose so registration won't hang out of the box", + "userLogin": "geekgonecrazy", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "23204", + "title": "[FIX] Wrap canned-responses endpoints with ee license", + "userLogin": "tiagoevanp", + "milestone": "4.0.0", + "contributors": [ + "tiagoevanp", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "23150", + "title": "[FIX] Omnichannel transcript button without user's email", + "userLogin": "tiagoevanp", + "milestone": "4.0.0", + "contributors": [ + "tiagoevanp", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "23263", + "title": "Chore: Re-enable session tests on local after removal of mongo-unit", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "sampaiodiego" + ] + }, + { + "pr": "23107", + "title": "[BREAK] Moved role-sync and advanced SAML settings to EE", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "23199", + "title": "[IMPROVE] Change occurences of Livechat to Omnichannel in ES translations were applicable", + "userLogin": "KevLehman", + "milestone": "4.0.0", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23230", + "title": "Regression: Log Sections not respecting Log Level setting", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "22907", + "title": "[BREAK] Removed support of MongoDB 3.4; Deprecated MongoDB 3.6 and 4.0", + "userLogin": "ostjen", + "milestone": "4.0.0", + "contributors": [ + "ostjen", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "23254", + "title": "Regression: Fix user registration stuck", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23219", + "title": "[FIX] Mark agents as unavailable when they logout", + "userLogin": "KevLehman", + "milestone": "4.0.0", + "contributors": [ + "KevLehman", + "renatobecker", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "23244", + "title": "[FIX] Toolbox click not working on Safari(iOS)", + "userLogin": "dougfabris", + "contributors": [ + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "23185", + "title": "[FIX] Omnichannel On hold chats being forwarded to offline agents", + "userLogin": "murtaza98", + "milestone": "4.0.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "23171", + "title": "[BREAK] LDAP Refactoring", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "23190", + "title": "[IMPROVE] Canned response admin settings", + "userLogin": "tiagoevanp", + "milestone": "4.0.0", + "contributors": [ + "tiagoevanp", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "23198", + "title": "Chore: Update Livechat widget to 1.9.4", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23209", + "title": "[FIX] Save department agents ", + "userLogin": "tiagoevanp", + "milestone": "4.0.0", + "contributors": [ + "tiagoevanp", + "web-flow", + "KevLehman", + "casalsgh" + ] + }, + { + "pr": "23117", + "title": "[FIX] Wrong docs link on Omni-Webhook page", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "23221", + "title": "[IMPROVE] Throw error if no appId is provided to useUIKitHandleAction", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "22957", + "title": "[IMPROVE] Do not re-create General room on every server start", + "userLogin": "matheusbsilva137", + "description": "- Check the `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'.", + "contributors": [ + "matheusbsilva137", + "web-flow", + "casalsgh" + ] + }, + { + "pr": "22985", + "title": "[NEW][APPS] Get livechat's room transcript via bridge method", + "userLogin": "thassiov", + "description": "Adds a new method for retrieving a room's transcript via a new method in the Livechat bridge", + "milestone": "4.0.0", + "contributors": [ + "thassiov", + "web-flow", + "d-gubert" + ] + }, + { + "pr": "23212", + "title": "Regression: `renderEmoji` helper referred as a template", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "22542", + "title": "Chore: Convert VerticalBar component to typescript", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "21176", + "title": "[FIX] Add missing custom fields to apps' users converter", + "userLogin": "cuonghuunguyen", + "milestone": "4.0.0", + "contributors": [ + "cuonghuunguyen", + "web-flow", + "d-gubert", + "thassiov", + "casalsgh" + ] + }, + { + "pr": "23194", + "title": "Regression: Fix view logs admin screen", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23162", + "title": "[BREAK] Remove deprecated endpoints", + "userLogin": "sampaiodiego", + "description": "The following REST endpoints were removed:\r\n\r\n- `/api/v1/emoji-custom`\r\n- `/api/v1/info`\r\n- `/api/v1/permissions`\r\n- `/api/v1/permissions.list`\r\n\r\nThe following Real time API Methods were removed:\r\n\r\n- `getFullUserData`\r\n- `getServerInfo`\r\n- `livechat:saveOfficeHours`", + "contributors": [ + "sampaiodiego", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23205", + "title": "Regression: View Logs administration page crashing", + "userLogin": "tassoevan", + "description": "Fixes the `stdout.queue` endpoint; makes the components type-safe.", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23178", + "title": "Chore: Move client helpers", + "userLogin": "tassoevan", + "description": "Moves helper modules under `app/` to `client/lib/utils/`.", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23200", + "title": "Chore: Change Ubuntu version to 20.04 on all GitHub Actions", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "sampaiodiego" + ] + }, + { + "pr": "23196", + "title": "Regression: Properly trickle-down state from UsersPage to UsersTable", + "userLogin": "tassoevan", + "description": "Spotted by @gabriellsh.", + "contributors": [ + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23176", + "title": "[IMPROVE] Add missing pt-BR translations, fix typos and unify language", + "userLogin": "gabrieloliverio", + "contributors": [ + "gabrieloliverio", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23032", + "title": "[FIX] User list not being updated after creation/deletion of user", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23187", + "title": "Chore: Upgrade limax", + "userLogin": "tassoevan", + "description": "Upgrades `limax` for faster slugify algorithm.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "23076", + "title": "[FIX] \"Parent channel or group\" search in discussions' creation throws \"Unexpected end of JSON input\" error", + "userLogin": "matheusbsilva137", + "description": "- Use `encodeURIComponent()` to encode values received by `_generateQueryFromParams()`.", + "contributors": [ + "matheusbsilva137", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "23108", + "title": "[BREAK] Stop sending audio notifications via stream", + "userLogin": "sampaiodiego", + "description": "Remove audio preferences and make them tied to desktop notification preferences.\r\n\r\nTL;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", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23184", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-09-13Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "21779", + "title": "[FIX] Remove margin from quote inside quote", + "userLogin": "tiagoevanp", + "description": "![image](https://user-images.githubusercontent.com/17487063/116253926-4a89e600-a747-11eb-9172-f2ed1245fa1b.png)", + "contributors": [ + "tiagoevanp", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23160", + "title": "[BREAK] Remove Google Vision features", + "userLogin": "sampaiodiego", + "description": "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.", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23165", + "title": "Bump @storybook/react from 6.3.6 to 6.3.8", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23163", + "title": "Bump jsrsasign from 10.3.0 to 10.4.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23013", + "title": "[BREAK][ENTERPRISE] \"Download CSV\" button doesn't work in the Engagement Dashboard's Active Users section", + "userLogin": "tassoevan", + "description": "- Fix \"Download CSV\" button in the Engagement Dashboard's Active Users section;\r\n- Add column headers to the CSV file downloaded from the Engagement Dashboard's Active Users section;\r\n- Split the data in multiple CSV files.", + "contributors": [ + "matheusbsilva137", + "dougfabris", + "gabriellsh", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23014", + "title": "[BREAK][ENTERPRISE] CSV file downloaded in the Engagement Dashboard's New Users section contains undefined data", + "userLogin": "tassoevan", + "description": "- Fix CSV file downloaded in the Engagement Dashboard's New Users section;\r\n - Add column headers to the CSV file downloaded from the Engagement Dashboard's New Users section.", + "contributors": [ + "matheusbsilva137", + "gabriellsh", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "23139", + "title": "Bump supertest from 6.1.3 to 6.1.6", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23152", + "title": "Chore: client endpoints typings", + "userLogin": "tassoevan", + "contributors": [ + "tassoevan", + "web-flow", + "ggazzo" + ] + }, + { + "pr": "23157", + "title": "Chore: Update pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23138", + "title": "Bump @rocket.chat/string-helpers from 0.27.0 to 0.29.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22978", + "title": "[FIX] Inaccurate use of 'Mobile notifications' instead of 'Push notifications' in i18n strings", + "userLogin": "matheusbsilva137", + "description": "- Fix inaccurate use of 'Mobile notifications' (which is misleading in German) by 'Push notifications';\r\n - Update `'Notification_Mobile_Default_For'` key to `'Notification_Push_Default_For'` (and text to 'Send Push Notifications For' for English Language);\r\n - Update `'Accounts_Default_User_Preferences_mobileNotifications'` key to `'Accounts_Default_User_Preferences_pushNotifications'`;\r\n - Update `'Mobile_Notifications_Default_Alert'` key to `'Mobile_Push_Notifications_Default_Alert'`;", + "contributors": [ + "matheusbsilva137", + "web-flow", + "ostjen" + ] + }, + { + "pr": "23141", + "title": "Bump xml-crypto from 2.1.2 to 2.1.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22975", + "title": "[IMPROVE] Change log format to JSON", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23091", + "title": "Regression: Auth banner for EE", + "userLogin": "g-thome", + "description": "Dimisses auth banners assigned to EE admins and prevents new ones from appearing.", + "milestone": "3.18.1", + "contributors": [ + "g-thome", + "casalsgh", + "web-flow" + ] + }, + { + "pr": "23023", + "title": "[IMPROVE][APPS] Return task ids when using the scheduler api", + "userLogin": "thassiov", + "description": "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.", + "milestone": "4.0.0", + "contributors": [ + "thassiov", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "23104", + "title": "[FIX] Update bugsnag package", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23128", + "title": "Bump pm2 from 5.1.0 to 5.1.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23126", + "title": "Bump @types/ejson from 2.1.2 to 2.1.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23109", + "title": "Chore: Remove non-used dependencies", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "23095", + "title": "Bump @types/ws from 7.4.6 to 7.4.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23068", + "title": "Bump tar from 6.1.0 to 6.1.11 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23122", + "title": "Bump @types/imap from 0.8.34 to 0.8.35", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23120", + "title": "Bump csv-parse from 4.16.0 to 4.16.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23123", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-09-06Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "22177", + "title": "Bump juice from 5.2.0 to 8.0.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23089", + "title": "[FIX] Change way emails are validated on livechat registerGuest method", + "userLogin": "KevLehman", + "milestone": "3.18.1", + "contributors": [ + "KevLehman", + "web-flow" + ] + }, + { + "pr": "23054", + "title": "[IMPROVE] Use PaginatedSelectFiltered in department edition", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "tiagoevanp", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "23053", + "title": "[FIX] Add check before placing chat on-hold to confirm that contact sent last message", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "22036", + "title": "Bump stylelint-order from 2.2.1 to 4.1.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "22527", + "title": "Bump iconv-lite from 0.4.24 to 0.6.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22528", + "title": "Bump image-size from 0.6.3 to 1.0.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22532", + "title": "Bump ip-range-check from 0.0.2 to 0.2.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23100", + "title": "[IMPROVE] Change HTTP and Method logs to level INFO", + "userLogin": "sampaiodiego", + "milestone": "3.18.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "16050", + "title": "[BREAK] Remove patch info from endpoint /api/info for non-logged in users", + "userLogin": "MarcosSpessatto", + "milestone": "4.0.0", + "contributors": [ + "MarcosSpessatto", + "tassoevan", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "23088", + "title": "Bump object-path from 0.11.5 to 0.11.6", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22922", + "title": "Chore: Environmental variable for marketplace url", + "userLogin": "graywolf336", + "contributors": [ + "graywolf336" + ] + }, + { + "pr": "22600", + "title": "Bump @types/cookie from 0.4.0 to 0.4.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22598", + "title": "Bump @types/express from 4.17.12 to 4.17.13 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "22673", + "title": "Bump actions/stale from 3.0.19 to 4", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23061", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2021-08-30Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "23086", + "title": "Merge master into develop & Set version to 4.0.0", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23079", + "title": "Chore: Remove wrong usages of `Meteor.wrapAsync`", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + } + ] + }, + "4.1.6": { + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "24553", + "title": "[FIX] Omnichannel managers can't join chats in progress", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24592", + "title": "Regression: Fix in-correct room status shown to agents", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + } + ] + }, + "4.4.4": { + "node_version": "14.18.3", + "npm_version": "6.14.15", + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "25580", + "title": "Release 4.7.2", + "userLogin": "d-gubert", + "contributors": [ + "tiagoevanp", + "d-gubert", + "MartinSchoeler", + "ggazzo", + "cauefcr", + "geekgonecrazy" + ] + }, + { + "pr": "25544", + "title": "[FIX] Initial User not added to default channel", + "userLogin": "geekgonecrazy", + "description": "If injecting initial user. The user wasnโ€™t added to the default General channel", + "milestone": "4.7.2", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25520", + "title": "[FIX] User abandonment setting was not working doe to failing event hook", + "userLogin": "cauefcr", + "description": "A setting watcher and the query for grabbing abandoned chats were broken, now they're not.", + "milestone": "4.7.2", + "contributors": [ + "cauefcr", + "tiagoevanp" + ] + }, + { + "pr": "25495", + "title": "[FIX] Dynamic load matrix is enabled and handle failure ", + "userLogin": "ggazzo", + "milestone": "4.7.2", + "contributors": [ + "ggazzo", + "geekgonecrazy" + ] + }, + { + "pr": "25409", + "title": "[FIX] One of the triggers was not working correctly", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "tiagoevanp" + ] + }, + { + "pr": "25407", + "title": "[FIX] UI/UX issues on Live Chat widget", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "dougfabris" + ] + }, + { + "pr": "25312", + "title": "Chore: Add Livechat repo into Monorepo packages", + "userLogin": "tiagoevanp", + "milestone": "4.7.2", + "contributors": [ + "tiagoevanp", + "ggazzo", + "web-flow", + "MartinSchoeler" + ] + }, + { + "pr": "25510", + "title": "Release 4.7.1", + "userLogin": "d-gubert", + "contributors": [ + "felipe-menelau", + "d-gubert", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25471", + "title": "[FIX] Spotlight results showing usernames instead of real names", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25434", + "title": "[FIX] LDAP sync removing users from channels when multiple groups are mapped to it", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25441", + "title": "[NEW] Use setting to determine if initial general channel is needed", + "userLogin": "felipe-menelau", + "description": "- Adds flag responsible for overwriting #general channel creation", + "milestone": "4.7.1", + "contributors": [ + "felipe-menelau", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25390", + "title": "Release 4.7.0", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "web-flow", + "lingohub[bot]", + "dependabot[bot]", + "ggazzo", + "dougfabris", + "gabriellsh", + "tmontini", + "debdutdeb", + "Himanshu664", + "yash-rajpal", + "MartinSchoeler" + ] + }, + { + "pr": "25380", + "title": "Regression: Fix clicking on visitor's chat in the sidebar does not display the chat window", + "userLogin": "filipemarins", + "description": "Fix: livechat room not opening.", + "milestone": "4.7.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25314", + "title": "Regression: Fix size of custom emoji and render emoji on thread message preview", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25371", + "title": "Chore: Bump fuselage", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25336", + "title": "Chore: Add options to debug stdout and rate limiter", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25368", + "title": "Regression: Fix English i18n react text", + "userLogin": "d-gubert", + "description": "Incorrect text in reaction tooltip has been fixed", + "milestone": "4.7.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25349", + "title": "Regression: Rocket.Chat Webapp not loading.", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "gabriellsh" + ] + }, + { + "pr": "25317", + "title": "Regression: Fix multi line is not showing an empty line between lines", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25320", + "title": "Regression: bump onboarding-ui version", + "userLogin": "guijun13", + "description": "- Bump to 'next' the onboarding-ui package from fuselage.\r\n- Update from 'companyEmail' to 'email' adminData usage types", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25335", + "title": "Chore: Create README.md for Rest Typings", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25327", + "title": "Regression: Messages in new message template Crashing.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25323", + "title": "Regression: Better MongoDB connection management for micro services", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25250", + "title": "Regression: Validate empty fields for Message template", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25319", + "title": "Regression: Fix the alpine image and dev UX installing matrix-rust-sdk-bindings", + "userLogin": "geekgonecrazy", + "description": "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.\r\n\r\nThis temporarily switches to a fork of the matrix-appservice-bridge package.\r\n\r\nMade changes to one of its child dependencies `matrix-rust-sdk-bindings` that adds pre-built binaries for mac and musl (for alpine).", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy", + "web-flow", + "d-gubert" + ] + }, + { + "pr": "25255", + "title": "Regression: Change preference to be default legacy messages", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25306", + "title": "Regression: Fix reply button not working when hideFlexTab is enabled", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25311", + "title": "Regression: Add eslint package to micro services Dockerfile", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25218", + "title": "Chore: ensure scripts use cross-env and ignore some dirs (ROC-54)", + "userLogin": "souzaramon", + "description": "- data and test-failure should be ignored\r\n- ensure scripts use cross-env", + "contributors": [ + "souzaramon" + ] + }, + { + "pr": "25313", + "title": "Regression: Revert Bugsnag version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25305", + "title": "Regression: eslint not running on packages", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ggazzo" + ] + }, + { + "pr": "25299", + "title": "Regression: Add `isPending` status to message", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25301", + "title": "Regression: Shows error if micro service cannot connect to Mongo", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25287", + "title": "Regression: Use exact Node version on micro services Docker images", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25286", + "title": "Chore: Add root package.json to houston files", + "userLogin": "d-gubert", + "description": "See title", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25284", + "title": "Chore: Sync with master", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "25269", + "title": "Chore: Minor dependency updates", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25224", + "title": "Chore: Add yarn plugin to check node and yarn version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25235", + "title": "Release 4.6.3", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25280", + "title": "Chore: Remove package-lock.json from houston files", + "userLogin": "d-gubert", + "description": "Houston config in the `package.json` file still mentioned `package-lock.json`, but it doesn't exist anymore", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25260", + "title": "[FIX] Adjust email label in Setup Wizard i18n files", + "userLogin": "guijun13", + "description": "- remove 'Company' label on onboarding email keys in certain languages", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25275", + "title": "Chore: Fix return type warnings", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23870", + "title": "[NEW] Expand Apps Engine's environment variable allowed list", + "userLogin": "cuonghuunguyen", + "milestone": "4.7.0", + "contributors": [ + null, + "debdutdeb", + "web-flow", + "cuonghuunguyen", + "dougfabris" + ] + }, + { + "pr": "25273", + "title": "Regression: Fix federation Matrix bridge startup", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25092", + "title": "[FIX] Message preview not available for queued chats", + "userLogin": "murtaza98", + "milestone": "4.7.0", + "contributors": [ + "murtaza98", + "KevLehman" + ] + }, + { + "pr": "23688", + "title": "[NEW] Alpha Matrix Federation", + "userLogin": "alansikora", + "description": "Experimental support for Matrix Federation with a Bridge\r\n\r\nhttps://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4", + "milestone": "4.7.0", + "contributors": [ + "alansikora", + "geekgonecrazy", + "MarcosSpessatto", + "rodrigok" + ] + }, + { + "pr": "25259", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25261", + "title": "[FIX] Incorrect websocket url in livechat widget", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "25007", + "title": "[FIX] Showing Blank Message Inside Report", + "userLogin": "nishant23122000", + "description": "https://user-images.githubusercontent.com/53515714/161038085-4a86c7ae-6751-4996-9767-b1c9e0331a6c.mp4", + "contributors": [ + "nishant23122000" + ] + }, + { + "pr": "25251", + "title": "Regression: Add select message to system message and thread preview and allow select on legacy template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "web-flow", + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25239", + "title": "[FIX] Add katex render to new message react template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "25257", + "title": "Chore: Update Livechat to the last version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24515", + "title": "[FIX] Custom sound error toast messages", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25211", + "title": "Regression: Avatar not loading on first direct message", + "userLogin": "filipemarins", + "description": "fix avatar not loading on a first direct message", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo" + ] + }, + { + "pr": "25254", + "title": "Regression: Show username and real name on the message system", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25217", + "title": "[IMPROVE] Performance for some Omnichannel features", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25200", + "title": "[FIX] room creation fails if app framework is disabled", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24565", + "title": "[IMPROVE] Add OTR Room States", + "userLogin": "yash-rajpal", + "description": "Earlier OTR room uses only 2 states, we need more states to support future features. \r\nThis adds more states for the OTR contextualBar.\r\n\r\n- Expired\r\n\"Screen\r\n\r\n- Declined\r\nScreen Shot 2022-04-20 at 13 49 28\r\n\r\n- Error\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "dougfabris" + ] + }, + { + "pr": "25170", + "title": "[FIX] Client disconnection on network loss", + "userLogin": "amolghode1981", + "description": "Agent gets disconnected (or Unregistered) from asterisk in multiple ways. The goal is that agent should remain online\r\nunless agent explicitly logs off.\r\nAgent can stop receiving calls in multiple ways due to network loss. Network loss can happen in following ways.\r\n1. User tries to switch the network. User experiences a glitch of disconnectivity. This can be simulated by turning the network off\r\nin the network tab of chrome's dev tool. This can disconnect the UA if the disconnection happens just before the registration refresh.\r\n2. Second reason is when computer goes in sleep mode.\r\n3. Third reason is that when asterisk is crashed/in maintenance mode/explicitly stopped.\r\n\r\nSolution:\r\nThe idea is to detect the network disconnection and start the start the attempts to reconnect.\r\nThe detection of the disconnection does not happen in case#1. The SIPUA's UserAgent transport does not\r\ncall onDisconnected when network loss of such kind happens. To tackle this problem, window's online and offline event handlers are\r\nused.\r\n\r\nThe number of retries is configurable but ideally it is to be kept at -1. Whenever disconnection happens, it should keep on trying to\r\nreconnect with increasing backoff time. This behaviour is useful when the asterisk is stopped.\r\n\r\nWhen the server is disconnected, it should be indicated on the phone button.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25244", + "title": "[FIX] Read receipts show with color gray when not read yet", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25230", + "title": "[FIX] VoIP disabled/enabled sequence puts voip agent in error state", + "userLogin": "amolghode1981", + "description": "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)\r\n\r\nIt 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.\r\n\r\nSolution:\r\n\r\n1. 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.\r\n2. From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.\r\n3. 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.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25087", + "title": "[NEW] Add expire index to integration history", + "userLogin": "geekgonecrazy", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy" + ] + }, + { + "pr": "24521", + "title": "Chore: update OTR icon", + "userLogin": "kibonusp", + "description": "I changed the shredder icon in OTR contextual bar to the stopwatch icon, recently added to the fuselage.", + "milestone": "4.7.0", + "contributors": [ + "kibonusp", + "yash-rajpal", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "25237", + "title": "[FIX] Toolbox hiding under contextual bar", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25231", + "title": "[IMPROVE] Added MaxNickNameLength and MaxBioLength constants", + "userLogin": "aakash-gitdev", + "contributors": [ + "aakash-gitdev", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25175", + "title": "[FIX] Reply button behavior on broadcast channel", + "userLogin": "filipemarins", + "description": "Hide reply button for the user that sent the message", + "contributors": [ + "filipemarins", + "web-flow" + ] + }, + { + "pr": "25216", + "title": "[FIX] Read receipts showing before message read", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25222", + "title": "[FIX] Add reaction not working in legacy messages", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25223", + "title": "Chore: Add error boundary to message component", + "userLogin": "gabriellsh", + "description": "Not crash the whole application if something goes wrong in the MessageList component.\r\n\r\n![image](https://user-images.githubusercontent.com/40830821/162269915-931c5c3c-c979-4234-b74c-371f67467ce0.png)", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25130", + "title": "Chore: Update Livechat version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25073", + "title": "[FIX] AgentOverview analytics wrong departmentId parameter", + "userLogin": "paulobernardoaf", + "description": "When filtering the analytics charts by department, data would not appear because the object:\r\n```js\r\n{\r\n value: \"department-id\",\r\n label: \"department-name\"\r\n}\r\n```\r\nwas being used in the `departmentId` parameter.\r\n\r\n- Before:\r\n![image](https://user-images.githubusercontent.com/30026625/161832057-d96ffd21-a7dd-421e-bfaa-3b9f4a9127b2.png)\r\n\r\n- After:\r\n![image](https://user-images.githubusercontent.com/30026625/161831092-9ee77b51-b083-4f45-9c48-ab2e0511c4d6.png)", + "milestone": "4.7.0", + "contributors": [ + "paulobernardoaf" + ] + }, + { + "pr": "25056", + "title": "[FIX] Close room when dismiss wrap up call modal", + "userLogin": "tiagoevanp", + "milestone": "4.7.0", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25208", + "title": "Regression: yarn dev triggers build dependencies", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24714", + "title": "[FIX] Added invalid password error message", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25196", + "title": "Chore: Tests with Playwright (task: ROC-28, 09-channels)", + "userLogin": "tmontini", + "contributors": [ + "tmontini" + ] + }, + { + "pr": "25174", + "title": "Chore: Template to generate packages", + "userLogin": "ggazzo", + "description": "```\r\nnpx hygen package new test\r\n```", + "contributors": [ + "ggazzo", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "25193", + "title": "Regression: Fix micro services Docker build", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25191", + "title": "Release 4.6.2", + "userLogin": "sampaiodiego", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25101", + "title": "[FIX] Database indexes not being created", + "userLogin": "sampaiodiego", + "milestone": "4.6.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25095", + "title": "Release 4.6.1", + "userLogin": "sampaiodiego", + "contributors": [ + "dougfabris", + "sampaiodiego", + "gabriellsh", + "yash-rajpal", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25180", + "title": "Chore: Remove duplicated useUserRoom", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25167", + "title": "Chore: TS migration SortList", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25181", + "title": "Regression: Fix services Docker build on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25089", + "title": "[FIX] UserCard sanitization", + "userLogin": "dougfabris", + "description": "- Rewrites the component to TS\r\n- Fixes some visual issues\r\n\r\n### before\r\n![Screen Shot 2022-04-07 at 00 23 11](https://user-images.githubusercontent.com/27704687/162113925-5c9484d1-23e9-4623-8b86-3fbc71b461a1.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-07 at 00 07 13](https://user-images.githubusercontent.com/27704687/162112353-afd6aac6-b27c-4470-a642-631b8080d59e.png)", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25085", + "title": "Chore: move definitions to packages", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25168", + "title": "Regression: CI playwright", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25125", + "title": "Chore: Convert NotificationStatus to TS", + "userLogin": "jeanfbrito", + "contributors": [ + "jeanfbrito", + "ggazzo" + ] + }, + { + "pr": "25148", + "title": "[FIX] Message menu action not working on legacy messages.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25122", + "title": "Chore: Tests with Playwright (task: All works)", + "userLogin": "weslley543", + "contributors": [ + "weslley543" + ] + }, + { + "pr": "25129", + "title": "Chore: Remove old files from removed Omnichannel feature", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25128", + "title": "Chore: Convert admin custom sound to tsx", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25126", + "title": "Chore: Migrate oauth2server to typescript", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25123", + "title": "Chore: Convert LivechatAgentActivity to raw model and TS", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25124", + "title": "Chore: Remove unused Drone CI files", + "userLogin": "geekgonecrazy", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25121", + "title": "Chore: Convert Mailer to TS", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "sampaiodiego" + ] + }, + { + "pr": "25107", + "title": "Regression: Fix CI monorepo build", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25074", + "title": "Chore: Monorepo ", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "sampaiodiego", + "ggazzo" + ] + }, + { + "pr": "25097", + "title": "[IMPROVE] Rename upgrade tab routes", + "userLogin": "guijun13", + "description": "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.", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25076", + "title": "Bump eslint-plugin-anti-trojan-source from 1.0.6 to 1.1.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24936", + "title": "[FIX] End call button disappearing when on-hold", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24932", + "title": "[FIX] Use correct room property for call ended at", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "23971", + "title": "[NEW] Message Template React Component", + "userLogin": "ggazzo", + "description": "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).\r\n\r\n\r\n\r\n![Screen Shot 2022-04-05 at 11 14 18](https://user-images.githubusercontent.com/27704687/161774027-38dd9c7b-eeeb-45e2-b9d8-ea2a9be8486d.png)\r\nIn case you encounter any problems, or want to compare, temporarily it is possible to use the old version\r\n\r\n\"image\"", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "19866", + "title": "[FIX] Video and Audio not skipping forward", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "tassoevan", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24405", + "title": "[IMPROVE] Add tooltip to sidebar room menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24431", + "title": "[IMPROVE] Added tooltip options for message menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "24166", + "title": "[FIX] Replace encrypted text to Encrypted Message Placeholder", + "userLogin": "yash-rajpal", + "description": "### before \r\n![image](https://user-images.githubusercontent.com/27704687/150807900-154a9cdb-ee13-4333-8628-f287ab914b40.png)\r\n\r\n### after\r\n\"Screenshot", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24984", + "title": "[FIX] Prevent sequential messages edited icon to hide on hover", + "userLogin": "dougfabris", + "description": "### before\r\n\"Screen\r\n\r\n### after\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25024", + "title": "[IMPROVE] Improve active/hover colors in account sidebar", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24856", + "title": "[FIX] Full error message is visible", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "tassoevan" + ] + }, + { + "pr": "24708", + "title": "Chore: Cancel running jobs if PR is updated", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24900", + "title": "Chore: organize test files and fix code coverage", + "userLogin": "tmontini", + "contributors": [ + null, + "tmontini", + "rodrigok" + ] + }, + { + "pr": "24464", + "title": "Chore: Missing keys in APIsDisplay", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "25057", + "title": "Bump ejson from 2.2.1 to 2.2.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25053", + "title": "Chore: Remove Alpine image deps after using them", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25052", + "title": "Bump pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25031", + "title": "Chore: TS conversion folder client", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24991", + "title": "Bump minimist from 1.2.5 to 1.2.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25002", + "title": "Bump template-file from 6.0.0 to 6.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25042", + "title": "Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25043", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-04-04Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "25028", + "title": "Merge master into develop & Set version to 4.7.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "AllanPazRibeiro", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25027", + "title": "Release 4.6.0", + "userLogin": "sampaiodiego", + "contributors": [ + "pierre-lehnen-rc", + "aswinidev", + "web-flow", + "renatobecker", + "sampaiodiego", + "dependabot[bot]", + "lingohub[bot]", + "matheusbsilva137", + "amolghode1981", + "debdutdeb", + "eduardofcabrera", + "juliajforesti", + "tiagoevanp", + "KevLehman" + ] + }, + { + "pr": "25021", + "title": "Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25020", + "title": "Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25019", + "title": "Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25018", + "title": "Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25017", + "title": "Regression: Add createdOTR index", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24998", + "title": "Release 4.5.5", + "userLogin": "sampaiodiego", + "contributors": [ + "MartinSchoeler", + "sampaiodiego", + "filipemarins", + "tiagoevanp" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24938", + "title": "Release 4.5.4", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "geekgonecrazy", + "AllanPazRibeiro" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25015", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "description": "It uses the last stable version of Fuselage packages.", + "milestone": "4.6.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24999", + "title": "Regression: Custom roles displaying ID instead of name on some admin screens", + "userLogin": "pierre-lehnen-rc", + "description": "![image](https://user-images.githubusercontent.com/55164754/160981416-555bcaa1-c075-4260-937c-64523472da43.png)\r\n![image](https://user-images.githubusercontent.com/55164754/160981452-6eae4e74-8425-4073-8256-472aba72b9db.png)", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24835", + "title": "[NEW] Upgrade Tab", + "userLogin": "gabriellsh", + "description": "![image](https://user-images.githubusercontent.com/27704687/160172260-c656282e-a487-4092-948d-d11c9bacb598.png)", + "milestone": "4.6.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "web-flow", + "tassoevan", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24980", + "title": "Regression: Error is raised when there's no Asterisk queue available yet", + "userLogin": "amolghode1981", + "milestone": "4.6.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24969", + "title": "Chore: Storybook mocking and examples improved", + "userLogin": "tassoevan", + "description": "- Stories from `ee/` included;\r\n- Differentiate root story kinds;\r\n- Mocking of `ServerContext` via Storybook parameters.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24989", + "title": "Revert: [NEW] Engagement Statistics", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24897", + "title": "[FIX] Room archived/unarchived system messages aren't sent when editing room settings", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Fix the \"Hide System Messages\" option for the \"Room archived\" and \"Room unarchived\" system messages;", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24925", + "title": "Chore: add some missing REST definitions", + "userLogin": "gerzonc", + "description": "On the [mobile client](https://github.com/RocketChat/Rocket.Chat.ReactNative), 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.", + "contributors": [ + "gerzonc" + ] + }, + { + "pr": "24971", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24921", + "title": "[FIX] Register with Secret URL", + "userLogin": "yash-rajpal", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "24948", + "title": "Regression: Fix unexpected errors breaking ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24320", + "title": "[FIX] LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Display the avatar image preview (orientation) according to the `FileUpload_RotateImages` setting.", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24908", + "title": "Regression: Call doesn't stop ringing after agent unregistration", + "userLogin": "MartinSchoeler", + "milestone": "4.6.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24777", + "title": "[NEW] Engagement Statistics", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24920", + "title": "Regression: Fix account service login expiration", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24867", + "title": "[FIX] Duplicated \"jump to message\" button on starred messages", + "userLogin": "Himanshu664", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24860", + "title": "[FIX] External search providers not working", + "userLogin": "tkurz", + "contributors": [ + "tkurz" + ] + }, + { + "pr": "24052", + "title": "[FIX] Several issues related to custom roles", + "userLogin": "pierre-lehnen-rc", + "description": "- Throw an error when trying to delete a role (User or Subscription role) that are still being used;\r\n- Fix \"Invalid Role\" error for custom roles in Role Editing sidebar;\r\n- Fix \"Users in Role\" screen for custom roles.", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24781", + "title": "[NEW] Telemetry Events", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24887", + "title": "[IMPROVE] Adding new statistics related to voip and omnichannel", + "userLogin": "cauefcr", + "description": "- Total of Canned response messages sent\r\n- Total of tags used\r\n- Last-Chatted Agent Preferred (enabled/disabled)\r\n- Assign new conversations to the contact manager (enabled/disabled)\r\n- How to handle Visitor Abandonment setting\r\n- Amount of chats placed on hold\r\n- VoIP Enabled\r\n- Amount of VoIP Calls\r\n- Amount of VoIP Extensions connected\r\n- Amount of Calls placed on hold (1x per call)\r\n- Fixed Session Aggregation type definitions", + "milestone": "4.6.0", + "contributors": [ + "cauefcr", + "KevLehman" + ] + }, + { + "pr": "24911", + "title": "Chore: Remove old scripts", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24898", + "title": "[FIX] DDP Rate Limiter Translation key", + "userLogin": "gabriellsh", + "description": "Before:\r\n\"image\"\r\n\r\n\r\nNow:\r\n\"image\"", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24831", + "title": "[FIX][ENTERPRISE] Notifications not being sent by ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24884", + "title": "Release 4.5.3", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "tiagoevanp", + "sampaiodiego", + "KevLehman", + "amolghode1981", + "ggazzo" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24814", + "title": "Release 4.5.2", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "MartinSchoeler", + "pierre-lehnen-rc", + "tassoevan", + "debdutdeb", + "KevLehman", + "murtaza98", + "sampaiodiego", + "juliajforesti" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24782", + "title": "Release 4.5.1", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "renatobecker", + "pierre-lehnen-rc", + "sampaiodiego", + "matheusbsilva137", + "amolghode1981", + "juliajforesti", + "tiagoevanp", + "KevLehman", + "MartinSchoeler", + "Aman-Maheshwari", + "cuonghuunguyen" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24606", + "title": "[FIX] Push privacy config to not show username not being respected", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24896", + "title": "[FIX] Wrong business hour behavior", + "userLogin": "murtaza98", + "milestone": "4.6.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24845", + "title": "[FIX] Ignore customClass on messages", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24879", + "title": "[FIX] Apple OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24895", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24749", + "title": "[IMPROVE] New omnichannel statistics and async statistics processing.", + "userLogin": "cauefcr", + "description": "https://app.clickup.com/t/1z4zg4e", + "contributors": [ + "cauefcr" + ] + }, + { + "pr": "24882", + "title": "[FIX] Missing dependency on useEffect at CallProvider", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24779", + "title": "[FIX] auto-join team channels not honoring user preferences", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24869", + "title": "Bump pino from 7.8.1 to 7.9.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24870", + "title": "Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24850", + "title": "Regression: Role Sync not always working", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24823", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24833", + "title": "Bump @types/mailparser from 3.0.2 to 3.4.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24832", + "title": "Bump @types/clipboard from 2.0.1 to 2.0.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24822", + "title": "Bump @types/nodemailer from 6.4.2 to 6.4.4", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24821", + "title": "Bump body-parser from 1.19.0 to 1.19.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24820", + "title": "Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24764", + "title": "Chore: Add E2E tests for livechat/visitor", + "userLogin": "Muramatsu2602", + "description": "- Create a new test suite file under tests/end-to-end/api/livechat\r\n- Create tests for the following endpoints:\r\n + livechat/visitor (create visitor, update visitor, add custom fields to visitors)", + "contributors": [ + "Muramatsu2602", + "KevLehman" + ] + }, + { + "pr": "24729", + "title": "Chore: Add E2E tests for livechat/room.close", + "userLogin": "Muramatsu2602", + "description": "* Create a new test suite file under tests/end-to-end/api/livechat\r\n * Create tests for the following endpoint:\r\n\t + ivechat/room.close", + "contributors": [ + "Muramatsu2602", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24785", + "title": "[FIX] German translation for Monitore", + "userLogin": "JMoVS", + "contributors": [ + "JMoVS", + "web-flow" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24747", + "title": "Chore: APIClass types", + "userLogin": "felipe-rod123", + "description": "This pull request creates a new `restivus` module (.d.ts) for the `api.js` file.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24801", + "title": "Bump is-svg from 4.3.1 to 4.3.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24803", + "title": "Bump prometheus-gc-stats from 0.6.2 to 0.6.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24810", + "title": "Chore: Skip local services changes when shutting down duplicated services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24629", + "title": "[FIX] \"Match error\" when converting a team to a channel", + "userLogin": "matheusbsilva137", + "description": "- Fix \"Match error\" when trying to convert a channel to a team;", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24397", + "title": "Chore: Get Settings Statistics", + "userLogin": "albuquerquefabio", + "contributors": [ + "albuquerquefabio" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24628", + "title": "Chore: converted more hooks to typescript", + "userLogin": "felipe-rod123", + "description": "Converted some functions on `client/hooks/` from JavaScript to Typescript.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24506", + "title": "Chore: added settings endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `settings.ts`.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24226", + "title": "[FIX] Handle Other Formats inside Upload Avatar", + "userLogin": "nishant23122000", + "description": "After resolving issue #24213 : \r\n\r\n\r\nhttps://user-images.githubusercontent.com/53515714/150325012-91413025-786e-4ce0-ae75-629f6b05b024.mp4", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "24424", + "title": "[FIX] Prune Message issue", + "userLogin": "nishant23122000", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24507", + "title": "Chore: added Server Instances endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `instances.ts`.", + "contributors": [ + "felipe-rod123" + ] + }, + { + "pr": "24758", + "title": "[FIX] Prevent call button toggle when user is on call", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24800", + "title": "Regression: Register services right away", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24384", + "title": "Chore: Convert server functions from javascript to typescript", + "userLogin": "felipe-rod123", + "description": "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.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24793", + "title": "[FIX][ENTERPRISE] Auto reload feature of ddp-streamer micro service", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24783", + "title": "Bump pino from 7.8.0 to 7.8.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23121", + "title": "Bump jschardet from 1.6.0 to 3.0.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24753", + "title": "Chore: Micro services fixes and cleanup", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24756", + "title": "Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "24771", + "title": "Chore: fix grammatical errors in Features", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "24759", + "title": "Chore: Fix grammatical errors in Code of Conduct", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24544", + "title": "Chore: Fix Cypress tests", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "tassoevan", + "dougfabris" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24739", + "title": "[IMPROVE][ENTERPRISE] Don't start presence monitor when running micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24738", + "title": "[FIX][ENTERPRISE] DDP streamer not sending data to all clients", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24710", + "title": "[FIX] DDP streamer errors", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24724", + "title": "[FIX][ENTERPRISE] Presence micro service logic", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24717", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24726", + "title": "Chore: Improve logger to allow log of `unknown` values", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24542", + "title": "[FIX] Date Message Export Filter Fix", + "userLogin": "eduardofcabrera", + "description": "Fix message export filter to get all messages between \"from date\" and \"to date\", including \"to date\".", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24709", + "title": "[FIX] API Error preventing adding an email to users without one (like bot/app users)", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24716", + "title": "Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24476", + "title": "[FIX] Nextcloud OAuth for incomplete token URL", + "userLogin": "debdutdeb", + "milestone": "4.6.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24698", + "title": "Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23824", + "title": "Chore: Improvements on role syncing (ldap, oauth and saml)", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan" + ] + }, + { + "pr": "24689", + "title": "Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24642", + "title": "Bump actions/setup-node from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24644", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24668", + "title": "Bump actions/checkout from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24574", + "title": "Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24667", + "title": "Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24666", + "title": "Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24640", + "title": "Bump url-parse from 1.5.7 to 1.5.10", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24653", + "title": "Merge master into develop & Set version to 4.6.0-develop", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "24652", + "title": "Release 4.5.0", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "sampaiodiego", + "web-flow", + "aswinidev", + "debdutdeb", + "dependabot[bot]", + "lingohub[bot]", + "ostjen", + "KevLehman", + "dougfabris", + "LucasFASouza", + "felipe-rod123", + "guijun13", + "pierre-lehnen-rc", + "filipemarins", + "matheusbsilva137", + "gabriellsh" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24028", + "title": "[IMPROVE] Updated links in readme", + "userLogin": "aswinidev", + "contributors": [ + "aswinidev", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24651", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24649", + "title": "Regression: Refresh server connection when MI server settings change", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24648", + "title": "Regression: Prevent button from losing state when rerendering", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24585", + "title": "Regression: Error setting user avatars and mentioning rooms on Slack Import", + "userLogin": "matheusbsilva137", + "description": "- Fix `Mentioned room not found` error when importing rooms from Slack;\r\n- Fix `Forbidden` error when setting avatars for users imported from Slack (on user import/creation);\r\n- Fix incorrect message count on imported rooms;\r\n- Fix missing username on messages imported from Slack;", + "contributors": [ + "matheusbsilva137", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24647", + "title": "Regression: Fix wrong tab name for VoIP settings", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24646", + "title": "Regression: Server crashing if Voip credentials are invalid", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24645", + "title": "Regression: Extension List panel UI not aligned with designs", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24635", + "title": "Regression: Queue counter aggregator for incoming/hanged calls", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24630", + "title": "Regression: Fix double value on holdTime and empty msg on last message", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24624", + "title": "Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "24601", + "title": "Regression: Prevent connect to asterisk when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24626", + "title": "Regression: Encode registration info as JWT when signing key is provided", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24625", + "title": "Regression: Fix time fields and wrap up in Voip Room Contexual bar", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24592", + "title": "Regression: Fix in-correct room status shown to agents", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24619", + "title": "Regression: Do not show toast on incoming voip calls", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24616", + "title": "Regression: Fix incoming voip call ringtone is not ringing", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24610", + "title": "Regression: Mark all rooms as read modal closing instantly.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24615", + "title": "Regression: Fix translation for call started message", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24594", + "title": "Regression: Bunch of settings fixes for VoIP", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24609", + "title": "Regression: Admin Sidebar colors inverted.", + "userLogin": "gabriellsh", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24602", + "title": "Regression: No audio when call comes from Skype/IP phone", + "userLogin": "amolghode1981", + "description": "The audio was not rendered because of re-rendering of react element based on\r\nqueueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted\r\nbecause after accepting call, queueCounter changes or a room gets created.\r\nThe audio element gets recreated. But VoIP user probably holds the old one.\r\nThe behaviour is not predictable when such case happens. If everything gets cleanly setup,\r\neven if the audio element goes headless, it still continues to play the remote audio.\r\nBut in other cases, it is unreferenced the one on dom has its srcObject as null.\r\nThis causes no audio.\r\n\r\nThis fix provides a way to re-initialise the rendering elements in VoIP user\r\nand calls this function on useEffect() if the re-render has happen.", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24596", + "title": "Regression: Fixes in Voice Contextual Bar and Directory", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24603", + "title": "Regression: Fix time format on Voip system messages", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24598", + "title": "Regression: VoIP service button displayed when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24581", + "title": "Regression: Add support to namespace within micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24583", + "title": "Regression: Error when trying to load name of dm rooms for avatars and notifications", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24567", + "title": "[NEW] Marketplace sort filter", + "userLogin": "ujorgeleite", + "description": "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.\r\nDemo gif:\r\n![Marketplace sort filter](https://user-images.githubusercontent.com/43561537/155033709-e07a6306-a85a-4f7f-9624-b53ba5dd7fa9.gif)", + "milestone": "4.5.0", + "contributors": [ + "rique223", + "ujorgeleite" + ] + }, + { + "pr": "23102", + "title": "[NEW] VoIP Support for Omnichannel", + "userLogin": "KevLehman", + "description": "- Created VoipService to manage VoIP connections and PBX connection\r\n- Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)\r\n- Created Basic interfaces to support new services and new model\r\n- Created Endpoints for management interfaces\r\n- Implemented asterisk connector on VoIP service\r\n- Created UI components to show calls incoming and to allow answering/rejecting calls\r\n- Added new settings to control call server/management server connection values\r\n- Added endpoints to associate Omnichannel Agents with PBX Extensions\r\n- Added support for event listening on server side, to get metadata about calls being received/ongoing\r\n- Created new pages to update settings & to see user-extension association\r\n- Created new page to see ongoing calls (and past calls)\r\n- Added support for remote hangup/hold on calls\r\n- Implemented call metrics calculation (hold time, waiting time, talk time)\r\n- Show a notificaiton when call is received", + "milestone": "4.5.0", + "contributors": [ + "KevLehman", + "amolghode1981", + "web-flow", + "tiagoevanp", + "murtaza98", + "MartinSchoeler" + ] + }, + { + "pr": "24562", + "title": "Regression: Fix room not getting created due to null visitor status", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24573", + "title": "Chore: Bump Fuselage packages", + "userLogin": "tassoevan", + "description": "It uses the last stable version of Fuselage packages.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24558", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24572", + "title": "[FIX] 2FA via email when logging in using OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24568", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24536", + "title": "Chore: roomTypes: Stop mixing client and server code together", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.0", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24529", + "title": "[IMPROVE] Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components", + "userLogin": "juliajforesti", + "description": "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\r\n\r\n### before\r\n![Screen Shot 2022-02-19 at 13 33 28](https://user-images.githubusercontent.com/27704687/154809737-8181a06c-4f20-48ea-90f7-01e828b9a452.png)\r\n\r\n### after\r\n![Screen Shot 2022-02-19 at 13 30 58](https://user-images.githubusercontent.com/27704687/154809653-a8ec9a80-c0dd-4a25-9c00-0f96147d79e9.png)", + "contributors": [ + "juliajforesti", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24513", + "title": "Chore: Run tests using microservices deployment on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "24556", + "title": "Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24501", + "title": "Chore: Update fuselage deps to match monolith versions", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24538", + "title": "Bump adm-zip from 0.4.14 to 0.5.9", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24454", + "title": "[IMPROVE] Purchase Type Filter for marketplace apps and Categories filter anchor refactoring", + "userLogin": "rique223", + "description": "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.\r\n\r\nDemo gif:\r\n![purchaseTypeFIlter](https://user-images.githubusercontent.com/43561537/153101228-7b7ebdc3-2d34-420f-aa9d-f7cbc8d4b53f.gif)\r\n\r\nRefactored the categories filter anchor from a plain fuselage select to a select button with dynamic colors.\r\nDemo gif:\r\n![New categories filter anchor(PR)](https://user-images.githubusercontent.com/43561537/153422427-28012b7d-e0ec-45f4-861d-c9368c57ad04.gif)", + "contributors": [ + "rique223", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24475", + "title": "[IMPROVE] Skip encryption for slash commands in E2E rooms", + "userLogin": "yash-rajpal", + "description": "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.", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24304", + "title": "Chore: Js to ts slash commands archive", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands archive files to typescript", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24114", + "title": "[NEW] E2E password generator", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "eduardofcabrera", + "tassoevan" + ] + }, + { + "pr": "24553", + "title": "[FIX] Omnichannel managers can't join chats in progress", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24559", + "title": "[FIX] Room context tabs not working in Omnichannel current chats page", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24173", + "title": "[FIX] respect `Accounts_Registration_Users_Default_Roles` setting", + "userLogin": "debdutdeb", + "description": "- Fix `user` role being added as default regardless of the `Accounts_Registration_Users_Default_Roles` setting.", + "milestone": "4.5.0", + "contributors": [ + "debdutdeb", + "web-flow", + "matheusbsilva137" + ] + }, + { + "pr": "24485", + "title": "[FIX] Skip admin info in setup wizard for servers with admin registered", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24537", + "title": "Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24209", + "title": "[IMPROVE] Team system messages feedback", + "userLogin": "ostjen", + "description": "- Delete some keys that aren't being used (eg: User_left_female).\r\n- Add new Teams' system messages:\r\n - `added-user-to-team`: **added** @\\user to this Team;\r\n - `removed-user-from-team`: **removed** @\\user from this Team;\r\n - `user-converted-to-team`: **converted** #\\room to a Team;\r\n - `user-converted-to-channel`: **converted** #\\room to a Channel;\r\n - `user-removed-room-from-team`: **removed** @\\user from this Team;\r\n - `user-deleted-room-from-team`: **deleted** #\\room from this Team;\r\n - `user-added-room-to-team`: **deleted** #\\room to this Team;\r\n- Add the corresponding options to hide each new system message and the missing `ujt` and `ult` hide options.", + "milestone": "4.5.0", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow", + "dougfabris", + "matheusbsilva137" + ] + }, + { + "pr": "24467", + "title": "Chore: Improve PR title validation regex", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24058", + "title": "Bump date-fns from 2.24.0 to 2.28.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24508", + "title": "[FIX] Read receipts showing first messages of the room as read even if not read by everyone", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24530", + "title": "Chore: Remove storybook build job from CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24528", + "title": "Bump url-parse from 1.5.3 to 1.5.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24333", + "title": "Chore: Add description to global OTR setting", + "userLogin": "pedrogssouza", + "contributors": [ + "pedrogssouza", + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24382", + "title": "[IMPROVE] OTR system messages", + "userLogin": "yash-rajpal", + "description": "OTR system messages to indicate key refresh and joining chat to users.", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24121", + "title": "[IMPROVE] Descriptive tooltip for Encrypted Key on Room Header", + "userLogin": "yash-rajpal", + "milestone": "4.5.0", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24522", + "title": "Bump express from 4.17.2 to 4.17.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24518", + "title": "Chore: `twoFactorRequired` signature", + "userLogin": "tassoevan", + "description": "Improved type checking for decorator `twoFactorRequired`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24517", + "title": "Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24441", + "title": "[FIX] GDPR action to forget visitor data on request", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24306", + "title": "Chore: Convert to typescript the slash commands create files", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands create files to typescript.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24325", + "title": "Chore: Convert to typescript the mute and unmute slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the mute and unmute slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24321", + "title": "Chore: Convert to typescript the me slashCommands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the me slashCommands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "23512", + "title": "Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24311", + "title": "Chore: Convert to typescript the slash commands invite files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the slash commands invite files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24509", + "title": "Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24451", + "title": "[IMPROVE] ChatBox Text to File Description", + "userLogin": "eduardofcabrera", + "description": "The text content from chatbox goes to the file description when drag and drop a file.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24461", + "title": "Chore: Update Meteor to 2.5.6", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "24477", + "title": "Chore: Update ws package", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24498", + "title": "Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24491", + "title": "Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24493", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24331", + "title": "Chore: Convert to typescript the unarchive slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the unarchive slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24483", + "title": "[IMPROVE] Add tooltips on action buttons of Canned Response message composer", + "userLogin": "LucasFASouza", + "description": "The tooltips were missing on the action buttons of CR message composer.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153620327-91107245-4b47-4d39-a99a-6da6d1cf5734.png)\r\n\r\nUsers can now feel more encouraged to use these actions knowing what they are supposed to do.", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24196", + "title": "Chore: Delete unused file (NewAdminInfoPage.js)", + "userLogin": "gabriellsh", + "description": "Just removing a duplicated/unused file.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24388", + "title": "[IMPROVE][ENTERPRISE] Improve how micro services are loaded", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "24458", + "title": "[IMPROVE] Add return button in chats opened from the list of current chats", + "userLogin": "LucasFASouza", + "description": "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.\r\nNow, the same UI/UX is supported for chats opened from Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153283190-bd5c9748-c36b-4874-a704-6043afc7e3a1.png)\r\n\r\nThe chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153285591-fad8e4a0-d2ea-4a02-8b2a-15e383b3c876.png)", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24469", + "title": "Bump express from 4.17.1 to 4.17.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24472", + "title": "Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24275", + "title": "[IMPROVE] Close modal on esc and outside click", + "userLogin": "gabriellsh", + "description": "This is a QUICK change in order to close modals pressing Esc button and clicking outside of it **intentionally**.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24435", + "title": "Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24041", + "title": "[IMPROVE] Add user to room on \"Click to Join!\" button press", + "userLogin": "matheusbsilva137", + "description": "- Add user to room on \"Click to Join!\" button press;\r\n- Display the \"Join\" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).", + "contributors": [ + "matheusbsilva137", + "web-flow", + "tassoevan", + "pierre-lehnen-rc", + "ostjen" + ] + }, + { + "pr": "24310", + "title": "[FIX] Implement client errors on ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23963", + "title": "Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23961", + "title": "Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24466", + "title": "[FIX] typo on register server tooltip of setup wizard", + "userLogin": "filipemarins", + "milestone": "4.5.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "24037", + "title": "[FIX] Inconsistent validation of user's access to rooms", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24450", + "title": "[FIX] OAuth mismatch redirect_uri error", + "userLogin": "sampaiodiego", + "milestone": "4.4.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24305", + "title": "[FIX] Prevent Apps Bridge to remove visitor status from room", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "d-gubert" + ] + }, + { + "pr": "24453", + "title": "Chore: bump fuselage version", + "userLogin": "dougfabris", + "milestone": "4.4.2", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "24253", + "title": "[FIX] Issues on selecting users when importing CSV", + "userLogin": "guijun13", + "description": "* Fix users selecting by fixing their _id\r\n* Add condition to disable 'Start importing' button if `usersCount`, `channelsCount` and `messageCount` equals 0, or if messageCount is alone\r\n* Remove `disabled={usersCount === 0}` on user Tab", + "contributors": [ + "guijun13", + "tassoevan", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24299", + "title": "Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24418", + "title": "[FIX] Oembed request not respecting payload limit", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24429", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24407", + "title": "[FIX] Skip cloud steps for registered servers on setup wizard", + "userLogin": "dougfabris", + "milestone": "4.4.1", + "contributors": [ + "dougfabris", + "tassoevan", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24410", + "title": "Chore: Convert JS files to Typescript", + "userLogin": "felipe-rod123", + "description": "This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24369", + "title": "[IMPROVE] Convert tag edit with department data to tsx", + "userLogin": "LucasFASouza", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24401", + "title": "[FIX] Outgoing webhook without scripts not saving messages", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24334", + "title": "[IMPROVE] CloudLoginModal visual consistency", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/151585064-dc6a1e29-9903-4241-8fbd-dfbe6c55fbef.png)\r\n\r\n### after\r\n![Screen Shot 2022-01-28 at 13 32 02](https://user-images.githubusercontent.com/27704687/151585101-75b98502-9aae-4198-bc3e-4956750e5d8b.png)", + "milestone": "4.5.0", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24409", + "title": "[FIX] Startup errors creating indexes", + "userLogin": "sampaiodiego", + "description": "Fix `bio` and `prid` startup index creation errors.", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24406", + "title": "Chore: Unify ILivechatAgent with ILivechatAgentRecord", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24381", + "title": "[FIX] Add ?close to OAuth callback url", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24387", + "title": "[FIX] Slash commands previews not working", + "userLogin": "ostjen", + "milestone": "4.4.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24357", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-31Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24341", + "title": "Bump simple-get from 4.0.0 to 4.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24366", + "title": "Chore: Set Docker image tag to latest only when really latest", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24109", + "title": "[IMPROVE] Added a new \"All\" tab which shows all integrations in Integrations", + "userLogin": "aswinidev", + "milestone": "4.5.0", + "contributors": [ + "aswinidev", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24363", + "title": "Merge master into develop & Set version to 4.5.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + } + ] + }, + "4.4.5": { + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25580", + "title": "Release 4.7.2", + "userLogin": "d-gubert", + "contributors": [ + "tiagoevanp", + "d-gubert", + "MartinSchoeler", + "ggazzo", + "cauefcr", + "geekgonecrazy" + ] + }, + { + "pr": "25544", + "title": "[FIX] Initial User not added to default channel", + "userLogin": "geekgonecrazy", + "description": "If injecting initial user. The user wasnโ€™t added to the default General channel", + "milestone": "4.7.2", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25520", + "title": "[FIX] User abandonment setting was not working doe to failing event hook", + "userLogin": "cauefcr", + "description": "A setting watcher and the query for grabbing abandoned chats were broken, now they're not.", + "milestone": "4.7.2", + "contributors": [ + "cauefcr", + "tiagoevanp" + ] + }, + { + "pr": "25495", + "title": "[FIX] Dynamic load matrix is enabled and handle failure ", + "userLogin": "ggazzo", + "milestone": "4.7.2", + "contributors": [ + "ggazzo", + "geekgonecrazy" + ] + }, + { + "pr": "25409", + "title": "[FIX] One of the triggers was not working correctly", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "tiagoevanp" + ] + }, + { + "pr": "25407", + "title": "[FIX] UI/UX issues on Live Chat widget", + "userLogin": "MartinSchoeler", + "milestone": "4.7.2", + "contributors": [ + "MartinSchoeler", + "dougfabris" + ] + }, + { + "pr": "25312", + "title": "Chore: Add Livechat repo into Monorepo packages", + "userLogin": "tiagoevanp", + "milestone": "4.7.2", + "contributors": [ + "tiagoevanp", + "ggazzo", + "web-flow", + "MartinSchoeler" + ] + }, + { + "pr": "25510", + "title": "Release 4.7.1", + "userLogin": "d-gubert", + "contributors": [ + "felipe-menelau", + "d-gubert", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25471", + "title": "[FIX] Spotlight results showing usernames instead of real names", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25434", + "title": "[FIX] LDAP sync removing users from channels when multiple groups are mapped to it", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.7.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "25441", + "title": "[NEW] Use setting to determine if initial general channel is needed", + "userLogin": "felipe-menelau", + "description": "- Adds flag responsible for overwriting #general channel creation", + "milestone": "4.7.1", + "contributors": [ + "felipe-menelau", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25390", + "title": "Release 4.7.0", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "web-flow", + "lingohub[bot]", + "dependabot[bot]", + "ggazzo", + "dougfabris", + "gabriellsh", + "tmontini", + "debdutdeb", + "Himanshu664", + "yash-rajpal", + "MartinSchoeler" + ] + }, + { + "pr": "25380", + "title": "Regression: Fix clicking on visitor's chat in the sidebar does not display the chat window", + "userLogin": "filipemarins", + "description": "Fix: livechat room not opening.", + "milestone": "4.7.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25314", + "title": "Regression: Fix size of custom emoji and render emoji on thread message preview", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25371", + "title": "Chore: Bump fuselage", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25336", + "title": "Chore: Add options to debug stdout and rate limiter", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25368", + "title": "Regression: Fix English i18n react text", + "userLogin": "d-gubert", + "description": "Incorrect text in reaction tooltip has been fixed", + "milestone": "4.7.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25349", + "title": "Regression: Rocket.Chat Webapp not loading.", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "gabriellsh" + ] + }, + { + "pr": "25317", + "title": "Regression: Fix multi line is not showing an empty line between lines", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25320", + "title": "Regression: bump onboarding-ui version", + "userLogin": "guijun13", + "description": "- Bump to 'next' the onboarding-ui package from fuselage.\r\n- Update from 'companyEmail' to 'email' adminData usage types", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25335", + "title": "Chore: Create README.md for Rest Typings", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25327", + "title": "Regression: Messages in new message template Crashing.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25323", + "title": "Regression: Better MongoDB connection management for micro services", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25250", + "title": "Regression: Validate empty fields for Message template", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25319", + "title": "Regression: Fix the alpine image and dev UX installing matrix-rust-sdk-bindings", + "userLogin": "geekgonecrazy", + "description": "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.\r\n\r\nThis temporarily switches to a fork of the matrix-appservice-bridge package.\r\n\r\nMade changes to one of its child dependencies `matrix-rust-sdk-bindings` that adds pre-built binaries for mac and musl (for alpine).", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy", + "web-flow", + "d-gubert" + ] + }, + { + "pr": "25255", + "title": "Regression: Change preference to be default legacy messages", + "userLogin": "gabriellsh", + "milestone": "4.8.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25306", + "title": "Regression: Fix reply button not working when hideFlexTab is enabled", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25311", + "title": "Regression: Add eslint package to micro services Dockerfile", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25218", + "title": "Chore: ensure scripts use cross-env and ignore some dirs (ROC-54)", + "userLogin": "souzaramon", + "description": "- data and test-failure should be ignored\r\n- ensure scripts use cross-env", + "contributors": [ + "souzaramon" + ] + }, + { + "pr": "25313", + "title": "Regression: Revert Bugsnag version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25305", + "title": "Regression: eslint not running on packages", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ggazzo" + ] + }, + { + "pr": "25299", + "title": "Regression: Add `isPending` status to message", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25301", + "title": "Regression: Shows error if micro service cannot connect to Mongo", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25287", + "title": "Regression: Use exact Node version on micro services Docker images", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25286", + "title": "Chore: Add root package.json to houston files", + "userLogin": "d-gubert", + "description": "See title", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25284", + "title": "Chore: Sync with master", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert", + "web-flow" + ] + }, + { + "pr": "25269", + "title": "Chore: Minor dependency updates", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25224", + "title": "Chore: Add yarn plugin to check node and yarn version", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25235", + "title": "Release 4.6.3", + "userLogin": "d-gubert", + "contributors": [ + "sampaiodiego", + "d-gubert" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25280", + "title": "Chore: Remove package-lock.json from houston files", + "userLogin": "d-gubert", + "description": "Houston config in the `package.json` file still mentioned `package-lock.json`, but it doesn't exist anymore", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "25260", + "title": "[FIX] Adjust email label in Setup Wizard i18n files", + "userLogin": "guijun13", + "description": "- remove 'Company' label on onboarding email keys in certain languages", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25275", + "title": "Chore: Fix return type warnings", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "23870", + "title": "[NEW] Expand Apps Engine's environment variable allowed list", + "userLogin": "cuonghuunguyen", + "milestone": "4.7.0", + "contributors": [ + null, + "debdutdeb", + "web-flow", + "cuonghuunguyen", + "dougfabris" + ] + }, + { + "pr": "25273", + "title": "Regression: Fix federation Matrix bridge startup", + "userLogin": "sampaiodiego", + "milestone": "4.7.0", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25092", + "title": "[FIX] Message preview not available for queued chats", + "userLogin": "murtaza98", + "milestone": "4.7.0", + "contributors": [ + "murtaza98", + "KevLehman" + ] + }, + { + "pr": "23688", + "title": "[NEW] Alpha Matrix Federation", + "userLogin": "alansikora", + "description": "Experimental support for Matrix Federation with a Bridge\r\n\r\nhttps://user-images.githubusercontent.com/51996/164530391-e8b17ecd-a4d0-4ef8-a8b7-81230c1773d3.mp4", + "milestone": "4.7.0", + "contributors": [ + "alansikora", + "geekgonecrazy", + "MarcosSpessatto", + "rodrigok" + ] + }, + { + "pr": "25259", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25261", + "title": "[FIX] Incorrect websocket url in livechat widget", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "25007", + "title": "[FIX] Showing Blank Message Inside Report", + "userLogin": "nishant23122000", + "description": "https://user-images.githubusercontent.com/53515714/161038085-4a86c7ae-6751-4996-9767-b1c9e0331a6c.mp4", + "contributors": [ + "nishant23122000" + ] + }, + { + "pr": "25251", + "title": "Regression: Add select message to system message and thread preview and allow select on legacy template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "web-flow", + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25239", + "title": "[FIX] Add katex render to new message react template", + "userLogin": "filipemarins", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo", + "dougfabris" + ] + }, + { + "pr": "25257", + "title": "Chore: Update Livechat to the last version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24515", + "title": "[FIX] Custom sound error toast messages", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25211", + "title": "Regression: Avatar not loading on first direct message", + "userLogin": "filipemarins", + "description": "fix avatar not loading on a first direct message", + "milestone": "4.7.0", + "contributors": [ + "filipemarins", + "ggazzo" + ] + }, + { + "pr": "25254", + "title": "Regression: Show username and real name on the message system", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25217", + "title": "[IMPROVE] Performance for some Omnichannel features", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25200", + "title": "[FIX] room creation fails if app framework is disabled", + "userLogin": "debdutdeb", + "milestone": "4.7.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24565", + "title": "[IMPROVE] Add OTR Room States", + "userLogin": "yash-rajpal", + "description": "Earlier OTR room uses only 2 states, we need more states to support future features. \r\nThis adds more states for the OTR contextualBar.\r\n\r\n- Expired\r\n\"Screen\r\n\r\n- Declined\r\nScreen Shot 2022-04-20 at 13 49 28\r\n\r\n- Error\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "dougfabris" + ] + }, + { + "pr": "25170", + "title": "[FIX] Client disconnection on network loss", + "userLogin": "amolghode1981", + "description": "Agent gets disconnected (or Unregistered) from asterisk in multiple ways. The goal is that agent should remain online\r\nunless agent explicitly logs off.\r\nAgent can stop receiving calls in multiple ways due to network loss. Network loss can happen in following ways.\r\n1. User tries to switch the network. User experiences a glitch of disconnectivity. This can be simulated by turning the network off\r\nin the network tab of chrome's dev tool. This can disconnect the UA if the disconnection happens just before the registration refresh.\r\n2. Second reason is when computer goes in sleep mode.\r\n3. Third reason is that when asterisk is crashed/in maintenance mode/explicitly stopped.\r\n\r\nSolution:\r\nThe idea is to detect the network disconnection and start the start the attempts to reconnect.\r\nThe detection of the disconnection does not happen in case#1. The SIPUA's UserAgent transport does not\r\ncall onDisconnected when network loss of such kind happens. To tackle this problem, window's online and offline event handlers are\r\nused.\r\n\r\nThe number of retries is configurable but ideally it is to be kept at -1. Whenever disconnection happens, it should keep on trying to\r\nreconnect with increasing backoff time. This behaviour is useful when the asterisk is stopped.\r\n\r\nWhen the server is disconnected, it should be indicated on the phone button.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25244", + "title": "[FIX] Read receipts show with color gray when not read yet", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins", + "gabriellsh" + ] + }, + { + "pr": "25230", + "title": "[FIX] VoIP disabled/enabled sequence puts voip agent in error state", + "userLogin": "amolghode1981", + "description": "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)\r\n\r\nIt 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.\r\n\r\nSolution:\r\n\r\n1. 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.\r\n2. From apps/meteor/server/modules/listeners/listeners.module.ts use notifyLoggedInThisInstance to notify all logged in users on current instance.\r\n3. 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.", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "25087", + "title": "[NEW] Add expire index to integration history", + "userLogin": "geekgonecrazy", + "milestone": "4.7.0", + "contributors": [ + "geekgonecrazy" + ] + }, + { + "pr": "24521", + "title": "Chore: update OTR icon", + "userLogin": "kibonusp", + "description": "I changed the shredder icon in OTR contextual bar to the stopwatch icon, recently added to the fuselage.", + "milestone": "4.7.0", + "contributors": [ + "kibonusp", + "yash-rajpal", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "25237", + "title": "[FIX] Toolbox hiding under contextual bar", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25231", + "title": "[IMPROVE] Added MaxNickNameLength and MaxBioLength constants", + "userLogin": "aakash-gitdev", + "contributors": [ + "aakash-gitdev", + "web-flow", + "gabriellsh" + ] + }, + { + "pr": "25220", + "title": "[FIX] Desktop notification on multi-instance environments", + "userLogin": "sampaiodiego", + "milestone": "4.6.3", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25175", + "title": "[FIX] Reply button behavior on broadcast channel", + "userLogin": "filipemarins", + "description": "Hide reply button for the user that sent the message", + "contributors": [ + "filipemarins", + "web-flow" + ] + }, + { + "pr": "25216", + "title": "[FIX] Read receipts showing before message read", + "userLogin": "filipemarins", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "25222", + "title": "[FIX] Add reaction not working in legacy messages", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25223", + "title": "Chore: Add error boundary to message component", + "userLogin": "gabriellsh", + "description": "Not crash the whole application if something goes wrong in the MessageList component.\r\n\r\n![image](https://user-images.githubusercontent.com/40830821/162269915-931c5c3c-c979-4234-b74c-371f67467ce0.png)", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25130", + "title": "Chore: Update Livechat version", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25073", + "title": "[FIX] AgentOverview analytics wrong departmentId parameter", + "userLogin": "paulobernardoaf", + "description": "When filtering the analytics charts by department, data would not appear because the object:\r\n```js\r\n{\r\n value: \"department-id\",\r\n label: \"department-name\"\r\n}\r\n```\r\nwas being used in the `departmentId` parameter.\r\n\r\n- Before:\r\n![image](https://user-images.githubusercontent.com/30026625/161832057-d96ffd21-a7dd-421e-bfaa-3b9f4a9127b2.png)\r\n\r\n- After:\r\n![image](https://user-images.githubusercontent.com/30026625/161831092-9ee77b51-b083-4f45-9c48-ab2e0511c4d6.png)", + "milestone": "4.7.0", + "contributors": [ + "paulobernardoaf" + ] + }, + { + "pr": "25056", + "title": "[FIX] Close room when dismiss wrap up call modal", + "userLogin": "tiagoevanp", + "milestone": "4.7.0", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25208", + "title": "Regression: yarn dev triggers build dependencies", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24714", + "title": "[FIX] Added invalid password error message", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "25196", + "title": "Chore: Tests with Playwright (task: ROC-28, 09-channels)", + "userLogin": "tmontini", + "contributors": [ + "tmontini" + ] + }, + { + "pr": "25174", + "title": "Chore: Template to generate packages", + "userLogin": "ggazzo", + "description": "```\r\nnpx hygen package new test\r\n```", + "contributors": [ + "ggazzo", + "web-flow", + "sampaiodiego" + ] + }, + { + "pr": "25193", + "title": "Regression: Fix micro services Docker build", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "25191", + "title": "Release 4.6.2", + "userLogin": "sampaiodiego", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25101", + "title": "[FIX] Database indexes not being created", + "userLogin": "sampaiodiego", + "milestone": "4.6.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25095", + "title": "Release 4.6.1", + "userLogin": "sampaiodiego", + "contributors": [ + "dougfabris", + "sampaiodiego", + "gabriellsh", + "yash-rajpal", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25180", + "title": "Chore: Remove duplicated useUserRoom", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25167", + "title": "Chore: TS migration SortList", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24933", + "title": "[FIX] Deactivating user breaks if user is the only room owner", + "userLogin": "sidmohanty11", + "description": "## Before\r\n\r\nhttps://user-images.githubusercontent.com/73601258/160000871-cfc2f2a5-2a59-4d27-8049-7754d003dd48.mp4\r\n\r\n\r\n\r\n## After\r\nhttps://user-images.githubusercontent.com/73601258/159998287-681ab475-ff33-4282-82ff-db751c59a392.mp4", + "milestone": "4.6.2", + "contributors": [ + "sidmohanty11", + "sampaiodiego" + ] + }, + { + "pr": "25181", + "title": "Regression: Fix services Docker build on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25089", + "title": "[FIX] UserCard sanitization", + "userLogin": "dougfabris", + "description": "- Rewrites the component to TS\r\n- Fixes some visual issues\r\n\r\n### before\r\n![Screen Shot 2022-04-07 at 00 23 11](https://user-images.githubusercontent.com/27704687/162113925-5c9484d1-23e9-4623-8b86-3fbc71b461a1.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-07 at 00 07 13](https://user-images.githubusercontent.com/27704687/162112353-afd6aac6-b27c-4470-a642-631b8080d59e.png)", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25085", + "title": "Chore: move definitions to packages", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25168", + "title": "Regression: CI playwright", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25125", + "title": "Chore: Convert NotificationStatus to TS", + "userLogin": "jeanfbrito", + "contributors": [ + "jeanfbrito", + "ggazzo" + ] + }, + { + "pr": "25148", + "title": "[FIX] Message menu action not working on legacy messages.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25122", + "title": "Chore: Tests with Playwright (task: All works)", + "userLogin": "weslley543", + "contributors": [ + "weslley543" + ] + }, + { + "pr": "25129", + "title": "Chore: Remove old files from removed Omnichannel feature", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25128", + "title": "Chore: Convert admin custom sound to tsx", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25126", + "title": "Chore: Migrate oauth2server to typescript", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "25123", + "title": "Chore: Convert LivechatAgentActivity to raw model and TS", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25124", + "title": "Chore: Remove unused Drone CI files", + "userLogin": "geekgonecrazy", + "contributors": [ + "geekgonecrazy", + "web-flow" + ] + }, + { + "pr": "25121", + "title": "Chore: Convert Mailer to TS", + "userLogin": "juliajforesti", + "contributors": [ + "juliajforesti", + "sampaiodiego" + ] + }, + { + "pr": "25107", + "title": "Regression: Fix CI monorepo build", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "25074", + "title": "Chore: Monorepo ", + "userLogin": "ggazzo", + "milestone": "3.7.0", + "contributors": [ + "sampaiodiego", + "ggazzo" + ] + }, + { + "pr": "25097", + "title": "[IMPROVE] Rename upgrade tab routes", + "userLogin": "guijun13", + "description": "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.", + "contributors": [ + "guijun13" + ] + }, + { + "pr": "25076", + "title": "Bump eslint-plugin-anti-trojan-source from 1.0.6 to 1.1.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24936", + "title": "[FIX] End call button disappearing when on-hold", + "userLogin": "tiagoevanp", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24932", + "title": "[FIX] Use correct room property for call ended at", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "25022", + "title": "[FIX] Proxy settings being ignored", + "userLogin": "pierre-lehnen-rc", + "description": "Modify Meteor's `HTTP.call` to add back proxy support", + "milestone": "4.6.1", + "contributors": [ + "pierre-lehnen-rc", + "sampaiodiego" + ] + }, + { + "pr": "25082", + "title": "[FIX] Invitation links don't redirect to the registration form", + "userLogin": "yash-rajpal", + "milestone": "4.6.1", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "23971", + "title": "[NEW] Message Template React Component", + "userLogin": "ggazzo", + "description": "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).\r\n\r\n\r\n\r\n![Screen Shot 2022-04-05 at 11 14 18](https://user-images.githubusercontent.com/27704687/161774027-38dd9c7b-eeeb-45e2-b9d8-ea2a9be8486d.png)\r\nIn case you encounter any problems, or want to compare, temporarily it is possible to use the old version\r\n\r\n\"image\"", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "25069", + "title": "[FIX] FormData uploads not working", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh", + "dougfabris" + ] + }, + { + "pr": "19866", + "title": "[FIX] Video and Audio not skipping forward", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "tassoevan", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "25067", + "title": "[FIX] NPS never finishing sending results", + "userLogin": "sampaiodiego", + "milestone": "4.6.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24405", + "title": "[IMPROVE] Add tooltip to sidebar room menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24431", + "title": "[IMPROVE] Added tooltip options for message menu", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "dougfabris" + ] + }, + { + "pr": "24166", + "title": "[FIX] Replace encrypted text to Encrypted Message Placeholder", + "userLogin": "yash-rajpal", + "description": "### before \r\n![image](https://user-images.githubusercontent.com/27704687/150807900-154a9cdb-ee13-4333-8628-f287ab914b40.png)\r\n\r\n### after\r\n\"Screenshot", + "milestone": "4.7.0", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24984", + "title": "[FIX] Prevent sequential messages edited icon to hide on hover", + "userLogin": "dougfabris", + "description": "### before\r\n\"Screen\r\n\r\n### after\r\n\"Screen", + "milestone": "4.7.0", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25024", + "title": "[IMPROVE] Improve active/hover colors in account sidebar", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24856", + "title": "[FIX] Full error message is visible", + "userLogin": "Himanshu664", + "milestone": "4.7.0", + "contributors": [ + "Himanshu664", + "tassoevan" + ] + }, + { + "pr": "24708", + "title": "Chore: Cancel running jobs if PR is updated", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24900", + "title": "Chore: organize test files and fix code coverage", + "userLogin": "tmontini", + "contributors": [ + null, + "tmontini", + "rodrigok" + ] + }, + { + "pr": "24464", + "title": "Chore: Missing keys in APIsDisplay", + "userLogin": "dougfabris", + "milestone": "4.7.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "25057", + "title": "Bump ejson from 2.2.1 to 2.2.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25053", + "title": "Chore: Remove Alpine image deps after using them", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25052", + "title": "Bump pino and pino-pretty", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "25050", + "title": "[FIX] Upgrade Tab showing for a split second", + "userLogin": "gabriellsh", + "milestone": "4.6.1", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "25055", + "title": "[FIX] UserAutoComplete not rendering UserAvatar correctly", + "userLogin": "dougfabris", + "description": "### before\r\n![Screen Shot 2022-04-04 at 16 50 21](https://user-images.githubusercontent.com/27704687/161620921-800bf66a-806d-4f83-b2e1-073c34215001.png)\r\n\r\n### after\r\n![Screen Shot 2022-04-04 at 16 49 00](https://user-images.githubusercontent.com/27704687/161620720-3e27774d-c241-46ca-b764-932a9295d709.png)", + "milestone": "4.6.1", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "25031", + "title": "Chore: TS conversion folder client", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24991", + "title": "Bump minimist from 1.2.5 to 1.2.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25002", + "title": "Bump template-file from 6.0.0 to 6.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25042", + "title": "Bump body-parser from 1.19.2 to 1.20.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25043", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-04-04Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "25028", + "title": "Merge master into develop & Set version to 4.7.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "AllanPazRibeiro", + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "25027", + "title": "Release 4.6.0", + "userLogin": "sampaiodiego", + "contributors": [ + "pierre-lehnen-rc", + "aswinidev", + "web-flow", + "renatobecker", + "sampaiodiego", + "dependabot[bot]", + "lingohub[bot]", + "matheusbsilva137", + "amolghode1981", + "debdutdeb", + "eduardofcabrera", + "juliajforesti", + "tiagoevanp", + "KevLehman" + ] + }, + { + "pr": "25021", + "title": "Bump @rocket.chat/emitter from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25020", + "title": "Bump @rocket.chat/ui-kit from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25019", + "title": "Bump @rocket.chat/message-parser from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25018", + "title": "Bump @rocket.chat/string-helpers from 0.31.4 to 0.31.9 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "25017", + "title": "Regression: Add createdOTR index", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24998", + "title": "Release 4.5.5", + "userLogin": "sampaiodiego", + "contributors": [ + "MartinSchoeler", + "sampaiodiego", + "filipemarins", + "tiagoevanp" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24938", + "title": "Release 4.5.4", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "geekgonecrazy", + "AllanPazRibeiro" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "25015", + "title": "Chore: Bump Fuselage packages", + "userLogin": "dougfabris", + "description": "It uses the last stable version of Fuselage packages.", + "milestone": "4.6.0", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24999", + "title": "Regression: Custom roles displaying ID instead of name on some admin screens", + "userLogin": "pierre-lehnen-rc", + "description": "![image](https://user-images.githubusercontent.com/55164754/160981416-555bcaa1-c075-4260-937c-64523472da43.png)\r\n![image](https://user-images.githubusercontent.com/55164754/160981452-6eae4e74-8425-4073-8256-472aba72b9db.png)", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24835", + "title": "[NEW] Upgrade Tab", + "userLogin": "gabriellsh", + "description": "![image](https://user-images.githubusercontent.com/27704687/160172260-c656282e-a487-4092-948d-d11c9bacb598.png)", + "milestone": "4.6.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "web-flow", + "tassoevan", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24980", + "title": "Regression: Error is raised when there's no Asterisk queue available yet", + "userLogin": "amolghode1981", + "milestone": "4.6.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24994", + "title": "[FIX] High CPU usage caused by CallProvider", + "userLogin": "tiagoevanp", + "description": "Remove infinity loop inside useVoipClient hook.\r\n\r\n#closes #24970", + "milestone": "4.5.5", + "contributors": [ + "ggazzo", + "tiagoevanp" + ] + }, + { + "pr": "24955", + "title": "[FIX] Multiple issues starting a new DM", + "userLogin": "filipemarins", + "description": "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.\r\n\r\nbefore:\r\nhttps://user-images.githubusercontent.com/9275105/160223241-d2319f3e-82c5-47d6-867f-695ab2361a17.mp4\r\n\r\nafter:\r\nhttps://user-images.githubusercontent.com/9275105/160223244-84d0d2a1-3d95-464d-8b8a-e264b0d4d690.mp4", + "milestone": "4.5.5", + "contributors": [ + "filipemarins", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24969", + "title": "Chore: Storybook mocking and examples improved", + "userLogin": "tassoevan", + "description": "- Stories from `ee/` included;\r\n- Differentiate root story kinds;\r\n- Mocking of `ServerContext` via Storybook parameters.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24990", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.5", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24989", + "title": "Revert: [NEW] Engagement Statistics", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24897", + "title": "[FIX] Room archived/unarchived system messages aren't sent when editing room settings", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Fix the \"Hide System Messages\" option for the \"Room archived\" and \"Room unarchived\" system messages;", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24925", + "title": "Chore: add some missing REST definitions", + "userLogin": "gerzonc", + "description": "On the [mobile client](https://github.com/RocketChat/Rocket.Chat.ReactNative), 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.", + "contributors": [ + "gerzonc" + ] + }, + { + "pr": "24971", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24921", + "title": "[FIX] Register with Secret URL", + "userLogin": "yash-rajpal", + "contributors": [ + "yash-rajpal" + ] + }, + { + "pr": "24948", + "title": "Regression: Fix unexpected errors breaking ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24320", + "title": "[FIX] LDAP avatars being rotated according to metadata even if the setting to rotate uploads is off", + "userLogin": "matheusbsilva137", + "description": "- 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);\r\n- Display the avatar image preview (orientation) according to the `FileUpload_RotateImages` setting.", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24930", + "title": "[FIX] SAML Force name to string", + "userLogin": "geekgonecrazy", + "milestone": "4.5.4", + "contributors": [ + "geekgonecrazy", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24908", + "title": "Regression: Call doesn't stop ringing after agent unregistration", + "userLogin": "MartinSchoeler", + "milestone": "4.6.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24777", + "title": "[NEW] Engagement Statistics", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24920", + "title": "Regression: Fix account service login expiration", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24867", + "title": "[FIX] Duplicated \"jump to message\" button on starred messages", + "userLogin": "Himanshu664", + "contributors": [ + "Himanshu664" + ] + }, + { + "pr": "24860", + "title": "[FIX] External search providers not working", + "userLogin": "tkurz", + "contributors": [ + "tkurz" + ] + }, + { + "pr": "24052", + "title": "[FIX] Several issues related to custom roles", + "userLogin": "pierre-lehnen-rc", + "description": "- Throw an error when trying to delete a role (User or Subscription role) that are still being used;\r\n- Fix \"Invalid Role\" error for custom roles in Role Editing sidebar;\r\n- Fix \"Users in Role\" screen for custom roles.", + "milestone": "4.6.0", + "contributors": [ + "pierre-lehnen-rc", + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24781", + "title": "[NEW] Telemetry Events", + "userLogin": "eduardofcabrera", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24887", + "title": "[IMPROVE] Adding new statistics related to voip and omnichannel", + "userLogin": "cauefcr", + "description": "- Total of Canned response messages sent\r\n- Total of tags used\r\n- Last-Chatted Agent Preferred (enabled/disabled)\r\n- Assign new conversations to the contact manager (enabled/disabled)\r\n- How to handle Visitor Abandonment setting\r\n- Amount of chats placed on hold\r\n- VoIP Enabled\r\n- Amount of VoIP Calls\r\n- Amount of VoIP Extensions connected\r\n- Amount of Calls placed on hold (1x per call)\r\n- Fixed Session Aggregation type definitions", + "milestone": "4.6.0", + "contributors": [ + "cauefcr", + "KevLehman" + ] + }, + { + "pr": "24911", + "title": "Chore: Remove old scripts", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24898", + "title": "[FIX] DDP Rate Limiter Translation key", + "userLogin": "gabriellsh", + "description": "Before:\r\n\"image\"\r\n\r\n\r\nNow:\r\n\"image\"", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24831", + "title": "[FIX][ENTERPRISE] Notifications not being sent by ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24884", + "title": "Release 4.5.3", + "userLogin": "AllanPazRibeiro", + "contributors": [ + "tiagoevanp", + "sampaiodiego", + "KevLehman", + "amolghode1981", + "ggazzo" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24814", + "title": "Release 4.5.2", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "MartinSchoeler", + "pierre-lehnen-rc", + "tassoevan", + "debdutdeb", + "KevLehman", + "murtaza98", + "sampaiodiego", + "juliajforesti" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24782", + "title": "Release 4.5.1", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "renatobecker", + "pierre-lehnen-rc", + "sampaiodiego", + "matheusbsilva137", + "amolghode1981", + "juliajforesti", + "tiagoevanp", + "KevLehman", + "MartinSchoeler", + "Aman-Maheshwari", + "cuonghuunguyen" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24606", + "title": "[FIX] Push privacy config to not show username not being respected", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24901", + "title": "[FIX] Custom script not being fired", + "userLogin": "ggazzo", + "milestone": "4.5.3", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24896", + "title": "[FIX] Wrong business hour behavior", + "userLogin": "murtaza98", + "milestone": "4.6.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24845", + "title": "[FIX] Ignore customClass on messages", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24879", + "title": "[FIX] Apple OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24895", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24749", + "title": "[IMPROVE] New omnichannel statistics and async statistics processing.", + "userLogin": "cauefcr", + "description": "https://app.clickup.com/t/1z4zg4e", + "contributors": [ + "cauefcr" + ] + }, + { + "pr": "24882", + "title": "[FIX] Missing dependency on useEffect at CallProvider", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24877", + "title": "Chore: Fix MongoDB versions on release notes", + "userLogin": "sampaiodiego", + "milestone": "4.5.3", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24779", + "title": "[FIX] auto-join team channels not honoring user preferences", + "userLogin": "ostjen", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24869", + "title": "Bump pino from 7.8.1 to 7.9.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24870", + "title": "Bump pino-pretty from 7.5.3 to 7.5.4 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24864", + "title": "[FIX] Disable voip button when call is in progress", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24863", + "title": "[FIX] Broken build caused by PRs modifying same file differently", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24850", + "title": "Regression: Role Sync not always working", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24838", + "title": "[FIX] [VOIP] SidebarFooter component ", + "userLogin": "tiagoevanp", + "description": "- Improve the CallProvider code;\r\n- Adjust the text case of the VoIP component on the FooterSidebar;\r\n- Fix the bad behavior with the changes in queue's name.", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24837", + "title": "[IMPROVE] Standarize queue behavior for managers and agents when subscribing", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24789", + "title": "[FIX] VoIP button gets disabled whenever user status changes", + "userLogin": "amolghode1981", + "milestone": "4.5.3", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24799", + "title": "[FIX] Wrong param usage on queue summary call", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24829", + "title": "[FIX] Show only enabled departments on forward", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24823", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24833", + "title": "Bump @types/mailparser from 3.0.2 to 3.4.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24832", + "title": "Bump @types/clipboard from 2.0.1 to 2.0.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24822", + "title": "Bump @types/nodemailer from 6.4.2 to 6.4.4", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24821", + "title": "Bump body-parser from 1.19.0 to 1.19.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24820", + "title": "Bump @types/ws from 8.5.2 to 8.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24764", + "title": "Chore: Add E2E tests for livechat/visitor", + "userLogin": "Muramatsu2602", + "description": "- Create a new test suite file under tests/end-to-end/api/livechat\r\n- Create tests for the following endpoints:\r\n + livechat/visitor (create visitor, update visitor, add custom fields to visitors)", + "contributors": [ + "Muramatsu2602", + "KevLehman" + ] + }, + { + "pr": "24729", + "title": "Chore: Add E2E tests for livechat/room.close", + "userLogin": "Muramatsu2602", + "description": "* Create a new test suite file under tests/end-to-end/api/livechat\r\n * Create tests for the following endpoint:\r\n\t + ivechat/room.close", + "contributors": [ + "Muramatsu2602", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24785", + "title": "[FIX] German translation for Monitore", + "userLogin": "JMoVS", + "contributors": [ + "JMoVS", + "web-flow" + ] + }, + { + "pr": "24812", + "title": "[FIX] Revert AutoComplete", + "userLogin": "juliajforesti", + "milestone": "4.5.2", + "contributors": [ + "juliajforesti", + "ggazzo" + ] + }, + { + "pr": "24747", + "title": "Chore: APIClass types", + "userLogin": "felipe-rod123", + "description": "This pull request creates a new `restivus` module (.d.ts) for the `api.js` file.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24801", + "title": "Bump is-svg from 4.3.1 to 4.3.2", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24803", + "title": "Bump prometheus-gc-stats from 0.6.2 to 0.6.3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24810", + "title": "Chore: Skip local services changes when shutting down duplicated services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24629", + "title": "[FIX] \"Match error\" when converting a team to a channel", + "userLogin": "matheusbsilva137", + "description": "- Fix \"Match error\" when trying to convert a channel to a team;", + "milestone": "4.6.0", + "contributors": [ + "matheusbsilva137", + "web-flow" + ] + }, + { + "pr": "24809", + "title": "Regression: Fix ParentRoomWithEndpointData in loop", + "userLogin": "sampaiodiego", + "milestone": "4.5.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24397", + "title": "Chore: Get Settings Statistics", + "userLogin": "albuquerquefabio", + "contributors": [ + "albuquerquefabio" + ] + }, + { + "pr": "24732", + "title": "[FIX] `PaginatedSelectFiltered` not handling changes", + "userLogin": "tassoevan", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24628", + "title": "Chore: converted more hooks to typescript", + "userLogin": "felipe-rod123", + "description": "Converted some functions on `client/hooks/` from JavaScript to Typescript.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24506", + "title": "Chore: added settings endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `settings.ts`.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24226", + "title": "[FIX] Handle Other Formats inside Upload Avatar", + "userLogin": "nishant23122000", + "description": "After resolving issue #24213 : \r\n\r\n\r\nhttps://user-images.githubusercontent.com/53515714/150325012-91413025-786e-4ce0-ae75-629f6b05b024.mp4", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow", + "murtaza98" + ] + }, + { + "pr": "24424", + "title": "[FIX] Prune Message issue", + "userLogin": "nishant23122000", + "milestone": "4.6.0", + "contributors": [ + "nishant23122000", + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24805", + "title": "[FIX] Critical: Incorrect visitor getting assigned to a chat from apps", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24804", + "title": "[FIX] \"livechat/webrtc.call\" endpoint not working", + "userLogin": "murtaza98", + "milestone": "4.5.2", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24507", + "title": "Chore: added Server Instances endpoint types", + "userLogin": "felipe-rod123", + "description": "Created typing for endpoint definitions on `instances.ts`.", + "contributors": [ + "felipe-rod123" + ] + }, + { + "pr": "24758", + "title": "[FIX] Prevent call button toggle when user is on call", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24800", + "title": "Regression: Register services right away", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24792", + "title": "[FIX] VoipExtensionsPage component call", + "userLogin": "KevLehman", + "milestone": "4.5.2", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24384", + "title": "Chore: Convert server functions from javascript to typescript", + "userLogin": "felipe-rod123", + "description": "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.", + "contributors": [ + "felipe-rod123", + "ggazzo" + ] + }, + { + "pr": "24705", + "title": "[FIX] Broken multiple OAuth integrations", + "userLogin": "debdutdeb", + "milestone": "4.5.2", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24793", + "title": "[FIX][ENTERPRISE] Auto reload feature of ddp-streamer micro service", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24783", + "title": "Bump pino from 7.8.0 to 7.8.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23121", + "title": "Bump jschardet from 1.6.0 to 3.0.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24752", + "title": "[FIX] Show call icon only when user has extension associated", + "userLogin": "KevLehman", + "milestone": "4.5.3", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24623", + "title": "[FIX] Opening a new DM from user card", + "userLogin": "tassoevan", + "description": "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.", + "milestone": "4.5.2", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24750", + "title": "[IMPROVE] Voip Extensions disabled state", + "userLogin": "MartinSchoeler", + "milestone": "4.5.2", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24748", + "title": "[IMPROVE] UX - VoIP Call Component", + "userLogin": "tiagoevanp", + "milestone": "4.5.3", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "24753", + "title": "Chore: Micro services fixes and cleanup", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24756", + "title": "Regression: Improve Sidenav open/close handling and fixed codeql configs and E2E tests", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo" + ] + }, + { + "pr": "24760", + "title": "[FIX] Apple login script being loaded even when Apple Login is disabled.", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.1", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24754", + "title": "Chore: Update Livechat", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24683", + "title": "[FIX] no id of room closer in livechat-close message", + "userLogin": "cuonghuunguyen", + "milestone": "4.5.1", + "contributors": [ + null + ] + }, + { + "pr": "24771", + "title": "Chore: fix grammatical errors in Features", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "24759", + "title": "Chore: Fix grammatical errors in Code of Conduct", + "userLogin": "aadishJ01", + "contributors": [ + "aadishJ01", + "web-flow" + ] + }, + { + "pr": "23795", + "title": "[FIX] Reload roomslist after successful deletion of a room from admin panel.", + "userLogin": "Aman-Maheshwari", + "description": "Removed the logic for calling the `rooms.adminRooms` endPoint from the `RoomsTable` Component and moved it to its parent component `RoomsPage`.\r\nThis allows to call the endPoint `rooms.adminRooms` from `EditRoomContextBar` Component which is also has `RoomPage` Component as its parent.\r\n\r\nAlso added a succes toast message after the successful deletion of room.", + "milestone": "4.5.1", + "contributors": [ + "Aman-Maheshwari", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24743", + "title": "[FIX] System messages are sent when adding or removing a group from a team", + "userLogin": "matheusbsilva137", + "description": "- Do not send system messages when adding or removing a new or existing _group_ from a team.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24544", + "title": "Chore: Fix Cypress tests", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok", + "tassoevan", + "dougfabris" + ] + }, + { + "pr": "24737", + "title": "[FIX] Typo and placeholder on wrap up call modal", + "userLogin": "MartinSchoeler", + "milestone": "4.5.1", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24739", + "title": "[IMPROVE][ENTERPRISE] Don't start presence monitor when running micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24738", + "title": "[FIX][ENTERPRISE] DDP streamer not sending data to all clients", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24680", + "title": "[FIX] Show only available agents on extension association modal", + "userLogin": "KevLehman", + "milestone": "4.5.1", + "contributors": [ + "KevLehman", + "tiagoevanp" + ] + }, + { + "pr": "24710", + "title": "[FIX] DDP streamer errors", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24724", + "title": "[FIX][ENTERPRISE] Presence micro service logic", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24717", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-03-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24607", + "title": "[FIX] VoIP Enable/Disable setting on CallContext/CallProvider Notifications", + "userLogin": "tiagoevanp", + "milestone": "4.5.1", + "contributors": [ + "tiagoevanp", + "web-flow", + "tassoevan" + ] + }, + { + "pr": "24726", + "title": "Chore: Improve logger to allow log of `unknown` values", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24677", + "title": "[FIX] Components for user search", + "userLogin": "juliajforesti", + "milestone": "4.5.1", + "contributors": [ + "juliajforesti", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24542", + "title": "[FIX] Date Message Export Filter Fix", + "userLogin": "eduardofcabrera", + "description": "Fix message export filter to get all messages between \"from date\" and \"to date\", including \"to date\".", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24709", + "title": "[FIX] API Error preventing adding an email to users without one (like bot/app users)", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24716", + "title": "Bump ts-node from 10.6.0 to 10.7.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24476", + "title": "[FIX] Nextcloud OAuth for incomplete token URL", + "userLogin": "debdutdeb", + "milestone": "4.6.0", + "contributors": [ + "debdutdeb" + ] + }, + { + "pr": "24657", + "title": "[FIX] Voip Stream Reinitialization Error", + "userLogin": "amolghode1981", + "milestone": "4.5.1", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24698", + "title": "Bump pino-pretty from 7.5.2 to 7.5.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24696", + "title": "[FIX] Room's message count not being incremented on import", + "userLogin": "matheusbsilva137", + "description": "- Fix rooms' message counter not being incremented on message import.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "23824", + "title": "Chore: Improvements on role syncing (ldap, oauth and saml)", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan" + ] + }, + { + "pr": "24689", + "title": "Bump pino-pretty from 7.5.1 to 7.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24674", + "title": "[FIX] Missing username on messages imported from Slack", + "userLogin": "matheusbsilva137", + "description": "- Fix missing sender's username on messages imported from Slack.", + "milestone": "4.5.1", + "contributors": [ + "matheusbsilva137" + ] + }, + { + "pr": "24642", + "title": "Bump actions/setup-node from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24644", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-28Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24590", + "title": "[FIX] Duplicated 'name' log key", + "userLogin": "sampaiodiego", + "milestone": "4.5.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24668", + "title": "Bump actions/checkout from 2 to 3", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24574", + "title": "Chore(deps-dev): Bump @types/mock-require from 2.0.0 to 2.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24667", + "title": "Bump ts-node from 10.5.0 to 10.6.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24666", + "title": "Bump @types/ws from 8.2.3 to 8.5.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24640", + "title": "Bump url-parse from 1.5.7 to 1.5.10", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24653", + "title": "Merge master into develop & Set version to 4.6.0-develop", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "web-flow" + ] + }, + { + "pr": "24652", + "title": "Release 4.5.0", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "sampaiodiego", + "web-flow", + "aswinidev", + "debdutdeb", + "dependabot[bot]", + "lingohub[bot]", + "ostjen", + "KevLehman", + "dougfabris", + "LucasFASouza", + "felipe-rod123", + "guijun13", + "pierre-lehnen-rc", + "filipemarins", + "matheusbsilva137", + "gabriellsh" + ] + }, + { + "pr": "24661", + "title": "[FIX] Typo in wrap-up term", + "userLogin": "renatobecker", + "milestone": "4.5.1", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24028", + "title": "[IMPROVE] Updated links in readme", + "userLogin": "aswinidev", + "contributors": [ + "aswinidev", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24651", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert" + ] + }, + { + "pr": "24649", + "title": "Regression: Refresh server connection when MI server settings change", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24648", + "title": "Regression: Prevent button from losing state when rerendering", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24585", + "title": "Regression: Error setting user avatars and mentioning rooms on Slack Import", + "userLogin": "matheusbsilva137", + "description": "- Fix `Mentioned room not found` error when importing rooms from Slack;\r\n- Fix `Forbidden` error when setting avatars for users imported from Slack (on user import/creation);\r\n- Fix incorrect message count on imported rooms;\r\n- Fix missing username on messages imported from Slack;", + "contributors": [ + "matheusbsilva137", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24647", + "title": "Regression: Fix wrong tab name for VoIP settings", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker" + ] + }, + { + "pr": "24646", + "title": "Regression: Server crashing if Voip credentials are invalid", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24645", + "title": "Regression: Extension List panel UI not aligned with designs", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24635", + "title": "Regression: Queue counter aggregator for incoming/hanged calls", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24630", + "title": "Regression: Fix double value on holdTime and empty msg on last message", + "userLogin": "MartinSchoeler", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24624", + "title": "Regression: If Asterisk suddenly goes down, server has no way to know. Causes server to get stuck. Needs restart", + "userLogin": "amolghode1981", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981", + "KevLehman" + ] + }, + { + "pr": "24601", + "title": "Regression: Prevent connect to asterisk when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow", + "KevLehman" + ] + }, + { + "pr": "24626", + "title": "Regression: Encode registration info as JWT when signing key is provided", + "userLogin": "KevLehman", + "milestone": "4.5.0", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24625", + "title": "Regression: Fix time fields and wrap up in Voip Room Contexual bar", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24592", + "title": "Regression: Fix in-correct room status shown to agents", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24619", + "title": "Regression: Do not show toast on incoming voip calls", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24616", + "title": "Regression: Fix incoming voip call ringtone is not ringing", + "userLogin": "murtaza98", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24610", + "title": "Regression: Mark all rooms as read modal closing instantly.", + "userLogin": "gabriellsh", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24615", + "title": "Regression: Fix translation for call started message", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24594", + "title": "Regression: Bunch of settings fixes for VoIP", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler", + "web-flow" + ] + }, + { + "pr": "24609", + "title": "Regression: Admin Sidebar colors inverted.", + "userLogin": "gabriellsh", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh" + ] + }, + { + "pr": "24602", + "title": "Regression: No audio when call comes from Skype/IP phone", + "userLogin": "amolghode1981", + "description": "The audio was not rendered because of re-rendering of react element based on\r\nqueueCounter and roomInfo. queueCounter and roomInfo cause the dom to re-render when call gets accepted\r\nbecause after accepting call, queueCounter changes or a room gets created.\r\nThe audio element gets recreated. But VoIP user probably holds the old one.\r\nThe behaviour is not predictable when such case happens. If everything gets cleanly setup,\r\neven if the audio element goes headless, it still continues to play the remote audio.\r\nBut in other cases, it is unreferenced the one on dom has its srcObject as null.\r\nThis causes no audio.\r\n\r\nThis fix provides a way to re-initialise the rendering elements in VoIP user\r\nand calls this function on useEffect() if the re-render has happen.", + "milestone": "4.5.0", + "contributors": [ + "amolghode1981" + ] + }, + { + "pr": "24596", + "title": "Regression: Fixes in Voice Contextual Bar and Directory", + "userLogin": "MartinSchoeler", + "milestone": "4.5.0", + "contributors": [ + "MartinSchoeler" + ] + }, + { + "pr": "24603", + "title": "Regression: Fix time format on Voip system messages", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24598", + "title": "Regression: VoIP service button displayed when VoIP is disabled", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24581", + "title": "Regression: Add support to namespace within micro services", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24583", + "title": "Regression: Error when trying to load name of dm rooms for avatars and notifications", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc" + ] + }, + { + "pr": "24567", + "title": "[NEW] Marketplace sort filter", + "userLogin": "ujorgeleite", + "description": "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.\r\nDemo gif:\r\n![Marketplace sort filter](https://user-images.githubusercontent.com/43561537/155033709-e07a6306-a85a-4f7f-9624-b53ba5dd7fa9.gif)", + "milestone": "4.5.0", + "contributors": [ + "rique223", + "ujorgeleite" + ] + }, + { + "pr": "23102", + "title": "[NEW] VoIP Support for Omnichannel", + "userLogin": "KevLehman", + "description": "- Created VoipService to manage VoIP connections and PBX connection\r\n- Created LivechatVoipService that will handle custom cases for livechat (creating rooms, assigning chats to queue, actions when call is finished, etc)\r\n- Created Basic interfaces to support new services and new model\r\n- Created Endpoints for management interfaces\r\n- Implemented asterisk connector on VoIP service\r\n- Created UI components to show calls incoming and to allow answering/rejecting calls\r\n- Added new settings to control call server/management server connection values\r\n- Added endpoints to associate Omnichannel Agents with PBX Extensions\r\n- Added support for event listening on server side, to get metadata about calls being received/ongoing\r\n- Created new pages to update settings & to see user-extension association\r\n- Created new page to see ongoing calls (and past calls)\r\n- Added support for remote hangup/hold on calls\r\n- Implemented call metrics calculation (hold time, waiting time, talk time)\r\n- Show a notificaiton when call is received", + "milestone": "4.5.0", + "contributors": [ + "KevLehman", + "amolghode1981", + "web-flow", + "tiagoevanp", + "murtaza98", + "MartinSchoeler" + ] + }, + { + "pr": "24562", + "title": "Regression: Fix room not getting created due to null visitor status", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24573", + "title": "Chore: Bump Fuselage packages", + "userLogin": "tassoevan", + "description": "It uses the last stable version of Fuselage packages.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24558", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-21Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24572", + "title": "[FIX] 2FA via email when logging in using OAuth", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24568", + "title": "Chore: Update Apps-Engine", + "userLogin": "d-gubert", + "milestone": "4.5.0", + "contributors": [ + "d-gubert", + "web-flow" + ] + }, + { + "pr": "24536", + "title": "Chore: roomTypes: Stop mixing client and server code together", + "userLogin": "pierre-lehnen-rc", + "milestone": "4.5.0", + "contributors": [ + "pierre-lehnen-rc", + "tassoevan", + "web-flow" + ] + }, + { + "pr": "24529", + "title": "[IMPROVE] Replace AutoComplete in UserAutoComplete & UserAutoCompleteMultiple components", + "userLogin": "juliajforesti", + "description": "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\r\n\r\n### before\r\n![Screen Shot 2022-02-19 at 13 33 28](https://user-images.githubusercontent.com/27704687/154809737-8181a06c-4f20-48ea-90f7-01e828b9a452.png)\r\n\r\n### after\r\n![Screen Shot 2022-02-19 at 13 30 58](https://user-images.githubusercontent.com/27704687/154809653-a8ec9a80-c0dd-4a25-9c00-0f96147d79e9.png)", + "contributors": [ + "juliajforesti", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24513", + "title": "Chore: Run tests using microservices deployment on CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "rodrigok" + ] + }, + { + "pr": "24556", + "title": "Bump @types/ws from 8.2.2 to 8.2.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24501", + "title": "Chore: Update fuselage deps to match monolith versions", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24538", + "title": "Bump adm-zip from 0.4.14 to 0.5.9", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24454", + "title": "[IMPROVE] Purchase Type Filter for marketplace apps and Categories filter anchor refactoring", + "userLogin": "rique223", + "description": "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.\r\n\r\nDemo gif:\r\n![purchaseTypeFIlter](https://user-images.githubusercontent.com/43561537/153101228-7b7ebdc3-2d34-420f-aa9d-f7cbc8d4b53f.gif)\r\n\r\nRefactored the categories filter anchor from a plain fuselage select to a select button with dynamic colors.\r\nDemo gif:\r\n![New categories filter anchor(PR)](https://user-images.githubusercontent.com/43561537/153422427-28012b7d-e0ec-45f4-861d-c9368c57ad04.gif)", + "contributors": [ + "rique223", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24475", + "title": "[IMPROVE] Skip encryption for slash commands in E2E rooms", + "userLogin": "yash-rajpal", + "description": "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.", + "contributors": [ + "yash-rajpal", + "albuquerquefabio", + "web-flow" + ] + }, + { + "pr": "24304", + "title": "Chore: Js to ts slash commands archive", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands archive files to typescript", + "contributors": [ + "eduardofcabrera", + "web-flow" + ] + }, + { + "pr": "24114", + "title": "[NEW] E2E password generator", + "userLogin": "ostjen", + "contributors": [ + "ostjen", + "web-flow", + "eduardofcabrera", + "tassoevan" + ] + }, + { + "pr": "24553", + "title": "[FIX] Omnichannel managers can't join chats in progress", + "userLogin": "renatobecker", + "milestone": "4.5.0", + "contributors": [ + "renatobecker", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24559", + "title": "[FIX] Room context tabs not working in Omnichannel current chats page", + "userLogin": "murtaza98", + "milestone": "4.5.0", + "contributors": [ + "murtaza98" + ] + }, + { + "pr": "24173", + "title": "[FIX] respect `Accounts_Registration_Users_Default_Roles` setting", + "userLogin": "debdutdeb", + "description": "- Fix `user` role being added as default regardless of the `Accounts_Registration_Users_Default_Roles` setting.", + "milestone": "4.5.0", + "contributors": [ + "debdutdeb", + "web-flow", + "matheusbsilva137" + ] + }, + { + "pr": "24485", + "title": "[FIX] Skip admin info in setup wizard for servers with admin registered", + "userLogin": "dougfabris", + "contributors": [ + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24537", + "title": "Bump pm2 from 5.1.2 to 5.2.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24209", + "title": "[IMPROVE] Team system messages feedback", + "userLogin": "ostjen", + "description": "- Delete some keys that aren't being used (eg: User_left_female).\r\n- Add new Teams' system messages:\r\n - `added-user-to-team`: **added** @\\user to this Team;\r\n - `removed-user-from-team`: **removed** @\\user from this Team;\r\n - `user-converted-to-team`: **converted** #\\room to a Team;\r\n - `user-converted-to-channel`: **converted** #\\room to a Channel;\r\n - `user-removed-room-from-team`: **removed** @\\user from this Team;\r\n - `user-deleted-room-from-team`: **deleted** #\\room from this Team;\r\n - `user-added-room-to-team`: **deleted** #\\room to this Team;\r\n- Add the corresponding options to hide each new system message and the missing `ujt` and `ult` hide options.", + "milestone": "4.5.0", + "contributors": [ + "ostjen", + "tassoevan", + "web-flow", + "dougfabris", + "matheusbsilva137" + ] + }, + { + "pr": "24467", + "title": "Chore: Improve PR title validation regex", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "debdutdeb" + ] + }, + { + "pr": "24058", + "title": "Bump date-fns from 2.24.0 to 2.28.0", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24508", + "title": "[FIX] Read receipts showing first messages of the room as read even if not read by everyone", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24530", + "title": "Chore: Remove storybook build job from CI", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24528", + "title": "Bump url-parse from 1.5.3 to 1.5.7", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24333", + "title": "Chore: Add description to global OTR setting", + "userLogin": "pedrogssouza", + "contributors": [ + "pedrogssouza", + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24382", + "title": "[IMPROVE] OTR system messages", + "userLogin": "yash-rajpal", + "description": "OTR system messages to indicate key refresh and joining chat to users.", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24121", + "title": "[IMPROVE] Descriptive tooltip for Encrypted Key on Room Header", + "userLogin": "yash-rajpal", + "milestone": "4.5.0", + "contributors": [ + "yash-rajpal", + "web-flow" + ] + }, + { + "pr": "24522", + "title": "Bump express from 4.17.2 to 4.17.3 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24518", + "title": "Chore: `twoFactorRequired` signature", + "userLogin": "tassoevan", + "description": "Improved type checking for decorator `twoFactorRequired`.", + "contributors": [ + "tassoevan" + ] + }, + { + "pr": "24517", + "title": "Bump body-parser from 1.19.1 to 1.19.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24441", + "title": "[FIX] GDPR action to forget visitor data on request", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "murtaza98", + "web-flow" + ] + }, + { + "pr": "24306", + "title": "Chore: Convert to typescript the slash commands create files", + "userLogin": "eduardofcabrera", + "description": "Convert Slash Commands create files to typescript.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24325", + "title": "Chore: Convert to typescript the mute and unmute slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the mute and unmute slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24321", + "title": "Chore: Convert to typescript the me slashCommands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the me slashCommands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "23512", + "title": "Bump sodium-native from 3.2.1 to 3.3.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24311", + "title": "Chore: Convert to typescript the slash commands invite files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the slash commands invite files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24509", + "title": "Bump vm2 from 3.9.5 to 3.9.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24451", + "title": "[IMPROVE] ChatBox Text to File Description", + "userLogin": "eduardofcabrera", + "description": "The text content from chatbox goes to the file description when drag and drop a file.", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow", + "dougfabris" + ] + }, + { + "pr": "24461", + "title": "Chore: Update Meteor to 2.5.6", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "rodrigok", + "web-flow" + ] + }, + { + "pr": "24477", + "title": "Chore: Update ws package", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24498", + "title": "Bump underscore.string from 3.3.5 to 3.3.6 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24491", + "title": "Bump follow-redirects from 1.14.7 to 1.14.8 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24493", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-14Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24331", + "title": "Chore: Convert to typescript the unarchive slash commands files", + "userLogin": "eduardofcabrera", + "description": "Convert to typescript the unarchive slash commands files", + "contributors": [ + "eduardofcabrera", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24483", + "title": "[IMPROVE] Add tooltips on action buttons of Canned Response message composer", + "userLogin": "LucasFASouza", + "description": "The tooltips were missing on the action buttons of CR message composer.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153620327-91107245-4b47-4d39-a99a-6da6d1cf5734.png)\r\n\r\nUsers can now feel more encouraged to use these actions knowing what they are supposed to do.", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24196", + "title": "Chore: Delete unused file (NewAdminInfoPage.js)", + "userLogin": "gabriellsh", + "description": "Just removing a duplicated/unused file.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24388", + "title": "[IMPROVE][ENTERPRISE] Improve how micro services are loaded", + "userLogin": "ggazzo", + "contributors": [ + "ggazzo", + "sampaiodiego" + ] + }, + { + "pr": "24458", + "title": "[IMPROVE] Add return button in chats opened from the list of current chats", + "userLogin": "LucasFASouza", + "description": "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.\r\nNow, the same UI/UX is supported for chats opened from Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153283190-bd5c9748-c36b-4874-a704-6043afc7e3a1.png)\r\n\r\nThe chat now opens in the Omnichannel settings and has the return button so the user can go back to the Current Chats list.\r\n\r\n![image](https://user-images.githubusercontent.com/32396925/153285591-fad8e4a0-d2ea-4a02-8b2a-15e383b3c876.png)", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24469", + "title": "Bump express from 4.17.1 to 4.17.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24472", + "title": "Bump cookie from 0.4.1 to 0.4.2 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24275", + "title": "[IMPROVE] Close modal on esc and outside click", + "userLogin": "gabriellsh", + "description": "This is a QUICK change in order to close modals pressing Esc button and clicking outside of it **intentionally**.", + "milestone": "4.5.0", + "contributors": [ + "gabriellsh", + "dougfabris", + "tassoevan" + ] + }, + { + "pr": "24435", + "title": "Chore(deps-dev): Bump ts-node from 10.0.0 to 10.5.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24041", + "title": "[IMPROVE] Add user to room on \"Click to Join!\" button press", + "userLogin": "matheusbsilva137", + "description": "- Add user to room on \"Click to Join!\" button press;\r\n- Display the \"Join\" button in discussions inside channels (keeping the behavior consistent with discussions inside groups).", + "contributors": [ + "matheusbsilva137", + "web-flow", + "tassoevan", + "pierre-lehnen-rc", + "ostjen" + ] + }, + { + "pr": "24310", + "title": "[FIX] Implement client errors on ddp-streamer", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "23963", + "title": "Bump body-parser from 1.19.0 to 1.19.1 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "23961", + "title": "Bump jaeger-client from 3.18.1 to 3.19.0 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24466", + "title": "[FIX] typo on register server tooltip of setup wizard", + "userLogin": "filipemarins", + "milestone": "4.5.0", + "contributors": [ + "filipemarins" + ] + }, + { + "pr": "24037", + "title": "[FIX] Inconsistent validation of user's access to rooms", + "userLogin": "pierre-lehnen-rc", + "contributors": [ + "pierre-lehnen-rc", + "ostjen", + "web-flow" + ] + }, + { + "pr": "24450", + "title": "[FIX] OAuth mismatch redirect_uri error", + "userLogin": "sampaiodiego", + "milestone": "4.4.2", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24305", + "title": "[FIX] Prevent Apps Bridge to remove visitor status from room", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman", + "d-gubert" + ] + }, + { + "pr": "24453", + "title": "Chore: bump fuselage version", + "userLogin": "dougfabris", + "milestone": "4.4.2", + "contributors": [ + "dougfabris" + ] + }, + { + "pr": "24253", + "title": "[FIX] Issues on selecting users when importing CSV", + "userLogin": "guijun13", + "description": "* Fix users selecting by fixing their _id\r\n* Add condition to disable 'Start importing' button if `usersCount`, `channelsCount` and `messageCount` equals 0, or if messageCount is alone\r\n* Remove `disabled={usersCount === 0}` on user Tab", + "contributors": [ + "guijun13", + "tassoevan", + "web-flow", + "pierre-lehnen-rc" + ] + }, + { + "pr": "24299", + "title": "Chore(deps): Bump node-fetch from 2.6.1 to 2.6.7 in /ee/server/services", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24418", + "title": "[FIX] Oembed request not respecting payload limit", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24429", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-02-07Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null, + "sampaiodiego", + "web-flow" + ] + }, + { + "pr": "24407", + "title": "[FIX] Skip cloud steps for registered servers on setup wizard", + "userLogin": "dougfabris", + "milestone": "4.4.1", + "contributors": [ + "dougfabris", + "tassoevan", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24410", + "title": "Chore: Convert JS files to Typescript", + "userLogin": "felipe-rod123", + "description": "This pull request converts 26 more files from Javascript to Typescript, to check variable types and increase validation on the code.", + "contributors": [ + "felipe-rod123", + "ggazzo", + "web-flow" + ] + }, + { + "pr": "24369", + "title": "[IMPROVE] Convert tag edit with department data to tsx", + "userLogin": "LucasFASouza", + "contributors": [ + "LucasFASouza", + "tiagoevanp", + "web-flow" + ] + }, + { + "pr": "24401", + "title": "[FIX] Outgoing webhook without scripts not saving messages", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24334", + "title": "[IMPROVE] CloudLoginModal visual consistency", + "userLogin": "dougfabris", + "description": "### before\r\n![image](https://user-images.githubusercontent.com/27704687/151585064-dc6a1e29-9903-4241-8fbd-dfbe6c55fbef.png)\r\n\r\n### after\r\n![Screen Shot 2022-01-28 at 13 32 02](https://user-images.githubusercontent.com/27704687/151585101-75b98502-9aae-4198-bc3e-4956750e5d8b.png)", + "milestone": "4.5.0", + "contributors": [ + "dougfabris", + "gabriellsh", + "web-flow" + ] + }, + { + "pr": "24409", + "title": "[FIX] Startup errors creating indexes", + "userLogin": "sampaiodiego", + "description": "Fix `bio` and `prid` startup index creation errors.", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24406", + "title": "Chore: Unify ILivechatAgent with ILivechatAgentRecord", + "userLogin": "KevLehman", + "contributors": [ + "KevLehman" + ] + }, + { + "pr": "24381", + "title": "[FIX] Add ?close to OAuth callback url", + "userLogin": "sampaiodiego", + "milestone": "4.4.1", + "contributors": [ + "sampaiodiego" + ] + }, + { + "pr": "24387", + "title": "[FIX] Slash commands previews not working", + "userLogin": "ostjen", + "milestone": "4.4.1", + "contributors": [ + "ostjen" + ] + }, + { + "pr": "24357", + "title": "i18n: Language update from LingoHub ๐Ÿค– on 2022-01-31Z", + "userLogin": "lingohub[bot]", + "contributors": [ + null + ] + }, + { + "pr": "24341", + "title": "Bump simple-get from 4.0.0 to 4.0.1", + "userLogin": "dependabot[bot]", + "contributors": [ + "dependabot[bot]", + "web-flow" + ] + }, + { + "pr": "24366", + "title": "Chore: Set Docker image tag to latest only when really latest", + "userLogin": "debdutdeb", + "contributors": [ + "debdutdeb", + "web-flow" + ] + }, + { + "pr": "24109", + "title": "[IMPROVE] Added a new \"All\" tab which shows all integrations in Integrations", + "userLogin": "aswinidev", + "milestone": "4.5.0", + "contributors": [ + "aswinidev", + "dougfabris", + "web-flow" + ] + }, + { + "pr": "24363", + "title": "Merge master into develop & Set version to 4.5.0-develop", + "userLogin": "sampaiodiego", + "contributors": [ + "sampaiodiego", + "web-flow" + ] + } + ] + }, + "4.5.7": { + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [] + }, + "4.6.4": { + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [] + }, + "4.7.3": { + "node_version": "14.18.3", + "npm_version": "6.14.15", + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [] + }, + "4.7.4": { + "node_version": "14.18.3", + "npm_version": "6.14.15", + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "553", + "title": "Load missed messages from opened rooms when reconnect", + "userLogin": "rodrigok", + "contributors": [ + "rodrigok" + ] + } + ] + }, + "4.8.1": { + "node_version": "14.18.3", + "npm_version": "6.14.15", + "mongo_versions": [ + "3.6", + "4.0", + "4.2", + "4.4", + "5.0" + ], + "pull_requests": [ + { + "pr": "25723", + "title": "[FIX] Wrong argument name preventing Omnichannel Chat Forward to User ", + "userLogin": "dudanogueira", + "milestone": "4.8.1", + "contributors": [ + "dudanogueira" + ] + }, + { + "pr": "25669", + "title": "[FIX] Bump meteor-node-stubs to version 1.2.3", + "userLogin": "Sh0uld", + "description": "With meteor-node-stubs version 1.2.3 a bug was fixed, which occured in issue #25460 and probably #25513 (last one not tested).\r\nFor the issue in meteor see: https://github.com/meteor/meteor/issues/11974", + "milestone": "4.8.1", + "contributors": [ + "Sh0uld", + "ggazzo" + ] + }, + { + "pr": "25708", + "title": "[FIX] AccountBox checks for condition", + "userLogin": "tiagoevanp", + "milestone": "4.8.1", + "contributors": [ + "tiagoevanp" + ] + }, + { + "pr": "25781", + "title": "[FIX] Fix prom-client new promise usage", + "userLogin": "KevLehman", + "milestone": "4.8.1", + "contributors": [ + "KevLehman" + ] + } + ] } } -} +} \ No newline at end of file diff --git a/HISTORY.md b/HISTORY.md index a0e244868ff3..cfe701496c2f 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,4 +1,37 @@ +# 4.8.1 +`2022-06-08 ยท 4 ๐Ÿ› ยท 5 ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป` + +### Engine versions +- Node: `14.18.3` +- NPM: `6.14.15` +- MongoDB: `3.6, 4.0, 4.2, 4.4, 5.0` + +### ๐Ÿ› Bug fixes + + +- AccountBox checks for condition ([#25708](https://github.com/RocketChat/Rocket.Chat/pull/25708)) + +- Bump meteor-node-stubs to version 1.2.3 ([#25669](https://github.com/RocketChat/Rocket.Chat/pull/25669) by [@Sh0uld](https://github.com/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](https://github.com/RocketChat/Rocket.Chat/pull/25781)) + +- Wrong argument name preventing Omnichannel Chat Forward to User ([#25723](https://github.com/RocketChat/Rocket.Chat/pull/25723)) + +### ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป Contributors ๐Ÿ˜ + +- [@Sh0uld](https://github.com/Sh0uld) + +### ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป Core Team ๐Ÿค“ + +- [@KevLehman](https://github.com/KevLehman) +- [@dudanogueira](https://github.com/dudanogueira) +- [@ggazzo](https://github.com/ggazzo) +- [@tiagoevanp](https://github.com/tiagoevanp) + # 4.8.0 `2022-05-31 ยท 16 ๐ŸŽ‰ ยท 13 ๐Ÿš€ ยท 55 ๐Ÿ› ยท 151 ๐Ÿ” ยท 52 ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป`