v0.55.0

twentyhq/twentyv0.55.0Jun 13, 2025by guillim

AI Summary

This is a significant release with major improvements to permissions V2 (including restrictions, repository overrides, and integration tests), workflow enhancements (side panel integration, form nodes, action fields), and UI/UX refinements (dropdown fixes, filter improvements, infinite loop fixes). The release also includes Node22 upgrade, date format support enhancements, and various email/calendar error handling improvements.

Key Highlights

  • Major permissions V2 improvements including restricted objects handling, repository method overrides, and integration tests
  • Workflow enhancements: side panel integration, form nodes auto-opening, action fields with relations, and diagram fixes
  • UI/UX refinements: dropdown width/height fixes, filter/sort chip improvements, infinite loop fixes, and hotkey scope corrections
  • Technical upgrades: Node22 upgrade, lazy loading improvements, database indices optimization
  • Email/calendar improvements: Gmail error handling, Google scopes handling, calendar failure logging, participant matching

Breaking Changes

  • Deprecated old relations completely (may require migration)
  • Update enums to be all caps (potential naming changes)

New Features

  • Add support for day-first and year-first date formats (DD/MM/YYYY, YYYY/MM/DD)
  • TS vector field filters and search support
  • New tab list feature
  • Add filters to search record action
  • Add relations in workflow action fields
  • Import v2 - add label for subfield in csv export
  • Add empty message for form actions
  • Add fields to database event settings
  • Add filter fields on update record trigger
  • Emit company created event

Full Release Notes

