Skip to content

twenty

vtwenty/v2.18.0 Breaking

This release includes 2 breaking changes for platform teams planning a safe upgrade.

Published 25d Productivity & Wikis
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

crm crm-system customer graphql javascript marketing
+8 more
monorepo nestjs postgresql react reactjs sales typescript web

Summary

AI summary

Broad release touches server, fix, website, and chore.

Full changelog

What's Changed

  • feat(website): ship all documentation locales (multi-locale site) by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22257
  • fix(website): config-only Crowdin pull to match short-code catalogs by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22262
  • chore: bump version to 2.18.0 by @twenty-pr[bot] in https://github.com/twentyhq/twenty/pull/22256
  • i18n - website translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22263
  • i18n - website translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22264
  • fix(website): bump @opennextjs/cloudflare to 1.20.0 (R2 deploy on Node 24) by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22266
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22271
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22273
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22276
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22279
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22280
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22281
  • fix: ignore IME composition Enter in chat-thread and attachment rename inputs by @greymoth-jp in https://github.com/twentyhq/twenty/pull/22270
  • fix(server): dedupe in-flight application translation catalog loads by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22285
  • fix(ai-tools): make navigate_app tool schema a valid object root for direct model binding by @etiennejouan in https://github.com/twentyhq/twenty/pull/22284
  • feat(ai): reliable bulk data import via code-interpreter by @etiennejouan in https://github.com/twentyhq/twenty/pull/22209
  • fix: Vite 8/Rolldown build warnings in library packages by @parshipcy in https://github.com/twentyhq/twenty/pull/22205
  • feat(helm): add nodeSelector, tolerations and DNS overrides to server and worker by @mhorcajada in https://github.com/twentyhq/twenty/pull/22233
  • Add v2 onboarding invite team page by @bosiraphael in https://github.com/twentyhq/twenty/pull/22229
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22296
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22297
  • fix: prevent crash when leaving dashboard edit mode with side panel open by @Weiko in https://github.com/twentyhq/twenty/pull/22292
  • microsoft webhook ttl fix by @neo773 in https://github.com/twentyhq/twenty/pull/22300
  • Add marketplace catalog synchronization to admin panel by @martmull in https://github.com/twentyhq/twenty/pull/22260
  • chore(docs): exclude code blocks and icon frontmatter from Crowdin translation by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/22304
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22307
  • fix(server): normalize legacy index names (command) by @ijreilly in https://github.com/twentyhq/twenty/pull/22053
  • Move filter group destruction after filter operations by @Souheyl7Gouadria in https://github.com/twentyhq/twenty/pull/22248
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22317
  • Add call recorder oom diagnosis logs by @ehconitin in https://github.com/twentyhq/twenty/pull/22315
  • fix: evict js-yaml 3.x via front-matter patch + scoped resolutions by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22312
  • fix(server): add workspaceMember jobTitle field without view-field side effects by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22306
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22319
  • Polish settings page titles and admin tables by @Bonapara in https://github.com/twentyhq/twenty/pull/22305
  • v2 onboarding: dedicated verify step and upgrade-free-trial as the last step by @bosiraphael in https://github.com/twentyhq/twenty/pull/22303
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22329
  • fix: improve native print output for dashboards and record tables by @vittolago in https://github.com/twentyhq/twenty/pull/22272
  • feat(server): resolve app translations across remaining metadata resolvers by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22237
  • chore(docs): self-clean orphans and surface failed languages in i18n … by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/22278
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22335
  • fix(front): mark stale AnimatePresence exit page inert so it can't intercept clicks by @Weiko in https://github.com/twentyhq/twenty/pull/22328
  • bump call recorder by @ehconitin in https://github.com/twentyhq/twenty/pull/22318
  • fix: reconcile metadata store after object creation so activity targets on new custom objects link correctly by @etiennejouan in https://github.com/twentyhq/twenty/pull/22331
  • ci(twenty-front): show only failing unit tests in CI by @prastoin in https://github.com/twentyhq/twenty/pull/22345
  • feat(call-recorder): use workspace logo for Recall bot image by @ehconitin in https://github.com/twentyhq/twenty/pull/22302
  • feat(server): configurable HTTP keep-alive/headers timeouts to prevent proxy 502s by @charlesBochet in https://github.com/twentyhq/twenty/pull/22327
  • Deprecate asExpression from field metadata search_vector by @prastoin in https://github.com/twentyhq/twenty/pull/22287
  • Remove twenty-ui reexport from the SDK and use twenty-ui directly by @bosiraphael in https://github.com/twentyhq/twenty/pull/22326
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22350
  • chore: sync DPA sub-processors from trust center by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22282
  • fix(navigation-menu-item): reject PAGE_LAYOUT items that don't reference a STANDALONE_PAGE layout by @etiennejouan in https://github.com/twentyhq/twenty/pull/22343
  • feat(messaging): sync draft emails and edit them in the thread composer by @neo773 in https://github.com/twentyhq/twenty/pull/22178
  • i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22352
  • Fix v2 onboarding dropping to v1 after connecting email by @bosiraphael in https://github.com/twentyhq/twenty/pull/22351
  • fix(server): recreate searchVector GIN index on rebuild by @prastoin in https://github.com/twentyhq/twenty/pull/22349
  • Clear orphan search field metadata backfill tsVectorFieldMetadataId by @prastoin in https://github.com/twentyhq/twenty/pull/22353
  • v1.2.0 — Client brief intake (marketplace B2) by @rashad in https://github.com/twentyhq/twenty/pull/22290
  • Track total onboarding free credits in an atom by @bosiraphael in https://github.com/twentyhq/twenty/pull/22348
  • Credit the import-contacts onboarding reward on account connection by @bosiraphael in https://github.com/twentyhq/twenty/pull/22354
  • feat(server): add 2.18 recompute-search-vectors upgrade command by @prastoin in https://github.com/twentyhq/twenty/pull/22355
  • Credit workspaces for onboarding invite-team signups by @bosiraphael in https://github.com/twentyhq/twenty/pull/22309
  • improve dry run logs: show entity names and changed fields by @ijreilly in https://github.com/twentyhq/twenty/pull/22299
  • Update workflows documentation by @ijreilly in https://github.com/twentyhq/twenty/pull/22356

New Contributors

  • @greymoth-jp made their first contribution in https://github.com/twentyhq/twenty/pull/22270
  • @mhorcajada made their first contribution in https://github.com/twentyhq/twenty/pull/22233
  • @vittolago made their first contribution in https://github.com/twentyhq/twenty/pull/22272

Full Changelog: https://github.com/twentyhq/twenty/compare/twenty/v2.17.0...twenty/v2.18.0

Breaking Changes

  • Removed `asExpression` from field metadata search_vector.
  • Removed twenty-ui reexport from the SDK; use twenty-ui directly.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track twenty

Get notified when new releases ship.

Sign up free

About twenty

Building a modern alternative to Salesforce, powered by the community.

All releases →

Related context

Earlier breaking changes

  • vtwenty/v2.20.0 Deprecate `fieldMetadata` and `objectMetadata` standardOverrides.
  • vtwenty/v2.13.0 Gate record creation on isUICreatable only, decoupled from isSystem.
  • vtwenty/v2.13.0 Rename isUIReadOnly to isUIEditable and add isUICreatable, affecting app developers.
  • vtwenty/v2.12.0 Deprecate isCustom for Objects and Fields.
  • vtwenty/v2.12.0 Deprecate dummy enterprise key (2/2).

Beta — feedback welcome: [email protected]