3216b634a30236d6519cd3370cd4f61ba765b8aa
432
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
3216b634a3 |
feat: improve AI chat - system prompt, tool output, context window display (#17769)
⚠️ **AI-generated PR — not ready for review** ⚠️ cc @FelixMalfait --- ## Changes ### System prompt improvements - Explicit skill-before-tools workflow to prevent the model from calling tools without loading the matching skill first - Data efficiency guidance (default small limits, use filters) - Pluralized `load_skill` → `load_skills` for consistency with `load_tools` ### Token usage reduction - Output serialization layer: strips null/undefined/empty values from tool results - Lowered default `find_*` limit from 100 → 10, max from 1000 → 100 ### System object tool generation - System objects (calendar events, messages, etc.) now generate AI tools - Only workflow-related and favorite-related objects are excluded ### Context window display fix - **Bug**: UI compared cumulative tokens (sum of all turns) against single-request context window → showed 100% after a few turns - **Fix**: Track `conversationSize` (last step's `inputTokens`) which represents the actual conversation history size sent to the model - New `conversationSize` column on thread entity with migration ### Workspace AI instructions - Support for custom workspace-level AI instructions --------- Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> |
||
|
|
6c7c389785 |
fix: webpack related dependabot alerts (#17792)
Resolves [Dependabot Alert 422](https://github.com/twentyhq/twenty/security/dependabot/422) and [Dependabot Alert 423](https://github.com/twentyhq/twenty/security/dependabot/423). |
||
|
|
0473efcef0 |
Bump drizzle-kit from 0.31.5 to 0.31.8 (#17725)
Bumps [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) from 0.31.5 to 0.31.8. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/drizzle-team/drizzle-orm/releases">drizzle-kit's releases</a>.</em></p> <blockquote> <h2>drizzle-kit@0.31.8</h2> <h3>Bug fixes</h3> <ul> <li>Fixed <code>algorythm</code> => <code>algorithm</code> typo.</li> <li>Fixed external dependencies in build configuration.</li> </ul> <h2>drizzle-kit@0.31.6</h2> <h3>Bug fixes</h3> <ul> <li><a href="https://redirect.github.com/drizzle-team/drizzle-orm/issues/2853">[BUG]: Importing drizzle-kit/api fails in ESM modules</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/c445637df39366bcf47b12601896ce851771c1c2"><code>c445637</code></a> Merge pull request <a href="https://redirect.github.com/drizzle-team/drizzle-orm/issues/5095">#5095</a> from drizzle-team/main-workflows</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/e7b3aaa26456b88cd23a7843ebc95b3bddde1ba4"><code>e7b3aaa</code></a> Merge branch 'main' into main-workflows</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/0d885a54ddafd8717f8610cf3d2899f3eef61e65"><code>0d885a5</code></a> refactor: Update condition for run-feature job to improve clarity and functio...</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/45a1ffbcbfdd96772d0aba7d9e43744db2dce471"><code>45a1ffb</code></a> Merge pull request <a href="https://redirect.github.com/drizzle-team/drizzle-orm/issues/5087">#5087</a> from drizzle-team/main-workflows</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/6357645bd33b1f444e1d081769dd4b71c3de31f8"><code>6357645</code></a> chore: Comment out NEON_HTTP_CONNECTION_STRING requirement in release workflows</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/53dec98a936f549d0cc2e668f19db3a2df842f51"><code>53dec98</code></a> refactor: Simplify release router workflow by removing unnecessary switch job...</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/ce88a181e03d8b9b3fd0b62c93cc1faa05b0e000"><code>ce88a18</code></a> Merge remote-tracking branch 'origin/ext-deps-kit' into main-workflows</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/5c8a4c508b36813599e6de891166a6888720a307"><code>5c8a4c5</code></a> +</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/73e2ea486f6781bc7bfd2c287590d9c96e319b51"><code>73e2ea4</code></a> feat: Add release router workflow to manage feature and latest releases</li> <li><a href="https://github.com/drizzle-team/drizzle-orm/commit/378b0432d549441fa61de200589a790f1171b6fe"><code>378b043</code></a> Merge pull request <a href="https://redirect.github.com/drizzle-team/drizzle-orm/issues/5002">#5002</a> from drizzle-team/main-next-pack</li> <li>Additional commits viewable in <a href="https://github.com/drizzle-team/drizzle-orm/compare/drizzle-kit@0.31.5...drizzle-kit@0.31.8">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for drizzle-kit since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abdullah <125115953+mabdullahabaid@users.noreply.github.com> |
||
|
|
de5764ede0 |
Fix twenty sdk build (#17729)
- remove worksapce:* dependencies from published packages - Use common tsconfig.ts in create-twenty-app - Increase version to 0.4.4 |
||
|
|
f899804db3 |
fix: update lockfile for twenty CLI bin path change (#17739)
## Summary The lockfile had a stale reference to `dist/cli/index.cjs` but the twenty CLI bin was changed to `dist/cli.cjs`. This was causing CI to fail with: ``` YN0028: - twenty: dist/cli/index.cjs YN0028: + twenty: dist/cli.cjs YN0028: The lockfile would have been modified by this install, which is explicitly forbidden. ``` This PR updates the lockfile to match the new path. |
||
|
|
60f2a74bf0 |
fix: fast-xml-parser has rangeerror dos numeric entities bug (#17732)
Resolves [Dependabot Alert 412](https://github.com/twentyhq/twenty/security/dependabot/412). AWS SDK minor-releases are backward compatible. |
||
|
|
f733f30b62 |
Bump @cyntler/react-doc-viewer from 1.17.0 to 1.17.1 (#17727)
Bumps [@cyntler/react-doc-viewer](https://github.com/cyntler/react-doc-viewer) from 1.17.0 to 1.17.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/cyntler/react-doc-viewer/releases"><code>@cyntler/react-doc-viewer</code>'s releases</a>.</em></p> <blockquote> <h2>v1.17.1</h2> <ul> <li>style: prettier fix tr.json (2392605)</li> <li>Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/305">#305</a> from wangyinyuan/main (36029ea)</li> <li>Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/297">#297</a> from ysaribulut/feature/turkish-translation (fa591ca)</li> <li>fix: correct Chinese and special characters display in HTML renderer (c358c9d)</li> <li>Update README.md (e6fe4e0)</li> <li>feat: add Turkish translations (4066963)</li> <li>Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/290">#290</a> from Pespiri/main (c6ded83)</li> <li>fix styled components prop pollution (5bd551a)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/955795bca8bb5c81f76674321a019ef4f838f307"><code>955795b</code></a> Release 1.17.1</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/239260507647a0ac282a45960ac8d7e01b35bbaf"><code>2392605</code></a> style: prettier fix tr.json</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/36029ea39c28b2a90adc605d46a45265f14ddc16"><code>36029ea</code></a> Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/305">#305</a> from wangyinyuan/main</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/fa591caf45e819f125efe979b34ec753362176a3"><code>fa591ca</code></a> Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/297">#297</a> from ysaribulut/feature/turkish-translation</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/c358c9d103beaafb1dded42fd142f2ede9482598"><code>c358c9d</code></a> fix: correct Chinese and special characters display in HTML renderer</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/e6fe4e089ba869f5e2abdee9b308baa42ff7b1c5"><code>e6fe4e0</code></a> Update README.md</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/4066963b06f306af9e5029ee29bef89c815c7e4b"><code>4066963</code></a> feat: add Turkish translations</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/c6ded83f9032f4ed2a44a947e854976e2dce8398"><code>c6ded83</code></a> Merge pull request <a href="https://redirect.github.com/cyntler/react-doc-viewer/issues/290">#290</a> from Pespiri/main</li> <li><a href="https://github.com/cyntler/react-doc-viewer/commit/5bd551a7382b636c371733c2e34e1e89e2129daf"><code>5bd551a</code></a> fix styled components prop pollution</li> <li>See full diff in <a href="https://github.com/cyntler/react-doc-viewer/compare/v1.17.0...v1.17.1">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
660a15b721 |
[FRONT COMPONENT] Stories in twenty-sdk for front component generation and upon render interactivity (#17675)
closes https://github.com/twentyhq/core-team-issues/issues/2179 |
||
|
|
9b8eacb7f7 |
[FRONT COMPONENTS] Expose twenty UI in twenty sdk (#17645)
- An app will declare its `twenty-sdk` version in the manifest. - `twenty-sdk` will be served by a CDN to be imported in front component host. - When we render the host we will load twenty-ui through the correct version of the sdk We will proceed this way because twenty-ui is not mature enough yet to be deployed as its own package. So instead, since the sdk is already deployed as its own package, we will serve the ui with it. It allows us to have versioning to handle breaking changes in twenty-ui. |
||
|
|
e10e0b337e |
Fix twenty sdk build (#17696)
- add twenty-ui in dist/vendor folder - fix ts issue due to react version mismatch |
||
|
|
66d7182d02 |
Remote dom twenty UI POC (#17652)
Create a proof of concept which allows us to use twenty-ui in the remote-dom. For now only the button is allowed. https://github.com/user-attachments/assets/e5441d2c-eb63-4b99-931b-86ee14621393 Known limitation: The icons are not yet available |
||
|
|
f0bc9fcb43 |
[FRONT COMPONENTS] Move to twenty-sdk (#17587)
Move front components from twenty-shared to twenty-sdk |
||
|
|
fb97c40cad |
[Dashboards] Replace nivo bar chart with custom canvas bar chart (#17441)
before - https://github.com/user-attachments/assets/01d1ce73-1732-4516-bde0-d43c1bbcb734 after - I got rid of line chart in the after clip -- because now its the line chart thats more laggy :) -- but now could be easily migrated away from nivo https://github.com/user-attachments/assets/430f4697-68cd-47be-b63e-f8df34a2ee0e stress test - before - https://github.com/user-attachments/assets/c3d3e05c-943e-48dc-9429-a2ecf41cd4fe after - https://github.com/user-attachments/assets/98b35a43-f918-4a46-9b66-3bc8deabfdb8 --------- Co-authored-by: bosiraphael <raphael.bosi@gmail.com> |
||
|
|
9ee6917c86 |
Bump psl from 1.9.0 to 1.15.0 (#17535)
Bumps [psl](https://github.com/lupomontero/psl) from 1.9.0 to 1.15.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lupomontero/psl/releases">psl's releases</a>.</em></p> <blockquote> <h2>v1.15.0</h2> <h2>✨ Highlights</h2> <h3>🆙 Updates public suffix list</h3> <p>Updates rules to up to <a href="https://github.com/publicsuffix/list/tree/70df5fb64d3337f49a1cb5e2e9d3bf3aa7a20f0f">publicsuffix/list#70df5fb</a> (2 Dic 2024).</p> <h2>Changelog</h2> <ul> <li>67e21de chore(dist): Updates dist files</li> <li>4e073c0 doc(readme): Fix CDN URLs in readme</li> <li>a3eb7aa refactor(index): Replaces var with let/const and cleans up style. Closes <a href="https://redirect.github.com/lupomontero/psl/issues/329">#329</a></li> <li>4e1bba4 chore(dist): Updates rules and dist files</li> <li>9d1afc0 chore(deps): Updates dev dependencies</li> <li>0053742 doc(security): Adds security policy</li> <li>b7d4290 chore(funding): Adds funding URL to package.json</li> <li>81d2864 chore(funding): Create FUNDING.yml</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/lupomontero/psl/compare/v1.14.0...v1.15.0">https://github.com/lupomontero/psl/compare/v1.14.0...v1.15.0</a></p> <h2>v1.14.0</h2> <h2>✨ Highlights</h2> <h3>⚡ Over 100x performance improvement</h3> <p>This release finally includes performance improvements originally proposed by <a href="https://github.com/gugu"><code>@gugu</code></a> in <a href="https://redirect.github.com/lupomontero/psl/issues/301">#301</a> and <a href="https://redirect.github.com/lupomontero/psl/issues/302">#302</a>, which were finally added in <a href="https://redirect.github.com/lupomontero/psl/issues/334">#334</a> in collaboration with <a href="https://github.com/lupomontero"><code>@lupomontero</code></a> and <a href="https://github.com/mfdebian"><code>@mfdebian</code></a>.</p> <p>The change basically switches from an <code>Array</code> to a <code>Map</code> to store the rules (the parsed public suffic list) indexed by <em>punySuffix</em> so we no longer need to iterate over thousands of items to find a match every time.</p> <h3>🔧 Allow underscores in domain fragments</h3> <p>Underscores (<code>_</code>), aka <em>low dashes</em>, are now allowed in domain names. This had been raised a few times in issues like <a href="https://redirect.github.com/lupomontero/psl/issues/26">#26</a> and <a href="https://redirect.github.com/lupomontero/psl/issues/185">#185</a> and fixes had been proposed by <a href="https://github.com/taoyuan"><code>@taoyuan</code></a> in <a href="https://redirect.github.com/lupomontero/psl/issues/46">#46</a> (the one that got merged) and <a href="https://github.com/tasinet"><code>@tasinet</code></a> in <a href="https://redirect.github.com/lupomontero/psl/issues/286">#286</a>.</p> <h3>🆙 Updates public suffix list</h3> <p>Updates rules to up to <a href="https://github.com/publicsuffix/list/tree/03c6a36304d4de698aff16f6fa33b9371af58786">publicsuffix/list#03c6a36</a> (28 Nov 2024).</p> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/gugu"><code>@gugu</code></a> made their first contribution in 23265fd97bede836f91957846b2ee0fb0f705390 (original PR <a href="https://redirect.github.com/lupomontero/psl/pull/302">lupomontero/psl#302</a> was closed but changes were added in <a href="https://redirect.github.com/lupomontero/psl/pull/334">lupomontero/psl#334</a>)</li> <li><a href="https://github.com/taoyuan"><code>@taoyuan</code></a> made their first contribution in <a href="https://redirect.github.com/lupomontero/psl/pull/46">lupomontero/psl#46</a></li> </ul> <h2>Changelog</h2> <ul> <li>06d9f02 chore(dist): Updates dist files</li> <li><code>publicsuffix/list#03</code></li> <li>57214ec chore(deps): Updates depencies</li> <li>18a6d33 doc(readme): Updates install info and tested Node.js versions</li> <li>1fd3665 chore(dist): Updates dist files</li> <li>a096d29 chore(index): Removes unused functions internals.reverse and internals.endsWith</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/lupomontero/psl/commit/22b64785690b9bacb4066c849b32d956fa55360e"><code>22b6478</code></a> chore(release): Bump to 1.15.0</li> <li><a href="https://github.com/lupomontero/psl/commit/67e21dee319859edd7610e613a8cde596d8ca6eb"><code>67e21de</code></a> chore(dist): Updates dist files</li> <li><a href="https://github.com/lupomontero/psl/commit/4e073c06f77ee4f79bf80e455ce6092bdb213f19"><code>4e073c0</code></a> doc(readme): Fix CDN URLs in readme</li> <li><a href="https://github.com/lupomontero/psl/commit/a3eb7aa00d7b567b4bf49efc8c10b57685a6353a"><code>a3eb7aa</code></a> refactor(index): Replaces var with let/const and cleans up style</li> <li><a href="https://github.com/lupomontero/psl/commit/4e1bba4900dc8ff5d95acc4bdc10b504ad7a42e8"><code>4e1bba4</code></a> chore(dist): Updates rules and dist files</li> <li><a href="https://github.com/lupomontero/psl/commit/9d1afc01b226755a081a3cc387a323b128fccb6c"><code>9d1afc0</code></a> chore(deps): Updates dev dependencies</li> <li><a href="https://github.com/lupomontero/psl/commit/0053742017f5fe54e2e06caff122a673d1507ed7"><code>0053742</code></a> doc(security): Adds security policy</li> <li><a href="https://github.com/lupomontero/psl/commit/b7d429043d581d8e5566a1b7fcbb4fe7605a15df"><code>b7d4290</code></a> chore(funding): Adds funding URL to package.json</li> <li><a href="https://github.com/lupomontero/psl/commit/81d28643f3e3ca487fa7e0c9b584dec837bdbe43"><code>81d2864</code></a> chore(funding): Create FUNDING.yml</li> <li><a href="https://github.com/lupomontero/psl/commit/168a5a166f20b795effafa396fb892e78243a387"><code>168a5a1</code></a> chore(release): Bump to 1.14.0</li> <li>Additional commits viewable in <a href="https://github.com/lupomontero/psl/compare/v1.9.0...v1.15.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
07c48c076b |
Bump @prettier/sync from 0.5.3 to 0.5.5 (#17536)
Bumps [@prettier/sync](https://github.com/prettier/prettier-synchronized) from 0.5.3 to 0.5.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/prettier/prettier-synchronized/releases"><code>@prettier/sync</code>'s releases</a>.</em></p> <blockquote> <h2>v0.5.5</h2> <p>Changelog:</p> <ul> <li>Update <code>make-synchronized</code> to v0.4 (85747ae)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/prettier-synchronized/compare/v0.5.4...v0.5.5">https://github.com/prettier/prettier-synchronized/compare/v0.5.4...v0.5.5</a></p> <h2>v0.5.4</h2> <p>Changelog:</p> <ul> <li>Update <code>make-synchronized</code> to v0.3 (18c1f1b)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/prettier-synchronized/compare/v0.5.3...v0.5.4">https://github.com/prettier/prettier-synchronized/compare/v0.5.3...v0.5.4</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/prettier/prettier-synchronized/commit/919140dd6f7cfde6057b38b1a7901c78df018916"><code>919140d</code></a> Release 0.5.5</li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/85747ae473ad44c53446172f6a300fdb3561e129"><code>85747ae</code></a> Update <code>make-synchronized</code></li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/1038406e9297fdfc4ffc2e5710894752c80296ef"><code>1038406</code></a> Update badge</li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/a28e6cbdd4221137cc659bff4b88f35e2a86bc8f"><code>a28e6cb</code></a> Release 0.5.4</li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/fcdeb9439623661cd5cd4b3349a9fca499f81764"><code>fcdeb94</code></a> Linting</li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/18c1f1bf509d072524e938019b4200d353c648bc"><code>18c1f1b</code></a> Update <code>make-synchronized</code> to v0.3</li> <li><a href="https://github.com/prettier/prettier-synchronized/commit/91b579f18dda3bb41b631300466316eb596c895c"><code>91b579f</code></a> Add one more example</li> <li>See full diff in <a href="https://github.com/prettier/prettier-synchronized/compare/v0.5.3...v0.5.5">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5c1c998b97 |
Front component rendering (#17482)
Render front components in a widget. https://github.com/user-attachments/assets/1ae130a4-070d-498e-88f7-80cee847e2fa --------- Co-authored-by: Charles Bochet <charles@twenty.com> |
||
|
|
f4ca69a474 |
Implement dev mode nice UI (#17471)
Implement a nice terminal UI for dev mode using INK <img width="1512" height="721" alt="image" src="https://github.com/user-attachments/assets/79a71f37-1b31-4761-9e8d-718ef029ceb8" /> |
||
|
|
161689be18 |
feat: fix junction toggle persistence and add type-safe documentation paths (#17421)
## Summary - **Fix junction relation toggle not being saved**: The form schema wasn't tracking the `settings` field, so changes to `junctionTargetFieldId` weren't marked as dirty - **Add type-safe documentation paths**: Generate TypeScript constants from `base-structure.json` to prevent broken documentation links - **Create many-to-many relations documentation**: Step-by-step guide for building many-to-many relations using junction objects - **Update `getDocumentationUrl`**: Now uses shared constants from `twenty-shared` for base URL, default path, and supported languages ## Key Changes ### Junction Toggle Fix - Added `settings` field to the form schema in `SettingsDataModelFieldRelationForm.tsx` - Fixed the toggle to properly merge settings when updating `junctionTargetFieldId` ### Type-Safe Documentation Paths - New constants in `twenty-shared/constants`: - `DOCUMENTATION_PATHS` - All 161 documentation paths as typed constants - `DOCUMENTATION_SUPPORTED_LANGUAGES` - 14 supported languages - `DOCUMENTATION_BASE_URL` / `DOCUMENTATION_DEFAULT_PATH` - Generator script: `yarn docs:generate-paths` - CI integration: Added to `docs-i18n-pull.yaml` workflow ### Documentation - New article: `/user-guide/data-model/how-tos/create-many-to-many-relations` - Updated `/user-guide/data-model/capabilities/relation-fields.mdx` with Lab warning and link ## Test plan - [ ] Verify junction toggle saves correctly when enabled/disabled - [ ] Verify documentation link opens correct localized page - [ ] Verify `yarn docs:generate-paths` regenerates paths correctly |
||
|
|
2346efd71f |
Add prometheus exporter (#17392)
Create a metric endpoint and expose prometheus gauge for event stream count. |
||
|
|
7fcc43f96b |
Bump @sentry/nestjs from 10.27.0 to 10.36.0 (#17352)
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abdullah. <125115953+mabdullahabaid@users.noreply.github.com> |
||
|
|
4153462db9 |
Bump ts-key-enum from 2.0.12 to 2.0.13 (#17353)
Bumps [ts-key-enum](https://gitlab.com/nfriend/ts-key-enum) from 2.0.12 to 2.0.13. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://gitlab.com/nfriend/ts-key-enum/tags">ts-key-enum's releases</a>.</em></p> <blockquote> <h2>v2.0.13</h2> <p>Remove link to Wikipedia page on teletext.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://gitlab.com/nfriend/ts-key-enum/commit/e9259b2365bbcd82abfb3cfa38a1f1a78041e95a"><code>e9259b2</code></a> 2.0.13</li> <li><a href="https://gitlab.com/nfriend/ts-key-enum/commit/5f8a0e079164cad933f1481034d063e088c2a5a3"><code>5f8a0e0</code></a> MDN update</li> <li>See full diff in <a href="https://gitlab.com/nfriend/ts-key-enum/compare/v2.0.12...v2.0.13">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abdullah. <125115953+mabdullahabaid@users.noreply.github.com> |
||
|
|
5a94ef7dbb |
Move sdk watcher back to esbuild (#17316)
Demo of current state https://github.com/user-attachments/assets/034aff50-9981-4c81-b5ce-410a07b8dbc9 |
||
|
|
5ee6853d7e | Rework SDK watcher (#17305) | ||
|
|
d74d74da4c |
Improvements on SDK watcher (#17291)
# Improve cross-entity duplicate detection in manifest validation - Refactored findDuplicates to receive the full manifest, enabling cross-entity duplicate checks -ObjectExtensionEntityBuilder now validates that extension field IDs don't conflict with object field IDs - Renamed DuplicateId type to EntityIdWithLocation for clarity - Updated all entity builders to use the new signature |
||
|
|
472fe4eec3 | Fix dev env (#17269) | ||
|
|
29c0c952e7 |
Add Front components to SDK (#17259)
## Add `frontComponent` entity type to SDK This PR adds a new `frontComponent` entity type at parity with `serverlessFunction`. Front components are React components that can be defined and bundled as part of Twenty applications. ### Changes #### New Entity Type - Added `FRONT_COMPONENT` to `SyncableEntity` enum - Front components use `*.front-component.tsx` file naming convention - CLI command `twenty app:add` now includes `front-component` as an option #### SDK Application Layer (`twenty-sdk`) - Added `defineFrontComponent()` function for defining front component configurations with validation - Added `FrontComponentConfig` type for component configuration - Added `getFrontComponentBaseFile()` template generator for scaffolding new front components - Added `loadFrontComponentModule()` to load front component modules and extract component metadata #### Shared Types (`twenty-shared`) - Added `FrontComponentManifest` type with `universalIdentifier`, `name`, `description`, `componentPath`, and `componentName` fields - Updated `ApplicationManifest` to include optional `frontComponents` array #### Manifest Build System - Updated `manifest-build.ts` to discover and load `*.front-component.tsx` files - Updated `manifest-validate.ts` to validate front components and check for duplicate IDs - Updated `manifest-display.ts` to display front component count in build summary - Updated `manifest-plugin.ts` to display front component entry points and watch `.tsx` files #### Template (`create-twenty-app`) - New applications now include a sample `hello-world.front-component.tsx` file #### Tests - Added unit tests for `defineFrontComponent()` - Added unit tests for `getFrontComponentBaseFile()` |
||
|
|
3c0314d14a |
fix: jsdiff has a denial of service vulnerability in parsePatch and applyPatch (#17235)
Resolves [Dependabot Alert 366](https://github.com/twentyhq/twenty/security/dependabot/366). |
||
|
|
dc93cf4c59 |
feat: add TypeScript Go (tsgo) for faster type checking (#17211)
## Summary - Add `@typescript/native-preview` (tsgo) for dramatically faster type checking on frontend projects - Configure tsgo as default for frontend projects (twenty-front, twenty-ui, twenty-shared, etc.) - Keep tsc for twenty-server (faster for NestJS decorator-heavy code) - Fix type imports for tsgo compatibility (DOMPurify, AxiosInstance) - Remove deprecated `baseUrl` from tsconfigs where safe ## Performance Results | Project | tsgo | tsc -b | Speedup | |---------|------|--------|---------| | **twenty-front** | 1.4s | 60.7s | **43x faster** | | **twenty-server** | 2m42s | 1m10s | tsc is faster (decorators) | tsgo excels at modern React/JSX codebases but struggles with decorator-heavy NestJS backends, so we use the optimal checker for each. ## Usage ```bash # Default (tsgo for frontend, tsc for backend) nx typecheck twenty-front nx typecheck twenty-server # Force tsc fallback if needed nx typecheck twenty-front --configuration=tsc # Force tsgo on backend (slower, not recommended) nx typecheck twenty-server --configuration=tsgo ``` ## Test plan - [x] `nx typecheck twenty-front` passes with tsgo - [x] `nx typecheck twenty-server` passes with tsc - [x] `nx run-many -t typecheck --exclude=fireflies` passes - [ ] CI tests pass |
||
|
|
42c6a04be6 |
Bump eslint-plugin-prettier from 5.2.1 to 5.5.5 (#17228)
Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 5.2.1 to 5.5.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/prettier/eslint-plugin-prettier/releases">eslint-plugin-prettier's releases</a>.</em></p> <blockquote> <h2>v5.5.5</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772">#772</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c"><code>7264ed0</code></a> Thanks <a href="https://github.com/BPScott"><code>@BPScott</code></a>! - Bump prettier-linter-helpers dependency to v1.0.1</p> </li> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776">#776</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b"><code>77651a3</code></a> Thanks <a href="https://github.com/aswils"><code>@aswils</code></a>! - fix: bump synckit for yarn PnP ESM issue</p> </li> </ul> <h2>v5.5.4</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/755">#755</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/723f7a803f014746f2146e5be021c9071fa52d7e"><code>723f7a8</code></a> Thanks <a href="https://github.com/kbrilla"><code>@kbrilla</code></a>! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to <code>parserBlocklist</code></p> </li> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/751">#751</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/cf52b306a533b971bf40bbbf0d2033a1ed4f3c5d"><code>cf52b30</code></a> Thanks <a href="https://github.com/andreww2012"><code>@andreww2012</code></a>! - fix: disallow extra properties in rule options</p> </li> </ul> <h2>v5.5.3</h2> <p>republish the latest version</p> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.2...v5.5.3">https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.2...v5.5.3</a></p> <h2>v5.5.2</h2> <p>republish the latest version</p> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.1...v5.5.2">https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.1...v5.5.2</a></p> <h2>v5.5.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/748">#748</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/bfd1e9547de9afaaf30318735f2f441c0250b77e"><code>bfd1e95</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - fix: use <code>prettierRcOptions</code> directly for prettier 3.6+</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.0...v5.5.1">https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.0...v5.5.1</a></p> <h2>v5.5.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/743">#743</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/92f2c9c8f0b083a0208b4236cf5c8e4af5612a8b"><code>92f2c9c</code></a> Thanks <a href="https://github.com/dotcarmen"><code>@dotcarmen</code></a>! - feat: support non-js languages like <code>css</code> for <code>@eslint/css</code> and <code>json</code> for <code>@eslint/json</code></li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/dotcarmen"><code>@dotcarmen</code></a> made their first contribution in <a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/743">prettier/eslint-plugin-prettier#743</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.4.1...v5.5.0">https://github.com/prettier/eslint-plugin-prettier/compare/v5.4.1...v5.5.0</a></p> <h2>v5.4.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/740">#740</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/c21521ffbe7bfb60bdca8cbf6349fba4de774d21"><code>c21521f</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - fix(deps): bump <code>synckit</code> to v0.11.7 to fix potential <code>TypeError: Cannot read properties of undefined (reading 'message')</code> error</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.4.0...v5.4.1">https://github.com/prettier/eslint-plugin-prettier/compare/v5.4.0...v5.4.1</a></p> <h2>v5.4.0</h2> <h3>Minor Changes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md">eslint-plugin-prettier's changelog</a>.</em></p> <blockquote> <h2>5.5.5</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/772">#772</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c"><code>7264ed0</code></a> Thanks <a href="https://github.com/BPScott"><code>@BPScott</code></a>! - Bump prettier-linter-helpers dependency to v1.0.1</p> </li> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/776">#776</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b"><code>77651a3</code></a> Thanks <a href="https://github.com/aswils"><code>@aswils</code></a>! - fix: bump synckit for yarn PnP ESM issue</p> </li> </ul> <h2>5.5.4</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/755">#755</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/723f7a803f014746f2146e5be021c9071fa52d7e"><code>723f7a8</code></a> Thanks <a href="https://github.com/kbrilla"><code>@kbrilla</code></a>! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to <code>parserBlocklist</code></p> </li> <li> <p><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/751">#751</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/cf52b306a533b971bf40bbbf0d2033a1ed4f3c5d"><code>cf52b30</code></a> Thanks <a href="https://github.com/andreww2012"><code>@andreww2012</code></a>! - fix: disallow extra properties in rule options</p> </li> </ul> <h2>5.5.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/748">#748</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/bfd1e9547de9afaaf30318735f2f441c0250b77e"><code>bfd1e95</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - fix: use <code>prettierRcOptions</code> directly for prettier 3.6+</li> </ul> <h2>5.5.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/743">#743</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/92f2c9c8f0b083a0208b4236cf5c8e4af5612a8b"><code>92f2c9c</code></a> Thanks <a href="https://github.com/dotcarmen"><code>@dotcarmen</code></a>! - feat: support non-js languages like <code>css</code> for <code>@eslint/css</code> and <code>json</code> for <code>@eslint/json</code></li> </ul> <h2>5.4.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/740">#740</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/c21521ffbe7bfb60bdca8cbf6349fba4de774d21"><code>c21521f</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - fix(deps): bump <code>synckit</code> to v0.11.7 to fix potential <code>TypeError: Cannot read properties of undefined (reading 'message')</code> error</li> </ul> <h2>5.4.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/736">#736</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/59a0cae5f27801d7e00f257c6be059a848b32fbe"><code>59a0cae</code></a> Thanks <a href="https://github.com/yashtech00"><code>@yashtech00</code></a>! - refactor: migrate <code>worker.js</code> to <code>worker.mjs</code></li> </ul> <h2>5.3.1</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/734">#734</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/dcf2c8083e0f7146b7b7d641224ee2db8b318189"><code>dcf2c80</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - ci: enable <code>NPM_CONFIG_PROVENANCE</code> env</li> </ul> <h2>5.3.0</h2> <h3>Minor Changes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/e2c154a7214d4548dad225a56ee1e333d6389b66"><code>e2c154a</code></a> chore: release eslint-plugin-prettier (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/773">#773</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/6795c1abf6dc9949da8681b05ec31d323794d00c"><code>6795c1a</code></a> build(deps): Bump the actions group across 1 directory with 2 updates (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/774">#774</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/77651a33cd16fd4c50b7346971990b900a42408b"><code>77651a3</code></a> fix: bump synckit for yarn PnP ESM issue (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/776">#776</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/7264ed0a6cf47fc36befed32f459e7d875f5992c"><code>7264ed0</code></a> chore: bump prettier-linter-helpers to v1.0.1 (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/772">#772</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/e11a5b7e71f41b3238da944ba1ee84f7f518a4f4"><code>e11a5b7</code></a> build(deps): Bump the actions group across 1 directory with 3 updates (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/769">#769</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/befda88381335cd5491d2aaa16b67350ba3cc602"><code>befda88</code></a> ci: enable trusted publishing (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/757">#757</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/e2c31d20f326133157a12d0989097ebd52860c5b"><code>e2c31d2</code></a> chore: release eslint-plugin-prettier (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/756">#756</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/98a8bfd269f0f2ead6750ec88eb81f6d59b6c005"><code>98a8bfd</code></a> chore(deps): update all dependencies (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/750">#750</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/cf52b306a533b971bf40bbbf0d2033a1ed4f3c5d"><code>cf52b30</code></a> fix: disallow extra properties in rule options (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/751">#751</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/723f7a803f014746f2146e5be021c9071fa52d7e"><code>723f7a8</code></a> fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to <code>parserBlocklist</code> (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/755">#755</a>)</li> <li>Additional commits viewable in <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.2.1...v5.5.5">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for eslint-plugin-prettier since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
58619e3b02 |
Bump json-2-csv from 5.5.5 to 5.5.10 (#17226)
Bumps [json-2-csv](https://github.com/mrodrig/json-2-csv) from 5.5.5 to 5.5.10. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/mrodrig/json-2-csv/releases">json-2-csv's releases</a>.</em></p> <blockquote> <h2>NPM Release v5.5.10</h2> <ul> <li>Ability to rename individual field headers - thanks to <a href="https://github.com/petterw03"><code>@petterw03</code></a> - <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/280">#280</a></li> <li>NPM Audit Fix patches</li> </ul> <h2>NPM Release v5.5.9</h2> <ul> <li>Thanks to <a href="https://github.com/jose-cabral"><code>@jose-cabral</code></a> for reporting <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/273">#273</a> and implementing a fix for it in <a href="https://redirect.github.com/mrodrig/json-2-csv/pull/275">mrodrig/json-2-csv#275</a></li> </ul> <h2>NPM Release v5.5.8</h2> <ul> <li>Incorporates <a href="https://github.com/sevrai"><code>@sevrai</code></a>'s fix from <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/271">#271</a></li> <li>Dev Dependency vulnerability patch</li> </ul> <h2>NPM Release v5.5.7</h2> <ul> <li>Fixes the bug identified in <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/265">#265</a></li> <li>Patches a high severity vulnerability identified in a dependency by <code>npm audit</code></li> </ul> <h2>NPM Release v5.5.6</h2> <ul> <li>Thanks <a href="https://github.com/Altioc"><code>@Altioc</code></a> for finding and fixing <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/264">#264</a></li> <li>Patches a moderate severity vulnerability in the dependency chain via <code>npm audit fix</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mrodrig/json-2-csv/commit/dd154d63966b8edd9396d3c323d16aa1597e3e3a"><code>dd154d6</code></a> Merge pull request <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/283">#283</a> from mrodrig/mr-patch-oct25</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/2c5da6c5c3f8a876d3d6b781c1f0e0ca19200e05"><code>2c5da6c</code></a> chore(rel): 5.5.10</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/6db4ca1ce1cc903cfa0fe7411a7e4b037b231998"><code>6db4ca1</code></a> chore(deps): npm audit fix</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/e3a9bcfbf2991a8fece6e85d33a56054635a1c39"><code>e3a9bcf</code></a> Merge pull request <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/280">#280</a> from petterw03/rename-header-fields</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/a617948ae26649196a3e9e3c06e7df701a4dba89"><code>a617948</code></a> add documentation for fieldTitleMap</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/d057d2423da089f72f5cb627bc26b5a64d96ee27"><code>d057d24</code></a> remove redundant type definition</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/4b6a177ab0aa649b97e6aaa32c71ee085bae7dd2"><code>4b6a177</code></a> allow user to rename individual field headers</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/6f43ada8a2310c3e16fb98a43b7429fbc07af792"><code>6f43ada</code></a> chore(rel): 5.5.9</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/98af2bdc8d6f7a2bb4d73fccfabe2de15996777b"><code>98af2bd</code></a> Merge pull request <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/275">#275</a> from jose-cabral/nested-arrays-273</li> <li><a href="https://github.com/mrodrig/json-2-csv/commit/32ca8c4cc578a13fcd231f27f17e6bb8445bfe59"><code>32ca8c4</code></a> fixes <a href="https://redirect.github.com/mrodrig/json-2-csv/issues/273">#273</a>: nested arrays are not always unwound</li> <li>Additional commits viewable in <a href="https://github.com/mrodrig/json-2-csv/compare/5.5.5...5.5.10">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
66ec2f124f |
Bump eslint-config-prettier from 9.1.0 to 9.1.2 (#17227)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 9.1.0 to 9.1.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md">eslint-config-prettier's changelog</a>.</em></p> <blockquote> <h1>eslint-config-prettier</h1> <h2>10.1.5</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/332">#332</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/60fef02574467d31d10ff47ecb567d378483c9d4"><code>60fef02</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - chore: add <code>funding</code> field into <code>package.json</code></li> </ul> <h2>10.1.4</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/328">#328</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/94b47999e7eb13b703835729331376cef598b850"><code>94b4799</code></a> Thanks <a href="https://github.com/silvenon"><code>@silvenon</code></a>! - fix(cli): do not crash on no rules configured</li> </ul> <h2>10.1.3</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/325">#325</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/4e95a1d50073f1a24f004239ad6e1a4ffa8476df"><code>4e95a1d</code></a> Thanks <a href="https://github.com/pilikan"><code>@pilikan</code></a>! - fix: this package is <code>commonjs</code>, align its types correctly</li> </ul> <h2>10.1.2</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/321">#321</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/a8768bfe54a91d08f0cef8705f91de2883436bb0"><code>a8768bf</code></a> Thanks <a href="https://github.com/Fdawgs"><code>@Fdawgs</code></a>! - chore(package): add homepage for some 3rd-party registry - see <a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/321">#321</a> for more details</li> </ul> <h2>10.1.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/309">#309</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/eb56a5e09964e49045bccde3c616275eb0a0902d"><code>eb56a5e</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - fix: separate the <code>/flat</code> entry for compatibility</p> <p>For flat config users, the previous <code>"eslint-config-prettier"</code> entry still works, but <code>"eslint-config-prettier/flat"</code> adds a new <code>name</code> property for <a href="https://eslint.org/blog/2024/04/eslint-config-inspector/">config-inspector</a>, we just can't add it for the default entry for compatibility.</p> <p>See also <a href="https://redirect.github.com/prettier/eslint-config-prettier/issues/308">prettier/eslint-config-prettier#308</a></p> <pre lang="ts"><code>// before import eslintConfigPrettier from "eslint-config-prettier"; <p>// after<br /> import eslintConfigPrettier from "eslint-config-prettier/flat";<br /> </code></pre></p> </li> </ul> <h2>10.1.0</h2> <h3>Minor Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-config-prettier/pull/306">#306</a> <a href="https://github.com/prettier/eslint-config-prettier/commit/56e2e3466391d0fdfc200e42130309c687aaab53"><code>56e2e34</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - feat: migrate to exports field</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/prettier/eslint-config-prettier/commits">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by <a href="https://www.npmjs.com/~jounqin">jounqin</a>, a new releaser for eslint-config-prettier since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5cef07af45 |
Twenty SDK iteration (#17223)
Opening a PR to merge the wip work by @martmull We will re-organize twenty-sdk in an upcoming PR --------- Co-authored-by: martmull <martmull@hotmail.fr> |
||
|
|
92eff62523 | Replace test-runner with vitest for storybook (#17187) | ||
|
|
c737028dd6 |
Move tools/eslint-rules to packages/twenty-eslint-rules (#17203)
## Summary Moves the custom ESLint rules from `tools/eslint-rules` to `packages/twenty-eslint-rules` for better organization within the monorepo packages structure. ## Changes - Move `eslint-rules` from `tools/` to `packages/twenty-eslint-rules` - Use `loadWorkspaceRules` from `@nx/eslint-plugin` to load custom rules - Update all ESLint configs to use the `twenty/` rule prefix instead of `@nx/workspace-` - Update `project.json`, `jest.config.mjs` with new paths - Update `package.json` workspaces and `nx.json` cache inputs - Update Dockerfile reference ## Technical Details The custom ESLint rules are now loaded using Nx's `loadWorkspaceRules` utility which: - Handles TypeScript transpilation automatically - Allows loading workspace rules from any directory - Provides a cleaner approach than the previous `@nx/workspace-` convention ## Testing - Verified all 17 custom ESLint rules load correctly from the new location - Verified linting works on dependent packages (twenty-front, twenty-server, etc.) |
||
|
|
6f18eaa3f1 |
fix: AWS SDK for JavaScript v3 adopted defense in depth enhancement for region parameter value (#17148)
Resolves [Dependabot Alert 362](https://github.com/twentyhq/twenty/security/dependabot/362). AWS SDK minor version upgrades are backward compatible, so it's safe to upgrade to the newer versions. |
||
|
|
d55b83375d |
Allow app to extend object (#17116)
- exports `extendObject` utils from `twenty-sdk` - define `*.object-extension.ts` filename pattern to extend and object - handle object-extension configs in manifest |
||
|
|
2c8d3f02e1 |
feat: upgrade to Storybook version 10 (#17110)
Upgraded to Storybook 10. We still use `@storybook/test-runner` for testing since it appears it'd require more work to move from Jest to Vitest than I initially anticipated, but I completed this PR to fix `storybook:serve:dev` - it takes time to load, but it works the way it used to with Storybook 8. https://github.com/user-attachments/assets/7afc32c6-4bcf-4b37-b83b-8d00d28dda15 |
||
|
|
3d54647839 |
Bump @typescript-eslint/eslint-plugin from 8.39.0 to 8.52.0 (#17087)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.39.0 to 8.52.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/eslint-plugin</code>'s releases</a>.</em></p> <blockquote> <h2>v8.52.0</h2> <h2>8.52.0 (2026-01-05)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> [no-multiple-lines-of-errors] add rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11899">#11899</a>)</li> <li><strong>typescript-estree:</strong> add tseslint.com redirects for CLI outputs (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11895">#11895</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] handle conditional initializer (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11908">#11908</a>)</li> <li><strong>eslint-plugin:</strong> [no-base-to-string] detect @<a href="https://github.com/toPrimitive"><code>@toPrimitive</code></a> and valueOf (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11901">#11901</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Ulrich Stark</li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.51.0</h2> <h2>8.51.0 (2025-12-29)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> expose rule name via RuleModule interface (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11719">#11719</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] fix some cases to optional syntax (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11871">#11871</a>)</li> <li><strong>eslint-plugin:</strong> add namespace to plugin meta (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11885">#11885</a>)</li> <li><strong>tsconfig-utils:</strong> more informative error on parsing failures (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11888">#11888</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> fix crash and false positives in <code>no-useless-default-assignment</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11845">#11845</a>)</li> <li><strong>eslint-plugin:</strong> remove fixable from no-dynamic-delete rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11876">#11876</a>)</li> <li><strong>eslint-plugin:</strong> bump ts-api-utils to 2.2.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11881">#11881</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] handle MemberExpression in final chain position (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11835">#11835</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>mdm317</li> <li>Ulrich Stark</li> <li>Yannick Decat <a href="https://github.com/mho22"><code>@mho22</code></a></li> <li>Yukihiro Hasegawa <a href="https://github.com/y-hsgw"><code>@y-hsgw</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.50.1</h2> <h2>8.50.1 (2025-12-22)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.52.0 (2026-01-05)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> [no-multiple-lines-of-errors] add rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11899">#11899</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-base-to-string] detect @<a href="https://github.com/toPrimitive"><code>@toPrimitive</code></a> and valueOf (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11901">#11901</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] handle conditional initializer (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11908">#11908</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Ulrich Stark</li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.51.0 (2025-12-29)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> add namespace to plugin meta (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11885">#11885</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] fix some cases to optional syntax (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11871">#11871</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] handle MemberExpression in final chain position (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11835">#11835</a>)</li> <li><strong>eslint-plugin:</strong> bump ts-api-utils to 2.2.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11881">#11881</a>)</li> <li><strong>eslint-plugin:</strong> remove fixable from no-dynamic-delete rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11876">#11876</a>)</li> <li><strong>eslint-plugin:</strong> fix crash and false positives in <code>no-useless-default-assignment</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11845">#11845</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>mdm317</li> <li>Ulrich Stark</li> <li>Yannick Decat <a href="https://github.com/mho22"><code>@mho22</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.50.1 (2025-12-22)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] correct handling of undefined vs. void (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11826">#11826</a>)</li> <li><strong>eslint-plugin:</strong> [method-signature-style] ignore methods that return <code>this</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11813">#11813</a>)</li> </ul> <h3>❤️ Thank You</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/9ddd5712687140a68352978fb76428de53ab789e"><code>9ddd571</code></a> chore(release): publish 8.52.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/6b467b0533b78777fa01128cdeeab1b5326a4550"><code>6b467b0</code></a> docs: add blog post on revamping the ban-types rule (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11873">#11873</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/309a38ed83994738323efd78fc31137136a7681a"><code>309a38e</code></a> fix(eslint-plugin): [no-base-to-string] detect @<a href="https://github.com/toPrimitive"><code>@toPrimitive</code></a> and valueOf (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11">#11</a>...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/cf79108b6405972fb73f5991e913e1b36de8a67f"><code>cf79108</code></a> fix(eslint-plugin): [no-useless-default-assignment] handle conditional initia...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/a166cea2d00fedd0762ecb87d95bc1f1cf93d528"><code>a166cea</code></a> feat(eslint-plugin-internal): [no-multiple-lines-of-errors] add rule (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11899">#11899</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/d1b44c02a86d366139c61ac80c0eb1c63668be7f"><code>d1b44c0</code></a> chore(deps): update nx monorepo to v22.3.3 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11848">#11848</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/95c7c730c254ef5e51843e2f3280977eec53f5b8"><code>95c7c73</code></a> chore: update deps to latest minor/patch (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11921">#11921</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/45a7d2bf60afd214046ff76e7feda516b3d7bdb2"><code>45a7d2b</code></a> chore(typescript-estree): use <code>iterateComments()</code> from ts-api-utils v2.3 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11">#11</a>...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/e4c57f5996a9a3aed8a8c2b02712a9ce37db4928"><code>e4c57f5</code></a> chore(release): publish 8.51.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/c7b698b3821946d4bdeb51239d3b3572e5434893"><code>c7b698b</code></a> feat(eslint-plugin): add namespace to plugin meta (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11885">#11885</a>)</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.52.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@typescript-eslint/eslint-plugin</code> since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
f8d355ce35 |
Bump react-router-dom from 6.26.0 to 6.30.3 (#17086)
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.0 to 6.30.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/remix-run/react-router/releases">react-router-dom's releases</a>.</em></p> <blockquote> <h2>react-router-dom-v5-compat@6.4.0-pre.15</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies <ul> <li>react-router@6.4.0-pre.15</li> <li>react-router-dom@6.4.0-pre.15</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/remix-run/react-router/blob/main/CHANGELOG.md">react-router-dom's changelog</a>.</em></p> <blockquote> <h2>v6.30.3</h2> <p>Date: 2026-01-07</p> <h3>Security Notice</h3> <p>This release addresses 1 security vulnerability:</p> <ul> <li><a href="https://github.com/remix-run/react-router/security/advisories/GHSA-2w69-qvjg-hvjx">XSS via Open Redirects</a></li> </ul> <h3>Patch Changes</h3> <ul> <li>Validate redirect locations (<a href="https://redirect.github.com/remix-run/react-router/pull/14707">#14707</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remix-run/react-router/compare/react-router@6.30.2...react-router@6.30.3"><code>v6.30.2...v6.30.3</code></a></p> <h2>v6.30.2</h2> <p>Date: 2025-11-13</p> <h3>Security Notice</h3> <p>This release addresses 1 security vulnerability:</p> <ul> <li><a href="https://github.com/remix-run/react-router/security/advisories/GHSA-9jcx-v3wj-wh4m">Unexpected external redirect via untrusted paths</a></li> </ul> <h3>Patch Changes</h3> <ul> <li>Normalize double-slashes in <code>resolvePath</code> (<a href="https://redirect.github.com/remix-run/react-router/pull/14537">#14537</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remix-run/react-router/compare/react-router@6.30.1...react-router@6.30.2"><code>v6.30.1...v6.30.2</code></a></p> <h2>v6.30.1</h2> <p>Date: 2025-05-20</p> <h3>Patch Changes</h3> <ul> <li>Partially revert optimization added in <code>6.29.0</code> to reduce calls to <code>matchRoutes</code> because it surfaced other issues (<a href="https://redirect.github.com/remix-run/react-router/pull/13623">#13623</a>)</li> <li>Stop logging invalid warning when <code>v7_relativeSplatPath</code> is set to <code>false</code> (<a href="https://redirect.github.com/remix-run/react-router/pull/13502">#13502</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remix-run/react-router/compare/react-router@6.30.0...react-router@6.30.1"><code>v6.30.0...v6.30.1</code></a></p> <h2>v6.30.0</h2> <p>Date: 2025-02-27</p> <h3>Minor Changes</h3> <ul> <li>Add <code>fetcherKey</code> as a parameter to <code>patchRoutesOnNavigation</code> (<a href="https://redirect.github.com/remix-run/react-router/pull/13109">#13109</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/remix-run/react-router/commit/c662ca366a414bf42624dd6cd20a7c414b2602e3"><code>c662ca3</code></a> chore: Update version for release (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/14713">#14713</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/98ad6912daec8df0d911f786f18006048efd7ade"><code>98ad691</code></a> chore: Update version for release (pre-v6) (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/14710">#14710</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/26b5d4581fb2829dc7eaeaad413de4735173a6eb"><code>26b5d45</code></a> chore: Update version for release (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/14541">#14541</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/919f8a86b95f0c8956e3820743503d5609f572cd"><code>919f8a8</code></a> chore: Update version for release (pre-v6) (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/14540">#14540</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/3f2400e9a7e255953afef3d29126db2efb6c08ab"><code>3f2400e</code></a> chore: Update version for release (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/13647">#13647</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/25a264d87bce0bd5f0170e99a3dcad3a61a5f080"><code>25a264d</code></a> chore: Update version for release (pre-v6) (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/13638">#13638</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/e4ba5224c911e070b1eabd12cff2aa581270dfb3"><code>e4ba522</code></a> chore: Update version for release (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/13128">#13128</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/f0bc784ce8951cc5ed67bf6d48d9c132b9bdc621"><code>f0bc784</code></a> chore: Update version for release (pre-v6) (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/13111">#13111</a>)</li> <li><a href="https://github.com/remix-run/react-router/commit/d9ed8241d677de006a9bfe808d32fe4582184dad"><code>d9ed824</code></a> Fix up changelogs</li> <li><a href="https://github.com/remix-run/react-router/commit/cc8b8cebe241c1464424e1a66d1f3e3bfa5bdd4d"><code>cc8b8ce</code></a> chore: Update version for release (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/12911">#12911</a>)</li> <li>Additional commits viewable in <a href="https://github.com/remix-run/react-router/commits/react-router-dom@6.30.3/packages/react-router-dom">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for react-router-dom since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5240a1818f |
feat: upgrade Storybook to version 9 (#17077)
Upgraded from 8.6.15 to 9.1.17 in two steps: - 8.6.15 -> 9.0.0 - 9.0.0 -> 9.1.17 I had to disable `storybook-addon-cookie` since it is not supported for Storybook 9. However, I do intend to upgrade to Storybook 10 when this is merged, so we can replace the aforementioned add-on with this fork specifically created to support Storybook 10 and above: https://www.npmjs.com/package/@storybook-community/storybook-addon-cookie. Additionally, once we upgrade to Version 10 successfully, I will start looking into integrating the official Vitest add-on. |
||
|
|
40eef5c464 |
Improve application ast (#17016)
# Summary
- Introduces a new, flexible folder structure for Twenty SDK
applications using file suffix-based entity detection
- Adds defineApp, defineFunction, defineObject, and defineRole helper
functions with built-in validation
- Refactors manifest loading to use jiti runtime evaluation for
TypeScript config files
- Separates validation logic into dedicated module with comprehensive
error reporting
# New Application Folder Structure
Applications now use a convention-over-configuration approach where
entities are detected by their file suffix, allowing flexible
organization within the src/app/ folder.
# Required Structure
my-app/
├── package.json
├── yarn.lock
└── src/
├── app/
│ └── application.config.ts # Required - main application configuration
└── utils/ # Optional - handler implementations & utilities
# Entity Detection by File Suffix
- *.object.ts - Custom object definitions
- *.function.ts - Serverless function definitions
- *.role.ts - Role definitions
# Supported Folder Organizations
## Traditional (by type):
src/app/
├── application.config.ts
├── objects/
│ └── postCard.object.ts
├── functions/
│ └── createPostCard.function.ts
└── roles/
└── admin.role.ts
## Feature-based:
src/app/
├── application.config.ts
└── post-card/
├── postCard.object.ts
├── createPostCard.function.ts
└── postCardAdmin.role.ts
## Flat:
src/app/
├── application.config.ts
├── postCard.object.ts
├── createPostCard.function.ts
└── admin.role.ts
# New Helper Functions
## defineApp(config)
import { defineApp } from 'twenty-sdk';
export default defineApp({
universalIdentifier: '4ec0391d-...',
displayName: 'My App',
description: 'App description',
icon: 'IconWorld',
});
## defineObject(config)
import { defineObject, FieldType } from 'twenty-sdk';
export default defineObject({
universalIdentifier: '54b589ca-...',
nameSingular: 'postCard',
namePlural: 'postCards',
labelSingular: 'Post Card',
labelPlural: 'Post Cards',
icon: 'IconMail',
fields: [
{
universalIdentifier: '58a0a314-...',
type: FieldType.TEXT,
name: 'content',
label: 'Content',
},
],
});
## defineFunction(config)
import { defineFunction } from 'twenty-sdk';
import { myHandler } from '../utils/my-handler';
export default defineFunction({
universalIdentifier: 'e56d363b-...',
name: 'My Function',
handler: myHandler,
triggers: [
{
universalIdentifier: 'c9f84c8d-...',
type: 'route',
path: '/my-route',
httpMethod: 'POST',
},
],
});
## defineRole(config)
import { defineRole, PermissionFlag } from 'twenty-sdk';
export default defineRole({
universalIdentifier: 'b648f87b-...',
label: 'App User',
objectPermissions: [
{
objectNameSingular: 'postCard',
canReadObjectRecords: true,
},
],
permissionFlags: [PermissionFlag.UPLOAD_FILE],
});
# Test plan
- Verify npx twenty app sync works with new folder structure
- Verify npx twenty app dev works with new folder structure
- Verify validation errors display correctly for invalid configs
- Verify all three folder organization styles work (traditional,
feature-based, flat)
- Run existing E2E tests to ensure backward compatibility
|
||
|
|
a5eae50c66 |
Migrate MicrosoftAPIRefreshAccessTokenService to @azure/msal-node (#16954)
|
||
|
|
e83e616fde |
fix: qs's arrayLimit bypass in its bracket notation allows DoS via memory exhaustion (#16886)
Resolves [Dependabot Alert 354](https://github.com/twentyhq/twenty/security/dependabot/354) and [Dependabot Alert 355](https://github.com/twentyhq/twenty/security/dependabot/355). Upgraded express by one minor version. Removed redundant type definition in root `package.json` since we already have it in twenty-server's `package.json`. Upgraded body-parser patch version in serverless package.json. Co-authored-by: Félix Malfait <felix.malfait@gmail.com> |
||
|
|
dffe4c2152 |
build(deps): bump @ai-sdk/xai from 2.0.19 to 2.0.43 (#16927)
Bumps [@ai-sdk/xai](https://github.com/vercel/ai) from 2.0.19 to 2.0.43. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vercel/ai/releases"><code>@ai-sdk/xai</code>'s releases</a>.</em></p> <blockquote> <h2><code>@ai-sdk/xai</code><a href="https://github.com/2"><code>@2</code></a>.0.43</h2> <h3>Patch Changes</h3> <ul> <li>4953414: fix: trigger new release for <code>@ai-v5</code> dist-tag</li> <li>Updated dependencies [4953414] <ul> <li><code>@ai-sdk/openai-compatible</code><a href="https://github.com/1"><code>@1</code></a>.0.30</li> <li><code>@ai-sdk/provider</code><a href="https://github.com/2"><code>@2</code></a>.0.1</li> <li><code>@ai-sdk/provider-utils</code><a href="https://github.com/3"><code>@3</code></a>.0.20</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/vercel/ai/commit/8792b307a75fef8850dd4f06883accca79f73ea9"><code>8792b30</code></a> Version Packages (<a href="https://redirect.github.com/vercel/ai/issues/11473">#11473</a>)</li> <li><a href="https://github.com/vercel/ai/commit/495341421eea27e82d06caaefa6aaa751dd753ec"><code>4953414</code></a> docs: changeset</li> <li><a href="https://github.com/vercel/ai/commit/15e037c3fdf2a9f6120861a801d9e2c04d3d7f8b"><code>15e037c</code></a> build: configure dist-tag for v5 maintenance releases</li> <li><a href="https://github.com/vercel/ai/commit/94bf6d8f05b73a59e25bb90dde5b1bffb55fc1ea"><code>94bf6d8</code></a> Version Packages (<a href="https://redirect.github.com/vercel/ai/issues/11419">#11419</a>)</li> <li><a href="https://github.com/vercel/ai/commit/4f0e5af98e704baaa91e86ca607552d341842fe9"><code>4f0e5af</code></a> Backport: Fix bedrock ConverseStream undocumented <code>/delta/stop_sequence</code> (<a href="https://redirect.github.com/vercel/ai/issues/11">#11</a>...</li> <li><a href="https://github.com/vercel/ai/commit/ca0e6516ce63698d3df334e3ec5871893db3256b"><code>ca0e651</code></a> Version Packages (<a href="https://redirect.github.com/vercel/ai/issues/11332">#11332</a>)</li> <li><a href="https://github.com/vercel/ai/commit/e3de98182860ddab117f3a81ab186b7e3fb036e0"><code>e3de981</code></a> Backport: feat (provider/gateway): add zero data retention provider option (#...</li> <li><a href="https://github.com/vercel/ai/commit/34da517fe5b7bc15137575144dc4036a796074da"><code>34da517</code></a> Version Packages (<a href="https://redirect.github.com/vercel/ai/issues/11329">#11329</a>)</li> <li><a href="https://github.com/vercel/ai/commit/cbc2dba9f02bb5c23822a6be3576cea06243e2a8"><code>cbc2dba</code></a> Backport: fix(provider/google): preserve nested empty object schemas and desc...</li> <li><a href="https://github.com/vercel/ai/commit/2c285e3870dc7153f48b14eb0c33af7b3ebc186c"><code>2c285e3</code></a> Version Packages (<a href="https://redirect.github.com/vercel/ai/issues/11325">#11325</a>)</li> <li>Additional commits viewable in <a href="https://github.com/vercel/ai/compare/@ai-sdk/xai@2.0.19...@ai-sdk/xai@2.0.43">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
2b60e41374 |
build(deps-dev): bump @typescript-eslint/parser from 8.39.0 to 8.51.0 (#16926)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.39.0 to 8.51.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/parser</code>'s releases</a>.</em></p> <blockquote> <h2>v8.51.0</h2> <h2>8.51.0 (2025-12-29)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> expose rule name via RuleModule interface (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11719">#11719</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] fix some cases to optional syntax (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11871">#11871</a>)</li> <li><strong>eslint-plugin:</strong> add namespace to plugin meta (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11885">#11885</a>)</li> <li><strong>tsconfig-utils:</strong> more informative error on parsing failures (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11888">#11888</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> fix crash and false positives in <code>no-useless-default-assignment</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11845">#11845</a>)</li> <li><strong>eslint-plugin:</strong> remove fixable from no-dynamic-delete rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11876">#11876</a>)</li> <li><strong>eslint-plugin:</strong> bump ts-api-utils to 2.2.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11881">#11881</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] handle MemberExpression in final chain position (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11835">#11835</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>mdm317</li> <li>Ulrich Stark</li> <li>Yannick Decat <a href="https://github.com/mho22"><code>@mho22</code></a></li> <li>Yukihiro Hasegawa <a href="https://github.com/y-hsgw"><code>@y-hsgw</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.50.1</h2> <h2>8.50.1 (2025-12-22)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [method-signature-style] ignore methods that return <code>this</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11813">#11813</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] correct handling of undefined vs. void (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11826">#11826</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Josh Goldberg ✨</li> <li>Tamashoo <a href="https://github.com/Tamashoo"><code>@Tamashoo</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.50.0</h2> <h2>8.50.0 (2025-12-15)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] add rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11720">#11720</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.51.0 (2025-12-29)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.50.1 (2025-12-22)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.50.0 (2025-12-15)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.49.0 (2025-12-08)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.48.1 (2025-12-02)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.48.0 (2025-11-24)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.47.0 (2025-11-17)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.46.4 (2025-11-10)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.46.3 (2025-11-03)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/e4c57f5996a9a3aed8a8c2b02712a9ce37db4928"><code>e4c57f5</code></a> chore(release): publish 8.51.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/d520b88990e1b20674dcfa3db3b0461c1d6d9aa2"><code>d520b88</code></a> chore(release): publish 8.50.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/c62e85874f0e482156a54b6744fe90a6f270012a"><code>c62e858</code></a> chore(release): publish 8.50.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/864595a44b56beb9870bf0f41d59cf7f8f48276a"><code>864595a</code></a> chore(release): publish 8.49.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/32b7e891bd60ae993e85018ceefa2a0c07590688"><code>32b7e89</code></a> chore(deps): update dependency <code>@vitest/eslint-plugin</code> to v1.5.1 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/11816">#11816</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/8fe34456f75c1d1e8a4dc518306d5ab93422efec"><code>8fe3445</code></a> chore(release): publish 8.48.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/6fb1551634b2ff11718e579098f69e041a2ff92c"><code>6fb1551</code></a> chore(release): publish 8.48.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/a4dc42ac541139f0da344550bce7accd8f3d366a"><code>a4dc42a</code></a> chore: migrate to nx 22 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/11780">#11780</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/28cf8032c2492bb3c55dd7dd145249f2246034ad"><code>28cf803</code></a> chore(release): publish 8.47.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/843f144797c0a94272cdb002c00c5639cf0797c6"><code>843f144</code></a> chore(release): publish 8.46.4</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.51.0/packages/parser">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@typescript-eslint/parser</code> since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abdullah <125115953+mabdullahabaid@users.noreply.github.com> |
||
|
|
cc7fd99879 |
build(deps): bump @nestjs/schedule from 6.0.1 to 6.1.0 (#16925)
Bumps [@nestjs/schedule](https://github.com/nestjs/schedule) from 6.0.1 to 6.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/nestjs/schedule/releases"><code>@nestjs/schedule</code>'s releases</a>.</em></p> <blockquote> <h2>Release 6.1.0</h2> <h2>What's Changed</h2> <ul> <li>feat(module): add forRootAsync method to allow async module registration by <a href="https://github.com/daanhegger"><code>@daanhegger</code></a> in <a href="https://redirect.github.com/nestjs/schedule/pull/2142">nestjs/schedule#2142</a></li> <li>fix(deps): update dependency cron to v4.3.5 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/nestjs/schedule/pull/2133">nestjs/schedule#2133</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/daanhegger"><code>@daanhegger</code></a> made their first contribution in <a href="https://redirect.github.com/nestjs/schedule/pull/2142">nestjs/schedule#2142</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/nestjs/schedule/compare/6.0.1...6.1.0">https://github.com/nestjs/schedule/compare/6.0.1...6.1.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/nestjs/schedule/commit/76b802bb5b2bf8c5325bbda8883039e7cd2fa9ab"><code>76b802b</code></a> chore(): release v6.1.0</li> <li><a href="https://github.com/nestjs/schedule/commit/4973da5cd2a727e8bb8e55021742234f675c98bb"><code>4973da5</code></a> Merge pull request <a href="https://redirect.github.com/nestjs/schedule/issues/2124">#2124</a> from nestjs/renovate/cimg-node-24.x</li> <li><a href="https://github.com/nestjs/schedule/commit/dca5b7c6b6f74e5e3299dae77253f0e34431ba09"><code>dca5b7c</code></a> Merge pull request <a href="https://redirect.github.com/nestjs/schedule/issues/2133">#2133</a> from nestjs/renovate/cron-4.x</li> <li><a href="https://github.com/nestjs/schedule/commit/7c00b0b9ebb5e49c9707bd6c98bc428851a20c65"><code>7c00b0b</code></a> Merge pull request <a href="https://redirect.github.com/nestjs/schedule/issues/2142">#2142</a> from daanhegger/add-async-for-root</li> <li><a href="https://github.com/nestjs/schedule/commit/8ee5a5a3e0908539604d2d02d8b9d8e5457f44df"><code>8ee5a5a</code></a> chore(deps): update commitlint monorepo to v20.2.0 (<a href="https://redirect.github.com/nestjs/schedule/issues/2151">#2151</a>)</li> <li><a href="https://github.com/nestjs/schedule/commit/b911f17b9ae5f95b3ef2567b3988e28471abc436"><code>b911f17</code></a> fix(deps): update dependency cron to v4.3.5</li> <li><a href="https://github.com/nestjs/schedule/commit/56ed37295b97ce3bf75e64875d842d7f27cf306d"><code>56ed372</code></a> chore(deps): update dependency prettier to v3.7.4 (<a href="https://redirect.github.com/nestjs/schedule/issues/2150">#2150</a>)</li> <li><a href="https://github.com/nestjs/schedule/commit/52f5c45eb5d4e1dbfae656993fd6de96442e8f1a"><code>52f5c45</code></a> chore(deps): update dependency typescript-eslint to v8.48.1 (<a href="https://redirect.github.com/nestjs/schedule/issues/2149">#2149</a>)</li> <li><a href="https://github.com/nestjs/schedule/commit/7fa5d15c2ad6a60a593fb8e598275ff0575ad8b4"><code>7fa5d15</code></a> chore(deps): update dependency ts-jest to v29.4.6 (<a href="https://redirect.github.com/nestjs/schedule/issues/2148">#2148</a>)</li> <li><a href="https://github.com/nestjs/schedule/commit/056a618ea1aa165c1d9936f5eb7a01247aa11692"><code>056a618</code></a> chore(deps): update dependency prettier to v3.7.3 (<a href="https://redirect.github.com/nestjs/schedule/issues/2147">#2147</a>)</li> <li>Additional commits viewable in <a href="https://github.com/nestjs/schedule/compare/6.0.1...6.1.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
21ff42074d |
feat: implement skills system for AI agents (#16865)
## Summary This PR introduces a Skills system for AI agents, inspired by the [Agent Skills specification](https://agentskills.io/specification). ## Changes ### Backend - **SkillEntity**: New database entity with migration for storing skills - **V2 Sync Mechanism**: Implemented FlatSkill, builders, validators, and action handlers following the v2 flat entity pattern - **Standard Skills**: Pre-defined skills (workflow-building, data-manipulation, dashboard-building, metadata-building, research, code-interpreter, xlsx, pdf, docx, pptx) - **GraphQL API**: CRUD operations for skills with proper guards and permissions - **Workspace Cache**: Integrated skills into the workspace cache system ### Frontend - **Skills Table**: Searchable table in AI settings showing all skills - **Skill Form**: Create/edit page with Label (primary), Description, and Content (markdown editor) - **API Name**: Following existing patterns, name is derived from label with advanced settings toggle for custom API names - **Standard vs Custom**: Standard skills are read-only, custom skills can be edited/deleted ## Key Design Decisions - Skills are stored in the database (Salesforce-like approach) rather than files - Name is derived from Label by default (isLabelSyncedWithName pattern) - Skills reference functions/files via @ mentions in markdown content rather than explicit relations - Standard skills are synced from code, custom skills are created via UI ## Screenshots Skills table and form UI follow existing settings patterns. ## Testing - [x] Lint passes - [x] Typecheck passes - [ ] CI tests |
||
|
|
61addf8b62 |
fix(email threads): linkify Email body so that URL links are properly formatted (#16415)
Closes #16396 Added [linkify-react](https://www.npmjs.com/package/linkify-react) and [linkifyjs](https://www.npmjs.com/package/linkifyjs?activeTab=versions) to dependancies. Both are widely used libraries with millions of weekly downloads. Both of them have 0 dependancies on other packages, so should be safe to use. ### Before URLs were shown as plain text <img width="395" height="699" alt="Screenshot 2025-12-09 at 12 25 03 PM" src="https://github.com/user-attachments/assets/772e6d03-8c48-45a1-985c-f775bbd3465c" /> ### After URLs are shown as link and are clickable now. <img width="367" height="641" alt="Screenshot 2025-12-09 at 2 50 29 PM" src="https://github.com/user-attachments/assets/d15bf23a-7cae-4cd4-b9da-e99706c7db38" /> <img width="376" height="656" alt="Screenshot 2025-12-09 at 2 50 46 PM" src="https://github.com/user-attachments/assets/ba112a65-7550-47e3-b42f-83b94c08bfa6" /> --------- Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com> |
||
|
|
ab95437065 |
Create query runner context from request context instead of schema builder internal context (#16858)
## Context
This PR refactors how authentication context is handled in the GraphQL
resolver layer. Previously, the auth context was baked into the schema
builder context at schema creation time. Now, the auth context is
extracted from the request at query execution time, enabling better
schema caching.
## Implementation
- Removed user-specific data from schema cache key: The schema cache key
no longer includes userId and apiKeyId, allowing the same schema to be
shared across all users in a workspace
- Cache key simplified from
${workspaceId}-${userId}-${apiKeyId}-${url}-${cacheVersion} to
${workspaceId}-${url}-${cacheVersion}
- Removed authContext from WorkspaceSchemaBuilderContext: The schema
builder context is now purely about object/field metadata, not about who
is accessing it
- Created createQueryRunnerContext utility: A new helper that combines
the schema builder context with the auth context from the actual request
- Updated all resolver factories: All 15 resolver factories now use
createQueryRunnerContext to build the full context needed by query
runners at execution time
## Benefits
- Improved cache efficiency: GraphQL schemas are now cached per
workspace rather than per user, significantly reducing memory usage and
schema regeneration
- Cleaner separation of concerns: Schema building (metadata-driven) is
now separate from query execution (auth-driven)
- Fresh auth context: Auth context is always retrieved from the current
request, ensuring it reflects the latest state
- Reduced complexity: Simplified the schema creation path by removing
unnecessary auth checks
## Next steps
- Introduce a hash in redis and expose it in the req object so the yoga
patch can access the hash and use it during its own cache key
computation. This way we will be able to invalidate the local cache in
yoga graphql schema generation without restarting pods.
|
||
|
|
3096769616 |
build(deps): bump @monaco-editor/react from 4.6.0 to 4.7.0 (#16829)
Bumps [@monaco-editor/react](https://github.com/suren-atoyan/monaco-react) from 4.6.0 to 4.7.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/suren-atoyan/monaco-react/releases"><code>@monaco-editor/react</code>'s releases</a>.</em></p> <blockquote> <h2>v4.7.0</h2> <ul> <li>package: update <code>@monaco-editor/loader</code> to the latest (<code>v1.5.0</code>) version (this uses <code>monaco-editor</code> <code>v0.52.2</code>)</li> <li>package: inherit all changes from <code>v4.7.0-rc.0</code></li> </ul> <h2>v4.7.0-rc.0</h2> <ul> <li>package: add support for react/react-dom <code>v19</code> as a peer dependency</li> <li>playground: update playground's React version to 19</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/suren-atoyan/monaco-react/blob/master/CHANGELOG.md"><code>@monaco-editor/react</code>'s changelog</a>.</em></p> <blockquote> <h2>4.7.0</h2> <ul> <li>package: update <code>@monaco-editor/loader</code> to the latest (v1.5.0) version (this uses monaco-editor v0.52.2)</li> <li>package: inherit all changes from v4.7.0-rc.0</li> </ul> <h2>4.7.0-rc.0</h2> <ul> <li>package: add support for react/react-dom v19 as a peer dependency</li> <li>playground: update playground's React version to 19</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/eb120e66378471315620fe5339b73ba003f199ad"><code>eb120e6</code></a> update package to 4.7.0 version</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/cdd070c9f080caf4a9a7b13c2c34fa4e10edc9bf"><code>cdd070c</code></a> update snapshots</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/55a063e45d2f2672884b77059ac97850758764ae"><code>55a063e</code></a> update <code>@monaco-editor/loader</code> to the latest (v1.5.0) version</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/52e8c75616e09730b7b1a0b5822385212a082ce8"><code>52e8c75</code></a> update package to 4.7.0-rc.o version</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/e72be4edc1b4492eae9f7d85671ee61a43a6aee8"><code>e72be4e</code></a> add react 19 to peerDependencies</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/642be903a9dd21d6fe639ab5c92c234dad77c813"><code>642be90</code></a> update playground's react version to 19</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/ceee344fbe26285dabb0fe90985fe18ec867211c"><code>ceee344</code></a> Add Monaco-React AI Bot in Readme (<a href="https://redirect.github.com/suren-atoyan/monaco-react/issues/655">#655</a>)</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/f7cac39fbad0f062dc66458831aaf57a7126dd40"><code>f7cac39</code></a> add electron blog post link</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/ea601cf9f6fe9f2cc0c6271d6a9cde9a332b6dc0"><code>ea601cf</code></a> add tea constitution file</li> <li><a href="https://github.com/suren-atoyan/monaco-react/commit/3327f3c368cb6d56c02f2df8a9d45177ce6f52e9"><code>3327f3c</code></a> add GitHub sponsor button</li> <li>See full diff in <a href="https://github.com/suren-atoyan/monaco-react/compare/v4.6.0...v4.7.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abdullah <125115953+mabdullahabaid@users.noreply.github.com> |