## What's Changed
* Fix find duplicates typing (id -> uuid) by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12301
* Revert "Client config not render blocking (#12300)" by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12302
* filter out 500 errors from sentry-captured errors in FE by @ijreilly in https://github.com/twentyhq/twenty/pull/12307
* fix/replace-set-primary-with-bookmark-12268 by @CodeHawkCraft in https://github.com/twentyhq/twenty/pull/12276
* fix(dropdown): separator width + DropdownHeader height by @AMoreaux in https://github.com/twentyhq/twenty/pull/12285
* Open the executed workflow run in the side panel by @Devessier in https://github.com/twentyhq/twenty/pull/12284
* Commit `index.ts` twenty-ui by @prastoin in https://github.com/twentyhq/twenty/pull/12310
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12312
* Fix last row disappearing when dragging a row in the table by @bosiraphael in https://github.com/twentyhq/twenty/pull/12297
* billing - remove deprecated endpoint by @etiennejouan in https://github.com/twentyhq/twenty/pull/12315
* Add mcp.json to gitignore by @prastoin in https://github.com/twentyhq/twenty/pull/12321
* fix: prevent drag selection from blocking input focus by @ehconitin in https://github.com/twentyhq/twenty/pull/12322
* Update schema and add tests by @thomtrp in https://github.com/twentyhq/twenty/pull/12314
* UNAUTHORIZED gmail error  by @guillim in https://github.com/twentyhq/twenty/pull/12262
* [permissions V2] Throw when objectPermissions not found in datasource by @ijreilly in https://github.com/twentyhq/twenty/pull/12325
* [permissions] Override repository and manager methods #2 by @ijreilly in https://github.com/twentyhq/twenty/pull/11929
* feat: trim empty space by @VK-RED in https://github.com/twentyhq/twenty/pull/12293
* Handle restricted objects #1 refactor permissions map + return object permissions from gql by @Weiko in https://github.com/twentyhq/twenty/pull/12313
* Role page various fixes by @Weiko in https://github.com/twentyhq/twenty/pull/12324
* better logging in order to investigate later one on this kind of error by @guillim in https://github.com/twentyhq/twenty/pull/12326
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12330
* Refactored dropdown content and fixed all dropdown width bugs by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12334
* Add relations in database event trigger output data by @martmull in https://github.com/twentyhq/twenty/pull/11820
* Fix Client Config async loading by @charlesBochet in https://github.com/twentyhq/twenty/pull/12308
* feat: implement dynamic driver configuration + fix integration test log pollution by @ehconitin in https://github.com/twentyhq/twenty/pull/12104
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12341
* Fix view filter update and deletion propagation by @prastoin in https://github.com/twentyhq/twenty/pull/12082
* Left menu and chip links by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12294
* Signed file follow up by @martmull in https://github.com/twentyhq/twenty/pull/12347
* Fix datasource race condition on migrate by @charlesBochet in https://github.com/twentyhq/twenty/pull/12350
* fixing :     "message" : "Mail service not enabled" by @guillim in https://github.com/twentyhq/twenty/pull/12349
* Reverting broken filter from  by @prastoin in https://github.com/twentyhq/twenty/pull/12352
* Fix missing objectRecordsPermissions from the API when permissions v2 is enabled by @Weiko in https://github.com/twentyhq/twenty/pull/12353
* Add fields to database event settings by @thomtrp in https://github.com/twentyhq/twenty/pull/12331
* Fixed IconPicker infinite loop by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12356
* Add filter fields on update record trigger by @thomtrp in https://github.com/twentyhq/twenty/pull/12354
* Automatically open pending form nodes in the side panel by @Devessier in https://github.com/twentyhq/twenty/pull/12332
* Add relations in workflow action fields by @martmull in https://github.com/twentyhq/twenty/pull/12359
* Onboarding - add nextPath logic after email verification by @etiennejouan in https://github.com/twentyhq/twenty/pull/12342
* Fix  members table column alignment by @DivyanshuLohani in https://github.com/twentyhq/twenty/pull/12298
* Update enums to be all caps by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12372
* Fixed kanban filter on kanban field metadata item by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12367
* Fix settings navigation active state for sub-pages by @ehconitin in https://github.com/twentyhq/twenty/pull/12318
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12378
* Fixed non advanced filter creation from table header dropdown by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12369
* fix(client-config): set `isLoaded` to false on API status update by @AMoreaux in https://github.com/twentyhq/twenty/pull/12371
* feat: Add TS vector field filters support by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12376
* Fix hotkey scope in settings by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12387
* Improve lazy loading by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12393
* Add indices on frequent queries by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12401
* [permissions] Remove raw queries and restrict its usage by @ijreilly in https://github.com/twentyhq/twenty/pull/12360
* Fix CI lint server by @charlesBochet in https://github.com/twentyhq/twenty/pull/12406
* skip metadata._typeorm_migrations if they don't exist by @jordan-chalupka in https://github.com/twentyhq/twenty/pull/12398
* Emit company created event by @thomtrp in https://github.com/twentyhq/twenty/pull/12404
* Google-scopes-handling by @guillim in https://github.com/twentyhq/twenty/pull/12362
* Fix auth modal closing hotkey scopes by @bosiraphael in https://github.com/twentyhq/twenty/pull/12407
* Reorder Action Menu Items for Better UX by @jaspass04 in https://github.com/twentyhq/twenty/pull/12408
* Catching temporary errors in microsft batch calls by @guillim in https://github.com/twentyhq/twenty/pull/12409
* Fix edge x position by @martmull in https://github.com/twentyhq/twenty/pull/12410
* adding new error codes to the temporary catch by @guillim in https://github.com/twentyhq/twenty/pull/12366
* Don't overwrite SELECT fields at draft by @bosiraphael in https://github.com/twentyhq/twenty/pull/12413
* Fix stories chromatic by @charlesBochet in https://github.com/twentyhq/twenty/pull/12412
* Add tests on granular settings permissions by @ijreilly in https://github.com/twentyhq/twenty/pull/12403
* Fixed Actor Icon Size & color by @Bonapara in https://github.com/twentyhq/twenty/pull/12373
* Seed update - Replaced Qonto by Anthropic by @Bonapara in https://github.com/twentyhq/twenty/pull/12340
* Forbid upsert of objectPermissions on system objects by @ijreilly in https://github.com/twentyhq/twenty/pull/12382
* Import v2 - add label for subfield in csv export by @etiennejouan in https://github.com/twentyhq/twenty/pull/12355
* Add empty message for form actions by @thomtrp in https://github.com/twentyhq/twenty/pull/12414
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12418
* [permissions] Override workspaceDatasource.createQueryBuilder by @ijreilly in https://github.com/twentyhq/twenty/pull/12415
* Role page various fixes 2 by @Weiko in https://github.com/twentyhq/twenty/pull/12416
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12419
* Fix Invalid input in Track Analytics by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12421
* Remove useless indexes by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12422
* removing webhooks failed  logs by @guillim in https://github.com/twentyhq/twenty/pull/12425
* #12336 adding gmail email sync error handling by @mdvertola in https://github.com/twentyhq/twenty/pull/12383
* fix(packages): shell command built from environment values by @odaysec in https://github.com/twentyhq/twenty/pull/12386
* Fix linter post merge by @charlesBochet in https://github.com/twentyhq/twenty/pull/12430
* Eliminate unnecessary API calls when persisting field by @bosiraphael in https://github.com/twentyhq/twenty/pull/12429
* Feat: add support for day-first and year-first date formats (DD/MM/YYYY, YYYY/MM/DD) by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12333
* better logging of calendar failures by @guillim in https://github.com/twentyhq/twenty/pull/12431
* making sure status is "ONGOING" by @guillim in https://github.com/twentyhq/twenty/pull/12432
* Improved participant matching with additional emails support by @bosiraphael in https://github.com/twentyhq/twenty/pull/12368
* Fix: multi-select default values validation by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12271
* Improve documentation by adding multiple emails support by @bosiraphael in https://github.com/twentyhq/twenty/pull/12435
* 998 workflow restore by @martmull in https://github.com/twentyhq/twenty/pull/12417
* update setup docs - config variables by @ehconitin in https://github.com/twentyhq/twenty/pull/12370
* Fix function input computation in workflow code step by @martmull in https://github.com/twentyhq/twenty/pull/12440
* Fix workflow diagram success edges by @martmull in https://github.com/twentyhq/twenty/pull/12439
* Fix metadata mocks loaded during login issue by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12446
* Fix dropdown z index by @bosiraphael in https://github.com/twentyhq/twenty/pull/12442
* feat: implement TS vector search filter by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12392
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12458
* Begin refactoring AI module by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12464
* add field validation + add other subfields import by @etiennejouan in https://github.com/twentyhq/twenty/pull/12444
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12465
* [FE] handle restricted objects 2 by @Weiko in https://github.com/twentyhq/twenty/pull/12437
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12468
* Fix infinite loop on table load by @charlesBochet in https://github.com/twentyhq/twenty/pull/12474
* Fix ClientConfigProviderEffect infite loop by @bosiraphael in https://github.com/twentyhq/twenty/pull/12472
* Fix Integration test  by @guillim in https://github.com/twentyhq/twenty/pull/12470
* Index-back-into-the-game by @guillim in https://github.com/twentyhq/twenty/pull/12466
* fix(frontend): prevent command menu reopening when clicking the same field by @omarNaifer12 in https://github.com/twentyhq/twenty/pull/12390
* feat: new tab list by @ehconitin in https://github.com/twentyhq/twenty/pull/12384
* fix: favicon when workspace icon is removed by @starlightknown in https://github.com/twentyhq/twenty/pull/12451
* Implemented dropdown menu section label in filter and sort  by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12453
* Fix filter and sort chips in view bar by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12455
* Fix filter sub-field icons by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12456
* Update billing page ctas by @martmull in https://github.com/twentyhq/twenty/pull/12459
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12477
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12478
* Add filters to search record action by @thomtrp in https://github.com/twentyhq/twenty/pull/12481
* Upgrade to Node22 by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12488
* Fix workspace hydratation by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12452
* fix: trigger onClickOutside when click escape for closing the model a… by @AjayAdsule in https://github.com/twentyhq/twenty/pull/12461
* fix: prevent duplicate dropdowns in activity targets when editing in different contexts by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12462
* Stop forwarding the `active` prop for the `TabButton` component by @Devessier in https://github.com/twentyhq/twenty/pull/12501
* chip-count-black-mode by @guillim in https://github.com/twentyhq/twenty/pull/12505
* Fix missing New Note / New Task button  by @ijreilly in https://github.com/twentyhq/twenty/pull/12513
* fix(frontend):Prevent record type select dropdown from opening when viewing a workflow version by @omarNaifer12 in https://github.com/twentyhq/twenty/pull/12495
* Fixed sub-field filter dropdown content and icons by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12516
* modal fix by @guillim in https://github.com/twentyhq/twenty/pull/12514
* Website changes docs playground by @FelixMalfait in https://github.com/twentyhq/twenty/pull/10413
* Fix camel case typo `Orobject` in twenty-orm files by @ahmadzaheer-dev in https://github.com/twentyhq/twenty/pull/12491
* [permissions V2] Add integration tests on relations and objectRecord permissions by @ijreilly in https://github.com/twentyhq/twenty/pull/12450
* Deprecate old relations completely by @charlesBochet in https://github.com/twentyhq/twenty/pull/12482
* update import steps design by @etiennejouan in https://github.com/twentyhq/twenty/pull/12463
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12521

## New Contributors
* @VK-RED made their first contribution in https://github.com/twentyhq/twenty/pull/12293
* @jaspass04 made their first contribution in https://github.com/twentyhq/twenty/pull/12408
* @mdvertola made their first contribution in https://github.com/twentyhq/twenty/pull/12383
* @odaysec made their first contribution in https://github.com/twentyhq/twenty/pull/12386
* @starlightknown made their first contribution in https://github.com/twentyhq/twenty/pull/12451
* @ahmadzaheer-dev made their first contribution in https://github.com/twentyhq/twenty/pull/12491

**Full Changelog**: https://github.com/twentyhq/twenty/compare/v0.54.7...v0.55.0