Twenty
The open alternative to Salesforce, designed for AI
Alternative to: salesforce, hubspot, pipedrive, zoho crm
About
Versions (86)
v1.17.0
2026-02-18What’s Changed
- Add prometheus exporter by @thomtrp in https://github.com/twentyhq/twenty/pull/17392
- Fix event logic for soft-delete and restore by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17393
- Change
formatResultto return string instead ofDateobject forDATE_TIMEby @lucasbordeau in https://github.com/twentyhq/twenty/pull/17407 - fix(twenty-server): add SSRF protection to webhook requests by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17403
- fix(twenty-server): preserve input order in createMany response by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17412
- fix: refresh virtualized table when field metadata is updated ( #16388 ) by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/17214
- docs: align type import guidelines with ESLint configuration by @kratisinghh in https://github.com/twentyhq/twenty/pull/17275
- Migrate attachments to morph relations + fix morph join column filtering by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17381
- Fix the default value of search record if the filter is boolean type by @araj00 in https://github.com/twentyhq/twenty/pull/17297
[Debug log level]Print validation build result failure by @prastoin in https://github.com/twentyhq/twenty/pull/17423- feat: fix junction toggle persistence and add type-safe documentation paths by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17421
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17424
- Fix upgrade command order
backfillStandardPageLayoutsCommandby @prastoin in https://github.com/twentyhq/twenty/pull/17430 - i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17426
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17433
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17434
- Add front component widget by @bosiraphael in https://github.com/twentyhq/twenty/pull/17440
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17443
- Invalidate flat cache command by @prastoin in https://github.com/twentyhq/twenty/pull/17442
- [Fix] Bug with one to many update in table #16340 by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/17416
[OBJECT_CACHE_FLUSH_REQUIRED_WHEN_RELEASED]RemoveFlatObjectMetadatacustomfieldMetadataIdsfk aggregator property by @prastoin in https://github.com/twentyhq/twenty/pull/17438- [TYPES]
UniversalEntityJsonbPropertyandSerializedRelationby @prastoin in https://github.com/twentyhq/twenty/pull/17396 - fix: prevent record title reset on focus for notes and tasks by @Richman018 in https://github.com/twentyhq/twenty/pull/17439
- Backfill
ownerstandard field check collidingjoinColumnNameby @prastoin in https://github.com/twentyhq/twenty/pull/17449 - fix isCalendarFieldReadOnly function to check if calender field is re… by @Mazen-Saeed in https://github.com/twentyhq/twenty/pull/17319
- IMAP fix edge case of nested folder filtering of unwanted folders by @neo773 in https://github.com/twentyhq/twenty/pull/17428
- Use pipeline to count event stream by @thomtrp in https://github.com/twentyhq/twenty/pull/17450
- Implement sync in dev mode by @martmull in https://github.com/twentyhq/twenty/pull/17405
- fix: update calendar setup CTA to ‘Finish Setup’ with floppy icon by @Bonapara in https://github.com/twentyhq/twenty/pull/17464
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17468
- Integrate NavigationMenuItem with feature flag support by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17268
- Invalidate and flush cache post 1.16 upgrade by @prastoin in https://github.com/twentyhq/twenty/pull/17465
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17469
- Add upgrade to org plan card to RLS by @Weiko in https://github.com/twentyhq/twenty/pull/17455
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17472
- docs: add example output after creating postgres role by @TomLarson20 in https://github.com/twentyhq/twenty/pull/17451
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17473
- Fix “Level: Error serverlessFunctionPayloads.map is not a function” error by @ijreilly in https://github.com/twentyhq/twenty/pull/17474
- Fixed plain object in field value for workflow by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17470
- Activate Record Page Layouts flag by default by @Devessier in https://github.com/twentyhq/twenty/pull/17467
- UpdateTaskOnDeleteActionCommand - Add logs by @etiennejouan in https://github.com/twentyhq/twenty/pull/17479
- Patch
formatResultto pass Date object through by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17483 - [Dashboards] Fix page layout navigation edit mode sync by @ehconitin in https://github.com/twentyhq/twenty/pull/17478
- Introduce webhook v2 by @charlesBochet in https://github.com/twentyhq/twenty/pull/17456
- Implement dev mode nice UI by @martmull in https://github.com/twentyhq/twenty/pull/17471
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17485
- Encrypt/decrypt app secret variables by @ijreilly in https://github.com/twentyhq/twenty/pull/17394
- Backfill webhooks universal and application by @charlesBochet in https://github.com/twentyhq/twenty/pull/17486
- [Fix] display current object label in morph relation picker after rename 2/2 by @ijreilly in https://github.com/twentyhq/twenty/pull/17484
- Add WorkspaceAuthContextMiddleware by @Weiko in https://github.com/twentyhq/twenty/pull/17487
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17481
- Nested serialized relation property by @prastoin in https://github.com/twentyhq/twenty/pull/17490
- Migrate cron, databaseEventTrigger, httpRoute triggers to serverless functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17488
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17493
- fix message channels stuck in ONGOING by @neo773 in https://github.com/twentyhq/twenty/pull/17492
- fix: use universalIdentifier to identify the field in migrate-attachment-to-morph-relations by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17444
- 2081 extensibility publish cli tools and update doc with recent changes by @martmull in https://github.com/twentyhq/twenty/pull/17495
- Fix internal app by @martmull in https://github.com/twentyhq/twenty/pull/17496
- Add delete and restore event handling for table and board by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17489
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17499
- Rename serverlessFunction to logicFunction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17494
- Clean up and enhance logging for messaging and calendar by @neo773 in https://github.com/twentyhq/twenty/pull/17498
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17500
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17501
- self host 1.16 logs debug by @prastoin in https://github.com/twentyhq/twenty/pull/17510
- Fix error “No widget found in canvas layout” by @Devessier in https://github.com/twentyhq/twenty/pull/17512
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17502
- Display Fields widgets title by @Copilot in https://github.com/twentyhq/twenty/pull/17518
- Fix AI chat infinite loading shimmer on empty workspace by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17521
[REQUIRES_FULL_CACHE_FLUSH_WHEN_RELEASED]RefactorFlatEntityto beUniversalFlatEntitysuperset by @prastoin in https://github.com/twentyhq/twenty/pull/17452- Front component rendering by @bosiraphael in https://github.com/twentyhq/twenty/pull/17482
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17528
- [Bug] Fix broken variables for database event by @thomtrp in https://github.com/twentyhq/twenty/pull/17526
- Fix: time format issue in datepicker mask by @vasu1303 in https://github.com/twentyhq/twenty/pull/16922
- Refactor WorkspaceAuthContext to use discriminated union types by @Weiko in https://github.com/twentyhq/twenty/pull/17491
- Bump @prettier/sync from 0.5.3 to 0.5.5 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17536
- Bump psl from 1.9.0 to 1.15.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17535
- feat: Add bulk input mode for select options #5539 by @eni4sure in https://github.com/twentyhq/twenty/pull/17459
- 2162 Add asset watcher in twenty-sdk dev mode by @martmull in https://github.com/twentyhq/twenty/pull/17513
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17538
- fix: standardize billing price display to integers when necessary by @iampraiez in https://github.com/twentyhq/twenty/pull/17445
- File storage refactor - Switch to applicationUniversalIdentifier by @etiennejouan in https://github.com/twentyhq/twenty/pull/17541
- App logic function as step by @thomtrp in https://github.com/twentyhq/twenty/pull/17525
- [Fix] Various typeError fixes by @ijreilly in https://github.com/twentyhq/twenty/pull/17508
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17542
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17545
- Record page layout edition frontend by @Devessier in https://github.com/twentyhq/twenty/pull/17519
- Fix
UpdateTaskOnDeleteActionCommandorder and simplify by @prastoin in https://github.com/twentyhq/twenty/pull/17527 - Refactor
deleteobjectMetadataaction type and handler to be workspace agnostic by @prastoin in https://github.com/twentyhq/twenty/pull/17530 - i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17546
- Files v2 - FILES field update/create in common API by @etiennejouan in https://github.com/twentyhq/twenty/pull/17400
- Update pageLayout* data models for backend recordPageLayout refactor by @Weiko in https://github.com/twentyhq/twenty/pull/17446
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17558
- Fix React warnings for custom props on styled DOM elements by @Copilot in https://github.com/twentyhq/twenty/pull/17553
- Remove redundant label by @Devessier in https://github.com/twentyhq/twenty/pull/17563
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17565
[REQUIRES_CACHE_FLUSH_FOR_FIELD_AND_OBJECT]``FlatFieldMetadataandFlatObjectMetadatarequired universal by @prastoin in https://github.com/twentyhq/twenty/pull/17557- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17568
- Improve API + set functions in state by @thomtrp in https://github.com/twentyhq/twenty/pull/17560
- Add standard record page layout by @Weiko in https://github.com/twentyhq/twenty/pull/17567
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17549
- fix: lodash has prototype pollution vulnerability in _.unset and _.omit functions by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17551
- Remove versions from logicFunction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17540
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17577
- fix: replacement of a substring with itself by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17497
- handle HTTP 400, 500, 502, 504 in parseMicrosoftMessagesImportError by @neo773 in https://github.com/twentyhq/twenty/pull/17509
- Files - Delete command by @etiennejouan in https://github.com/twentyhq/twenty/pull/17576
- Files Field - Add new controller by @etiennejouan in https://github.com/twentyhq/twenty/pull/17561
- Add border bottom to display organization plan features by @BOHEUS in https://github.com/twentyhq/twenty/pull/17422
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17578
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17579
- [FRONT COMPONENTS] Build front components from twenty apps for remote dom by @bosiraphael in https://github.com/twentyhq/twenty/pull/17566
- Refactor workflow to use new functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17552
- Patch the postgres db url while using an external resource enabling a… by @larron in https://github.com/twentyhq/twenty/pull/17431
- Update manifest structure by @martmull in https://github.com/twentyhq/twenty/pull/17547
- Unit test back vscode task by @prastoin in https://github.com/twentyhq/twenty/pull/17583
- Workflow Send Email Node Multiple Recipients Support by @neo773 in https://github.com/twentyhq/twenty/pull/17458
- Added option to prevent sending requests to twenty-icons by @BOHEUS in https://github.com/twentyhq/twenty/pull/16723
- Improve email onboarding step by @BOHEUS in https://github.com/twentyhq/twenty/pull/17427
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17584
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17585
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17586
- feat: CommandMenuItem entity and FrontComponent support in command menu by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17555
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17590
- [GroupBy] Fix order by date granularity by @ijreilly in https://github.com/twentyhq/twenty/pull/17573
- Fix SSE for workflow show page by @thomtrp in https://github.com/twentyhq/twenty/pull/17582
- fix: prevent default object re-selection in relation field form by @claytonlin1110 in https://github.com/twentyhq/twenty/pull/17313
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17591
- [Apps] Apps marketplace (first draft) by @ijreilly in https://github.com/twentyhq/twenty/pull/17562
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17592
- Rework logic function module by @charlesBochet in https://github.com/twentyhq/twenty/pull/17588
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17593
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17594
- fix: allow board column tag to shrink so aggregate value remains visible by @bitloi in https://github.com/twentyhq/twenty/pull/17372
- Keep simplifying logic functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17595
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17597
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17599
- [Dashboards] Replace nivo bar chart with custom canvas bar chart by @ehconitin in https://github.com/twentyhq/twenty/pull/17441
- Add Claude Code GitHub Workflow by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17615
- feat: add cross-repo Claude dispatch from core-team-issues by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17616
- fix: force Claude Code to use Opus model by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17618
- Fix: Favorite records not showing in sidebar by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17614
- Revert “fix: prevent default object re-selection in relation field fo… by @ijreilly in https://github.com/twentyhq/twenty/pull/17619
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17620
- Handle SSE event stream reconnection by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17523
- feat: lazy dev env setup for Claude CI workflow by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17621
- [FRONT COMPONENTS] Move to twenty-sdk by @bosiraphael in https://github.com/twentyhq/twenty/pull/17587
ObjectMetadataandFieldMetadataagnostic workspace migration runner by @prastoin in https://github.com/twentyhq/twenty/pull/17572- fix: move Claude allowed tools to claude_args by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17625
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17626
- Update discord link by @Bonapara in https://github.com/twentyhq/twenty/pull/17627
- [Dashboards] Auto focus effect on standalone widget by @ehconitin in https://github.com/twentyhq/twenty/pull/17623
- fix: Claude workflow — prevent bot self-cancellation and add CI permissions by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17628
- Differentiate edit mode behavior for record pages vs dashboards by @Copilot in https://github.com/twentyhq/twenty/pull/17550
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17634
[FIXES_MAIN]RemoveobjectMetadatastandardIdby @prastoin in https://github.com/twentyhq/twenty/pull/17632- chore: replace depot.dev runners with GitHub-hosted runners by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17641
- fix: increase Claude max turns to 200 and add missing bash tools by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17642
- Fix creation of objects with acronym names (e.g. “O&J”) by @ijreilly in https://github.com/twentyhq/twenty/pull/17633
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17650
- Fix build docker image error by @bosiraphael in https://github.com/twentyhq/twenty/pull/17649
- Silent errors on code step build by @thomtrp in https://github.com/twentyhq/twenty/pull/17651
- Migrate workflow serverless to logic by @charlesBochet in https://github.com/twentyhq/twenty/pull/17646
[BREAKING_CHANGE]Deprecate remaining entitiesstandardIdby @prastoin in https://github.com/twentyhq/twenty/pull/17639- fix: increase performance test thresholds for GitHub Actions runners by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17656
- fix: use red3 for dark mode danger background color by @Bonapara in https://github.com/twentyhq/twenty/pull/17658
- Allow twenty standard app to access messaging items by @ijreilly in https://github.com/twentyhq/twenty/pull/17659
- Upload files instead ofsources by @martmull in https://github.com/twentyhq/twenty/pull/17608
- Fix spaces in code step + suggestion overflow by @thomtrp in https://github.com/twentyhq/twenty/pull/17664
- fix: increase RelationToOneFieldDisplay perf threshold to 0.4ms by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17671
- Improve cache-clear behavior by @charlesBochet in https://github.com/twentyhq/twenty/pull/17662
- Fix code container display by @thomtrp in https://github.com/twentyhq/twenty/pull/17666
- fix: increase findByText timeout for lazy-loaded DateTimePicker tests by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17672
- [FRONT COMPONENTS] Frontend component widget creation by @ehconitin in https://github.com/twentyhq/twenty/pull/17653
- [Dashboard] fix rich text widget bugs + text selection in non edit mode by @ehconitin in https://github.com/twentyhq/twenty/pull/17624
- Disable initial animation in Toggle component by @Copilot in https://github.com/twentyhq/twenty/pull/17648
- Upgrade application model by @charlesBochet in https://github.com/twentyhq/twenty/pull/17673
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17678
- Add position to page layout widgets by @Weiko in https://github.com/twentyhq/twenty/pull/17643
- Scaffold Fields widget edition by @Copilot in https://github.com/twentyhq/twenty/pull/17548
- Remote dom twenty UI POC by @bosiraphael in https://github.com/twentyhq/twenty/pull/17652
- Refactor flat entity maps to be universal oriented by @prastoin in https://github.com/twentyhq/twenty/pull/17665
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17682
- feat: make feature flag image optional by @Devessier in https://github.com/twentyhq/twenty/pull/17679
- Publish twenty packages by @martmull in https://github.com/twentyhq/twenty/pull/17676
- Fix message/calendar channels stuck with null syncStageStartedAt by @neo773 in https://github.com/twentyhq/twenty/pull/17684
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17688
- Trigger refetch workflow on version creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17685
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17689
- Backfill package json for custom and standard app by @charlesBochet in https://github.com/twentyhq/twenty/pull/17681
- Migrate gmail fetch by batch to library by @neo773 in https://github.com/twentyhq/twenty/pull/17514
- i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17692
- Migrate noteTarget and taskTarget to Morph. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17476
- Fix twenty sdk build by @martmull in https://github.com/twentyhq/twenty/pull/17696
- Remove logic function layer by @charlesBochet in https://github.com/twentyhq/twenty/pull/17697
- Fetch soft-deleted records in Record Page Layouts by @Devessier in https://github.com/twentyhq/twenty/pull/17698
- fix: prevent anonymous users from bypassing workspace creation restriction by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17635
- fix(workspace-cache): memory leak in deleteFromLocalCache by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17686
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17704
- Billing - Fix inactivity by @etiennejouan in https://github.com/twentyhq/twenty/pull/17703
- Files v2 - File table migration + data migration command by @etiennejouan in https://github.com/twentyhq/twenty/pull/17661
- [FRONT COMPONENTS] Expose twenty UI in twenty sdk by @bosiraphael in https://github.com/twentyhq/twenty/pull/17645
- Files field - add files field display and input + filtering by @etiennejouan in https://github.com/twentyhq/twenty/pull/17637
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17706
- Fix build without nx build by @martmull in https://github.com/twentyhq/twenty/pull/17700
- feat: audit Logs by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17660
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17708
- Put SSE in lab by @thomtrp in https://github.com/twentyhq/twenty/pull/17709
- [FRONT COMPONENT] Stories in twenty-sdk for front component generation and upon render interactivity by @ehconitin in https://github.com/twentyhq/twenty/pull/17675
- Add real time image by @thomtrp in https://github.com/twentyhq/twenty/pull/17710
- Refactor workspace migration update action by @prastoin in https://github.com/twentyhq/twenty/pull/17701
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17712
- Improve qualification of rest errors by @ijreilly in https://github.com/twentyhq/twenty/pull/17629
- [fix] Some fixes by @ijreilly in https://github.com/twentyhq/twenty/pull/17674
- Fix twenty sdk build 3 by @martmull in https://github.com/twentyhq/twenty/pull/17715
- fix: use TwentyConfigService instead of ConfigService for ENTERPRISE_KEY by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17721
- Display “Not shared” indicator for RLS-restricted relation fields by @Weiko in https://github.com/twentyhq/twenty/pull/17713
- Fix typeorm internal query builder missing twenty internal context by @Weiko in https://github.com/twentyhq/twenty/pull/17719
- exclude Gmail category labels only for system folders by @neo773 in https://github.com/twentyhq/twenty/pull/17640
- Refactor workflow-logic-function-interaction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17699
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17724
- Bump @cyntler/react-doc-viewer from 1.17.0 to 1.17.1 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17727
- Front components communication between host and remote by @bosiraphael in https://github.com/twentyhq/twenty/pull/17716
- Fix note/task target creation to support morph relations by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17734
- fix: fast-xml-parser has rangeerror dos numeric entities bug by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17732
- Refactor twenty-sdk folder stucture by @bosiraphael in https://github.com/twentyhq/twenty/pull/17733
- Fixed SSE connection retry infinite loop by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17723
- fix: update lockfile for twenty CLI bin path change by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17739
- Fix twenty sdk build by @martmull in https://github.com/twentyhq/twenty/pull/17729
- Bump drizzle-kit from 0.31.5 to 0.31.8 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17725
- fix: set isActive=true in morph migration & add system fields toggle by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17736
- Improve workflow crons by @thomtrp in https://github.com/twentyhq/twenty/pull/17720
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17743
- Never display broken relations in record page layouts by @Devessier in https://github.com/twentyhq/twenty/pull/17738
- Add lock on version creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17740
- Fix twenty sdk build 5 by @martmull in https://github.com/twentyhq/twenty/pull/17744
- Add gauge for awaiting jobs by @thomtrp in https://github.com/twentyhq/twenty/pull/17747
- fix: use real founder headshots in seed data by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17749
- Files v2 - Use Files field in attachment by @etiennejouan in https://github.com/twentyhq/twenty/pull/17707
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17751
- Allow filtering by page layout type and fetch more fields by @Devessier in https://github.com/twentyhq/twenty/pull/17750
- fix: add command to fix morph relation field name mismatches by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17757
-
- fixed coloring of item type tag in dark mode by @Lakshayyy-m in https://github.com/twentyhq/twenty/pull/17745
- Fix twenty-emails build by @Weiko in https://github.com/twentyhq/twenty/pull/17760
- Fix CSV preview duplicate key warning (#10920) by @bugisthegod in https://github.com/twentyhq/twenty/pull/17754
- Migrate favorites to navigation menu items (1.17 upgrade) by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17477
- Fix iterator creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17763
- Spread in parent and requires
FlatEntity.__universalby @prastoin in https://github.com/twentyhq/twenty/pull/17753 - Store record page layouts in a global state by @Devessier in https://github.com/twentyhq/twenty/pull/17759
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17768
- Fix record page layout BE by @Weiko in https://github.com/twentyhq/twenty/pull/17758
- Validate timezone input in group-by date queries by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17777
- Rename REFRESH_TOKEN_COOL_DOWN to REFRESH_TOKEN_REUSE_GRACE_PERIOD and anchor the grace window by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17782
- Centralize outbound HTTP requests through SecureHttpClientService by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17779
- Remove unused GraphQL throttler plugin and graphql-rate-limit dependency by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17785
- Add token type validation and remove dead code in JWT verification by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17784
- Add sync front component by @Weiko in https://github.com/twentyhq/twenty/pull/17748
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17789
- Fix Cloudflare webhook guard validation logic by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17780
- Fix importing people with mixed-case domain URL failing to match company by @bugisthegod in https://github.com/twentyhq/twenty/pull/17774
- Harden local file storage driver path resolution by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17783
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17790
- Reorganize logic function files by @martmull in https://github.com/twentyhq/twenty/pull/17766
- fix: webpack related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17792
- feat: improve AI chat - system prompt, tool output, context window display by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17769
- Flush cache before and after upgrade for self-hosts by @ijreilly in https://github.com/twentyhq/twenty/pull/17800
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17803
- [FRONT COMPONENTS] Navigate from the remote by @bosiraphael in https://github.com/twentyhq/twenty/pull/17762
- Fix file constraint migration by @charlesBochet in https://github.com/twentyhq/twenty/pull/17796
- Resolve tar related dependabot alerts in the application-layer. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17801
- [FRONT COMPONENTS] Create Icon component in twenty ui by @bosiraphael in https://github.com/twentyhq/twenty/pull/17797
- Redesign AI chat and add pre-existing prompts. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17787
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17804
- Use backend types in Record Page Layouts’ frontend by @Devessier in https://github.com/twentyhq/twenty/pull/17794
- Serve frontend components by @Weiko in https://github.com/twentyhq/twenty/pull/17798
- Fix captcha validation failing due to missing URL in secure axios adapter by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17807
- [FRONT COMPONENTS] Serialize events through the worker boundary by @bosiraphael in https://github.com/twentyhq/twenty/pull/17767
- [Fix] fix relations in apps by @ijreilly in https://github.com/twentyhq/twenty/pull/17791
- Allow AI to update code steps by @thomtrp in https://github.com/twentyhq/twenty/pull/17761
- Migrate
Views-xxxIndexFieldObjectSkillto be fully universal ( all actions and metadata runner and builder ) + all metadata update actions runner by @prastoin in https://github.com/twentyhq/twenty/pull/17687 - i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17817
- Migrate metrics to prometheus by @charlesBochet in https://github.com/twentyhq/twenty/pull/17810
- [FRONT COMPONENTS] Retrieve the front components from the backend by @bosiraphael in https://github.com/twentyhq/twenty/pull/17813
- Release Twenty SDK 0.5.0 by @charlesBochet in https://github.com/twentyhq/twenty/pull/17818
- Fix RLS creation logic by @Weiko in https://github.com/twentyhq/twenty/pull/17815
- Add handling for internal_failure in Gmail API error parser by @neo773 in https://github.com/twentyhq/twenty/pull/17718
- Improve AI-chat design to match the one provided in Figma by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17816
- releasing RLS by @Weiko in https://github.com/twentyhq/twenty/pull/17809
- [Fix] fix timelineActivities on notes and tasks by @ijreilly in https://github.com/twentyhq/twenty/pull/17814
- Show accounts with pending message channel configuration by @neo773 in https://github.com/twentyhq/twenty/pull/17770
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17820
- Google OAuth check real permissions before creating channels by @neo773 in https://github.com/twentyhq/twenty/pull/17714
- fix: axios related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17821
- fix: set a margin even for empty side-column widgets by @Devessier in https://github.com/twentyhq/twenty/pull/17806
- fix: remove axios stale entry by ensuring transitive version of axios is also latest by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17823
-
- Added accomodation of mobile navigation bar in command menu by @Lakshayyy-m in https://github.com/twentyhq/twenty/pull/17419
- Remove the code of old show pages by @Devessier in https://github.com/twentyhq/twenty/pull/17811
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17830
- Extract SecureHttpClientService into its own module by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17828
- Fix downgrade to Pro CTA icon and wording by @Bonapara in https://github.com/twentyhq/twenty/pull/17829
- Remove standard ids by @prastoin in https://github.com/twentyhq/twenty/pull/17833
- Fix ci + improvements by @martmull in https://github.com/twentyhq/twenty/pull/17795
- Fix row-level permissions ‘Where’ left spacing by @Bonapara in https://github.com/twentyhq/twenty/pull/17831
- revert releasing RLS (#17809) by @Weiko in https://github.com/twentyhq/twenty/pull/17832
- Clarify forms usage by @BOHEUS in https://github.com/twentyhq/twenty/pull/17772
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17835
- Query cache instead of database for event listener webhook, logicFunction, triggers by @charlesBochet in https://github.com/twentyhq/twenty/pull/17824
- Migrate all remaining workspace migration create action to universal by @prastoin in https://github.com/twentyhq/twenty/pull/17836
- [DASHBOARDS] chat agent improvements + new validation layer by @ehconitin in https://github.com/twentyhq/twenty/pull/17722
- i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17838
- SSO - Check if assertion is signed by @thomtrp in https://github.com/twentyhq/twenty/pull/17837
- Fix blocknote.map crash with generic field-level RICH_TEXT_V2 handler by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17834
- Fix commands order for v1.17.0 by @ijreilly in https://github.com/twentyhq/twenty/pull/17839
New Contributors
- @kratisinghh made their first contribution in https://github.com/twentyhq/twenty/pull/17275
- @Richman018 made their first contribution in https://github.com/twentyhq/twenty/pull/17439
- @Mazen-Saeed made their first contribution in https://github.com/twentyhq/twenty/pull/17319
- @TomLarson20 made their first contribution in https://github.com/twentyhq/twenty/pull/17451
- @vasu1303 made their first contribution in https://github.com/twentyhq/twenty/pull/16922
- @eni4sure made their first contribution in https://github.com/twentyhq/twenty/pull/17459
- @iampraiez made their first contribution in https://github.com/twentyhq/twenty/pull/17445
- @larron made their first contribution in https://github.com/twentyhq/twenty/pull/17431
- @claytonlin1110 made their first contribution in https://github.com/twentyhq/twenty/pull/17313
Full Changelog: https://github.com/twentyhq/twenty/compare/v1.16.0…v1.17.0