v0.50.0

twentyhq/twentyv0.50.0Mar 27, 2025by ijreilly

AI Summary

This is a major release (v0.50.0) with significant improvements including the rollout of Permissions V2, removal of the Advanced Filters feature flag making it generally available, enhanced workflow capabilities with form actions and run/step details, and various UI/UX improvements including a new TitleInput component and 'Hide deleted records' action. The release also includes infrastructure improvements to Docker and the twenty-shared build system.

Key Highlights

  • Permissions V2 rollout - enabled for all workspaces with custom role deletion and workspace constraints
  • Advanced Filters feature flag removed - now generally available with various bug fixes
  • Workflow improvements - form actions, step details separation, run/step headers, and workflow placeholders
  • twenty-shared build system refactored with CJS/ESM support and barrel exports
  • New UI components - TitleInput for side panel, 'Hide deleted records' action, and selected count in titles

Breaking Changes

  • Loading prop renamed to isLoading in button component for clarity (refactor)

New Features

  • Permissions V2 with custom role deletion and workspace constraints
  • Advanced filters now generally available (feature flag removed)
  • Workflow form actions and enhanced run/step details display
  • New TitleInput UI component for side panel
  • Edit labels of standard objects
  • Enterprise plan in cloud onboarding
  • Global search replacing search resolvers
  • 'Hide deleted records' action
  • Microsoft mail sync batch size optimization
  • Docker image flexibility improvements

Full Release Notes

