mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-19 19:16:29 +08:00
eaa1bc6bf10dbfe16ab6d15f3395207141e6b279
1556 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
1d38e5787b |
feat(editor): drag handle widget extension (#11962)
Closes: BS-3220 |
||
|
|
b66d2d58a1 |
feat(editor): surface block extension (#11961)
Closes: BS-3204 |
||
|
|
d6e7039b7b |
refactor(editor): remove unused block dependencies (#11959)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Chores** - Updated package dependencies to reduce the number of direct dependencies for improved maintainability. No changes to user-facing features or functionality. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
45df4568a4 |
feat(admin): bump react-router and adapt new routes package (#11887)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added new admin routes: "auth", "setup", and "notFound" for improved navigation and access within the admin interface. - Introduced a utility for simplified and flexible lazy loading of React components with fallback support. - **Improvements** - Updated routing structure in the admin frontend for clearer route management and enhanced Sentry integration. - Centralized route definitions for easier maintenance and consistency. - Upgraded dependencies to support the latest React Router and React versions. - Enhanced asynchronous handling in setup form navigation. - **Chores** - Updated project references and workspace dependencies for better package management. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
5d76be6736 |
feat(server): adapt 4o image (#11956)
fix AI-88 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for the new image generation model "gpt-image-1" in both backend and frontend. - Updated available prompt options to include "gpt-image-1" for image creation actions. - **Improvements** - Set a 5-minute timeout for image generation requests to improve reliability. - **Tests** - Expanded test coverage to validate image generation using the new "gpt-image-1" prompt. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
2200bd7b70 |
feat(editor): text gfx extension (#11951)
Closes: BS-3213 |
||
|
|
9d90899344 |
feat(editor): group gfx extension (#11950)
Closes: BS-3208 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new group view extension, enhancing how group elements are handled and displayed. - Added new store and view modules for group-related features, improving modularity and integration. - **Refactor** - Updated the group element architecture to use extension-based registration for views, toolbars, and effects. - Simplified and reorganized exports for group and text modules. - **Chores** - Updated dependencies and project references to improve build consistency and compatibility. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
75d36a09e5 |
chore: bump up nestjs to v11.1.0 (#11916)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`11.0.20` -> `11.1.0`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/11.0.20/11.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`11.0.20` -> `11.1.0`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/11.0.20/11.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`11.0.20` -> `11.1.0`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/11.0.20/11.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`11.0.20` -> `11.1.0`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/11.0.20/11.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`11.0.20` -> `11.1.0`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/11.0.20/11.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>nestjs/nest (@​nestjs/common)</summary> ### [`v11.1.0`](https://redirect.github.com/nestjs/nest/compare/v11.0.21...112450bb0cbb847fbff5bec46a1c493587564305) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.21...v11.1.0) ### [`v11.0.21`](https://redirect.github.com/nestjs/nest/compare/v11.0.20...729a9cd7a3b4fcefb0271dde130911db9b0f9ed2) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.20...v11.0.21) </details> <details> <summary>nestjs/nest (@​nestjs/core)</summary> ### [`v11.1.0`](https://redirect.github.com/nestjs/nest/compare/v11.0.21...112450bb0cbb847fbff5bec46a1c493587564305) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.21...v11.1.0) ### [`v11.0.21`](https://redirect.github.com/nestjs/nest/compare/v11.0.20...729a9cd7a3b4fcefb0271dde130911db9b0f9ed2) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.20...v11.0.21) </details> <details> <summary>nestjs/nest (@​nestjs/platform-express)</summary> ### [`v11.1.0`](https://redirect.github.com/nestjs/nest/compare/v11.0.21...112450bb0cbb847fbff5bec46a1c493587564305) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.21...v11.1.0) ### [`v11.0.21`](https://redirect.github.com/nestjs/nest/compare/v11.0.20...729a9cd7a3b4fcefb0271dde130911db9b0f9ed2) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.20...v11.0.21) </details> <details> <summary>nestjs/nest (@​nestjs/platform-socket.io)</summary> ### [`v11.1.0`](https://redirect.github.com/nestjs/nest/releases/tag/v11.1.0) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.21...v11.1.0) ##### v11.1.0 (2025-04-23) ##### Enhancements - `microservices` - [#​14540](https://redirect.github.com/nestjs/nest/pull/14540) feat(microservices): add support for topic exchange (rabbitmq) ([@​kamilmysliwiec](https://redirect.github.com/kamilmysliwiec)) ##### Committers: 1 - Kamil Mysliwiec ([@​kamilmysliwiec](https://redirect.github.com/kamilmysliwiec)) ### [`v11.0.21`](https://redirect.github.com/nestjs/nest/compare/v11.0.20...729a9cd7a3b4fcefb0271dde130911db9b0f9ed2) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.20...v11.0.21) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNDguNCIsInVwZGF0ZWRJblZlciI6IjM5LjI0OC40IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
0cd7111f20 |
feat(editor): connector gfx extension (#11940)
Closes: BS-3207 |
||
|
|
9c0633b75c |
feat(editor): template gfx extension (#11939)
Closes: BS-3212 |
||
|
|
f0a233368d |
feat(editor): mindmap gfx extension (#11936)
Closes: BS-3209 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced mind map view and store extensions, enhancing mind map integration and conversion to plain text and markdown formats. - Added priority property to quick tools, allowing for custom ordering in the toolbar. - **Improvements** - Toolbar quick tools are now sorted by priority for a more intuitive user experience. - Updated toolbar and extension configurations to streamline available tools and extensions. - **Bug Fixes** - Conditional registration of certain components ensures correct behavior in edgeless mode. - **Chores** - Updated dependencies and project references to improve module integration and maintainability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
bc0530a708 |
feat(editor) shape gfx extension (#11928)
Closes: BS-3211 |
||
|
|
61121ab727 |
feat(editor): brush and note gfx extension (#11927)
Closes: BS-3206 Closes: BS-3210 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced new brush and note view extensions, enhancing integration and extensibility for brush and note tools. - Added store extension for brush tools, allowing for improved adapter integration. - **Improvements** - Expanded module exports for brush and note graphics, making store and view functionalities more accessible. - Added new dependencies to support extension loading and improved project structure. - **Refactor** - Updated extension arrays and toolbars to use the new view and store extensions for brush and note tools. - Removed legacy brush and note tools, effects, and toolbar extensions in favor of the new extension-based approach. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
ea391779dd |
feat(editor): inline preset extension (#11919)
Closes: BS-3214 |
||
|
|
5d9a3aac5b |
Revert "build: allow node package depends on workspace packages (#11892)"
This reverts commit
|
||
|
|
c00671dd84 | build: allow node package depends on workspace packages (#11892) | ||
|
|
64997d4a0e | feat(infra): route package (#10353) | ||
|
|
16831e8c0e |
feat(editor): reference, mention and latex inline extension (#11914)
Closes: BS-3215 Closes: BS-3218 Closes: BS-3217 |
||
|
|
200015a811 |
feat(core): calendar integration storage (#11788)
close AF-2501, AF-2504 |
||
|
|
b1aecfc1c4 |
feat(editor): link inline extension (#11910)
Closes: BS-3216 |
||
|
|
2510e7a9a4 |
feat(editor): inline footnote extension (#11908)
Closes: BS-3219 |
||
|
|
24edfc75bd |
feat(editor): table extension (#11906)
Closes: BS-3205 |
||
|
|
43966a6c6b |
feat(editor): use store extension manager (#11891)
Closes: BS-3284 |
||
|
|
bbdea71686 |
fix(editor): add footnote url markdown preprocessor to avoid link node parsing (#11888)
Closes: [BS-3282](https://linear.app/affine-design/issue/BS-3282/预处理-footnote-definition-中的-url-避免-markdown-link-node-parsing) |
||
|
|
bfd3c64615 | test: add mutex to clipboard copy & paste operation to reduce flaky (#11884) | ||
|
|
6d6504e2af |
feat(editor): replace spec provider with extension manager (#11861)
Closes: BS-3273 |
||
|
|
bc8774580e |
chore: bump up oxlint version to v0.16.7 (#11870)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [oxlint](https://oxc.rs) ([source](https://redirect.github.com/oxc-project/oxc/tree/HEAD/npm/oxlint)) | [`0.16.6` -> `0.16.7`](https://renovatebot.com/diffs/npm/oxlint/0.16.6/0.16.7) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>oxc-project/oxc (oxlint)</summary> ### [`v0.16.7`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.16.7): oxlint v0.16.7 [Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.16.6...oxlint_v0.16.7) #### \[0.16.7] - 2025-04-21 - [`7212803`](https://redirect.github.com/oxc-project/oxc/commit/7212803) ast: \[**BREAKING**] Change `TSInterfaceDeclaration::extends` from `Option<Vec>` to `Vec` ([#​10472](https://redirect.github.com/oxc-project/oxc/issues/10472)) (overlookmotel) - [`7284135`](https://redirect.github.com/oxc-project/oxc/commit/7284135) ast: \[**BREAKING**] Remove `trailing_commas` from `ArrayExpression` and `ObjectExpression` ([#​10431](https://redirect.github.com/oxc-project/oxc/issues/10431)) (Boshen) ##### Features - [`bb8a078`](https://redirect.github.com/oxc-project/oxc/commit/bb8a078) language_server: Use linter runtime ([#​10268](https://redirect.github.com/oxc-project/oxc/issues/10268)) (Sysix) - [`c94e6b8`](https://redirect.github.com/oxc-project/oxc/commit/c94e6b8) linter: Allow `eqeqeq` to always be dangerously fixable ([#​10499](https://redirect.github.com/oxc-project/oxc/issues/10499)) (camchenry) ##### Bug Fixes - [`df488d4`](https://redirect.github.com/oxc-project/oxc/commit/df488d4) language_server: Workspace edits as one batch when `source.fixAll.oxc` is the context ([#​10428](https://redirect.github.com/oxc-project/oxc/issues/10428)) (Sysix) - [`2fc083c`](https://redirect.github.com/oxc-project/oxc/commit/2fc083c) linter: Incorrect fix for prefer start ends with ([#​10525](https://redirect.github.com/oxc-project/oxc/issues/10525)) (camc314) - [`020d8f8`](https://redirect.github.com/oxc-project/oxc/commit/020d8f8) linter: Fix auto-fix issue for eslint/no-else-return ([#​10494](https://redirect.github.com/oxc-project/oxc/issues/10494)) (yefan) - [`f0c1eff`](https://redirect.github.com/oxc-project/oxc/commit/f0c1eff) linter: False positve in no-unused-vars ([#​10470](https://redirect.github.com/oxc-project/oxc/issues/10470)) (camc314) - [`d690060`](https://redirect.github.com/oxc-project/oxc/commit/d690060) linter: Fix the auto-fix issue of the eslint/no-plusplus rule ([#​10469](https://redirect.github.com/oxc-project/oxc/issues/10469)) (yefan) - [`72d5074`](https://redirect.github.com/oxc-project/oxc/commit/72d5074) linter: False positive in `eslint/no-redeclare` ([#​10402](https://redirect.github.com/oxc-project/oxc/issues/10402)) (shulaoda) - [`c1f5623`](https://redirect.github.com/oxc-project/oxc/commit/c1f5623) linter: Add check for plugin_name when applying LintFilterKind::Rule ([#​10339](https://redirect.github.com/oxc-project/oxc/issues/10339)) (Ulrich Stark) - [`4e1f536`](https://redirect.github.com/oxc-project/oxc/commit/4e1f536) linter: Config path resolution when path contains '..' syntax ([#​10367](https://redirect.github.com/oxc-project/oxc/issues/10367)) (Florian Bopp) - [`58ab8ff`](https://redirect.github.com/oxc-project/oxc/commit/58ab8ff) parser: Adjust class start position when decorators are involved ([#​10438](https://redirect.github.com/oxc-project/oxc/issues/10438)) (Boshen) ##### Performance - [`21f3175`](https://redirect.github.com/oxc-project/oxc/commit/21f3175) langage_server: Prebuild `IsolatedLintHandler` ([#​10406](https://redirect.github.com/oxc-project/oxc/issues/10406)) (Sysix) - [`62178c2`](https://redirect.github.com/oxc-project/oxc/commit/62178c2) linter: Replace `phf_set` with `array` for `DOM_PROPERTIES_NAMES` ([#​10501](https://redirect.github.com/oxc-project/oxc/issues/10501)) (shulaoda) - [`9280707`](https://redirect.github.com/oxc-project/oxc/commit/9280707) linter: Replace `phf_set` with `array` for `DOM_ATTRIBUTES_TO_CAMEL` ([#​10500](https://redirect.github.com/oxc-project/oxc/issues/10500)) (shulaoda) - [`0a4f9d9`](https://redirect.github.com/oxc-project/oxc/commit/0a4f9d9) linter: Replace `phf_set` with `array` for `ATTRIBUTE_TAGS_MAP` ([#​10498](https://redirect.github.com/oxc-project/oxc/issues/10498)) (shulaoda) - [`09f7358`](https://redirect.github.com/oxc-project/oxc/commit/09f7358) linter: Replace `phf_set` with `array` in `jsdoc/check-tag-names` ([#​10485](https://redirect.github.com/oxc-project/oxc/issues/10485)) (shulaoda) - [`da87390`](https://redirect.github.com/oxc-project/oxc/commit/da87390) linter: Replace `phf_set` with `array` in `jsx-a11y/autocomplete-valid` ([#​10484](https://redirect.github.com/oxc-project/oxc/issues/10484)) (shulaoda) - [`d4033bc`](https://redirect.github.com/oxc-project/oxc/commit/d4033bc) linter: Replace `phf_set` with `array` in `globals.rs` ([#​10483](https://redirect.github.com/oxc-project/oxc/issues/10483)) (shulaoda) - [`7e08618`](https://redirect.github.com/oxc-project/oxc/commit/7e08618) linter: Replace `phf_set` with `array` in `unicorn/prefer-add-event-listener` ([#​10451](https://redirect.github.com/oxc-project/oxc/issues/10451)) (dalaoshu) - [`e2af873`](https://redirect.github.com/oxc-project/oxc/commit/e2af873) linter: Replace `phf_set` with `array` in `unicorn/no-useless-undefined` ([#​10450](https://redirect.github.com/oxc-project/oxc/issues/10450)) (dalaoshu) - [`af635fb`](https://redirect.github.com/oxc-project/oxc/commit/af635fb) linter: Replace `phf_set` with `array` in `nextjs/no-unwanted-polyfillio` ([#​10452](https://redirect.github.com/oxc-project/oxc/issues/10452)) (shulaoda) - [`c0f0369`](https://redirect.github.com/oxc-project/oxc/commit/c0f0369) linter: Replace `phf_set` with `array` in `utils/vitest` ([#​10427](https://redirect.github.com/oxc-project/oxc/issues/10427)) (shulaoda) - [`17c7bda`](https://redirect.github.com/oxc-project/oxc/commit/17c7bda) linter: Replace `phf_set` with `array` in `unicorn/prefer-type-error` ([#​10426](https://redirect.github.com/oxc-project/oxc/issues/10426)) (shulaoda) - [`5cde29b`](https://redirect.github.com/oxc-project/oxc/commit/5cde29b) linter: Replace `phf_set` with `array` in `react/void-dom-elements-no-children` ([#​10425](https://redirect.github.com/oxc-project/oxc/issues/10425)) (shulaoda) - [`7ef1e0d`](https://redirect.github.com/oxc-project/oxc/commit/7ef1e0d) linter: Replace `phf_set` with `array` in `unicorn/new-for-builtins` ([#​10424](https://redirect.github.com/oxc-project/oxc/issues/10424)) (shulaoda) - [`50fd839`](https://redirect.github.com/oxc-project/oxc/commit/50fd839) linter: Replace `phf_set` with `array` in `utils/mod.rs` ([#​10405](https://redirect.github.com/oxc-project/oxc/issues/10405)) (shulaoda) - [`a7ac137`](https://redirect.github.com/oxc-project/oxc/commit/a7ac137) linter: Replace `phf_set` with `array` in `unicorn/prefer-set-has` ([#​10398](https://redirect.github.com/oxc-project/oxc/issues/10398)) (shulaoda) ##### Documentation - [`5d1dfb5`](https://redirect.github.com/oxc-project/oxc/commit/5d1dfb5) linter: Fix wording in the eqeqeq docs ([#​10401](https://redirect.github.com/oxc-project/oxc/issues/10401)) (Connor Pearson) ##### Refactor - [`8731f14`](https://redirect.github.com/oxc-project/oxc/commit/8731f14) editor: Output error when custom server path is not accessible ([#​10518](https://redirect.github.com/oxc-project/oxc/issues/10518)) (Sysix) - [`2935103`](https://redirect.github.com/oxc-project/oxc/commit/2935103) language_server: Report info as warning instead of error when falling back to default config ([#​10517](https://redirect.github.com/oxc-project/oxc/issues/10517)) (Sysix) - [`5ab4d40`](https://redirect.github.com/oxc-project/oxc/commit/5ab4d40) linter: Simplify error handling ([#​10404](https://redirect.github.com/oxc-project/oxc/issues/10404)) (camchenry) ##### Testing - [`83baf8b`](https://redirect.github.com/oxc-project/oxc/commit/83baf8b) editor: Correct test diagnostic for import plugin ([#​10453](https://redirect.github.com/oxc-project/oxc/issues/10453)) (Sysix) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNDguNCIsInVwZGF0ZWRJblZlciI6IjM5LjI0OC40IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
8966e8440b |
chore: bump up @blocksuite/icons version to v2.2.13 (#11838)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.2.12` -> `2.2.13`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.2.12/2.2.13) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>toeverything/icons (@​blocksuite/icons)</summary> ### [`v2.2.13`](https://redirect.github.com/toeverything/icons/compare/00a749af2e7ba668a3b31ad903972ea090024a62...1775fb2908503320128a2df5ce7a17663e8438cb) [Compare Source](https://redirect.github.com/toeverything/icons/compare/00a749af2e7ba668a3b31ad903972ea090024a62...1775fb2908503320128a2df5ce7a17663e8438cb) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNDguNCIsInVwZGF0ZWRJblZlciI6IjM5LjI0OC40IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
846410cdb6 |
feat(editor): note extension (#11856)
Closes: BS-3200 Closes: BS-3201 |
||
|
|
7c79b1f024 |
feat(editor): latex and list extensions (#11851)
Closes: BS-3198 Closes: BS-3199 |
||
|
|
df6e17b82f |
feat(editor): frame and image extensions (#11849)
Closes: BS-3196 Closes: BS-3197 |
||
|
|
92ac8e3cad |
feat(editor): embed extension (#11848)
Closes: BS-3195 |
||
|
|
15a5264352 |
feat(editor): divider and edgeless text extensions (#11846)
Closes: BS-3193 Closes: BS-3194 |
||
|
|
652d42ba1e |
feat(editor): scaffolding store and view manager in affine (#11840)
Closes: BS-3254 |
||
|
|
5244ff9b98 |
feat(editor): data view and database extension (#11837)
Closes: BS-3191 Closes: BS-3192 |
||
|
|
93b7c288cb |
feat(editor): callout and code extension (#11827)
Closes: BS-3243 Closes: BS-3190 |
||
|
|
a6d0894ce1 |
feat(editor): bookmark and attachment extension (#11824)
Closes: BS-3188 Closes: BS-3189 |
||
|
|
70ddae15ef |
feat(editor): affine extension provider and manager (#11822)
Closes: BS-3186
# @blocksuite/affine-ext-loader
Blocksuite extension loader system for AFFiNE, providing a structured way to manage and load extensions in different contexts.
## Usage
### Basic Extension Provider
```typescript
import { BaseExtensionProvider } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';
// Create a custom provider with options
class MyProvider extends BaseExtensionProvider<'my-scope', { enabled: boolean }> {
name = 'MyProvider';
schema = z.object({
enabled: z.boolean(),
});
setup(context: Context<'my-scope'>, options?: { enabled: boolean }) {
super.setup(context, options);
// Custom setup logic
}
}
```
### Store Extensions
```typescript
import { StoreExtensionProvider, StoreExtensionManager } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';
// Create a store provider with custom options
class MyStoreProvider extends StoreExtensionProvider<{ cacheSize: number }> {
override name = 'MyStoreProvider';
override schema = z.object({
cacheSize: z.number().min(0),
});
override setup(context: StoreExtensionContext, options?: { cacheSize: number }) {
super.setup(context, options);
context.register([Ext1, Ext2, Ext3]);
}
}
// Create and use the store extension manager
const manager = new StoreExtensionManager([MyStoreProvider]);
manager.configure(MyStoreProvider, { cacheSize: 100 });
const extensions = manager.get('store');
```
### View Extensions
```typescript
import { ViewExtensionProvider, ViewExtensionManager } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';
// Create a view provider with custom options
class MyViewProvider extends ViewExtensionProvider<{ theme: string }> {
override name = 'MyViewProvider';
override schema = z.object({
theme: z.enum(['light', 'dark']),
});
override setup(context: ViewExtensionContext, options?: { theme: string }) {
super.setup(context, options);
context.register([CommonExt]);
if (context.scope === 'page') {
context.register([PageExt]);
} else if (context.scope === 'edgeless') {
context.register([EdgelessExt]);
}
if (options?.theme === 'dark') {
context.register([DarkModeExt]);
}
}
// Override effect to run one-time initialization logic
override effect() {
// This will only run once per provider class
console.log('Initializing MyViewProvider');
// Register lit elements
this.registerLitElements();
}
}
// Create and use the view extension manager
const manager = new ViewExtensionManager([MyViewProvider]);
manager.configure(MyViewProvider, { theme: 'dark' });
// Get extensions for different view scopes
const pageExtensions = manager.get('page');
const edgelessExtensions = manager.get('edgeless');
```
### One-time Initialization with Effect
View extensions support one-time initialization through the `effect` method. This method is called automatically during setup, but only once per provider class. It's useful for:
- Initializing global state
- Registering lit elements
- Setting up shared resources
```typescript
class MyViewProvider extends ViewExtensionProvider {
override effect() {
// This will only run once, even if multiple instances are created
initializeGlobalState();
registerLitElements();
setupGlobalEventListeners();
}
}
```
### Available View Scopes
The view extension system supports the following scopes:
- `page` - Standard page view
- `edgeless` - Edgeless (whiteboard) view
- `preview-page` - Page preview view
- `preview-edgeless` - Edgeless preview view
- `mobile-page` - Mobile page view
- `mobile-edgeless` - Mobile edgeless view
### Extension Configuration
Extensions can be configured using the `configure` method:
```typescript
// Set configuration directly
manager.configure(MyProvider, { enabled: true });
// Update configuration using a function
manager.configure(MyProvider, prev => {
if (!prev) return prev;
return {
...prev,
enabled: !prev.enabled,
};
});
// Remove configuration
manager.configure(MyProvider, undefined);
```
### Dependency Injection
Both store and view extension managers support dependency injection:
```typescript
// Access the manager through the di container
const viewManager = std.get(ViewExtensionManagerIdentifier);
const pagePreviewExtension = viewManager.get('preview-page');
```
|
||
|
|
95dbda24fc | feat(y-octo): import y-octo monorepo (#11750) | ||
|
|
2242a4bd8e |
chore: bump up nestjs (#11819)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nestjs-cls/transactional](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`2.6.1` -> `2.7.0`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional/2.6.1/2.7.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs-cls/transactional-adapter-prisma](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`1.2.19` -> `1.2.20`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.19/1.2.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>Papooch/nestjs-cls (@​nestjs-cls/transactional)</summary> ### [`v2.7.0`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/%40nestjs-cls/transactional%402.7.0) [Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.6.1...@nestjs-cls/transactional@2.7.0) ##### Dependencies - update nestjs-related deps ([a10e589](https://redirect.github.com/Papooch/nestjs-cls/commits/a10e589)) - update testing deps ([d92a42d](https://redirect.github.com/Papooch/nestjs-cls/commits/d92a42d)) - update dev deps ([f22b578](https://redirect.github.com/Papooch/nestjs-cls/commits/f22b578)) - update dev deps ([58874d3](https://redirect.github.com/Papooch/nestjs-cls/commits/58874d3)) ##### Features - **transactional**: introduce no-op adapter for testing ([0f9a374](https://redirect.github.com/Papooch/nestjs-cls/commits/0f9a374)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNDguNCIsInVwZGF0ZWRJblZlciI6IjM5LjI0OC40IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
67832aab09 | chore(editor): update file icons (#11826) | ||
|
|
0b33fb6dbf |
chore: bump up @blocksuite/icons version to v2.2.12 (#11752)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.2.11` -> `2.2.12`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.2.11/2.2.12) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>toeverything/icons (@​blocksuite/icons)</summary> ### [`v2.2.12`](https://redirect.github.com/toeverything/icons/compare/be28c231eacc058c9384a08a26467a5a641d9cea...00a749af2e7ba668a3b31ad903972ea090024a62) [Compare Source](https://redirect.github.com/toeverything/icons/compare/be28c231eacc058c9384a08a26467a5a641d9cea...00a749af2e7ba668a3b31ad903972ea090024a62) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
ec58850aca |
chore: bump up @nestjs/schedule version to v6 (#11780)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nestjs/schedule](https://redirect.github.com/nestjs/schedule) | [`^5.0.1` -> `^6.0.0`](https://renovatebot.com/diffs/npm/@nestjs%2fschedule/5.0.1/6.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>nestjs/schedule (@​nestjs/schedule)</summary> ### [`v6.0.0`](https://redirect.github.com/nestjs/schedule/releases/tag/6.0.0) [Compare Source](https://redirect.github.com/nestjs/schedule/compare/5.0.1...6.0.0) #### What's Changed - fix(deps): update dependency cron to v4 by [@​renovate](https://redirect.github.com/renovate) in [https://github.com/nestjs/schedule/pull/1899](https://redirect.github.com/nestjs/schedule/pull/1899) **Full Changelog**: https://github.com/nestjs/schedule/compare/5.0.1...6.0.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
4a7f57ae3b |
chore: bump up @blocksuite/icons version to v2.2.11 (#11743)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.2.10` -> `2.2.11`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.2.10/2.2.11) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>toeverything/icons (@​blocksuite/icons)</summary> ### [`v2.2.11`](https://redirect.github.com/toeverything/icons/compare/12ccbd9591b872f907e9350afd09bce4af257b13...be28c231eacc058c9384a08a26467a5a641d9cea) [Compare Source](https://redirect.github.com/toeverything/icons/compare/12ccbd9591b872f907e9350afd09bce4af257b13...be28c231eacc058c9384a08a26467a5a641d9cea) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
71114e8935 |
chore: bump up nestjs to v11.0.20 (#11728)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`11.0.19` -> `11.0.20`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/11.0.19/11.0.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`11.0.19` -> `11.0.20`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/11.0.19/11.0.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`11.0.19` -> `11.0.20`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/11.0.19/11.0.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`11.0.19` -> `11.0.20`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/11.0.19/11.0.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`11.0.19` -> `11.0.20`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/11.0.19/11.0.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>nestjs/nest (@​nestjs/common)</summary> ### [`v11.0.20`](https://redirect.github.com/nestjs/nest/compare/v11.0.19...d5bca8871cfb16e18bb9c9814fc7d7df7b3896c3) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.19...v11.0.20) </details> <details> <summary>nestjs/nest (@​nestjs/core)</summary> ### [`v11.0.20`](https://redirect.github.com/nestjs/nest/compare/v11.0.19...d5bca8871cfb16e18bb9c9814fc7d7df7b3896c3) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.19...v11.0.20) </details> <details> <summary>nestjs/nest (@​nestjs/platform-express)</summary> ### [`v11.0.20`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.20) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.19...v11.0.20) #### What's Changed - refactor(common): Prevent JavaScript being wrapped in `eval` by [@​Borewit](https://redirect.github.com/Borewit) in [https://github.com/nestjs/nest/pull/14974](https://redirect.github.com/nestjs/nest/pull/14974) #### New Contributors - [@​Borewit](https://redirect.github.com/Borewit) made their first contribution in [https://github.com/nestjs/nest/pull/14974](https://redirect.github.com/nestjs/nest/pull/14974) **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.19...v11.0.20 </details> <details> <summary>nestjs/nest (@​nestjs/platform-socket.io)</summary> ### [`v11.0.20`](https://redirect.github.com/nestjs/nest/compare/v11.0.19...d5bca8871cfb16e18bb9c9814fc7d7df7b3896c3) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.19...v11.0.20) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
30184817da |
chore: Lock file maintenance (#11483)
This PR contains the following updates: | Update | Change | |---|---| | lockFileMaintenance | All locks refreshed | 🔧 This Pull Request updates lock files to use the latest dependency versions. --- ### Configuration 📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMjcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
4b62d109d3 |
chore: bump up nestjs to v11.0.19 (#11718)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`11.0.17` -> `11.0.19`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/11.0.17/11.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`11.0.17` -> `11.0.19`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/11.0.17/11.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`11.0.17` -> `11.0.19`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/11.0.17/11.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`11.0.17` -> `11.0.19`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/11.0.17/11.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`11.0.17` -> `11.0.19`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/11.0.17/11.0.19) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>nestjs/nest (@​nestjs/common)</summary> ### [`v11.0.19`](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) ### [`v11.0.18`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.18) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.17...v11.0.18) #### What's Changed - chore(common): temporarily move file-type to regular deps https://github.com/nestjs/nest/commit/d9a69a32a4d560f82112e63a28c26445d4277c44 **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.17...v11.0.18 </details> <details> <summary>nestjs/nest (@​nestjs/core)</summary> ### [`v11.0.19`](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) ### [`v11.0.18`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.18) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.17...v11.0.18) ##### What's Changed - chore(common): temporarily move file-type to regular deps https://github.com/nestjs/nest/commit/d9a69a32a4d560f82112e63a28c26445d4277c44 **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.17...v11.0.18 </details> <details> <summary>nestjs/nest (@​nestjs/platform-express)</summary> ### [`v11.0.19`](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) ### [`v11.0.18`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.18) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.17...v11.0.18) ##### What's Changed - chore(common): temporarily move file-type to regular deps https://github.com/nestjs/nest/commit/d9a69a32a4d560f82112e63a28c26445d4277c44 **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.17...v11.0.18 </details> <details> <summary>nestjs/nest (@​nestjs/platform-socket.io)</summary> ### [`v11.0.19`](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) ### [`v11.0.18`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.18) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.17...v11.0.18) #### What's Changed - chore(common): temporarily move file-type to regular deps https://github.com/nestjs/nest/commit/d9a69a32a4d560f82112e63a28c26445d4277c44 **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.17...v11.0.18 </details> <details> <summary>nestjs/nest (@​nestjs/websockets)</summary> ### [`v11.0.19`](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.18...v11.0.19) ### [`v11.0.18`](https://redirect.github.com/nestjs/nest/releases/tag/v11.0.18) [Compare Source](https://redirect.github.com/nestjs/nest/compare/v11.0.17...v11.0.18) ##### What's Changed - chore(common): temporarily move file-type to regular deps https://github.com/nestjs/nest/commit/d9a69a32a4d560f82112e63a28c26445d4277c44 **Full Changelog**: https://github.com/nestjs/nest/compare/v11.0.17...v11.0.18 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
b5c9741f18 | feat(editor): extract keyboard toolbar widget (#11707) | ||
|
|
ecdaea9176 |
chore: bump up i18next version to v25 (#11705)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`^24.1.0` -> `^25.0.0`](https://renovatebot.com/diffs/npm/i18next/24.2.3/25.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>i18next/i18next (i18next)</summary> ### [`v25.0.0`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#2500) [Compare Source](https://redirect.github.com/i18next/i18next/compare/v24.2.3...v25.0.0) **This is a potentially breaking release:** - fix multiple changeLanguage call that may have result in wrong order in previous versions [1605](https://redirect.github.com/i18next/i18next/issues/1605) [2298](https://redirect.github.com/i18next/i18next/pull/2298) - adapt `changeLanguage` to always (string or array) use `getBestMatchFromCodes` [2299](https://redirect.github.com/i18next/i18next/issues/2299) - `getBestMatchFromCodes` now tries to fallback to language code with same script [2299](https://redirect.github.com/i18next/i18next/issues/2299) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
b249939093 |
chore: bump up prisma monorepo to v6 (major) (#8964)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@prisma/client](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/client)) | [`^5.22.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/@prisma%2fclient/5.22.0/6.0.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@prisma/instrumentation](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/instrumentation)) | [`^5.22.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/@prisma%2finstrumentation/5.22.0/6.0.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [prisma](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/cli)) | [`^5.22.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/prisma/5.22.0/6.0.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>prisma/prisma (@​prisma/client)</summary> ### [`v6.0.1`](https://redirect.github.com/prisma/prisma/compare/6.0.0...6.0.1) [Compare Source](https://redirect.github.com/prisma/prisma/compare/6.0.0...6.0.1) ### [`v6.0.0`](https://redirect.github.com/prisma/prisma/releases/tag/6.0.0) [Compare Source](https://redirect.github.com/prisma/prisma/compare/5.22.0...6.0.0) We’re excited to share the Prisma ORM v6 release today 🎉 As this is a major release, it includes a few breaking changes that may affect your application. Before upgrading, we recommend that you check out our [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6) to understand the impact on your application. If you want to have an overview of what we accomplished since v5, check out our announcement blog post: [Prisma 6: Better Performance, More Flexibility & Type-Safe SQL](https://www.prisma.io/blog/prisma-6-better-performance-more-flexibility-and-type-safe-sql). 🌟 **Help us spread the word about Prisma by starring the repo ☝️ or [posting on X](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@​prisma%20release%20v6.0.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/6.0.0) about the release.** ##### Breaking changes ⚠️ This section contains a list of breaking changes. If you upgrade your application to Prisma ORM v6 without addressing these, your application is going to break! **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ ##### Minimum supported Node.js versions The new minimum supported Node.js versions for Prisma ORM v6 are: - for Node.js 18 the minimum supported version is **18.18.0** - for Node.js 20 the minimum supported version is **20.9.0** - for Node.js 22 the minimum supported version is **22.11.0** There is no official support for Node.js <18.18.0, 19, 21, 23. ##### Minimum supported TypeScript version The new minimum supported TypeScript version for Prisma ORM v6 is: **5.1.0**. ##### Schema change for implicit m-n relations on PostgreSQL If you're using PostgreSQL and are defining [implicit many-to-many relations](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#implicit-many-to-many-relations) in your Prisma schema, Prisma ORM maintains the [relation table](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#relation-tables) for you under the hood. This relation table has `A` and `B` columns to represent the tables of the models that are part of this relation. Previous versions of Prisma ORM used to create a *unique index* on these two columns. In Prisma v6, this unique index is changing to a *primary key* in order to [simplify for the default replica identity behaviour](https://redirect.github.com/prisma/prisma/issues/25196). If you're defining implicit m-n relations in your Prisma schema, the next migration you'll create will contain `ALTER TABLE` statements for *all* the relation tables that belong to these relations. ##### Full-text search on PostgreSQL The `fullTextSearch` Preview feature is promoted to General Availability only for MySQL. This means that if you're using PostgreSQL and currently make use of this Preview feature, you now need to use the new `fullTextSearchPostgres` Preview feature. ##### Usage of `Buffer` Prisma v6 replaces the usage of [`Buffer`](https://nodejs.org/api/buffer.html) with [`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array) to represent fields of type `Bytes`. Make sure to replace all your occurrences of the `Buffer` type with the new `Uint8Array`. ##### Removed `NotFoundError` In Prisma v6, we removed the `NotFoundError` in favor of `PrismaClientKnownRequestError` with error code [`P2025`](https://www.prisma.io/docs/orm/reference/error-reference#p2025) in [`findUniqueOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#finduniqueorthrow) and [`findFirstOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#findfirstorthrow). If you've relied on catching `NotFoundError` instances in your code, you need to adjust the code accordingly. ##### New keywords that can't be used as model names: `async`, `await`, `using` With this release, you can't use `async`, `await` and `using` as model names any more. *** ⚠️ **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ ##### Preview features promoted to General Availability In this release, we are promoting a number of [Preview](https://www.prisma.io/docs/orm/more/releases#preview) features to [General Availability](https://www.prisma.io/docs/orm/more/releases#generally-available-ga). ##### `fullTextIndex` If you use the [full-text index](https://www.prisma.io/docs/orm/prisma-schema/data-model/indexes#full-text-indexes-mysql-and-mongodb) feature in your app, you can now remove `fullTextIndex` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextIndex"] } ``` ##### `fullTextSearch` If you use the [full-text search](https://www.prisma.io/docs/orm/prisma-client/queries/full-text-search) feature with **MySQL** in your app, you can now remove `fullTextSearch` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] } ``` If you are using it with **PostgreSQL**, you need to update the name of the feature flag to `fullTextSearchPostgres`: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] + previewFeatures = ["fullTextSearchPostgres"] } ``` ##### New features We are also releasing new features with this release: - [cuid2() support](https://redirect.github.com/prisma/prisma-engines/pull/5047) - [Include unused enum definitions in `prisma generate`'s output](https://redirect.github.com/prisma/prisma/pull/25740) - [Improved compatibility with Deno 2](https://redirect.github.com/prisma/prisma/pull/25734) ##### Company news ##### 🚀 Prisma Postgres is free during Early Access In case you missed it: We recently launched [Prisma Postgres](https://www.prisma.io/blog/announcing-prisma-postgres-early-access), a serverless database with zero cold starts, a generous free tier, connection pooling, real-time events, and a lot more! It’s entirely free during the Early Access phase, try it now! ##### ✨ Let us know what you think of Prisma ORM We're always trying to improve! If you've recently used Prisma ORM, we'd appreciate hearing your thoughts about your experience via this [2min survey](https://pris.ly/orm/survey/release-5-22). </details> <details> <summary>prisma/prisma (@​prisma/instrumentation)</summary> ### [`v6.0.1`](https://redirect.github.com/prisma/prisma/releases/tag/6.0.1) [Compare Source](https://redirect.github.com/prisma/prisma/compare/6.0.0...6.0.1) Today we are releasing the `6.0.1` patch release to address an issue with using Prisma Client generated in a custom output path with Next.js. ##### Changes - [Revert `"type": "commonjs"` addition in generated `package.json`](https://redirect.github.com/prisma/prisma/pull/25767) ### [`v6.0.0`](https://redirect.github.com/prisma/prisma/releases/tag/6.0.0) [Compare Source](https://redirect.github.com/prisma/prisma/compare/5.22.0...6.0.0) We’re excited to share the Prisma ORM v6 release today 🎉 As this is a major release, it includes a few breaking changes that may affect your application. Before upgrading, we recommend that you check out our [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6) to understand the impact on your application. If you want to have an overview of what we accomplished since v5, check out our announcement blog post: [Prisma 6: Better Performance, More Flexibility & Type-Safe SQL](https://www.prisma.io/blog/prisma-6-better-performance-more-flexibility-and-type-safe-sql). 🌟 **Help us spread the word about Prisma by starring the repo ☝️ or [posting on X](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@​prisma%20release%20v6.0.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/6.0.0) about the release.** #### Breaking changes ⚠️ This section contains a list of breaking changes. If you upgrade your application to Prisma ORM v6 without addressing these, your application is going to break! **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ ##### Minimum supported Node.js versions The new minimum supported Node.js versions for Prisma ORM v6 are: - for Node.js 18 the minimum supported version is **18.18.0** - for Node.js 20 the minimum supported version is **20.9.0** - for Node.js 22 the minimum supported version is **22.11.0** There is no official support for Node.js <18.18.0, 19, 21, 23. ##### Minimum supported TypeScript version The new minimum supported TypeScript version for Prisma ORM v6 is: **5.1.0**. ##### Schema change for implicit m-n relations on PostgreSQL If you're using PostgreSQL and are defining [implicit many-to-many relations](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#implicit-many-to-many-relations) in your Prisma schema, Prisma ORM maintains the [relation table](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#relation-tables) for you under the hood. This relation table has `A` and `B` columns to represent the tables of the models that are part of this relation. Previous versions of Prisma ORM used to create a *unique index* on these two columns. In Prisma v6, this unique index is changing to a *primary key* in order to [simplify for the default replica identity behaviour](https://redirect.github.com/prisma/prisma/issues/25196). If you're defining implicit m-n relations in your Prisma schema, the next migration you'll create will contain `ALTER TABLE` statements for *all* the relation tables that belong to these relations. ##### Full-text search on PostgreSQL The `fullTextSearch` Preview feature is promoted to General Availability only for MySQL. This means that if you're using PostgreSQL and currently make use of this Preview feature, you now need to use the new `fullTextSearchPostgres` Preview feature. ##### Usage of `Buffer` Prisma v6 replaces the usage of [`Buffer`](https://nodejs.org/api/buffer.html) with [`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array) to represent fields of type `Bytes`. Make sure to replace all your occurrences of the `Buffer` type with the new `Uint8Array`. ##### Removed `NotFoundError` In Prisma v6, we removed the `NotFoundError` in favor of `PrismaClientKnownRequestError` with error code [`P2025`](https://www.prisma.io/docs/orm/reference/error-reference#p2025) in [`findUniqueOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#finduniqueorthrow) and [`findFirstOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#findfirstorthrow). If you've relied on catching `NotFoundError` instances in your code, you need to adjust the code accordingly. ##### New keywords that can't be used as model names: `async`, `await`, `using` With this release, you can't use `async`, `await` and `using` as model names any more. *** ⚠️ **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ #### Preview features promoted to General Availability In this release, we are promoting a number of [Preview](https://www.prisma.io/docs/orm/more/releases#preview) features to [General Availability](https://www.prisma.io/docs/orm/more/releases#generally-available-ga). ##### `fullTextIndex` If you use the [full-text index](https://www.prisma.io/docs/orm/prisma-schema/data-model/indexes#full-text-indexes-mysql-and-mongodb) feature in your app, you can now remove `fullTextIndex` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextIndex"] } ``` ##### `fullTextSearch` If you use the [full-text search](https://www.prisma.io/docs/orm/prisma-client/queries/full-text-search) feature with **MySQL** in your app, you can now remove `fullTextSearch` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] } ``` If you are using it with **PostgreSQL**, you need to update the name of the feature flag to `fullTextSearchPostgres`: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] + previewFeatures = ["fullTextSearchPostgres"] } ``` #### New features We are also releasing new features with this release: - [cuid2() support](https://redirect.github.com/prisma/prisma-engines/pull/5047) - [Include unused enum definitions in `prisma generate`'s output](https://redirect.github.com/prisma/prisma/pull/25740) - [Improved compatibility with Deno 2](https://redirect.github.com/prisma/prisma/pull/25734) #### Company news ##### 🚀 Prisma Postgres is free during Early Access In case you missed it: We recently launched [Prisma Postgres](https://www.prisma.io/blog/announcing-prisma-postgres-early-access), a serverless database with zero cold starts, a generous free tier, connection pooling, real-time events, and a lot more! It’s entirely free during the Early Access phase, try it now! ##### ✨ Let us know what you think of Prisma ORM We're always trying to improve! If you've recently used Prisma ORM, we'd appreciate hearing your thoughts about your experience via this [2min survey](https://pris.ly/orm/survey/release-5-22). </details> <details> <summary>prisma/prisma (prisma)</summary> ### [`v6.0.1`](https://redirect.github.com/prisma/prisma/compare/6.0.0...6.0.1) [Compare Source](https://redirect.github.com/prisma/prisma/compare/6.0.0...6.0.1) ### [`v6.0.0`](https://redirect.github.com/prisma/prisma/releases/tag/6.0.0) [Compare Source](https://redirect.github.com/prisma/prisma/compare/5.22.0...6.0.0) We’re excited to share the Prisma ORM v6 release today 🎉 As this is a major release, it includes a few breaking changes that may affect your application. Before upgrading, we recommend that you check out our [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6) to understand the impact on your application. If you want to have an overview of what we accomplished since v5, check out our announcement blog post: [Prisma 6: Better Performance, More Flexibility & Type-Safe SQL](https://www.prisma.io/blog/prisma-6-better-performance-more-flexibility-and-type-safe-sql). 🌟 **Help us spread the word about Prisma by starring the repo ☝️ or [posting on X](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@​prisma%20release%20v6.0.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/6.0.0) about the release.** ##### Breaking changes ⚠️ This section contains a list of breaking changes. If you upgrade your application to Prisma ORM v6 without addressing these, your application is going to break! **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ ##### Minimum supported Node.js versions The new minimum supported Node.js versions for Prisma ORM v6 are: - for Node.js 18 the minimum supported version is **18.18.0** - for Node.js 20 the minimum supported version is **20.9.0** - for Node.js 22 the minimum supported version is **22.11.0** There is no official support for Node.js <18.18.0, 19, 21, 23. ##### Minimum supported TypeScript version The new minimum supported TypeScript version for Prisma ORM v6 is: **5.1.0**. ##### Schema change for implicit m-n relations on PostgreSQL If you're using PostgreSQL and are defining [implicit many-to-many relations](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#implicit-many-to-many-relations) in your Prisma schema, Prisma ORM maintains the [relation table](https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/many-to-many-relations#relation-tables) for you under the hood. This relation table has `A` and `B` columns to represent the tables of the models that are part of this relation. Previous versions of Prisma ORM used to create a *unique index* on these two columns. In Prisma v6, this unique index is changing to a *primary key* in order to [simplify for the default replica identity behaviour](https://redirect.github.com/prisma/prisma/issues/25196). If you're defining implicit m-n relations in your Prisma schema, the next migration you'll create will contain `ALTER TABLE` statements for *all* the relation tables that belong to these relations. ##### Full-text search on PostgreSQL The `fullTextSearch` Preview feature is promoted to General Availability only for MySQL. This means that if you're using PostgreSQL and currently make use of this Preview feature, you now need to use the new `fullTextSearchPostgres` Preview feature. ##### Usage of `Buffer` Prisma v6 replaces the usage of [`Buffer`](https://nodejs.org/api/buffer.html) with [`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array) to represent fields of type `Bytes`. Make sure to replace all your occurrences of the `Buffer` type with the new `Uint8Array`. ##### Removed `NotFoundError` In Prisma v6, we removed the `NotFoundError` in favor of `PrismaClientKnownRequestError` with error code [`P2025`](https://www.prisma.io/docs/orm/reference/error-reference#p2025) in [`findUniqueOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#finduniqueorthrow) and [`findFirstOrThrow()`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#findfirstorthrow). If you've relied on catching `NotFoundError` instances in your code, you need to adjust the code accordingly. ##### New keywords that can't be used as model names: `async`, `await`, `using` With this release, you can't use `async`, `await` and `using` as model names any more. *** ⚠️ **For detailed upgrade instructions, check out the [upgrade guide](https://www.prisma.io/docs/orm/more/upgrade-guides/upgrading-versions/upgrading-to-prisma-6).** ⚠️ ##### Preview features promoted to General Availability In this release, we are promoting a number of [Preview](https://www.prisma.io/docs/orm/more/releases#preview) features to [General Availability](https://www.prisma.io/docs/orm/more/releases#generally-available-ga). ##### `fullTextIndex` If you use the [full-text index](https://www.prisma.io/docs/orm/prisma-schema/data-model/indexes#full-text-indexes-mysql-and-mongodb) feature in your app, you can now remove `fullTextIndex` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextIndex"] } ``` ##### `fullTextSearch` If you use the [full-text search](https://www.prisma.io/docs/orm/prisma-client/queries/full-text-search) feature with **MySQL** in your app, you can now remove `fullTextSearch` from the `previewFeatures` in your Prisma schema: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] } ``` If you are using it with **PostgreSQL**, you need to update the name of the feature flag to `fullTextSearchPostgres`: ```diff generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] + previewFeatures = ["fullTextSearchPostgres"] } ``` ##### New features We are also releasing new features with this release: - [cuid2() support](https://redirect.github.com/prisma/prisma-engines/pull/5047) - [Include unused enum definitions in `prisma generate`'s output](https://redirect.github.com/prisma/prisma/pull/25740) - [Improved compatibility with Deno 2](https://redirect.github.com/prisma/prisma/pull/25734) ##### Company news ##### 🚀 Prisma Postgres is free during Early Access In case you missed it: We recently launched [Prisma Postgres](https://www.prisma.io/blog/announcing-prisma-postgres-early-access), a serverless database with zero cold starts, a generous free tier, connection pooling, real-time events, and a lot more! It’s entirely free during the Early Access phase, try it now! ##### ✨ Let us know what you think of Prisma ORM We're always trying to improve! If you've recently used Prisma ORM, we'd appreciate hearing your thoughts about your experience via this [2min survey](https://pris.ly/orm/survey/release-5-22). </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> |