sdk/v2.23.0
pola-rs/polarssdk/v2.23.0Jul 25, 2026by prastoin
AI Summary
The SDK now serves core and metadata modules via content-addressed URLs for improved browser caching. Non-admin developers can now claim ownership of published npm apps and submit them for marketplace review, and new ViewType enums have been added for dashboard widgets.
Key Highlights
- SDK modules are served via content-addressed URLs, allowing indefinite browser caching.
- Non-admin developers can claim and submit marketplace apps via GitHub OAuth.
- New ViewType enum values (KANBAN_WIDGET and CALENDAR_WIDGET) are available for dashboard widgets.
- A new environment variable allows disabling the npm provenance check for development.
New Features
- Non-admin developers can claim and submit marketplace apps for review.
- New KANBAN_WIDGET and CALENDAR_WIDGET ViewType values available.
Full Release Notes
## 🌟 Highlights - The `twenty-client-sdk` core and metadata modules are now served at content-addressed URLs, letting browsers cache them indefinitely and eliminating a full re-fetch on every render. ([#22981](https://github.com/twentyhq/twenty/pull/22981)) - Non-admin developers can now claim ownership of their published npm apps and submit them for marketplace review directly from the Developer tab using GitHub OAuth. ([#22621](https://github.com/twentyhq/twenty/pull/22621)) - Two new `ViewType` enum values — `KANBAN_WIDGET` and `CALENDAR_WIDGET` — are now available alongside `TABLE_WIDGET` for dashboard view widgets. ([#22963](https://github.com/twentyhq/twenty/pull/22963)) - A new `twenty-sdk` environment variable lets you disable the provenance check, unblocking local development and CI workflows without npm provenance metadata. ([#23155](https://github.com/twentyhq/twenty/pull/23155)) ## ✨ New features - Non-admin developers can claim an unclaimed npm app from the Developer tab via GitHub OAuth against npm provenance, then submit it for marketplace review by a server admin. ([#22621](https://github.com/twentyhq/twenty/pull/22621)) by @martmull - Two new `ViewType` values — `KANBAN_WIDGET` and `CALENDAR_WIDGET` — are available for dashboard view widgets alongside the existing `TABLE_WIDGET`. ([#22963](https://github.com/twentyhq/twenty/pull/22963)) by @FelixMalfait ## 💅 Improvements & UX - Default relations (`timelineActivities`, `attachments`, `noteTargets`, `taskTargets`) are now owned by the metadata engine — the SDK manifest builder no longer provisions them, ensuring consistent behavior across all callers. ([#22882](https://github.com/twentyhq/twenty/pull/22882)) by @prastoin ## 🐛 Bug fixes - Users with the API keys & webhooks permission but not Roles can now create API keys — a new `getApiKeyRoles` query returns only the roles they may assign, fixing a previously unsavable form. ([#23102](https://github.com/twentyhq/twenty/pull/23102)) by @ijreilly ## ⚡ Performance - `twenty-client-sdk` module URLs now embed a SHA-256 checksum, making them content-addressed; browsers cache them as immutable resources and skip the network on subsequent renders. ([#22981](https://github.com/twentyhq/twenty/pull/22981)) by @prastoin ## 🔧 Developer & API - SDK app builds now copy logic-function and front-component source files into the build output alongside compiled artifacts; the install path uses the same file list, with optional source files skipped gracefully. ([#22991](https://github.com/twentyhq/twenty/pull/22991)) by @Weiko - A new environment variable in `twenty-sdk` disables the provenance check, useful for local builds or CI pipelines where npm provenance metadata is absent. ([#23155](https://github.com/twentyhq/twenty/pull/23155)) by @prastoin <details> <summary>🏗️ Internal changes (4)</summary> - Add mostly-empty field hints to data model settings ([#22962](https://github.com/twentyhq/twenty/pull/22962)) by @FelixMalfait - Add auto-upgrade-in-apps ([#23001](https://github.com/twentyhq/twenty/pull/23001)) by @martmull - feat(email-group): communications UX, per-record DNS status ([#23002](https://github.com/twentyhq/twenty/pull/23002)) by @neo773 - chore: bump npm packages to 2.23.0-alpha.1 ([#23084](https://github.com/twentyhq/twenty/pull/23084)) by @prastoin </details> ## 🎉 New contributors - @admin-laicadev made their first contribution in https://github.com/twentyhq/twenty/pull/22880 - @nicoko93 made their first contribution in https://github.com/twentyhq/twenty/pull/22877 - @Gautam5514 made their first contribution in https://github.com/twentyhq/twenty/pull/22496 - @winklemad made their first contribution in https://github.com/twentyhq/twenty/pull/23010 <details> <summary>Full changelog (12 PRs)</summary> - feat(app): allow non-admin developers to claim and list marketplace apps ([#22621](https://github.com/twentyhq/twenty/pull/22621)) by @martmull - System side effect relations ([#22882](https://github.com/twentyhq/twenty/pull/22882)) by @prastoin - Add mostly-empty field hints to data model settings ([#22962](https://github.com/twentyhq/twenty/pull/22962)) by @FelixMalfait - feat: kanban, calendar and group-by table layouts for dashboard view widgets ([#22963](https://github.com/twentyhq/twenty/pull/22963)) by @FelixMalfait - chore: bump version to 2.23.0 ([#22975](https://github.com/twentyhq/twenty/pull/22975)) by @twenty-pr - Cache twenty-client-sdk modules host-side via content-addressed URLs ([#22981](https://github.com/twentyhq/twenty/pull/22981)) by @prastoin - Copy application source files during build and install ([#22991](https://github.com/twentyhq/twenty/pull/22991)) by @Weiko - Add auto-upgrade-in-apps ([#23001](https://github.com/twentyhq/twenty/pull/23001)) by @martmull - feat(email-group): communications UX, per-record DNS status ([#23002](https://github.com/twentyhq/twenty/pull/23002)) by @neo773 - chore: bump npm packages to 2.23.0-alpha.1 ([#23084](https://github.com/twentyhq/twenty/pull/23084)) by @prastoin - Fix: allow API key creation without Roles permission ([#23102](https://github.com/twentyhq/twenty/pull/23102)) by @ijreilly - twenty-sdk env var to disable prov check ([#23155](https://github.com/twentyhq/twenty/pull/23155)) by @prastoin </details> **Full Changelog**: https://github.com/twentyhq/twenty/compare/sdk/v2.22.0...sdk/v2.23.0