## What's Changed
* refactor(ui): simplify workspace dropdown component structure by @AMoreaux in https://github.com/twentyhq/twenty/pull/11040
* refactor(button): rename loading to isLoading for clarity by @AMoreaux in https://github.com/twentyhq/twenty/pull/11058
* fix(settings): adjust custom domain table cell styling by @AMoreaux in https://github.com/twentyhq/twenty/pull/11060
* Fix useFindManyRecords withSoftDeleterFilter by @bosiraphael in https://github.com/twentyhq/twenty/pull/11056
* Give worker access to server volume by @martmull in https://github.com/twentyhq/twenty/pull/11065
* Fix click outside for RecordDetailRelationSection by @ijreilly in https://github.com/twentyhq/twenty/pull/11072
* Separate workflow step details and run step details by @thomtrp in https://github.com/twentyhq/twenty/pull/11069
* Fix role edit page tab instance id by @Weiko in https://github.com/twentyhq/twenty/pull/11074
* [BUGFIX] `GenerateDefaultRecordChipData` returns `RecordChipData` by @prastoin in https://github.com/twentyhq/twenty/pull/11071
* Fix option text deletion in select fields by removing error for empty values by @ehconitin in https://github.com/twentyhq/twenty/pull/11081
* fix/REDIS_URL-has-failed-the-following-constraints-isUrl by @negativeInteger in https://github.com/twentyhq/twenty/pull/11082
* Fix overscroll behavior on dev environment by @bosiraphael in https://github.com/twentyhq/twenty/pull/11080
* Update environment-variables.ts by @robversluis in https://github.com/twentyhq/twenty/pull/11068
* Error invalid link by @etiennejouan in https://github.com/twentyhq/twenty/pull/10288
* Reorder commands by @bosiraphael in https://github.com/twentyhq/twenty/pull/11084
* Fixes on rich text editor by @bosiraphael in https://github.com/twentyhq/twenty/pull/11087
* Fix currency update by @Weiko in https://github.com/twentyhq/twenty/pull/11088
* Microsoft mail sync: make sure that message list fetch is using max batch size by @charlesBochet in https://github.com/twentyhq/twenty/pull/11095
* Update timeline empty state in the side panel by @bosiraphael in https://github.com/twentyhq/twenty/pull/11093
* Reorganized components in advanced filter dropdown by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11089
* Remove useless skelettonLoader by @martmull in https://github.com/twentyhq/twenty/pull/11096
* Fix wrong totalCount in groupBy view by @martmull in https://github.com/twentyhq/twenty/pull/11094
* revert logout button to settings menu by @Weiko in https://github.com/twentyhq/twenty/pull/11097
* Remove hotkey scope from useListenClickOutside by @bosiraphael in https://github.com/twentyhq/twenty/pull/11098
* Sort menu Incorrect padding bottom #11078 by @Nabhag8848 in https://github.com/twentyhq/twenty/pull/11091
* App health check:  Optimize pending migration query by @ehconitin in https://github.com/twentyhq/twenty/pull/11049
* chore(ci): update Tinybird CI workflow by @AMoreaux in https://github.com/twentyhq/twenty/pull/11033
* replace search resolvers by global search in front by @etiennejouan in https://github.com/twentyhq/twenty/pull/11086
* Add enterprise plan in cloud onboarding by @FelixMalfait in https://github.com/twentyhq/twenty/pull/11100
* Execute workflow form action by @thomtrp in https://github.com/twentyhq/twenty/pull/11099
* Improve AppError boundaries by @charlesBochet in https://github.com/twentyhq/twenty/pull/11107
* Various fixes by @charlesBochet in https://github.com/twentyhq/twenty/pull/11108
* fix: update allowed protocols for URL validation in environment variables by @mitesh-gupta in https://github.com/twentyhq/twenty/pull/11104
* [REFACTOR] `twenty-shared` multi barrel and `CJS/ESM` build with `preconstruct` by @prastoin in https://github.com/twentyhq/twenty/pull/11083
* fix: Added ScrollWrapper on Settings Sidebar by @harshit078 in https://github.com/twentyhq/twenty/pull/11106
* logging ids to import by @guillim in https://github.com/twentyhq/twenty/pull/11115
* Fix From Many relation for deleted notes crashing by @charlesBochet in https://github.com/twentyhq/twenty/pull/11117
* clean searchResolvers in server by @etiennejouan in https://github.com/twentyhq/twenty/pull/11114
* Display workflow step header in workflow run input and output tabs by @Devessier in https://github.com/twentyhq/twenty/pull/11102
* [FEAT] Generate barrel export named modules and types by @prastoin in https://github.com/twentyhq/twenty/pull/11110
* Fix bug and refactored advanced filter field selection dropdown by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11103
* Fix relation from many notes by @charlesBochet in https://github.com/twentyhq/twenty/pull/11120
* 608 fix hotkey scope and dropdown issues in the command menu by @bosiraphael in https://github.com/twentyhq/twenty/pull/11121
* [CD][FIX] Copy twenty-shared patch by @prastoin in https://github.com/twentyhq/twenty/pull/11123
* [FIX] Move preconstruct patch into twenty-shared package by @prastoin in https://github.com/twentyhq/twenty/pull/11124
* [FIX] Dockerfile copy prettierrc by @prastoin in https://github.com/twentyhq/twenty/pull/11129
* Update workflow run step by @thomtrp in https://github.com/twentyhq/twenty/pull/11125
* Add see runs and see workflows actions by @bosiraphael in https://github.com/twentyhq/twenty/pull/11131
* Allow to edit labels of standard objects by @AFCMS in https://github.com/twentyhq/twenty/pull/10922
* Update delete record message by @bosiraphael in https://github.com/twentyhq/twenty/pull/11132
* fix(auth): prevent workspace creation on signup with password with no authorized user + fix 10982 by @AMoreaux in https://github.com/twentyhq/twenty/pull/11128
* [permissions V2] Upsert object and setting permissions by @ijreilly in https://github.com/twentyhq/twenty/pull/11119
* Fix created by filter dropdown that appears on other filter types. by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11126
* fix MailboxConcurrency And email format without @ by @guillim in https://github.com/twentyhq/twenty/pull/11133
* [FIX] `twenty-shared` build on window even `wsl` by @prastoin in https://github.com/twentyhq/twenty/pull/11130
* Fix record page title focus by @bosiraphael in https://github.com/twentyhq/twenty/pull/11145
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11152
* Option-menu-v2-input by @guillim in https://github.com/twentyhq/twenty/pull/11116
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11155
* Fix lambda iam by @martmull in https://github.com/twentyhq/twenty/pull/11163
* Various design fixes on side panel by @bosiraphael in https://github.com/twentyhq/twenty/pull/11165
* [FIX] Compute custom datname in `entrypoint.sh` by @prastoin in https://github.com/twentyhq/twenty/pull/11148
* fixed workspace tabs not working in admin panel by @ehconitin in https://github.com/twentyhq/twenty/pull/11164
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11170
* Allow empty string for primary link by @thomtrp in https://github.com/twentyhq/twenty/pull/11171
* fix(auth): handle missing workspaceId in auth service by @AMoreaux in https://github.com/twentyhq/twenty/pull/11173
* fix billing issues by @etiennejouan in https://github.com/twentyhq/twenty/pull/11160
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11175
* Overwrite standard translations by @FelixMalfait in https://github.com/twentyhq/twenty/pull/11134
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11177
* Advanced filters bug bash by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11178
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11181
* Fix no timeline for opportunities by @FelixMalfait in https://github.com/twentyhq/twenty/pull/11186
* [ENH] `UseActionMenuEntries` optimization by @prastoin in https://github.com/twentyhq/twenty/pull/11183
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11188
* [permissions] Enable permissions V1 for all workspaces by @ijreilly in https://github.com/twentyhq/twenty/pull/11172
* Do not suspend onboarding workspaces after stripe hook and add cron to delete them after 7 days by @Weiko in https://github.com/twentyhq/twenty/pull/11189
* [permissions V2] Custom role deletion  by @ijreilly in https://github.com/twentyhq/twenty/pull/11187
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11190
* Add workspace constraint on defaultRoleId and activationStatus by @ijreilly in https://github.com/twentyhq/twenty/pull/11191
* New TitleInput UI component for side panel by @bosiraphael in https://github.com/twentyhq/twenty/pull/11192
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11197
* Create 'Hide deleted records' action by @bosiraphael in https://github.com/twentyhq/twenty/pull/11198
* Add selected number to title by @thomtrp in https://github.com/twentyhq/twenty/pull/11200
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11201
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11204
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11207
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11209
* Fix deactivate objects impacts by @charlesBochet in https://github.com/twentyhq/twenty/pull/11185
* [CHORE] Enable workspace version validation on upgrade for next release by @prastoin in https://github.com/twentyhq/twenty/pull/11211
* Feature/add flexibility to docker image makefile by @pmckeown in https://github.com/twentyhq/twenty/pull/11210
* chore(analytics): remove tinybird by @AMoreaux in https://github.com/twentyhq/twenty/pull/11146
* fix: improve settings menu spacing by moving logout into last section by @joaobenedetmachado in https://github.com/twentyhq/twenty/pull/11202
* fix: adjust padding for icon button in Data model visualizer by @b9aurav in https://github.com/twentyhq/twenty/pull/11180
* Fixed the 'Extra space on GroupBy option menu'  by @MahdadGhasemian in https://github.com/twentyhq/twenty/pull/11179
* fix: View switcher should close after view switch by @Nabhag8848 in https://github.com/twentyhq/twenty/pull/11154
* Fix field options not updatable anymore by @charlesBochet in https://github.com/twentyhq/twenty/pull/11213
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11214
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11215
* CSV Import translations and dark mode fixes by @FelixMalfait in https://github.com/twentyhq/twenty/pull/11184
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/11216
* Removing advanced filter feature flag by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11219
* better error handling for messaging import in case of unknown error by @guillim in https://github.com/twentyhq/twenty/pull/11228
* Fix missing positionInRecordFilterGroup in applyFilter legacy logic by @lucasbordeau in https://github.com/twentyhq/twenty/pull/11230
* Option-menu-switch-table-kanban by @guillim in https://github.com/twentyhq/twenty/pull/11167
* Fix workflow placeholders and icons by @thomtrp in https://github.com/twentyhq/twenty/pull/11222
* Design fixes on show page by @bosiraphael in https://github.com/twentyhq/twenty/pull/11221
* Move MigrationRelations command out of 0.50 -> 0.51 by @ijreilly in https://github.com/twentyhq/twenty/pull/11234

## New Contributors
* @negativeInteger made their first contribution in https://github.com/twentyhq/twenty/pull/11082
* @robversluis made their first contribution in https://github.com/twentyhq/twenty/pull/11068
* @mitesh-gupta made their first contribution in https://github.com/twentyhq/twenty/pull/11104
* @AFCMS made their first contribution in https://github.com/twentyhq/twenty/pull/10922
* @pmckeown made their first contribution in https://github.com/twentyhq/twenty/pull/11210
* @joaobenedetmachado made their first contribution in https://github.com/twentyhq/twenty/pull/11202
* @MahdadGhasemian made their first contribution in https://github.com/twentyhq/twenty/pull/11179

**Full Changelog**: https://github.com/twentyhq/twenty/compare/v0.44.9...v0.50.0