github twentyhq/twenty twenty/v2.17.0

7 hours ago

What's Changed

  • update readme file for meeting bot by @ehconitin in #22069
  • chore: bump version to 2.17.0 by @twenty-pr[bot] in #22088
  • feat(billing): invoice on seat increase by @etiennejouan in #22083
  • fix(email-settings): enable independent message folder and subfolder selection by @rish106-hub in #21853
  • Reduce published twenty-ui npm package size by @bosiraphael in #22087
  • feat(front): add search to the language picker by @FelixMalfait in #22095
  • rename twenty meeting bot to call recorder by @ehconitin in #22093
  • fix: update skill to fit requirements by @rashad in #22097
  • i18n - docs translations by @github-actions[bot] in #22102
  • chore(apps): move public apps to packages/twenty-apps/public and generalize CI workflow by @martmull in #22096
  • Add backend primitive to credit a workspace's billing balance by @bosiraphael in #22094
  • docs: rewrite billing credits page to clarify credit value and usage by @FelixMalfait in #22099
  • chore(deps): bump react-error-boundary from 4.0.13 to 4.1.2 by @dependabot[bot] in #22105
  • chore(deps-dev): bump @storybook/addon-a11y from 10.4.1 to 10.4.6 by @dependabot[bot] in #22103
  • chore(deps): bump @e2b/code-interpreter from 2.6.0 to 2.6.1 by @dependabot[bot] in #22106
  • chore(deps): bump @nestjs/schedule from 6.1.0 to 6.1.3 by @dependabot[bot] in #22112
  • chore(deps): bump @sentry/react from 10.51.0 to 10.60.0 by @dependabot[bot] in #22111
  • chore(deps): bump @scalar/api-reference-react from 0.9.46 to 0.9.48 by @dependabot[bot] in #22115
  • Enforce server route app configuration requirements by @martmull in #22091
  • fix(server): scope server-route target dispatch to the resolver's application by @martmull in #22101
  • Update workspace domain card layout by @Bonapara in #22108
  • chore: disable dependabot version-update PRs by @charlesBochet in #22119
  • chore(deps): bump @ai-sdk/mistral from 3.0.39 to 3.0.40 by @dependabot[bot] in #22117
  • chore(deps-dev): bump @storybook/addon-docs from 10.3.4 to 10.4.6 by @dependabot[bot] in #22110
  • fix(website): force-dynamic partner profiles to stop OpenNext 404 cache by @rashad in #22120
  • chore: replace vite-tsconfig-paths with resolve.tsconfigPaths by @parshipcy in #22100
  • fix(ux): input error messages no longer overlap adjacent fields in forms by @emmanuelhb56 in #21886
  • i18n - docs translations by @github-actions[bot] in #22122
  • Add v2 create-workspace onboarding screen by @bosiraphael in #22075
  • fix(server): dispatch each cron trigger exactly once by @charlesBochet in #22113
  • Close side panel after command menu actions by @Bonapara in #22118
  • Update TypeScript moduleResolution to bundler by @martmull in #22127
  • chore(apps): move call-recorder to public, remove stale meeting-bot duplicate by @ehconitin in #22132
  • docs(user-guide): remove unsupported Between operator for Date filters by @luizgabrielnaoseioq in #22136
  • feat(billing): clarify subscription, credits, and add-credits sections by @FelixMalfait in #22126
  • feat(billing): embed credit card form in the add-card trial-end modal by @FelixMalfait in #22125
  • i18n - docs translations by @github-actions[bot] in #22142
  • fix(sdk): render CLI OAuth success page on localhost (twenty dev) by @martmull in #22131
  • fix(billing): widen embedded add-card modal and align its buttons by @FelixMalfait in #22141
  • chore(website): remove partners marketplace route lint guard by @rashad in #22121
  • fix(server): skip defaultValue null check for relation/morph fields on update by @abhinavapasok in #21875
  • fix(client-sdk): bundle metadata client into a single self-contained file by @prastoin in #22085
  • chore(create-twenty-app): align scaffold with unified app test/lint/typecheck configs by @martmull in #22128
  • Rework website FilesVisual to match twenty-front files tab by @mabdullahabaid in #22147
  • fix(calendar): mark channel completed on no-events fetch by @neo773 in #22137
  • feat(apps): let front components open a record in the side panel by @FelixMalfait in #22140
  • rename sync-completion methods to avoid confusion with stage setters by @neo773 in #22138
  • chore(call-recorder): drop FAILED status schema bridge by @ehconitin in #22134
  • fix(sdk): evict compiled manifest modules from require cache in dev mode by @martmull in #22129
  • fix(ci): retry Danger.js on transient GitHub API fetch errors by @charlesBochet in #22151
  • i18n - docs translations by @github-actions[bot] in #22154
  • Rework website EmailsVisual to match twenty-front emails tab by @mabdullahabaid in #22146
  • fix(server): allow moving menu items into a folder created in the same sync by @martmull in #22130
  • Tidy website ImportVisual markup and CSS by @mabdullahabaid in #22148
  • Rework website TasksVisual to match twenty-front tasks tab by @mabdullahabaid in #22143
  • i18n - website translations by @github-actions[bot] in #22158
  • Split website stepper into home-stepper and product-stepper sections by @mabdullahabaid in #22149
  • feat(applications): remove the application custom settings tab by @martmull in #22156
  • i18n - website translations by @github-actions[bot] in #22160
  • IMAP support non RFC compliant servers by @neo773 in #22153
  • fix: stabilize tooltip anchor ID with useRef to prevent hover glitch by @emmanuelhb56 in #21888
  • i18n - website translations by @github-actions[bot] in #22162
  • v1.1.16 — Restore Partner slug in side panel and Notes tab by @rashad in #22165
  • Support CSS imports in front-components via runtime style injection by @bosiraphael in #22150
  • API key creation triggers unnecessary ORMEntityMetadatas cache recomputation by @Weiko in #22168
  • Feat: group records by many to one relation by @abdulrahmancodes in #22123
  • Flatten system object pickers by @Bonapara in #22161
  • fix(ci): patch danger to decline gzip, fixing ERR_STREAM_PREMATURE_CLOSE on Node 24 by @charlesBochet in #22171
  • fix(filter): resolve filter-derived date defaults with Temporal (fixes create/update crash in date-filtered views) by @charlesBochet in #22124
  • fix mobile side panel close by @Weiko in #22169
  • call recorder polishes by @ehconitin in #22170
  • Forward parent commits to Argos visual regression dispatch by @bosiraphael in #22174
  • fix(ask-ai): resolve stream subscription race condition on new thread… by @Akash5908 in #21916
  • fix(docs): correct typos in multiple files by @kylenngu135 in #22173
  • [BREAKING CHANGE] remove call recording feature flag and backfill upgrade command for existing command menu items navigation command by @ehconitin in #22176
  • Fix source icon SVG ID collisions by @Bonapara in #22177
  • fix(front): wrap long note/markdown text on mobile browsers by @ak800i in #21909
  • call recorder readme billing update by @ehconitin in #22184
  • feat(messaging): skip webhook-active channels in list-fetch crons until sync is stale by @neo773 in #22183
  • Call recorder readme nitpick by @ehconitin in #22185
  • Add command menu items to people data labs by @martmull in #22180
  • i18n - docs translations by @github-actions[bot] in #22189
  • fix(server): wrap file storage upsert and read in transaction by @alibildir in #21924
  • fix(server): preserve anyFieldFilterValue in view manifest sync by @parshipcy in #22004
  • Fix threaded draft email replies by @Bonapara in #22175
  • Add logging on sync catalog job by @martmull in #22192
  • fix: uneven spacing in date picker calendar grid by @parshipcy in #21881
  • feat(billing): replace Stripe trial emails with fair, well-timed reminders by @FelixMalfait in #22186
  • [Workflows] Allow iterator to take whole item as variable by @ijreilly in #22031
  • fix: relative date picker calendar display by @parshipcy in #21895
  • fix(twenty-front): apply object type translations to details panel relation labels by @Manibharadwaj in #22090
  • Reorder validation execution to match migration action order by @martmull in #22200
  • Frameless ProductStepper with twenty-front-faithful scenes by @mabdullahabaid in #22197
  • Set record card header height and calendar spacing by @Bonapara in #22187
  • i18n - website translations by @github-actions[bot] in #22203
  • fix(ai-chat) - improvements by @etiennejouan in #22193
  • fix: hide "Create Workspace" button when multi-workspace is disabled by @Akash5908 in #22202
  • Add v2 onboarding loading screen while creating workspace by @bosiraphael in #22152
  • Use settings icon in settings drawer tab by @Bonapara in #22204
  • Bump call-recorder and people-data-lab apps by @martmull in #22208
  • Fix settings page root overflow by @Bonapara in #22207
  • Bump call-recorder and people-data-lab apps by @martmull in #22213
  • Fix rounded page layout tab edit outline by @Bonapara in #22214
  • Fix favorite showing non-readable objects by @Weiko in #22217
  • feat(messaging): link emails by Reply-To as a REPLY_TO participant by @neo773 in #22216
  • Add v2 onboarding import contacts page and unify the onboarding v2 shell by @bosiraphael in #22212
  • fix(ai-chat): keep streams alive on silent SSE death + make the stream job idempotent by @FelixMalfait in #22201
  • Fix navigation opened section spacing by @Bonapara in #22222
  • fix(workflow): avoid 'file not found' when duplicating unbuilt code steps by @Weiko in #22179
  • fix(website): polish product hero AI transition (panel reveal timing + title wrapping) by @mabdullahabaid in #22223
  • feat(website): show partner location instead of served regions in marketplace by @FelixMalfait in #22224
  • Add author to twenty apps by @martmull in #22226
  • Add v2 onboarding create profile page by @bosiraphael in #22221
  • fix: stamp MCP and AI Agent writes with FieldActorSource.AGENT by @Amresh-01 in #22215
  • Update public app names by @martmull in #22228
  • feat(website): rebuild dashboard visual faithful to twenty-front by @mabdullahabaid in #22218
  • Add backfill installation feature for pre-installed apps by @martmull in #22199
  • feat(website): swap product Demo for a register Signoff; make signoff headings width-driven by @mabdullahabaid in #22232
  • fix(ai) - fixes by @etiennejouan in #22227
  • i18n - website translations by @github-actions[bot] in #22225
  • i18n - website translations by @github-actions[bot] in #22234
  • chore: sync AI model catalog from models.dev by @github-actions[bot] in #22242
  • feat(website): menu adapts to the section beneath it by @mabdullahabaid in #22241
  • ci(preview-env): run preview environments on free ci-public Actions by @FelixMalfait in #22245
  • feat: create calendar events on Google and Microsoft accounts by @FelixMalfait in #22231
  • i18n - website translations by @github-actions[bot] in #22244
  • perf: cap to-many relation records per parent and inline chips in table by @FelixMalfait in #22206
  • feat(website): rework the product-stepper Layout visual by @mabdullahabaid in #22249
  • feat(dpa): self-serve Data Processing Agreement generator by @FelixMalfait in #22243
  • feat(server): resolve app-owned metadata translations at runtime by @FelixMalfait in #22235
  • feat(twenty-sdk): extract & compile app translations into the manifest by @FelixMalfait in #22236

New Contributors

Full Changelog: twenty/v2.16.0...twenty/v2.17.0

Don't miss a new twenty release

NewReleases is sending notifications on new releases.