Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 4.1.0 #23581

Merged
merged 94 commits into from Oct 28, 2021
Merged

Release 4.1.0 #23581

merged 94 commits into from Oct 28, 2021

Conversation

sampaiodiego
Copy link
Member

2021-10-27 · 1 🎉 · 4 🚀 · 25 🐛 · 38 🔍 · 23 👩‍💻👨‍💻

Engine versions

  • Node: 12.22.1
  • NPM: 6.14.1
  • MongoDB: 3.6, 4.0, 4.2, 4.4, 5.0
  • Apps-Engine: 1.28.0

🎉 New features

  • Stream to get individual presence updates (#22950)

🚀 Improvements

  • Add markdown to custom fields in user Info (#20947 by @yash-rajpal)

    Added markdown to custom fields to render links

  • Allow Omnichannel to handle huge queues (#23392)

  • Make Livechat Instructions setting multi-line (#23515)

    Since now we're supporting markdown text on this field (via this PR - [FIX] Issues on Custom Livechat messages Rocket.Chat.Livechat#648), it would be nice to make this setting multiline so users can have more space to edit the text
    image

  • optimized groups.listAll response time (#22941)

    groups.listAll endpoint was having performance issues, specially when the total number of groups was high. This happened because the endpoint was loading all objects in memory then using splice to paginate, instead of paginating beforehand.

    Considering 70k groups, this was the performance improvement:

    before
    image

    after
    image

🐛 Bug fixes

  • APPS: Communication problem when updating and uninstalling apps in cluster (#23418)

    • Make the hook responsible for receiving app update events inside a cluster fetch the app's package (zip file) in the correct place.

    • Also shows a warning message on uninstalls inside a cluster. As there are many servers writing to the same place, some race conditions may occur. This prevents problems related to terminating the process in the middle due to errors being thrown and leaving the server in a faulty state.

  • ENTERPRISE: Omnichannel agent is not leaving the room when a forwarded chat is queued (#23404)

  • Admins can't update or reset user avatars when the "Allow User Avatar Change" setting is off (#23228)

    • 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.
  • Attachment buttons overlap in mobile view (#23377 by @Aman-Maheshwari)

  • Avoid last admin deactivate itself (#22949)

    Co-authored-by: @Kartik18g

  • BigBlueButton integration error due to missing file import (#23366 by @wolbernd)

    Fixes BigBlueButton integration

  • Delay start of email inbox (#23521)

  • imported migration v240 (#23374)

  • LDAP not stoping after wrong password (#23382)

  • Markdown quote message style (#23462)

    Before:
    image

    After:
    image

  • MONGO_OPTIONS being ignored for oplog connection (#23314 by @cuonghuunguyen)

  • MongoDB deprecation link (#23381)

  • OAuth login not working on mobile app (#23541)

  • Omni-Webhook's retry mechanism going in infinite loop (#23394)

  • Prevent starting Omni-Queue if Omnichannel is disabled (#23396)

    Whenever the Routing system setting changes, and omnichannel is disabled, then we shouldn't start the queue.

  • Queue error handling and unlocking behavior (#23522)

  • Read only description in team creation (#23213)

    image

    image

  • resumeToken not working (#23379)

  • Rewrite missing webRTC feature (#23172)

  • SAML Users' roles being reset to default on login (#23411)

    • Remove roles field update on insertOrUpdateSAMLUser function;

    • Add SAML syncRoles event;

  • Server crashing when Routing method is not available at start (#23473)

  • unwanted toastr error message when deleting user (#23372)

  • useEndpointAction replace by useEndpointActionExperimental (#23469)

  • user/agent upload not working via Apps Engine after 3.16.0 (#23393)

    Fixes File uploading by App returns unexpected error  #22974

  • Users' roles and type being reset to default on LDAP DataSync (#23378)

    • Update roles and type fields only if they are specified in the data imported from LDAP (otherwise, no changes are applied).
🔍 Minor changes
  • Bump url-parse from 1.4.7 to 1.5.3 (#23376 by @dependabot[bot])

  • Bump: fuselage 0.30.1 (#23391)

  • Chore: clean README (#23342 by @AbhJ)

  • Chore: Document REST API endpoints (banners) (#23361)

    Describes endpoints for banners on REST API using a JSDoc annotation compatible with OpenAPI spec.

  • Chore: Document REST API endpoints (DNS) (#23405)

    Describes endpoints for DNS on REST API using a JSDoc annotation compatible with OpenAPI spec.

  • Chore: Document REST API endpoints (E2E) (#23430)

    Describes endpoints for end-to-end encryption on REST API using a JSDoc annotation compatible with OpenAPI spec.

  • Chore: Document REST API endpoints (Misc) (#23428)

    Describes miscellaneous endpoints on REST API using a JSDoc annotation compatible with OpenAPI spec.

  • Chore: Ensure all permissions are created up to this point (#23514)

  • Chore: Fix some TS warnings (#23524)

  • Chore: Fixed a Typo in 11-admin.js test (#23355 by @badbart)

  • Chore: Improve watch OAuth settings logic (#23505)

    Just prevent to perform 200 deletions for registers that not even exist

  • Chore: Make omnichannel settings dependent on omnichannel being enabled (#23495)

  • Chore: Migrate some React components/hooks to TypeScript (#23370)

    Just low-hanging fruits.

  • Chore: Move addMinutesToADate helper (#23490)

  • Chore: Move isEmail helper (#23489)

  • Chore: Move isJSON helper (#23491)

  • Chore: Move components away from /app/ (#23360)

    We currently do NOT recommend placing React components under /app.

  • Chore: Partially migrate 2FA client code to TypeScript (#23419)

    Additionally, hides toastr behind an module to handle UI's toast notifications.

  • Chore: Remove dangling README file (#23385)

    Removes the elderly server/restapi/README.md.

  • Chore: Replace promises helper (#23488)

  • Chore: Startup Time (#23210)

    The settings logic has been improved as a whole.

    All the logic to get the data from the env var was confusing.

    Setting default values was tricky to understand.

    Every time the server booted, all settings were updated and callbacks were called 2x or more (horrible for environments with multiple instances and generating a turbulent startup).

    Settings.get(......, callback); was deprecated. We now have better methods for each case.

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

  • Chore: Update Livechat Package (#23523)

  • Chore: Update pino and pino-pretty (#23510)

  • Chore: Upgrade Storybook (#23364)

  • i18n: Language update from LingoHub 🤖 on 2021-10-18Z (#23486)

  • Merge master into develop & Set version to 4.1.0-develop (#23362)

  • Regression: Debounce call based on params on omnichannel queue dispatch (#23577)

  • Regression: Fix enterprise setting validation (#23519)

  • Regression: Fix user typings style (#23511)

  • Regression: Mail body contains undefined text (#23552)

    Before

    image

    After

    image

  • Regression: Prevent settings from getting updated (#23556)

  • Regression: Prevent Settings Unit Test Error (#23506)

  • Regression: Routing method not available when called from listeners at startup (#23568)

  • Regression: Settings order (#23528)

  • Regression: Waiting_queue setting not being applied due to missing module key (#23531)

  • Regression: watchByRegex without Fibers (#23529)

  • Update the community open call link in README (#23497)

👩‍💻👨‍💻 Contributors 😍

👩‍💻👨‍💻 Core Team 🤓

sampaiodiego and others added 30 commits October 4, 2021 15:38
* Document /api/v1/banners.getNew

* Document /api/v1/banners/{id}

* Document /api/v1/banners and remove its development-mode operations

* Rectify schema of responses

* Document /api/v1/banners.dismiss and remove redundant try-catch block

* Use success and failure schemas
* Move thread-related components

* Move E2E modals

* Move TooltipComponent
* optimized groups.listAll

* Wipe deprecated helper method out

Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
* Convert ErrorBoundary

* Move createToken helper

* Convert UTCClock

* Convert Backdrop

* Convert Logo

* Convert LocalTime

* Convert NotAuthorizedPage

* Convert PageSkeleton
* check if user exists when accessing canViewAllInfo

* Explicitly return null

Co-authored-by: Tasso Evangelista <tasso.evangelista@rocket.chat>
…nc (#23378)

Co-authored-by: Diego Sampaio <chinello@gmail.com>
* Document /api/v1/me

* Document /api/v1/stdout.queue
* Document /api/v1/e2e.setRoomKeyID

* Document /api/v1/e2e.setUserPublicAndPrivateKeys

* Document /api/v1/e2e.updateGroupKey
* Document /api/v1/dns.resolve.srv

* Document /api/v1/dns.resolve.txt

* Fix indentation
…rwarded chat is queued (#23404)

* [FIX][EE] Omni agent is not leaving the room when a forwarded chat is queued

* Apply suggestions from code review

* Apply suggestions from code review
KevLehman and others added 23 commits October 20, 2021 23:40
Co-authored-by: Diego Sampaio <chinello@gmail.com>
Co-authored-by: dougfabris <devfabris@gmail.com>
@sampaiodiego sampaiodiego requested review from a team October 28, 2021 02:50
@lgtm-com
Copy link

lgtm-com bot commented Oct 28, 2021

This pull request fixes 1 alert when merging 1cd901e into 803e9cf - view on LGTM.com

fixed alerts:

  • 1 for Implicit operand conversion

@sampaiodiego sampaiodiego merged commit 0da143c into master Oct 28, 2021
@sampaiodiego sampaiodiego deleted the release-4.1.0 branch October 28, 2021 03:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet