Commit Graph

10955 Commits

Author SHA1 Message Date
DarkSky
95a5e941e7 feat: improve admin panel (#14180) 2025-12-30 05:22:54 +08:00
DarkSky
d6b380aee5 feat: improve pdf rendering (#14171)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Bitmap caching for PDF pages to speed up rendering and reduce repeated
work.
* Automatic prefetching of adjacent pages and expanded viewport overscan
for smoother scrolling.

* **Performance**
* LRU-style in-memory cache with eviction to manage memory and improve
responsiveness.
* Reusable-bitmap lookup and error-tolerant fallbacks for more reliable,
faster page display.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-29 22:01:07 +08:00
Yii
1b9d065778 chore(yocto): should auto gc after applying updates (#12199)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Bug Fixes**
- Improved document update handling to optimize storage automatically
when garbage collection is enabled.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2025-12-29 21:48:23 +08:00
DarkSky
e12fe9c12b fix: message handle (#14178)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* Robustly sanitize session titles, messages, attachments, and embedded
data to remove invalid/null characters and prevent corrupt persistence.
* Improve chat title generation to skip or recover from invalid input
and log contextual errors without crashing.
* Add more detailed storage and workspace logs and reduce repetitive
checks to aid troubleshooting and stability.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-29 21:47:53 +08:00
DarkSky
1bfd29df99 docs: update docs 2025-12-29 19:08:49 +08:00
renovate[bot]
a38e94f314 chore: bump up Node.js to v22.21.1 (#14175)
> **Note:** This PR body was truncated due to platform limits.

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [node](https://nodejs.org)
([source](https://redirect.github.com/nodejs/node)) | minor | `22.16.0`
-> `22.21.1` |

---

### Release Notes

<details>
<summary>nodejs/node (node)</summary>

###
[`v22.21.1`](https://redirect.github.com/nodejs/node/releases/tag/v22.21.1):
2025-10-28, Version 22.21.1 &#x27;Jod&#x27; (LTS), @&#8203;aduh95

[Compare
Source](https://redirect.github.com/nodejs/node/compare/v22.21.0...v22.21.1)

##### Commits

-
\[[`af33e8e668`](https://redirect.github.com/nodejs/node/commit/af33e8e668)]
- **benchmark**: remove unused variable from util/priority-queue (Bruno
Rodrigues)
[#&#8203;59872](https://redirect.github.com/nodejs/node/pull/59872)
-
\[[`6764ce8756`](https://redirect.github.com/nodejs/node/commit/6764ce8756)]
- **benchmark**: update count to n in permission startup (Bruno
Rodrigues)
[#&#8203;59872](https://redirect.github.com/nodejs/node/pull/59872)
-
\[[`4e8d99f0dc`](https://redirect.github.com/nodejs/node/commit/4e8d99f0dc)]
- **benchmark**: update num to n in dgram offset-length (Bruno
Rodrigues)
[#&#8203;59872](https://redirect.github.com/nodejs/node/pull/59872)
-
\[[`af0a8ba7f8`](https://redirect.github.com/nodejs/node/commit/af0a8ba7f8)]
- **benchmark**: adjust dgram offset-length len values (Bruno Rodrigues)
[#&#8203;59708](https://redirect.github.com/nodejs/node/pull/59708)
-
\[[`78efd1be4a`](https://redirect.github.com/nodejs/node/commit/78efd1be4a)]
- **benchmark**: update num to n in dgram offset-length (Bruno
Rodrigues)
[#&#8203;59708](https://redirect.github.com/nodejs/node/pull/59708)
-
\[[`df72dc96e9`](https://redirect.github.com/nodejs/node/commit/df72dc96e9)]
- **console,util**: improve array inspection performance (Ruben
Bridgewater)
[#&#8203;60037](https://redirect.github.com/nodejs/node/pull/60037)
-
\[[`ef67d09f50`](https://redirect.github.com/nodejs/node/commit/ef67d09f50)]
- **http**: improve writeEarlyHints by avoiding for-of loop (Haram
Jeong)
[#&#8203;59958](https://redirect.github.com/nodejs/node/pull/59958)
-
\[[`23468fd76b`](https://redirect.github.com/nodejs/node/commit/23468fd76b)]
- **http2**: fix allowHttp1+Upgrade, broken by shouldUpgradeCallback
(Tim Perry)
[#&#8203;59924](https://redirect.github.com/nodejs/node/pull/59924)
-
\[[`56abc4ac76`](https://redirect.github.com/nodejs/node/commit/56abc4ac76)]
- **lib**: optimize priority queue (Gürgün Dayıoğlu)
[#&#8203;60039](https://redirect.github.com/nodejs/node/pull/60039)
-
\[[`ea5cfd98c5`](https://redirect.github.com/nodejs/node/commit/ea5cfd98c5)]
- **lib**: implement passive listener behavior per spec (BCD1me)
[#&#8203;59995](https://redirect.github.com/nodejs/node/pull/59995)
-
\[[`c2dd6eed2f`](https://redirect.github.com/nodejs/node/commit/c2dd6eed2f)]
- **process**: fix wrong asyncContext under unhandled-rejections=strict
(Shima Ryuhei)
[#&#8203;60103](https://redirect.github.com/nodejs/node/pull/60103)
-
\[[`81a3055710`](https://redirect.github.com/nodejs/node/commit/81a3055710)]
- **process**: fix default `env` for `process.execve` (Richard Lau)
[#&#8203;60029](https://redirect.github.com/nodejs/node/pull/60029)
-
\[[`fe492c7ace`](https://redirect.github.com/nodejs/node/commit/fe492c7ace)]
- **process**: fix hrtime fast call signatures (Renegade334)
[#&#8203;59600](https://redirect.github.com/nodejs/node/pull/59600)
-
\[[`76b4cab8fc`](https://redirect.github.com/nodejs/node/commit/76b4cab8fc)]
- **src**: bring permissions macros in line with general C/C++ standards
(Anna Henningsen)
[#&#8203;60053](https://redirect.github.com/nodejs/node/pull/60053)
-
\[[`21970970c7`](https://redirect.github.com/nodejs/node/commit/21970970c7)]
- **src**: remove `AnalyzeTemporaryDtors` option from .clang-tidy
(iknoom)
[#&#8203;60008](https://redirect.github.com/nodejs/node/pull/60008)
-
\[[`609c063e81`](https://redirect.github.com/nodejs/node/commit/609c063e81)]
- **src**: remove unused variables from report (Moonki Choi)
[#&#8203;60047](https://redirect.github.com/nodejs/node/pull/60047)
-
\[[`987841a773`](https://redirect.github.com/nodejs/node/commit/987841a773)]
- **src**: avoid unnecessary string allocations in SPrintF impl (Anna
Henningsen)
[#&#8203;60052](https://redirect.github.com/nodejs/node/pull/60052)
-
\[[`6e386c0632`](https://redirect.github.com/nodejs/node/commit/6e386c0632)]
- **src**: make ToLower/ToUpper input args more flexible (Anna
Henningsen)
[#&#8203;60052](https://redirect.github.com/nodejs/node/pull/60052)
-
\[[`c3be1226c7`](https://redirect.github.com/nodejs/node/commit/c3be1226c7)]
- **src**: allow `std::string_view` arguments to `SPrintF()` and friends
(Anna Henningsen)
[#&#8203;60058](https://redirect.github.com/nodejs/node/pull/60058)
-
\[[`764d35647d`](https://redirect.github.com/nodejs/node/commit/764d35647d)]
- **src**: remove unnecessary `std::string` error messages (Anna
Henningsen)
[#&#8203;60057](https://redirect.github.com/nodejs/node/pull/60057)
-
\[[`1289ef89ec`](https://redirect.github.com/nodejs/node/commit/1289ef89ec)]
- **src**: remove unnecessary shadowed functions on Utf8Value &
BufferValue (Anna Henningsen)
[#&#8203;60056](https://redirect.github.com/nodejs/node/pull/60056)
-
\[[`d1fb8a538d`](https://redirect.github.com/nodejs/node/commit/d1fb8a538d)]
- **src**: avoid unnecessary string -> `char*` -> string round trips
(Anna Henningsen)
[#&#8203;60055](https://redirect.github.com/nodejs/node/pull/60055)
-
\[[`54b439fb5a`](https://redirect.github.com/nodejs/node/commit/54b439fb5a)]
- **src**: fill `options_args`, `options_env` after vectors are
finalized (iknoom)
[#&#8203;59945](https://redirect.github.com/nodejs/node/pull/59945)
-
\[[`c7c597e2ca`](https://redirect.github.com/nodejs/node/commit/c7c597e2ca)]
- **src**: use RAII for uv\_process\_options\_t (iknoom)
[#&#8203;59945](https://redirect.github.com/nodejs/node/pull/59945)
-
\[[`b928ea9716`](https://redirect.github.com/nodejs/node/commit/b928ea9716)]
- **test**: ensure that the message event is fired (Luigi Pinca)
[#&#8203;59952](https://redirect.github.com/nodejs/node/pull/59952)
-
\[[`e4b95a5158`](https://redirect.github.com/nodejs/node/commit/e4b95a5158)]
- **test**: replace diagnostics\_channel stackframe in output snapshots
(Chengzhong Wu)
[#&#8203;60024](https://redirect.github.com/nodejs/node/pull/60024)
-
\[[`4206406694`](https://redirect.github.com/nodejs/node/commit/4206406694)]
- **test**: mark test-web-locks skip on IBM i (SRAVANI GUNDEPALLI)
[#&#8203;59996](https://redirect.github.com/nodejs/node/pull/59996)
-
\[[`26394cd5bf`](https://redirect.github.com/nodejs/node/commit/26394cd5bf)]
- **test**: expand tls-check-server-identity coverage (Diango Gavidia)
[#&#8203;60002](https://redirect.github.com/nodejs/node/pull/60002)
-
\[[`b58df47995`](https://redirect.github.com/nodejs/node/commit/b58df47995)]
- **test**: fix typo of test-benchmark-readline.js (Deokjin Kim)
[#&#8203;59993](https://redirect.github.com/nodejs/node/pull/59993)
-
\[[`af3a59dba8`](https://redirect.github.com/nodejs/node/commit/af3a59dba8)]
- **test**: verify tracing channel doesn't swallow unhandledRejection
(Gerhard Stöbich)
[#&#8203;59974](https://redirect.github.com/nodejs/node/pull/59974)
-
\[[`cee362242b`](https://redirect.github.com/nodejs/node/commit/cee362242b)]
- **timers**: fix binding fast call signatures (Renegade334)
[#&#8203;59600](https://redirect.github.com/nodejs/node/pull/59600)
-
\[[`40fea57fdd`](https://redirect.github.com/nodejs/node/commit/40fea57fdd)]
- **tools**: add message on auto-fixing js lint issues in gh workflow
(Dario Piotrowicz)
[#&#8203;59128](https://redirect.github.com/nodejs/node/pull/59128)
-
\[[`aac90d351b`](https://redirect.github.com/nodejs/node/commit/aac90d351b)]
- **tools**: verify signatures when updating nghttp\* (Antoine du Hamel)
[#&#8203;60113](https://redirect.github.com/nodejs/node/pull/60113)
-
\[[`9fae03c7d9`](https://redirect.github.com/nodejs/node/commit/9fae03c7d9)]
- **tools**: use dependabot cooldown and move tools/doc (Rafael Gonzaga)
[#&#8203;59978](https://redirect.github.com/nodejs/node/pull/59978)
-
\[[`81548abdf6`](https://redirect.github.com/nodejs/node/commit/81548abdf6)]
- **wasi**: fix WasiFunction fast call signature (Renegade334)
[#&#8203;59600](https://redirect.github.com/nodejs/node/pull/59600)

###
[`v22.21.0`](https://redirect.github.com/nodejs/node/releases/tag/v22.21.0):
2025-10-20, Version 22.21.0 &#x27;Jod&#x27; (LTS), @&#8203;aduh95

[Compare
Source](https://redirect.github.com/nodejs/node/compare/v22.20.0...v22.21.0)

##### Notable Changes

-
\[[`1486fedea1`](https://redirect.github.com/nodejs/node/commit/1486fedea1)]
- **(SEMVER-MINOR)** **cli**: add `--use-env-proxy` (Joyee Cheung)
[#&#8203;59151](https://redirect.github.com/nodejs/node/pull/59151)
-
\[[`bedaaa11fc`](https://redirect.github.com/nodejs/node/commit/bedaaa11fc)]
- **(SEMVER-MINOR)** **http**: support http proxy for fetch under
`NODE_USE_ENV_PROXY` (Joyee Cheung)
[#&#8203;57165](https://redirect.github.com/nodejs/node/pull/57165)
-
\[[`af8b5fa29d`](https://redirect.github.com/nodejs/node/commit/af8b5fa29d)]
- **(SEMVER-MINOR)** **http**: add `shouldUpgradeCallback` to let
servers control HTTP upgrades (Tim Perry)
[#&#8203;59824](https://redirect.github.com/nodejs/node/pull/59824)
-
\[[`42102594b1`](https://redirect.github.com/nodejs/node/commit/42102594b1)]
- **(SEMVER-MINOR)** **http,https**: add built-in proxy support in
`http`/`https.request` and `Agent` (Joyee Cheung)
[#&#8203;58980](https://redirect.github.com/nodejs/node/pull/58980)
-
\[[`686ac49b82`](https://redirect.github.com/nodejs/node/commit/686ac49b82)]
- **(SEMVER-MINOR)** **src**: add percentage support to
`--max-old-space-size` (Asaf Federman)
[#&#8203;59082](https://redirect.github.com/nodejs/node/pull/59082)

##### Commits

-
\[[`a71dd592e3`](https://redirect.github.com/nodejs/node/commit/a71dd592e3)]
- **benchmark**: calibrate config dgram multi-buffer (Bruno Rodrigues)
[#&#8203;59696](https://redirect.github.com/nodejs/node/pull/59696)
-
\[[`16c4b466f4`](https://redirect.github.com/nodejs/node/commit/16c4b466f4)]
- **benchmark**: calibrate config cluster/echo.js (Nam Yooseong)
[#&#8203;59836](https://redirect.github.com/nodejs/node/pull/59836)
-
\[[`53cb9f3b6c`](https://redirect.github.com/nodejs/node/commit/53cb9f3b6c)]
- **build**: add the missing macro definitions for OpenHarmony (hqzing)
[#&#8203;59804](https://redirect.github.com/nodejs/node/pull/59804)
-
\[[`ec5290fe01`](https://redirect.github.com/nodejs/node/commit/ec5290fe01)]
- **build**: do not include custom ESLint rules testing in tarball
(Antoine du Hamel)
[#&#8203;59809](https://redirect.github.com/nodejs/node/pull/59809)
-
\[[`1486fedea1`](https://redirect.github.com/nodejs/node/commit/1486fedea1)]
- **(SEMVER-MINOR)** **cli**: add --use-env-proxy (Joyee Cheung)
[#&#8203;59151](https://redirect.github.com/nodejs/node/pull/59151)
-
\[[`1f93913446`](https://redirect.github.com/nodejs/node/commit/1f93913446)]
- **crypto**: use `return await` when returning Promises from async
functions (Renegade334)
[#&#8203;59841](https://redirect.github.com/nodejs/node/pull/59841)
-
\[[`f488b2ff73`](https://redirect.github.com/nodejs/node/commit/f488b2ff73)]
- **crypto**: use async functions for non-stub Promise-returning
functions (Renegade334)
[#&#8203;59841](https://redirect.github.com/nodejs/node/pull/59841)
-
\[[`aed9fd5ac4`](https://redirect.github.com/nodejs/node/commit/aed9fd5ac4)]
- **crypto**: avoid calls to `promise.catch()` (Renegade334)
[#&#8203;59841](https://redirect.github.com/nodejs/node/pull/59841)
-
\[[`37c2d186f0`](https://redirect.github.com/nodejs/node/commit/37c2d186f0)]
- **deps**: update amaro to 1.1.4 (pmarchini)
[#&#8203;60044](https://redirect.github.com/nodejs/node/pull/60044)
-
\[[`28aea13419`](https://redirect.github.com/nodejs/node/commit/28aea13419)]
- **deps**: update archs files for openssl-3.5.4 (Node.js GitHub Bot)
[#&#8203;60101](https://redirect.github.com/nodejs/node/pull/60101)
-
\[[`ddbc1aa0bb`](https://redirect.github.com/nodejs/node/commit/ddbc1aa0bb)]
- **deps**: upgrade openssl sources to openssl-3.5.4 (Node.js GitHub
Bot) [#&#8203;60101](https://redirect.github.com/nodejs/node/pull/60101)
-
\[[`badbba2da9`](https://redirect.github.com/nodejs/node/commit/badbba2da9)]
- **deps**: update googletest to
[`50b8600`](https://redirect.github.com/nodejs/node/commit/50b8600)
(Node.js GitHub Bot)
[#&#8203;59955](https://redirect.github.com/nodejs/node/pull/59955)
-
\[[`48aaf98a08`](https://redirect.github.com/nodejs/node/commit/48aaf98a08)]
- **deps**: update archs files for openssl-3.5.3 (Node.js GitHub Bot)
[#&#8203;59901](https://redirect.github.com/nodejs/node/pull/59901)
-
\[[`e02a562ea6`](https://redirect.github.com/nodejs/node/commit/e02a562ea6)]
- **deps**: upgrade openssl sources to openssl-3.5.3 (Node.js GitHub
Bot) [#&#8203;59901](https://redirect.github.com/nodejs/node/pull/59901)
-
\[[`7e0e86cb92`](https://redirect.github.com/nodejs/node/commit/7e0e86cb92)]
- **deps**: upgrade npm to 10.9.4 (npm team)
[#&#8203;60074](https://redirect.github.com/nodejs/node/pull/60074)
-
\[[`91dda5facf`](https://redirect.github.com/nodejs/node/commit/91dda5facf)]
- **deps**: update undici to 6.22.0 (Matteo Collina)
[#&#8203;60112](https://redirect.github.com/nodejs/node/pull/60112)
-
\[[`3a3220a2f0`](https://redirect.github.com/nodejs/node/commit/3a3220a2f0)]
- **dgram**: restore buffer optimization in fixBufferList (Yoo)
[#&#8203;59934](https://redirect.github.com/nodejs/node/pull/59934)
-
\[[`09bdcce6b8`](https://redirect.github.com/nodejs/node/commit/09bdcce6b8)]
- **diagnostics\_channel**: fix race condition with diagnostics\_channel
and GC (Ugaitz Urien)
[#&#8203;59910](https://redirect.github.com/nodejs/node/pull/59910)
-
\[[`b3eeb3bd13`](https://redirect.github.com/nodejs/node/commit/b3eeb3bd13)]
- **doc**: provide alternative to `url.parse()` using WHATWG URL
(Steven)
[#&#8203;59736](https://redirect.github.com/nodejs/node/pull/59736)
-
\[[`1ddaab1904`](https://redirect.github.com/nodejs/node/commit/1ddaab1904)]
- **doc**: mention reverse proxy and include simple example (Steven)
[#&#8203;59736](https://redirect.github.com/nodejs/node/pull/59736)
-
\[[`3b3b71e99c`](https://redirect.github.com/nodejs/node/commit/3b3b71e99c)]
- **doc**: mark `.env` files support as stable (Santeri Hiltunen)
[#&#8203;59925](https://redirect.github.com/nodejs/node/pull/59925)
-
\[[`d37f67d1bd`](https://redirect.github.com/nodejs/node/commit/d37f67d1bd)]
- **doc**: remove optional title prefixes (Aviv Keller)
[#&#8203;60087](https://redirect.github.com/nodejs/node/pull/60087)
-
\[[`ca2dff63f9`](https://redirect.github.com/nodejs/node/commit/ca2dff63f9)]
- **doc**: fix typo on child\_process.md (Angelo Gazzola)
[#&#8203;60114](https://redirect.github.com/nodejs/node/pull/60114)
-
\[[`3fca564a05`](https://redirect.github.com/nodejs/node/commit/3fca564a05)]
- **doc**: add automated migration info to deprecations (Augustin
Mauroy)
[#&#8203;60022](https://redirect.github.com/nodejs/node/pull/60022)
-
\[[`4bc366fc16`](https://redirect.github.com/nodejs/node/commit/4bc366fc16)]
- **doc**: use "WebAssembly" instead of "Web Assembly" (Tobias Nießen)
[#&#8203;59954](https://redirect.github.com/nodejs/node/pull/59954)
-
\[[`4808dbdd9a`](https://redirect.github.com/nodejs/node/commit/4808dbdd9a)]
- **doc**: fix typo in section on microtask order (Tobias Nießen)
[#&#8203;59932](https://redirect.github.com/nodejs/node/pull/59932)
-
\[[`d6e303d645`](https://redirect.github.com/nodejs/node/commit/d6e303d645)]
- **doc**: update V8 fast API guidance (René)
[#&#8203;58999](https://redirect.github.com/nodejs/node/pull/58999)
-
\[[`0a3a3f729e`](https://redirect.github.com/nodejs/node/commit/0a3a3f729e)]
- **doc**: add security escalation policy (Ulises Gascón)
[#&#8203;59806](https://redirect.github.com/nodejs/node/pull/59806)
-
\[[`8fd669c70d`](https://redirect.github.com/nodejs/node/commit/8fd669c70d)]
- **doc**: type improvement of file `http.md` (yusheng chen)
[#&#8203;58189](https://redirect.github.com/nodejs/node/pull/58189)
-
\[[`9833dc6060`](https://redirect.github.com/nodejs/node/commit/9833dc6060)]
- **doc**: rephrase dynamic import() description (Nam Yooseong)
[#&#8203;59224](https://redirect.github.com/nodejs/node/pull/59224)
-
\[[`2870a73681`](https://redirect.github.com/nodejs/node/commit/2870a73681)]
- **doc,crypto**: update subtle.generateKey and subtle.importKey (Filip
Skokan)
[#&#8203;59851](https://redirect.github.com/nodejs/node/pull/59851)
-
\[[`85818db93c`](https://redirect.github.com/nodejs/node/commit/85818db93c)]
- **fs,win**: do not add a second trailing slash in readdir (Gerhard
Stöbich)
[#&#8203;59847](https://redirect.github.com/nodejs/node/pull/59847)
-
\[[`bedaaa11fc`](https://redirect.github.com/nodejs/node/commit/bedaaa11fc)]
- **(SEMVER-MINOR)** **http**: support http proxy for fetch under
NODE\_USE\_ENV\_PROXY (Joyee Cheung)
[#&#8203;57165](https://redirect.github.com/nodejs/node/pull/57165)
-
\[[`af8b5fa29d`](https://redirect.github.com/nodejs/node/commit/af8b5fa29d)]
- **(SEMVER-MINOR)** **http**: add shouldUpgradeCallback to let servers
control HTTP upgrades (Tim Perry)
[#&#8203;59824](https://redirect.github.com/nodejs/node/pull/59824)
-
\[[`758271ae66`](https://redirect.github.com/nodejs/node/commit/758271ae66)]
- **http**: optimize checkIsHttpToken for short strings (방진혁)
[#&#8203;59832](https://redirect.github.com/nodejs/node/pull/59832)
-
\[[`42102594b1`](https://redirect.github.com/nodejs/node/commit/42102594b1)]
- **(SEMVER-MINOR)** **http,https**: add built-in proxy support in
http/https.request and Agent (Joyee Cheung)
[#&#8203;58980](https://redirect.github.com/nodejs/node/pull/58980)
-
\[[`a33ed9bf96`](https://redirect.github.com/nodejs/node/commit/a33ed9bf96)]
- **inspector**: ensure adequate memory allocation for
`Binary::toBase64` (René)
[#&#8203;59870](https://redirect.github.com/nodejs/node/pull/59870)
-
\[[`34c686be2b`](https://redirect.github.com/nodejs/node/commit/34c686be2b)]
- **lib**: update inspect output format for subclasses (Miguel Marcondes
Filho)
[#&#8203;59687](https://redirect.github.com/nodejs/node/pull/59687)
-
\[[`12e553529c`](https://redirect.github.com/nodejs/node/commit/12e553529c)]
- **lib**: add source map support for assert messages (Chengzhong Wu)
[#&#8203;59751](https://redirect.github.com/nodejs/node/pull/59751)
-
\[[`d2a70571f8`](https://redirect.github.com/nodejs/node/commit/d2a70571f8)]
- **lib,src**: refactor assert to load error source from memory
(Chengzhong Wu)
[#&#8203;59751](https://redirect.github.com/nodejs/node/pull/59751)
-
\[[`20a9e86b5d`](https://redirect.github.com/nodejs/node/commit/20a9e86b5d)]
- **meta**: move Michael to emeritus (Michael Dawson)
[#&#8203;60070](https://redirect.github.com/nodejs/node/pull/60070)
-
\[[`c591cca15c`](https://redirect.github.com/nodejs/node/commit/c591cca15c)]
- **meta**: bump github/codeql-action from 3.30.0 to 3.30.5
(dependabot\[bot])
[#&#8203;60089](https://redirect.github.com/nodejs/node/pull/60089)
-
\[[`090ba141b1`](https://redirect.github.com/nodejs/node/commit/090ba141b1)]
- **meta**: bump codecov/codecov-action from 5.5.0 to 5.5.1
(dependabot\[bot])
[#&#8203;60091](https://redirect.github.com/nodejs/node/pull/60091)
-
\[[`a0ba6884a5`](https://redirect.github.com/nodejs/node/commit/a0ba6884a5)]
- **meta**: bump actions/stale from 9.1.0 to 10.0.0 (dependabot\[bot])
[#&#8203;60092](https://redirect.github.com/nodejs/node/pull/60092)
-
\[[`0feca0c541`](https://redirect.github.com/nodejs/node/commit/0feca0c541)]
- **meta**: bump actions/setup-node from 4.4.0 to 5.0.0
(dependabot\[bot])
[#&#8203;60093](https://redirect.github.com/nodejs/node/pull/60093)
-
\[[`7cd2b42d18`](https://redirect.github.com/nodejs/node/commit/7cd2b42d18)]
- **meta**: bump step-security/harden-runner from 2.12.2 to 2.13.1
(dependabot\[bot])
[#&#8203;60094](https://redirect.github.com/nodejs/node/pull/60094)
-
\[[`1f3b9d66ac`](https://redirect.github.com/nodejs/node/commit/1f3b9d66ac)]
- **meta**: bump actions/cache from 4.2.4 to 4.3.0 (dependabot\[bot])
[#&#8203;60095](https://redirect.github.com/nodejs/node/pull/60095)
-
\[[`0fedbb3de7`](https://redirect.github.com/nodejs/node/commit/0fedbb3de7)]
- **meta**: bump ossf/scorecard-action from 2.4.2 to 2.4.3
(dependabot\[bot])
[#&#8203;60096](https://redirect.github.com/nodejs/node/pull/60096)
-
\[[`04590b8267`](https://redirect.github.com/nodejs/node/commit/04590b8267)]
- **meta**: bump actions/setup-python from 5.6.0 to 6.0.0
(dependabot\[bot])
[#&#8203;60090](https://redirect.github.com/nodejs/node/pull/60090)
-
\[[`2bf0a9318f`](https://redirect.github.com/nodejs/node/commit/2bf0a9318f)]
- **meta**: add .npmrc with ignore-scripts=true (Joyee Cheung)
[#&#8203;59914](https://redirect.github.com/nodejs/node/pull/59914)
-
\[[`e10dc7b81c`](https://redirect.github.com/nodejs/node/commit/e10dc7b81c)]
- **module**: allow overriding linked requests for a ModuleWrap
(Chengzhong Wu)
[#&#8203;59527](https://redirect.github.com/nodejs/node/pull/59527)
-
\[[`2237142369`](https://redirect.github.com/nodejs/node/commit/2237142369)]
- **module**: link module with a module request record (Chengzhong Wu)
[#&#8203;58886](https://redirect.github.com/nodejs/node/pull/58886)
-
\[[`6d24b88fbc`](https://redirect.github.com/nodejs/node/commit/6d24b88fbc)]
- **node-api**: added SharedArrayBuffer api (Mert Can Altin)
[#&#8203;59071](https://redirect.github.com/nodejs/node/pull/59071)
-
\[[`4cc84c96f4`](https://redirect.github.com/nodejs/node/commit/4cc84c96f4)]
- **node-api**: make napi\_delete\_reference use node\_api\_basic\_env
(Jeetu Suthar)
[#&#8203;59684](https://redirect.github.com/nodejs/node/pull/59684)
-
\[[`e790eb6b50`](https://redirect.github.com/nodejs/node/commit/e790eb6b50)]
- **repl**: fix cpu overhead pasting big strings to the REPL (Ruben
Bridgewater)
[#&#8203;59857](https://redirect.github.com/nodejs/node/pull/59857)
-
\[[`99ea08dc43`](https://redirect.github.com/nodejs/node/commit/99ea08dc43)]
- **repl**: add isValidParentheses check before wrap input (Xuguang Mei)
[#&#8203;59607](https://redirect.github.com/nodejs/node/pull/59607)
-
\[[`e4a4f63019`](https://redirect.github.com/nodejs/node/commit/e4a4f63019)]
- **sqlite**: fix crash session extension callbacks with workers (Bart
Louwers)
[#&#8203;59848](https://redirect.github.com/nodejs/node/pull/59848)
-
\[[`42c5544b97`](https://redirect.github.com/nodejs/node/commit/42c5544b97)]
- **src**: assert memory calc for max-old-space-size-percentage (Asaf
Federman)
[#&#8203;59460](https://redirect.github.com/nodejs/node/pull/59460)
-
\[[`686ac49b82`](https://redirect.github.com/nodejs/node/commit/686ac49b82)]
- **(SEMVER-MINOR)** **src**: add percentage support to
--max-old-space-size (Asaf Federman)
[#&#8203;59082](https://redirect.github.com/nodejs/node/pull/59082)
-
\[[`84701ff668`](https://redirect.github.com/nodejs/node/commit/84701ff668)]
- **src**: clear all linked module caches once instantiated (Chengzhong
Wu) [#&#8203;59117](https://redirect.github.com/nodejs/node/pull/59117)
-
\[[`8e182e561f`](https://redirect.github.com/nodejs/node/commit/8e182e561f)]
- **src**: remove unnecessary `Environment::GetCurrent()` calls (Moonki
Choi)
[#&#8203;59814](https://redirect.github.com/nodejs/node/pull/59814)
-
\[[`c9cde35c4d`](https://redirect.github.com/nodejs/node/commit/c9cde35c4d)]
- **src**: simplify is\_callable by making it a concept (Tobias Nießen)
[#&#8203;58169](https://redirect.github.com/nodejs/node/pull/58169)
-
\[[`892b425ee1`](https://redirect.github.com/nodejs/node/commit/892b425ee1)]
- **src**: rename private fields to follow naming convention (Moonki
Choi)
[#&#8203;59923](https://redirect.github.com/nodejs/node/pull/59923)
-
\[[`36b68db7f5`](https://redirect.github.com/nodejs/node/commit/36b68db7f5)]
- **src**: reduce the nearest parent package JSON cache size (Michael
Smith)
[#&#8203;59888](https://redirect.github.com/nodejs/node/pull/59888)
-
\[[`26b40bad02`](https://redirect.github.com/nodejs/node/commit/26b40bad02)]
- **src**: replace FIXED\_ONE\_BYTE\_STRING with Environment-cached
strings (Moonki Choi)
[#&#8203;59891](https://redirect.github.com/nodejs/node/pull/59891)
-
\[[`34dcb7dc32`](https://redirect.github.com/nodejs/node/commit/34dcb7dc32)]
- **src**: create strings in `FIXED_ONE_BYTE_STRING` as internalized
(Anna Henningsen)
[#&#8203;59826](https://redirect.github.com/nodejs/node/pull/59826)
-
\[[`4d748add05`](https://redirect.github.com/nodejs/node/commit/4d748add05)]
- **src**: remove `std::array` overload of `FIXED_ONE_BYTE_STRING` (Anna
Henningsen)
[#&#8203;59826](https://redirect.github.com/nodejs/node/pull/59826)
-
\[[`bb6fd7c2d1`](https://redirect.github.com/nodejs/node/commit/bb6fd7c2d1)]
- **src**: ensure `v8::Eternal` is empty before setting it (Anna
Henningsen)
[#&#8203;59825](https://redirect.github.com/nodejs/node/pull/59825)
-
\[[`7a91282bf9`](https://redirect.github.com/nodejs/node/commit/7a91282bf9)]
- **src**: use simdjson::pad (0hm☘️)
[#&#8203;59391](https://redirect.github.com/nodejs/node/pull/59391)
-
\[[`ba00875f01`](https://redirect.github.com/nodejs/node/commit/ba00875f01)]
- **stream**: use new AsyncResource instead of bind (Matteo Collina)
[#&#8203;59867](https://redirect.github.com/nodejs/node/pull/59867)
-
\[[`ebec3ef68b`](https://redirect.github.com/nodejs/node/commit/ebec3ef68b)]
- **(SEMVER-MINOR)** **test**: move http proxy tests to
test/client-proxy (Joyee Cheung)
[#&#8203;58980](https://redirect.github.com/nodejs/node/pull/58980)
-
\[[`7067d79fb3`](https://redirect.github.com/nodejs/node/commit/7067d79fb3)]
- **test**: mark sea tests flaky on macOS x64 (Richard Lau)
[#&#8203;60068](https://redirect.github.com/nodejs/node/pull/60068)
-
\[[`ca1942c9d5`](https://redirect.github.com/nodejs/node/commit/ca1942c9d5)]
- **test**: testcase demonstrating issue 59541 (Eric Rannaud)
[#&#8203;59801](https://redirect.github.com/nodejs/node/pull/59801)
-
\[[`660d57355e`](https://redirect.github.com/nodejs/node/commit/660d57355e)]
- **test,doc**: skip --max-old-space-size-percentage on 32-bit platforms
(Asaf Federman)
[#&#8203;60144](https://redirect.github.com/nodejs/node/pull/60144)
-
\[[`19a7b1ef26`](https://redirect.github.com/nodejs/node/commit/19a7b1ef26)]
- **tls**: load bundled and extra certificates off-thread (Joyee Cheung)
[#&#8203;59856](https://redirect.github.com/nodejs/node/pull/59856)
-
\[[`095e7a81fc`](https://redirect.github.com/nodejs/node/commit/095e7a81fc)]
- **tls**: only do off-thread certificate loading on loading tls (Joyee
Cheung)
[#&#8203;59856](https://redirect.github.com/nodejs/node/pull/59856)
-
\[[`c42c1204c7`](https://redirect.github.com/nodejs/node/commit/c42c1204c7)]
- **tools**: fix `tools/make-v8.sh` for clang (Richard Lau)
[#&#8203;59893](https://redirect.github.com/nodejs/node/pull/59893)
-
\[[`b632a1d98d`](https://redirect.github.com/nodejs/node/commit/b632a1d98d)]
- **tools**: skip test-internet workflow for draft PRs (Michaël Zasso)
[#&#8203;59817](https://redirect.github.com/nodejs/node/pull/59817)
-
\[[`6021c3ac76`](https://redirect.github.com/nodejs/node/commit/6021c3ac76)]
- **tools**: copyedit `build-tarball.yml` (Antoine du Hamel)
[#&#8203;59808](https://redirect.github.com/nodejs/node/pull/59808)
-
\[[`ef005d0c9b`](https://redirect.github.com/nodejs/node/commit/ef005d0c9b)]
- **typings**: update 'types' binding (René)
[#&#8203;59692](https://redirect.github.com/nodejs/node/pull/59692)
-
\[[`28ef564ecd`](https://redirect.github.com/nodejs/node/commit/28ef564ecd)]
- **typings**: remove unused imports (Nam Yooseong)
[#&#8203;59880](https://redirect.github.com/nodejs/node/pull/59880)
-
\[[`f88752ddb6`](https://redirect.github.com/nodejs/node/commit/f88752ddb6)]
- **url**: replaced slice with at (Mikhail)
[#&#8203;59181](https://redirect.github.com/nodejs/node/pull/59181)
-
\[[`24c224960c`](https://redirect.github.com/nodejs/node/commit/24c224960c)]
- **url**: add type checking to urlToHttpOptions() (simon-id)
[#&#8203;59753](https://redirect.github.com/nodejs/node/pull/59753)
-
\[[`f2fbcc576d`](https://redirect.github.com/nodejs/node/commit/f2fbcc576d)]
- **util**: fix debuglog.enabled not being present with callback logger
(Ruben Bridgewater)
[#&#8203;59858](https://redirect.github.com/nodejs/node/pull/59858)
-
\[[`6277058e43`](https://redirect.github.com/nodejs/node/commit/6277058e43)]
- **vm**: sync-ify SourceTextModule linkage (Chengzhong Wu)
[#&#8203;59000](https://redirect.github.com/nodejs/node/pull/59000)
-
\[[`5bf21a4309`](https://redirect.github.com/nodejs/node/commit/5bf21a4309)]
- **vm**: explain how to share promises between contexts w/
afterEvaluate (Eric Rannaud)
[#&#8203;59801](https://redirect.github.com/nodejs/node/pull/59801)
-
\[[`312b33a083`](https://redirect.github.com/nodejs/node/commit/312b33a083)]
- **vm**: "afterEvaluate", evaluate() return a promise from the outer
context (Eric Rannaud)
[#&#8203;59801](https://redirect.github.com/nodejs/node/pull/59801)
-
\[[`1eadab863c`](https://redirect.github.com/nodejs/node/commit/1eadab863c)]
- **win,tools**: add description to signature (Martin Costello)
[#&#8203;59877](https://redirect.github.com/nodejs/node/pull/59877)
-
\[[`816e1befb1`](https://redirect.github.com/nodejs/node/commit/816e1befb1)]
- **zlib**: reduce code duplication (jhofstee)
[#&#8203;57810](https://redirect.github.com/nodejs/node/pull/57810)

###
[`v22.20.0`](https://redirect.github.com/nodejs/node/releases/tag/v22.20.0):
2025-09-24, Version 22.20.0 &#x27;Jod&#x27; (LTS), @&#8203;richardlau

[Compare
Source](https://redirect.github.com/nodejs/node/compare/v22.19.0...v22.20.0)

##### Notable Changes

##### OpenSSL updated to 3.5.2

For official Node.js builds, or builds using the default build
configuration, Node.js now bundles OpenSSL 3.5.2. This update allows
Node.js 22.x to be supported through to the planned End-of-Life date of
2027-04-30 as the previously bundled OpenSSL 3.0.x goes out of support
in September 2026.

This change does not affect third-party builds of Node.js that link to
an external OpenSSL (or OpenSSL-compatible) library.

##### Other notable changes

-
\[[`5b83e1e0a2`](https://redirect.github.com/nodejs/node/commit/5b83e1e0a2)]
- **crypto**: update root certificates to NSS 3.114 (Node.js GitHub Bot)
[#&#8203;59571](https://redirect.github.com/nodejs/node/pull/59571)
-
\[[`34b25fd97b`](https://redirect.github.com/nodejs/node/commit/34b25fd97b)]
- **doc**: stabilize --disable-sigusr1 (Rafael Gonzaga)
[#&#8203;59707](https://redirect.github.com/nodejs/node/pull/59707)
-
\[[`bf41218ed9`](https://redirect.github.com/nodejs/node/commit/bf41218ed9)]
- **doc**: mark `path.matchesGlob` as stable (Aviv Keller)
[#&#8203;59572](https://redirect.github.com/nodejs/node/pull/59572)
-
\[[`1dbad2058f`](https://redirect.github.com/nodejs/node/commit/1dbad2058f)]
- **(SEMVER-MINOR)** **http**: add Agent.agentKeepAliveTimeoutBuffer
option (Haram Jeong)
[#&#8203;59315](https://redirect.github.com/nodejs/node/pull/59315)
-
\[[`062e837d5f`](https://redirect.github.com/nodejs/node/commit/062e837d5f)]
- **(SEMVER-MINOR)** **http2**: add support for raw header arrays in
h2Stream.respond() (Tim Perry)
[#&#8203;59455](https://redirect.github.com/nodejs/node/pull/59455)
-
\[[`b8066611c3`](https://redirect.github.com/nodejs/node/commit/b8066611c3)]
- **inspector**: add http2 tracking support (Darshan Sen)
[#&#8203;59611](https://redirect.github.com/nodejs/node/pull/59611)
-
\[[`9b7dd40da8`](https://redirect.github.com/nodejs/node/commit/9b7dd40da8)]
- **(SEMVER-MINOR)** **sea**: implement execArgvExtension (Joyee Cheung)
[#&#8203;59560](https://redirect.github.com/nodejs/node/pull/59560)
-
\[[`48bfbd3dca`](https://redirect.github.com/nodejs/node/commit/48bfbd3dca)]
- **(SEMVER-MINOR)** **sea**: support execArgv in sea config (Joyee
Cheung)
[#&#8203;59314](https://redirect.github.com/nodejs/node/pull/59314)
-
\[[`cf06e74076`](https://redirect.github.com/nodejs/node/commit/cf06e74076)]
- **(SEMVER-MINOR)** **stream**: add brotli support to CompressionStream
and DecompressionStream (Matthew Aitken)
[#&#8203;59464](https://redirect.github.com/nodejs/node/pull/59464)
-
\[[`62bb80c17e`](https://redirect.github.com/nodejs/node/commit/62bb80c17e)]
- **(SEMVER-MINOR)** **test\_runner**: support object property mocking
(Idan Goshen)
[#&#8203;58438](https://redirect.github.com/nodejs/node/pull/58438)
-
\[[`9e2aa23be9`](https://redirect.github.com/nodejs/node/commit/9e2aa23be9)]
- **(SEMVER-MINOR)** **worker**: add cpu profile APIs for worker
(theanarkh)
[#&#8203;59428](https://redirect.github.com/nodejs/node/pull/59428)

##### Commits

-
\[[`b7b78fd565`](https://redirect.github.com/nodejs/node/commit/b7b78fd565)]
- **assert**: cap input size in myersDiff to avoid Int32Array overflow
(Haram Jeong)
[#&#8203;59578](https://redirect.github.com/nodejs/node/pull/59578)
-
\[[`9da50a6c53`](https://redirect.github.com/nodejs/node/commit/9da50a6c53)]
- **benchmark**: sqlite prevent create both tables on prepare selects
(Bruno Rodrigues)
[#&#8203;59709](https://redirect.github.com/nodejs/node/pull/59709)
-
\[[`4c1538770e`](https://redirect.github.com/nodejs/node/commit/4c1538770e)]
- **benchmark**: calibrate config array-vs-concat (Rafael Gonzaga)
[#&#8203;59587](https://redirect.github.com/nodejs/node/pull/59587)
-
\[[`fc3f82d683`](https://redirect.github.com/nodejs/node/commit/fc3f82d683)]
- **benchmark**: calibrate config v8/serialize.js (Rafael Gonzaga)
[#&#8203;59586](https://redirect.github.com/nodejs/node/pull/59586)
-
\[[`e95c9b2950`](https://redirect.github.com/nodejs/node/commit/e95c9b2950)]
- **benchmark**: reduce readfile-permission-enabled config (Rafael
Gonzaga)
[#&#8203;59589](https://redirect.github.com/nodejs/node/pull/59589)
-
\[[`e4fea38b31`](https://redirect.github.com/nodejs/node/commit/e4fea38b31)]
- **benchmark**: calibrate length of util.diff (Rafael Gonzaga)
[#&#8203;59588](https://redirect.github.com/nodejs/node/pull/59588)
-
\[[`c5d68c4a0f`](https://redirect.github.com/nodejs/node/commit/c5d68c4a0f)]
- **benchmark, test**: replace CRLF variable with string literal (Lee
Jiho)
[#&#8203;59466](https://redirect.github.com/nodejs/node/pull/59466)
-
\[[`129a1d673b`](https://redirect.github.com/nodejs/node/commit/129a1d673b)]
- **build**: fix getting OpenSSL version on Windows (Michaël Zasso)
[#&#8203;59609](https://redirect.github.com/nodejs/node/pull/59609)
-
\[[`9f53db7162`](https://redirect.github.com/nodejs/node/commit/9f53db7162)]
- **build**: fix 'implicit-function-declaration' on OpenHarmony platform
(hqzing)
[#&#8203;59547](https://redirect.github.com/nodejs/node/pull/59547)
-
\[[`3839593e07`](https://redirect.github.com/nodejs/node/commit/3839593e07)]
- **build**: use `windows-2025` runner (Michaël Zasso)
[#&#8203;59673](https://redirect.github.com/nodejs/node/pull/59673)
-
\[[`e430464669`](https://redirect.github.com/nodejs/node/commit/e430464669)]
- **build**: compile bundled uvwasi conditionally (Carlo Cabrera)
[#&#8203;59622](https://redirect.github.com/nodejs/node/pull/59622)
-
\[[`e2c9cab0cd`](https://redirect.github.com/nodejs/node/commit/e2c9cab0cd)]
- **build**: do not set `-mminimal-toc` with `clang` (Richard Lau)
[#&#8203;59484](https://redirect.github.com/nodejs/node/pull/59484)
-
\[[`208bc810a1`](https://redirect.github.com/nodejs/node/commit/208bc810a1)]
- **child\_process**: remove unsafe array iteration (hotpineapple)
[#&#8203;59347](https://redirect.github.com/nodejs/node/pull/59347)
-
\[[`d74799d90c`](https://redirect.github.com/nodejs/node/commit/d74799d90c)]
- **crypto**: load system CA certificates off thread (Joyee Cheung)
[#&#8203;59550](https://redirect.github.com/nodejs/node/pull/59550)
-
\[[`5b83e1e0a2`](https://redirect.github.com/nodejs/node/commit/5b83e1e0a2)]
- **crypto**: update root certificates to NSS 3.114 (Node.js GitHub Bot)
[#&#8203;59571](https://redirect.github.com/nodejs/node/pull/59571)
-
\[[`d289b1d1af`](https://redirect.github.com/nodejs/node/commit/d289b1d1af)]
- **deps**: V8: cherry-pick
[`e3df60f`](https://redirect.github.com/nodejs/node/commit/e3df60f3f5ab)
(Chengzhong Wu)
[#&#8203;58691](https://redirect.github.com/nodejs/node/pull/58691)
-
\[[`cf5d91e2a6`](https://redirect.github.com/nodejs/node/commit/cf5d91e2a6)]
- **deps**: update uvwasi to 0.0.23 (Node.js GitHub Bot)
[#&#8203;59791](https://redirect.github.com/nodejs/node/pull/59791)
-
\[[`1cf24a0445`](https://redirect.github.com/nodejs/node/commit/1cf24a0445)]
- **deps**: update histogram to 0.11.9 (Node.js GitHub Bot)
[#&#8203;59689](https://redirect.github.com/nodejs/node/pull/59689)
-
\[[`8638bd3f2e`](https://redirect.github.com/nodejs/node/commit/8638bd3f2e)]
- **deps**: update googletest to
[`eb2d85e`](https://redirect.github.com/nodejs/node/commit/eb2d85e)
(Node.js GitHub Bot)
[#&#8203;59335](https://redirect.github.com/nodejs/node/pull/59335)
-
\[[`3ff4eb5b37`](https://redirect.github.com/nodejs/node/commit/3ff4eb5b37)]
- **deps**: update amaro to 1.1.2 (Node.js GitHub Bot)
[#&#8203;59616](https://redirect.github.com/nodejs/node/pull/59616)
-
\[[`4d268ac034`](https://redirect.github.com/nodejs/node/commit/4d268ac034)]
- **deps**: V8: cherry-pick
[`7b91e3e`](https://redirect.github.com/nodejs/node/commit/7b91e3e2cbaf)
(Milad Fa)
[#&#8203;59485](https://redirect.github.com/nodejs/node/pull/59485)
-
\[[`83410eb0e3`](https://redirect.github.com/nodejs/node/commit/83410eb0e3)]
- **deps**: V8: cherry-pick
[`59d52e3`](https://redirect.github.com/nodejs/node/commit/59d52e311bb1)
(Milad Fa)
[#&#8203;59485](https://redirect.github.com/nodejs/node/pull/59485)
-
\[[`5780af02cb`](https://redirect.github.com/nodejs/node/commit/5780af02cb)]
- **deps**: update amaro to 1.1.1 (Node.js GitHub Bot)
[#&#8203;59141](https://redirect.github.com/nodejs/node/pull/59141)
-
\[[`2986eca821`](https://redirect.github.com/nodejs/node/commit/2986eca821)]
- **deps**: V8: cherry-pick
[`6b1b9bc`](https://redirect.github.com/nodejs/node/commit/6b1b9bca2a8)
(zhoumingtao)
[#&#8203;59283](https://redirect.github.com/nodejs/node/pull/59283)
-
\[[`98e399b3ea`](https://redirect.github.com/nodejs/node/commit/98e399b3ea)]
- **deps**: update archs files for openssl-3.5.2 (Node.js GitHub Bot)
[#&#8203;59371](https://redirect.github.com/nodejs/node/pull/59371)
-
\[[`2b983a7520`](https://redirect.github.com/nodejs/node/commit/2b983a7520)]
- **deps**: upgrade openssl sources to openssl-3.5.2 (Node.js GitHub
Bot) [#&#8203;59371](https://redirect.github.com/nodejs/node/pull/59371)
-
\[[`7ffbb42454`](https://redirect.github.com/nodejs/node/commit/7ffbb42454)]
- **deps**: update archs files for openssl-3.5.1 (Node.js GitHub Bot)
[#&#8203;59234](https://redirect.github.com/nodejs/node/pull/59234)
-
\[[`bd48a60a75`](https://redirect.github.com/nodejs/node/commit/bd48a60a75)]
- **deps**: upgrade openssl sources to openssl-3.5.1 (Node.js GitHub
Bot) [#&#8203;59234](https://redirect.github.com/nodejs/node/pull/59234)
-
\[[`24762a10ca`](https://redirect.github.com/nodejs/node/commit/24762a10ca)]
- **deps**: fix OpenSSL security level at 1 (Richard Lau)
[#&#8203;59859](https://redirect.github.com/nodejs/node/pull/59859)
-
\[[`1233e92d10`](https://redirect.github.com/nodejs/node/commit/1233e92d10)]
- **diagnostics\_channel**: revoke DEP0163 (René)
[#&#8203;59758](https://redirect.github.com/nodejs/node/pull/59758)
-
\[[`34b25fd97b`](https://redirect.github.com/nodejs/node/commit/34b25fd97b)]
- **doc**: stabilize --disable-sigusr1 (Rafael Gonzaga)
[#&#8203;59707](https://redirect.github.com/nodejs/node/pull/59707)
-
\[[`d7adf8be64`](https://redirect.github.com/nodejs/node/commit/d7adf8be64)]
- **doc**: update "Type stripping in dependencies" section (Josh Kelley)
[#&#8203;59652](https://redirect.github.com/nodejs/node/pull/59652)
-
\[[`a1d7e4fdbf`](https://redirect.github.com/nodejs/node/commit/a1d7e4fdbf)]
- **doc**: add Miles Guicent as triager (Miles Guicent)
[#&#8203;59562](https://redirect.github.com/nodejs/node/pull/59562)
-
\[[`bf41218ed9`](https://redirect.github.com/nodejs/node/commit/bf41218ed9)]
- **doc**: mark `path.matchesGlob` as stable (Aviv Keller)
[#&#8203;59572](https://redirect.github.com/nodejs/node/pull/59572)
-
\[[`afaa1ccb74`](https://redirect.github.com/nodejs/node/commit/afaa1ccb74)]
- **doc**: improve documentation for raw headers in HTTP/2 APIs (Tim
Perry)
[#&#8203;59633](https://redirect.github.com/nodejs/node/pull/59633)
-
\[[`b95ff56102`](https://redirect.github.com/nodejs/node/commit/b95ff56102)]
- **doc**: update install\_tools.bat free disk space (Stefan Stojanovic)
[#&#8203;59579](https://redirect.github.com/nodejs/node/pull/59579)
-
\[[`6ff939b8d3`](https://redirect.github.com/nodejs/node/commit/6ff939b8d3)]
- **doc**: fix filehandle.read typo (Ruy Adorno)
[#&#8203;59635](https://redirect.github.com/nodejs/node/pull/59635)
-
\[[`963bfa9d6f`](https://redirect.github.com/nodejs/node/commit/963bfa9d6f)]
- **doc**: fix missing link to the Error documentation in the `http`
page (Alexander Makarenko)
[#&#8203;59080](https://redirect.github.com/nodejs/node/pull/59080)
-
\[[`0e10a8ea27`](https://redirect.github.com/nodejs/node/commit/0e10a8ea27)]
- **doc**: improve `sqlite.backup()` progress/fulfillment documentation
(René)
[#&#8203;59598](https://redirect.github.com/nodejs/node/pull/59598)
-
\[[`18ceefbabd`](https://redirect.github.com/nodejs/node/commit/18ceefbabd)]
- **doc**: clarify experimental platform vulnerability policy (Matteo
Collina)
[#&#8203;59591](https://redirect.github.com/nodejs/node/pull/59591)
-
\[[`66cdd00368`](https://redirect.github.com/nodejs/node/commit/66cdd00368)]
- **doc**: link to `TypedArray.from()` in signature (Aviv Keller)
[#&#8203;59226](https://redirect.github.com/nodejs/node/pull/59226)
-
\[[`9f058ce7c0`](https://redirect.github.com/nodejs/node/commit/9f058ce7c0)]
- **doc**: fix typos in `environment_variables.md` (PhistucK)
[#&#8203;59536](https://redirect.github.com/nodejs/node/pull/59536)
-
\[[`3cfec820e9`](https://redirect.github.com/nodejs/node/commit/3cfec820e9)]
- **doc**: add security incident reponse plan (Rafael Gonzaga)
[#&#8203;59470](https://redirect.github.com/nodejs/node/pull/59470)
-
\[[`46aa3434e6`](https://redirect.github.com/nodejs/node/commit/46aa3434e6)]
- **doc**: clarify maxRSS unit in `process.resourceUsage()` (Alex Yang)
[#&#8203;59511](https://redirect.github.com/nodejs/node/pull/59511)
-
\[[`adf98f600a`](https://redirect.github.com/nodejs/node/commit/adf98f600a)]
- **doc**: add missing Zstd strategy constants (RANDRIAMANANTENA
Narindra Tiana Annaick)
[#&#8203;59312](https://redirect.github.com/nodejs/node/pull/59312)
-
\[[`f335989942`](https://redirect.github.com/nodejs/node/commit/f335989942)]
- **doc**: fix the version tls.DEFAULT\_CIPHERS was added (Allon
Murienik)
[#&#8203;59247](https://redirect.github.com/nodejs/node/pull/59247)
-
\[[`7fa14fcf54`](https://redirect.github.com/nodejs/node/commit/7fa14fcf54)]
- **doc**: clarify glob's exclude option behavior (hotpineapple)
[#&#8203;59245](https://redirect.github.com/nodejs/node/pull/59245)
-
\[[`85b8d255c9`](https://redirect.github.com/nodejs/node/commit/85b8d255c9)]
- **doc**: add RafaelGSS as performance strategic lead (Rafael Gonzaga)
[#&#8203;59445](https://redirect.github.com/nodejs/node/pull/59445)
-
\[[`16b1f7a602`](https://redirect.github.com/nodejs/node/commit/16b1f7a602)]
- **doc**: add new environment variables doc page (Dario Piotrowicz)
[#&#8203;59052](https://redirect.github.com/nodejs/node/pull/59052)
-
\[[`b4a43ed83a`](https://redirect.github.com/nodejs/node/commit/b4a43ed83a)]
- **doc**: add missing environment variables to manpage (amir lavasani)
[#&#8203;58963](https://redirect.github.com/nodejs/node/pull/58963)
-
\[[`c923cfe898`](https://redirect.github.com/nodejs/node/commit/c923cfe898)]
- **doc**: fix links in test.md (Vas Sudanagunta)
[#&#8203;58876](https://redirect.github.com/nodejs/node/pull/58876)
-
\[[`a93a8b5eda`](https://redirect.github.com/nodejs/node/commit/a93a8b5eda)]
- **doc**: mark type stripping as release candidate (Marco Ippolito)
[#&#8203;57705](https://redirect.github.com/nodejs/node/pull/57705)
-
\[[`d302cb3bb2`](https://redirect.github.com/nodejs/node/commit/d302cb3bb2)]
- **esm**: add experimental support for addon modules (Chengzhong Wu)
[#&#8203;55844](https://redirect.github.com/nodejs/node/pull/55844)
-
\[[`d55c3e7f0b`](https://redirect.github.com/nodejs/node/commit/d55c3e7f0b)]
- **esm**: link modules synchronously when no async loader hooks are
used (Joyee Cheung)
[#&#8203;59519](https://redirect.github.com/nodejs/node/pull/59519)
-
\[[`9e1fbb620f`](https://redirect.github.com/nodejs/node/commit/9e1fbb620f)]
- **esm**: show race error message for inner module job race (Joyee
Cheung)
[#&#8203;59519](https://redirect.github.com/nodejs/node/pull/59519)
-
\[[`8c4dcd5199`](https://redirect.github.com/nodejs/node/commit/8c4dcd5199)]
- **esm**: sync-ify module translation (Joyee Cheung)
[#&#8203;59453](https://redirect.github.com/nodejs/node/pull/59453)
-
\[[`71038932d3`](https://redirect.github.com/nodejs/node/commit/71038932d3)]
- **fs**: fix wrong order of file names in cpSync error message
(Nicholas Paun)
[#&#8203;59775](https://redirect.github.com/nodejs/node/pull/59775)
-
\[[`5692dec451`](https://redirect.github.com/nodejs/node/commit/5692dec451)]
- **fs**: fix dereference: false on cpSync (Nicholas Paun)
[#&#8203;59681](https://redirect.github.com/nodejs/node/pull/59681)
-
\[[`dafd561d37`](https://redirect.github.com/nodejs/node/commit/dafd561d37)]
- **fs**: fix return value of fs APIs (theanarkh)
[#&#8203;58996](https://redirect.github.com/nodejs/node/pull/58996)
-
\[[`da6e8cb75b`](https://redirect.github.com/nodejs/node/commit/da6e8cb75b)]
- **http**: unbreak keepAliveTimeoutBuffer (Robert Nagy)
[#&#8203;59784](https://redirect.github.com/nodejs/node/pull/59784)
-
\[[`673a48f0a2`](https://redirect.github.com/nodejs/node/commit/673a48f0a2)]
- **http**: use cached '1.1' http version string (Robert Nagy)
[#&#8203;59717](https://redirect.github.com/nodejs/node/pull/59717)
-
\[[`1dbad2058f`](https://redirect.github.com/nodejs/node/commit/1dbad2058f)]
- **(SEMVER-MINOR)** **http**: add Agent.agentKeepAliveTimeoutBuffer
option (Haram Jeong)
[#&#8203;59315](https://redirect.github.com/nodejs/node/pull/59315)
-
\[[`062e837d5f`](https://redirect.github.com/nodejs/node/commit/062e837d5f)]
- **(SEMVER-MINOR)** **http2**: add support for raw header arrays in
h2Stream.respond() (Tim Perry)
[#&#8203;59455](https://redirect.github.com/nodejs/node/pull/59455)
-
\[[`4d4fb51b89`](https://redirect.github.com/nodejs/node/commit/4d4fb51b89)]
- **http2**: report sent headers object in client stream dcs (Darshan
Sen) [#&#8203;59419](https://redirect.github.com/nodejs/node/pull/59419)
-
\[[`b8066611c3`](https://redirect.github.com/nodejs/node/commit/b8066611c3)]
- **inspector**: add http2 tracking support (Darshan Sen)
[#&#8203;59611](https://redirect.github.com/nodejs/node/pull/59611)
-
\[[`9b2c013032`](https://redirect.github.com/nodejs/node/commit/9b2c013032)]
- **inspector**: prevent propagation of promise hooks to noPromise hooks
(Shima Ryuhei)
[#&#8203;58841](https://redirect.github.com/nodejs/node/pull/58841)
-
\[[`a2329895e7`](https://redirect.github.com/nodejs/node/commit/a2329895e7)]
- **lib**: fix DOMException subclass support (Chengzhong Wu)
[#&#8203;59680](https://redirect.github.com/nodejs/node/pull/59680)
-
\[[`edb9248bdd`](https://redirect.github.com/nodejs/node/commit/edb9248bdd)]
- **lib**: make domexception a native error (Chengzhong Wu)
[#&#8203;58691](https://redirect.github.com/nodejs/node/pull/58691)
-
\[[`ccf29cda19`](https://redirect.github.com/nodejs/node/commit/ccf29cda19)]
- ***Revert*** "**lib**: optimize writable stream buffer clearing" (Yoo)
[#&#8203;59743](https://redirect.github.com/nodejs/node/pull/59743)
-
\[[`f291eda277`](https://redirect.github.com/nodejs/node/commit/f291eda277)]
- **lib**: fix isReadable and isWritable return type value (Gabriel
Quaresma)
[#&#8203;59089](https://redirect.github.com/nodejs/node/pull/59089)
-
\[[`10ae8684ea`](https://redirect.github.com/nodejs/node/commit/10ae8684ea)]
- **lib**: revert to using default derived class constructors (René)
[#&#8203;59650](https://redirect.github.com/nodejs/node/pull/59650)
-
\[[`5d3b80d62d`](https://redirect.github.com/nodejs/node/commit/5d3b80d62d)]
- **lib**: do not modify prototype deprecated asyncResource (encore)
(Szymon Łągiewka)
[#&#8203;59518](https://redirect.github.com/nodejs/node/pull/59518)
-
\[[`3c4541f878`](https://redirect.github.com/nodejs/node/commit/3c4541f878)]
- **lib**: simplify IPv6 checks in isLoopback() (Krishnadas)
[#&#8203;59375](https://redirect.github.com/nodejs/node/pull/59375)
-
\[[`0b631bbffa`](https://redirect.github.com/nodejs/node/commit/0b631bbffa)]
- **lib**: handle windows reserved device names on UNC (Rafael Gonzaga)
[#&#8203;59286](https://redirect.github.com/nodejs/node/pull/59286)
-
\[[`297f62ba1f`](https://redirect.github.com/nodejs/node/commit/297f62ba1f)]
- **meta**: bump `codecov/codecov-action` (dependabot\[bot])
[#&#8203;59726](https://redirect.github.com/nodejs/node/pull/59726)
-
\[[`3dcd8446b6`](https://redirect.github.com/nodejs/node/commit/3dcd8446b6)]
- **meta**: bump actions/download-artifact from 4.3.0 to 5.0.0
(dependabot\[bot])
[#&#8203;59729](https://redirect.github.com/nodejs/node/pull/59729)
-
\[[`d0d357f683`](https://redirect.github.com/nodejs/node/commit/d0d357f683)]
- **meta**: bump github/codeql-action from 3.29.2 to 3.30.0
(dependabot\[bot])
[#&#8203;59728](https://redirect.github.com/nodejs/node/pull/59728)
-
\[[`2a0e264949`](https://redirect.github.com/nodejs/node/commit/2a0e264949)]
- **meta**: bump actions/cache from 4.2.3 to 4.2.4 (dependabot\[bot])
[#&#8203;59727](https://redirect.github.com/nodejs/node/pull/59727)
-
\[[`0a013d1da1`](https://redirect.github.com/nodejs/node/commit/0a013d1da1)]
- **meta**: bump actions/checkout from 4.2.2 to 5.0.0 (dependabot\[bot])
[#&#8203;59725](https://redirect.github.com/nodejs/node/pull/59725)
-
\[[`c690b53d24`](https://redirect.github.com/nodejs/node/commit/c690b53d24)]
- **meta**: update devcontainer to the latest schema (Aviv Keller)
[#&#8203;54347](https://redirect.github.com/nodejs/node/pull/54347)
-
\[[`61171c7756`](https://redirect.github.com/nodejs/node/commit/61171c7756)]
- **module**: correctly detect top-level await in ambiguous contexts
(Shima Ryuhei)
[#&#8203;58646](https://redirect.github.com/nodejs/node/pull/58646)
-
\[[`75bf3f4a87`](https://redirect.github.com/nodejs/node/commit/75bf3f4a87)]
- **node-api**: link to other programming language bindings (Chengzhong
Wu) [#&#8203;59516](https://redirect.github.com/nodejs/node/pull/59516)
-
\[[`9a05107558`](https://redirect.github.com/nodejs/node/commit/9a05107558)]
- **node-api**: clarify enum value ABI stability (Chengzhong Wu)
[#&#8203;59085](https://redirect.github.com/nodejs/node/pull/59085)
-
\[[`658c31d60c`](https://redirect.github.com/nodejs/node/commit/658c31d60c)]
- **path**: refactor path joining logic for clarity and performance (Lee
Jiho)
[#&#8203;59781](https://redirect.github.com/nodejs/node/pull/59781)
-
\[[`9cc89f55f7`](https://redirect.github.com/nodejs/node/commit/9cc89f55f7)]
- **path,win**: fix bug in resolve and normalize (Hüseyin Açacak)
[#&#8203;55623](https://redirect.github.com/nodejs/node/pull/55623)
-
\[[`24e825f8f5`](https://redirect.github.com/nodejs/node/commit/24e825f8f5)]
- **sea**: implement sea.getAssetKeys() (Joyee Cheung)
[#&#8203;59661](https://redirect.github.com/nodejs/node/pull/59661)
-
\[[`c66af21e55`](https://redirect.github.com/nodejs/node/commit/c66af21e55)]
- **sea**: allow using inspector command line flags with SEA (Joyee
Cheung)
[#&#8203;59568](https://redirect.github.com/nodejs/node/pull/59568)
-
\[[`9b7dd40da8`](https://redirect.github.com/nodejs/node/commit/9b7dd40da8)]
- **(SEMVER-MINOR)** **sea**: implement execArgvExtension (Joyee Cheung)
[#&#8203;59560](https://redirect.github.com/nodejs/node/pull/59560)
-
\[[`48bfbd3dca`](https://redirect.github.com/nodejs/node/commit/48bfbd3dca)]
- **(SEMVER-MINOR)** **sea**: support execArgv in sea config (Joyee
Cheung)
[#&#8203;59314](https://redirect.github.com/nodejs/node/pull/59314)
-
\[[`5559456fe4`](https://redirect.github.com/nodejs/node/commit/5559456fe4)]
- **sqlite**: add sqlite-type symbol for DatabaseSync (Alex Yang)
[#&#8203;59405](https://redirect.github.com/nodejs/node/pull/59405)
-
\[[`3478130da3`](https://redirect.github.com/nodejs/node/commit/3478130da3)]
- **sqlite**: handle ?NNN parameters as positional (Edy Silva)
[#&#8203;59350](https://redirect.github.com/nodejs/node/pull/59350)
-
\[[`312bc4e5d1`](https://redirect.github.com/nodejs/node/commit/312bc4e5d1)]
- **sqlite**: avoid useless call to FromMaybe() (Tobias Nießen)
[#&#8203;59490](https://redirect.github.com/nodejs/node/pull/59490)
-
\[[`937e9bb1c6`](https://redirect.github.com/nodejs/node/commit/937e9bb1c6)]
- **src**: track BaseObjects with an efficient list (Chengzhong Wu)
[#&#8203;55104](https://redirect.github.com/nodejs/node/pull/55104)
-
\[[`be2a5e170d`](https://redirect.github.com/nodejs/node/commit/be2a5e170d)]
- **src**: track async resources via pointers to stack-allocated handles
(Anna Henningsen)
[#&#8203;59704](https://redirect.github.com/nodejs/node/pull/59704)
-
\[[`f232bf2c11`](https://redirect.github.com/nodejs/node/commit/f232bf2c11)]
- **src**: fix build on NetBSD (Thomas Klausner)
[#&#8203;59718](https://redirect.github.com/nodejs/node/pull/59718)
-
\[[`e9a685bc3d`](https://redirect.github.com/nodejs/node/commit/e9a685bc3d)]
- **src**: fix race on process exit and off thread CA loading
(Chengzhong Wu)
[#&#8203;59632](https://redirect.github.com/nodejs/node/pull/59632)
-
\[[`24428fc8fb`](https://redirect.github.com/nodejs/node/commit/24428fc8fb)]
- **src**: add name for more threads (theanarkh)
[#&#8203;59601](https://redirect.github.com/nodejs/node/pull/59601)
-
\[[`fd7559f8c3`](https://redirect.github.com/nodejs/node/commit/fd7559f8c3)]
- **src**: remove JSONParser (Joyee Cheung)
[#&#8203;59619](https://redirect.github.com/nodejs/node/pull/59619)
-
\[[`8c296bac99`](https://redirect.github.com/nodejs/node/commit/8c296bac99)]
- **src**: enforce assumptions in FIXED\_ONE\_BYTE\_STRING (Tobias
Nießen)
[#&#8203;58155](https://redirect.github.com/nodejs/node/pull/58155)
-
\[[`1b4885a3f2`](https://redirect.github.com/nodejs/node/commit/1b4885a3f2)]
- **src**: use simdjson to parse --snapshot-config (Joyee Cheung)
[#&#8203;59473](https://redirect.github.com/nodejs/node/pull/59473)
-
\[[`9f798de6b0`](https://redirect.github.com/nodejs/node/commit/9f798de6b0)]
- **src**: fix order of CHECK\_NOT\_NULL/dereference (Tobias Nießen)
[#&#8203;59487](https://redirect.github.com/nodejs/node/pull/59487)
-
\[[`f764be27dc`](https://redirect.github.com/nodejs/node/commit/f764be27dc)]
- **src**: move shared\_ptr objects in KeyObjectData (Tobias Nießen)
[#&#8203;59472](https://redirect.github.com/nodejs/node/pull/59472)
-
\[[`d30287fe12`](https://redirect.github.com/nodejs/node/commit/d30287fe12)]
- **src**: iterate metadata version entries with std::array (Chengzhong
Wu) [#&#8203;57866](https://redirect.github.com/nodejs/node/pull/57866)
-
\[[`b2bf620c7b`](https://redirect.github.com/nodejs/node/commit/b2bf620c7b)]
- **src**: internalize `v8::ConvertableToTraceFormat` in traces
(Chengzhong Wu)
[#&#8203;57866](https://redirect.github.com/nodejs/node/pull/57866)
-
\[[`b3c507c8ef`](https://redirect.github.com/nodejs/node/commit/b3c507c8ef)]
- **src**: remove duplicate assignment of `O_EXCL` in node\_constants.cc
(Daniel Osvaldo R)
[#&#8203;59049](https://redirect.github.com/nodejs/node/pull/59049)
-
\[[`20aec239d4`](https://redirect.github.com/nodejs/node/commit/20aec239d4)]
- **src**: add Intel CET properties to large\_pages.S (tjuhaszrh)
[#&#8203;59363](https://redirect.github.com/nodejs/node/pull/59363)
-
\[[`8e0f9cd061`](https://redirect.github.com/nodejs/node/commit/8e0f9cd061)]
- **src**: remove unused DSAKeyExportJob (Filip Skokan)
[#&#8203;59291](https://redirect.github.com/nodejs/node/pull/59291)
-
\[[`0c2b6df94f`](https://redirect.github.com/nodejs/node/commit/0c2b6df94f)]
- **src,sqlite**: refactor value conversion (Edy Silva)
[#&#8203;59659](https://redirect.github.com/nodejs/node/pull/59659)
-
\[[`b95cfdf0e5`](https://redirect.github.com/nodejs/node/commit/b95cfdf0e5)]
- **stream**: replace manual function validation with validateFunction
(방진혁)
[#&#8203;59529](https://redirect.github.com/nodejs/node/pull/59529)
-
\[[`cf06e74076`](https://redirect.github.com/nodejs/node/commit/cf06e74076)]
- **(SEMVER-MINOR)** **stream**: add brotli support to CompressionStream
and DecompressionStream (Matthew Aitken)
[#&#8203;59464](https://redirect.github.com/nodejs/node/pull/59464)
-
\[[`903ebd373a`](https://redirect.github.com/nodejs/node/commit/903ebd373a)]
- **test**: skip more sea tests on Linux ppc64le (Richard Lau)
[#&#8203;59755](https://redirect.github.com/nodejs/node/pull/59755)
-
\[[`e961060bb6`](https://redirect.github.com/nodejs/node/commit/e961060bb6)]
- **test**: fix internet/test-dns (Michaël Zasso)
[#&#8203;59660](https://redirect.github.com/nodejs/node/pull/59660)
- \[[`c2b22f50a8`](https://redirect.git

</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:eyJjcmVhdGVkSW5WZXIiOiI0Mi41OS4wIiwidXBkYXRlZEluVmVyIjoiNDIuNTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-29 18:55:11 +08:00
DarkSky
6951f1002f feat: improve event handle (#14177) 2025-12-29 18:54:59 +08:00
DarkSky
20a80015c0 feat: integrate native indexer for mobile (#14174)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **New Features**
* Added full-text search functionality to mobile apps (Android and iOS),
enabling document indexing and search capabilities.
* Enhanced blob upload support with new GraphQL mutations for creating,
completing, and managing file uploads.

* **Improvements**
* iOS and Android now use SQLite storage backend for improved indexing
performance, aligning with desktop experience.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-28 21:34:39 +08:00
DarkSky
504460438f fix: mobile mult-select tag delete (#14172)
fix #14167

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## New Features
* Added Backspace key support to delete the last selected tag when the
input field is empty
* Added delete icon buttons next to each tag for quick removal
* Features available on both mobile and desktop tag pickers

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-28 17:16:20 +08:00
DarkSky
582340b0b7 fix: lint 2025-12-28 15:32:25 +08:00
renovate[bot]
11d9a41433 chore: bump up apple/swift-collections version to from: "1.3.0" (#13688)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[apple/swift-collections](https://redirect.github.com/apple/swift-collections)
| minor | `from: "1.2.1"` -> `from: "1.3.0"` |

---

### Release Notes

<details>
<summary>apple/swift-collections (apple/swift-collections)</summary>

###
[`v1.3.0`](https://redirect.github.com/apple/swift-collections/releases/tag/1.3.0):
Swift Collections 1.3.0

[Compare
Source](https://redirect.github.com/apple/swift-collections/compare/1.2.1...1.3.0)

This feature release supports Swift toolchain versions 6.0, 6.1 and 6.2,
and it includes the following improvements:

##### `BasicContainers` module

This new module collects ownership-aware, low-level variants of existing
data structures in the core standard library. In this release, this
module consists of two array variants, `UniqueArray` and `RigidArray`.

These new types are provided as less flexible, noncopyable alternatives
to the classic `Array` type. The standard `Array` implements value
semantics with the copy-on-write optimization; this inherently requires
elements to be copyable, and it is itself copyable.

`struct UniqueArray<Element>` is a noncopyable array variant that takes
away `Array`'s copy-on-write behavior, enabling support for noncopyable
elements. This type's noncopyability means mutations can always assume
that the array is uniquely owned, with no shared copies (hence the
name!). This means that array mutations such as mutating an element at
an index can behave much more predictably, with no unexpected
performance spikes due to having to copy shared storage.

`struct RigidArray<Element>` goes even further, by also disabling
dynamic resizing. Rigid arrays have a fixed capacity: they are
initialized with room for a particular number of elements, and they
never implicitly grow (nor shrink) their storage. When a rigid array's
count reaches its capacity, it becomes unable to add any new items --
inserting into a full array is considered a programming error. This
makes this a quite inflexible (or *rigid*) type indeed, as avoiding
storage overflow requires careful, up front planning on the resource
needs of the task at hand. In exchange, rigid arrays can have extremely
predictable performance characteristics.

`UniqueArray` is a great default choice when a task just needs an array
type that is able store noncopyable elements. `RigidArray` is best
reserved for use cases that require absolute, pedantic control over
memory use or latency -- such as control software running in
environments with extremely limited memory, or when a certain task must
always be completed in some given amount of time.

The `Unique` and `Rigid` prefixes applied here establish a general
naming convention for low-level variants of the classic copy-on-write
data structure implementations. Future releases are expected to flesh
out our zoo of container types by adding `Unique` and `Rigid` variants
of the existing `Set`, `Dictionary`, `Deque`, `Heap` and other
constructs, with type names such as as `RigidDictionary` and
`UniqueDeque`.

##### `TrailingElementsModule` module

This new module ships a new `TrailingArray` construct, a preview of a
new low-level, ownership-aware variant of `ManagedBuffer`. This is
primarily intended as a interoperability helper for C constructs that
consist of a fixed-size header directly followed by variable-size
storage buffer.

##### `ContainersPreview` module

This module is intended to contain previews of an upcoming
ownership-aware container model. In this initial release, this module
consists of just one construct: `struct Box<T>`.

`Box` is a wrapper type that forms a noncopyable, heap allocated box
around an arbitrary value.

#### What's Changed

- Merge release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;204](https://redirect.github.com/apple/swift-collections/pull/204)
- Merge relase/1.1 to main, without taking any changes by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;206](https://redirect.github.com/apple/swift-collections/pull/206)
- \[Heap] Add methods to replace minimum/maximum (redux) by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;208](https://redirect.github.com/apple/swift-collections/pull/208)
- Persistent collections updates (part 10) by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;207](https://redirect.github.com/apple/swift-collections/pull/207)
- Update CMakeLists.txt by
[@&#8203;compnerd](https://redirect.github.com/compnerd) in
[#&#8203;215](https://redirect.github.com/apple/swift-collections/pull/215)
- Merge latest changes from release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;220](https://redirect.github.com/apple/swift-collections/pull/220)
- Merge branch release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;231](https://redirect.github.com/apple/swift-collections/pull/231)
- \[SortedCollections] Disable tests with
[@&#8203;testable](https://redirect.github.com/testable) imports in
release builds by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;232](https://redirect.github.com/apple/swift-collections/pull/232)
- \[Hashtable] Minor Documentation Fix (Typo) by
[@&#8203;nickkohrn](https://redirect.github.com/nickkohrn) in
[#&#8203;241](https://redirect.github.com/apple/swift-collections/pull/241)
- Merge branch `release/1.1` to `main` by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;248](https://redirect.github.com/apple/swift-collections/pull/248)
- Update README.md by
[@&#8203;glessard](https://redirect.github.com/glessard) in
[#&#8203;251](https://redirect.github.com/apple/swift-collections/pull/251)
- \[OrderedDictionary] Explicitly mention in documentation that
keys/values are ordered by
[@&#8203;warpling](https://redirect.github.com/warpling) in
[#&#8203;254](https://redirect.github.com/apple/swift-collections/pull/254)
- build: support ARM64 spelling by
[@&#8203;compnerd](https://redirect.github.com/compnerd) in
[#&#8203;282](https://redirect.github.com/apple/swift-collections/pull/282)
- Merge release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;284](https://redirect.github.com/apple/swift-collections/pull/284)
- Update release checklist by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;323](https://redirect.github.com/apple/swift-collections/pull/323)
- build: update the build rules for adjusted tree layout by
[@&#8203;compnerd](https://redirect.github.com/compnerd) in
[#&#8203;331](https://redirect.github.com/apple/swift-collections/pull/331)
- build: support using swift-collections in larger projects by
[@&#8203;compnerd](https://redirect.github.com/compnerd) in
[#&#8203;330](https://redirect.github.com/apple/swift-collections/pull/330)
- Merge release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;332](https://redirect.github.com/apple/swift-collections/pull/332)
- build: support building in Debug mode on Windows by
[@&#8203;compnerd](https://redirect.github.com/compnerd) in
[#&#8203;333](https://redirect.github.com/apple/swift-collections/pull/333)
- Bugfix Incorrect Assert in BTree.removeFirst/removeLast by
[@&#8203;LeoNavel](https://redirect.github.com/LeoNavel) in
[#&#8203;349](https://redirect.github.com/apple/swift-collections/pull/349)
- Fix typos by [@&#8203;rex4539](https://redirect.github.com/rex4539) in
[#&#8203;356](https://redirect.github.com/apple/swift-collections/pull/356)
- Merge branch `release/1.1` to `main` by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;358](https://redirect.github.com/apple/swift-collections/pull/358)
- Merge.1.1→main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;361](https://redirect.github.com/apple/swift-collections/pull/361)
- Add post-merge CI support by
[@&#8203;shahmishal](https://redirect.github.com/shahmishal) in
[#&#8203;367](https://redirect.github.com/apple/swift-collections/pull/367)
- Update CODEOWNERS by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;375](https://redirect.github.com/apple/swift-collections/pull/375)
- Merge release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;386](https://redirect.github.com/apple/swift-collections/pull/386)
- Merge release/1.1 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;410](https://redirect.github.com/apple/swift-collections/pull/410)
- \[BTree]\[NFC] Rephrase some comments by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;427](https://redirect.github.com/apple/swift-collections/pull/427)
- \[CI] Pull Request testing support via GitHub Actions by
[@&#8203;shahmishal](https://redirect.github.com/shahmishal) in
[#&#8203;426](https://redirect.github.com/apple/swift-collections/pull/426)
- \[OrderedDictionary Documentation] fix a typo by
[@&#8203;Gyuni](https://redirect.github.com/Gyuni) in
[#&#8203;445](https://redirect.github.com/apple/swift-collections/pull/445)
- Install swiftmodules with full module triple by
[@&#8203;etcwilde](https://redirect.github.com/etcwilde) in
[#&#8203;470](https://redirect.github.com/apple/swift-collections/pull/470)
- \[OrderedSet] Add `OrderedSet.appending(contentsOf:)` by
[@&#8203;pm-dev](https://redirect.github.com/pm-dev) in
[#&#8203;452](https://redirect.github.com/apple/swift-collections/pull/452)
- ManagedBuffer.capacity is unavailable on OpenBSD. by
[@&#8203;3405691582](https://redirect.github.com/3405691582) in
[#&#8203;456](https://redirect.github.com/apple/swift-collections/pull/456)
- Align Heap.\_UnsafeHandle min/maxValue tie-breaking with Swift.min/max
by [@&#8203;DakshinD](https://redirect.github.com/DakshinD) in
[#&#8203;455](https://redirect.github.com/apple/swift-collections/pull/455)
- Add Heap.removeAll(where:) by
[@&#8203;DakshinD](https://redirect.github.com/DakshinD) in
[#&#8203;454](https://redirect.github.com/apple/swift-collections/pull/454)
- Merge release/1.2 to main by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;450](https://redirect.github.com/apple/swift-collections/pull/450)
- Disable `SortedCollections` module by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;479](https://redirect.github.com/apple/swift-collections/pull/479)
- Enable MemberImportVisibility and fix issues uncovered by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;480](https://redirect.github.com/apple/swift-collections/pull/480)
- fix comment for OrderedSet.appending(contentsOf:) by
[@&#8203;ozumin](https://redirect.github.com/ozumin) in
[#&#8203;478](https://redirect.github.com/apple/swift-collections/pull/478)
- Bump requirements of nested benchmarking package by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;481](https://redirect.github.com/apple/swift-collections/pull/481)
- Fix CMake build by
[@&#8203;etcwilde](https://redirect.github.com/etcwilde) in
[#&#8203;482](https://redirect.github.com/apple/swift-collections/pull/482)
- Merge changes on `release/1.2` to `main` branch by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;487](https://redirect.github.com/apple/swift-collections/pull/487)
- Enable macOS testing on GitHub Actions by
[@&#8203;shahmishal](https://redirect.github.com/shahmishal) in
[#&#8203;483](https://redirect.github.com/apple/swift-collections/pull/483)
- Fix API documentation links in README.md by
[@&#8203;azarovalex](https://redirect.github.com/azarovalex) in
[#&#8203;490](https://redirect.github.com/apple/swift-collections/pull/490)
- Skip Xcode 16.0 and 16.1 in PR workflow by
[@&#8203;natecook1000](https://redirect.github.com/natecook1000) in
[#&#8203;493](https://redirect.github.com/apple/swift-collections/pull/493)
- Fix OrderedSet example usage by
[@&#8203;azarovalex](https://redirect.github.com/azarovalex) in
[#&#8203;491](https://redirect.github.com/apple/swift-collections/pull/491)
- Add support for embedded Swift mode by
[@&#8203;parkera](https://redirect.github.com/parkera) in
[#&#8203;494](https://redirect.github.com/apple/swift-collections/pull/494)
- Include DequeModule in the Foundation toolchain build by
[@&#8203;cthielen](https://redirect.github.com/cthielen) in
[#&#8203;495](https://redirect.github.com/apple/swift-collections/pull/495)
- Fix CMake build for `release/1.2` by
[@&#8203;cthielen](https://redirect.github.com/cthielen) in
[#&#8203;498](https://redirect.github.com/apple/swift-collections/pull/498)
- fix minor typo in init docs for Deque.swift by
[@&#8203;t089](https://redirect.github.com/t089) in
[#&#8203;503](https://redirect.github.com/apple/swift-collections/pull/503)
- \[SortedSet] Fix subtreeCount inconsistency after remove at index by
[@&#8203;brianchang928](https://redirect.github.com/brianchang928) in
[#&#8203;502](https://redirect.github.com/apple/swift-collections/pull/502)
- Add the missing COLLECTIONS\_SINGLE\_MODULE when import
InternalCollectionsUtils by
[@&#8203;faimin](https://redirect.github.com/faimin) in
[#&#8203;501](https://redirect.github.com/apple/swift-collections/pull/501)
- \[SortedCollections] Fix incorrect offset calculation in
BTree.findAnyIndex by
[@&#8203;brianchang928](https://redirect.github.com/brianchang928) in
[#&#8203;506](https://redirect.github.com/apple/swift-collections/pull/506)
- \[SortedCollections] Fix B-tree root reduction during element removal
causing data loss by
[@&#8203;brianchang928](https://redirect.github.com/brianchang928) in
[#&#8203;507](https://redirect.github.com/apple/swift-collections/pull/507)
- Add checks for Wasm compatibility to `pull_request.yml` by
[@&#8203;MaxDesiatov](https://redirect.github.com/MaxDesiatov) in
[#&#8203;509](https://redirect.github.com/apple/swift-collections/pull/509)
- First round of noncopyable constructs: `Box`, `RigidArray`,
`DynamicArray` by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;508](https://redirect.github.com/apple/swift-collections/pull/508)
- \[actions] exclude Xcode 26 beta 6 by
[@&#8203;glessard](https://redirect.github.com/glessard) in
[#&#8203;514](https://redirect.github.com/apple/swift-collections/pull/514)
- Add "trailing elements" module with facilities for tail-allocated
storage by [@&#8203;DougGregor](https://redirect.github.com/DougGregor)
in
[#&#8203;513](https://redirect.github.com/apple/swift-collections/pull/513)
- \[Xcode] Add trailing elements to xcodeproj by
[@&#8203;Azoy](https://redirect.github.com/Azoy) in
[#&#8203;515](https://redirect.github.com/apple/swift-collections/pull/515)
- Containers: Naming updates, minor tweaks by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;516](https://redirect.github.com/apple/swift-collections/pull/516)
- Add BasicContainer rename to xcodeproj by
[@&#8203;Azoy](https://redirect.github.com/Azoy) in
[#&#8203;517](https://redirect.github.com/apple/swift-collections/pull/517)
- Prepare for tagging 1.3.0 by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;523](https://redirect.github.com/apple/swift-collections/pull/523)
- \[Docs] Fix landing page of collections documentation by
[@&#8203;Azoy](https://redirect.github.com/Azoy) in
[#&#8203;520](https://redirect.github.com/apple/swift-collections/pull/520)
- build: Install libraries in an `arch` sub-folder by
[@&#8203;Steelskin](https://redirect.github.com/Steelskin) in
[#&#8203;505](https://redirect.github.com/apple/swift-collections/pull/505)
- More release preparations for 1.3.0 by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;524](https://redirect.github.com/apple/swift-collections/pull/524)
- One last round of documentation updates by
[@&#8203;lorentey](https://redirect.github.com/lorentey) in
[#&#8203;525](https://redirect.github.com/apple/swift-collections/pull/525)

#### New Contributors

- [@&#8203;nickkohrn](https://redirect.github.com/nickkohrn) made their
first contribution in
[#&#8203;241](https://redirect.github.com/apple/swift-collections/pull/241)
- [@&#8203;warpling](https://redirect.github.com/warpling) made their
first contribution in
[#&#8203;254](https://redirect.github.com/apple/swift-collections/pull/254)
- [@&#8203;LeoNavel](https://redirect.github.com/LeoNavel) made their
first contribution in
[#&#8203;349](https://redirect.github.com/apple/swift-collections/pull/349)
- [@&#8203;rex4539](https://redirect.github.com/rex4539) made their
first contribution in
[#&#8203;356](https://redirect.github.com/apple/swift-collections/pull/356)
- [@&#8203;Gyuni](https://redirect.github.com/Gyuni) made their first
contribution in
[#&#8203;445](https://redirect.github.com/apple/swift-collections/pull/445)
- [@&#8203;pm-dev](https://redirect.github.com/pm-dev) made their first
contribution in
[#&#8203;452](https://redirect.github.com/apple/swift-collections/pull/452)
- [@&#8203;DakshinD](https://redirect.github.com/DakshinD) made their
first contribution in
[#&#8203;455](https://redirect.github.com/apple/swift-collections/pull/455)
- [@&#8203;ozumin](https://redirect.github.com/ozumin) made their first
contribution in
[#&#8203;478](https://redirect.github.com/apple/swift-collections/pull/478)
- [@&#8203;azarovalex](https://redirect.github.com/azarovalex) made
their first contribution in
[#&#8203;490](https://redirect.github.com/apple/swift-collections/pull/490)
- [@&#8203;natecook1000](https://redirect.github.com/natecook1000) made
their first contribution in
[#&#8203;493](https://redirect.github.com/apple/swift-collections/pull/493)
- [@&#8203;parkera](https://redirect.github.com/parkera) made their
first contribution in
[#&#8203;494](https://redirect.github.com/apple/swift-collections/pull/494)
- [@&#8203;t089](https://redirect.github.com/t089) made their first
contribution in
[#&#8203;503](https://redirect.github.com/apple/swift-collections/pull/503)
- [@&#8203;brianchang928](https://redirect.github.com/brianchang928)
made their first contribution in
[#&#8203;502](https://redirect.github.com/apple/swift-collections/pull/502)
- [@&#8203;faimin](https://redirect.github.com/faimin) made their first
contribution in
[#&#8203;501](https://redirect.github.com/apple/swift-collections/pull/501)
- [@&#8203;MaxDesiatov](https://redirect.github.com/MaxDesiatov) made
their first contribution in
[#&#8203;509](https://redirect.github.com/apple/swift-collections/pull/509)
- [@&#8203;DougGregor](https://redirect.github.com/DougGregor) made
their first contribution in
[#&#8203;513](https://redirect.github.com/apple/swift-collections/pull/513)

**Full Changelog**:
<https://github.com/apple/swift-collections/compare/1.2.1...1.3.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.

---

- [x] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQyLjU5LjAiLCJ0YXJnZXRCcmFuY2giOiJjYW5hcnkiLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-28 15:18:35 +08:00
renovate[bot]
f49f42ce76 chore: bump up Lakr233/ListViewKit version to from: "1.1.8" (#14078)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [Lakr233/ListViewKit](https://redirect.github.com/Lakr233/ListViewKit)
| patch | `from: "1.1.6"` -> `from: "1.1.8"` |

---

### Release Notes

<details>
<summary>Lakr233/ListViewKit (Lakr233/ListViewKit)</summary>

###
[`v1.1.8`](https://redirect.github.com/Lakr233/ListViewKit/compare/1.1.7...1.1.8)

[Compare
Source](https://redirect.github.com/Lakr233/ListViewKit/compare/1.1.7...1.1.8)

###
[`v1.1.7`](https://redirect.github.com/Lakr233/ListViewKit/compare/1.1.6...1.1.7)

[Compare
Source](https://redirect.github.com/Lakr233/ListViewKit/compare/1.1.6...1.1.7)

</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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4zMi4yIiwidXBkYXRlZEluVmVyIjoiNDIuMzIuMiIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2025-12-28 15:17:50 +08:00
renovate[bot]
f78dc44690 chore: bump up Lakr233/MarkdownView version to from: "3.4.7" (#14090)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[Lakr233/MarkdownView](https://redirect.github.com/Lakr233/MarkdownView)
| patch | `from: "3.4.2"` -> `from: "3.4.7"` |

---

### Release Notes

<details>
<summary>Lakr233/MarkdownView (Lakr233/MarkdownView)</summary>

###
[`v3.4.7`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.6...3.4.7)

[Compare
Source](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.6...3.4.7)

###
[`v3.4.6`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.5...3.4.6)

[Compare
Source](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.5...3.4.6)

###
[`v3.4.5`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.4...3.4.5)

[Compare
Source](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.4...3.4.5)

###
[`v3.4.4`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.3...3.4.4)

[Compare
Source](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.3...3.4.4)

###
[`v3.4.3`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.2...3.4.3)

[Compare
Source](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.2...3.4.3)

</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.

---

- [x] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi40Mi4yIiwidXBkYXRlZEluVmVyIjoiNDIuNTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-28 15:16:48 +08:00
DarkSky
a38e7e58e0 docs: update template 2025-12-28 07:39:14 +08:00
DarkSky
4f1d57ade5 feat: integrate typst preview & fix mermaid style (#14168)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Typst code block preview with interactive rendering controls (zoom,
pan, reset) and user-friendly error messages

* **Style**
  * Centered Mermaid diagram rendering for improved layout

* **Tests**
  * Added end-to-end preview validation tests for Typst and Mermaid

* **Chores**
* Added WebAssembly type declarations and updated frontend packages;
removed a build debug configuration entry

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-28 04:55:22 +08:00
DarkSky
1b532d5c6c fix: inline doc toolbar tooltip (#14169)
fix #14001

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Style**
* Updated tooltip text from "Edit" to "Edit Description" in link and
toolbar configurations to provide clearer guidance on the edit action's
purpose across the application.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-28 02:37:02 +08:00
DarkSky
6514614df8 feat: bump electron (#14158) 2025-12-27 23:54:11 +08:00
DarkSky
702dbf7be4 fix: client indexing & outdated scheme (#14160)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Optimized storage handling with platform-specific
implementations—SQLite for Electron and IndexedDB for other environments
for improved performance.

* **Bug Fixes**
* Enhanced recording file access and retrieval functionality for better
reliability.
  * Strengthened local file protocol handling and security restrictions.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-27 17:56:42 +08:00
DarkSky
78949044ec feat: improve idb perf (#14159)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Performance**
* Optimized database operations through improved batch processing to
accelerate data retrieval, updates, and deletion operations for better
efficiency.

* **Reliability**
* Enhanced transaction durability handling to strengthen data
consistency and ensure more reliable persistence of database changes and
updates.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-27 08:22:37 +08:00
DarkSky
4eed92cebf feat: improve electron sandbox (#14156) 2025-12-27 03:23:28 +08:00
DarkSky
3fe8923fc3 fix: flatpak bundle (#14155) 2025-12-26 23:37:53 +08:00
DarkSky
ca386283c5 feat: bump electron (#14151) 2025-12-26 09:41:16 +08:00
DarkSky
2e38898937 feat: refresh index if version changed (#14150) 2025-12-26 01:08:05 +08:00
DarkSky
e8693a3a25 feat: introduce fuzzy search for native indexer (#14109) 2025-12-25 04:40:23 +08:00
github-actions[bot]
b6dc68eddf chore(i18n): sync translations (#14054)
New Crowdin translations by [Crowdin GH
Action](https://github.com/crowdin/github-action)

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: DarkSky <darksky2048@gmail.com>
2025-12-24 03:12:32 +08:00
keke
08a30edb2d chore: correct the wrong file path in building doc (#14145)
When I read the
[building-desktop-client-app.md](https://github.com/toeverything/AFFiNE/blob/canary/docs/building-desktop-client-app.md)
to build Artifacts locally, I find there have some legacy path due to
some project structure updates.

So this is a litte fix to correct the unmatched path in the doc.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Updated desktop client app building documentation to reflect changes
in the project structure and configuration setup.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-24 02:45:39 +08:00
Daniel Dybing
6c9ab603eb feat(i18n): updated Norwegian translations to 20% (#14133)
Updated translations for Norwegian Bokmål to 20%. 

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Localization**
* Enhanced Norwegian Bokmål language support with expanded translations
covering profile settings, email verification, journal, tags, copy
actions, edgeless mode, and additional interface elements.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2025-12-24 01:42:23 +08:00
DarkSky
4b721dffe0 feat: set admin name when self hosted init (#14146)
fix #14134
2025-12-23 23:38:34 +08:00
DarkSky
a1f1c61a9f fix: ci 2025-12-23 23:26:19 +08:00
DarkSky
76524084d1 feat: multipart blob sync support (#14138)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Flexible blob uploads: GRAPHQL, presigned, and multipart flows with
per‑part URLs, abort/complete operations, presigned proxy endpoints, and
nightly cleanup of expired pending uploads.

* **API / Schema**
* GraphQL additions: new types, mutations, enum and error to manage
upload lifecycle (create, complete, abort, get part URL).

* **Database**
* New blob status enum and columns (status, upload_id); listing now
defaults to completed blobs.

* **Localization**
  * Added user-facing message: "Blob is invalid."

* **Tests**
* Expanded unit and end‑to‑end coverage for upload flows, proxy
behavior, multipart and provider integrations.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-23 22:09:21 +08:00
DarkSky
a9937e18b6 fix: cleanup expired records (#14140) 2025-12-23 22:08:57 +08:00
Daniel Dybing
7539135c4d feat(i18n): Updated Norwegian translations to 12% (#14125)
Updated Norwegian bokmål translations to 12% completeness.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Localization**
* Expanded Norwegian language support with numerous new translations for
UI elements, including workspace settings, keyboard shortcuts,
authentication messages, and cloud features.
* Improved translation coverage for Norwegian, bringing the completeness
metric from 9 to 12 with additional localized strings across the
application.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-21 20:02:44 +00:00
Daniel Dybing
8f59509e73 feat(editor): add delete key support for table view (#14119)
This PR allows the user to use the `Delete` key to delete the content of
one or more cells in a Table View. Previously, this was only possible to
do with the `Backspace` key. Both keys can now be used, which is often
the norm in other tools - such as Notion and Excel.

In short, the logic for the `Backspace` key has been moved to a separate
function which is called by keyevents from both the `Backspace` and
`Delete` keys.

Affected files: 
-
blocksuite/affine/data-view/src/view-presets/table/pc-virtual/controller/hotkeys.ts
-
blocksuite/affine/data-view/src/view-presets/table/pc/controller/hotkeys.ts

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Refactor**
* Optimized table hotkey handling logic to consolidate delete and
backspace operations for improved code maintainability.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-22 03:17:05 +08:00
DarkSky
321965a424 feat: impl text delta support (#14132) 2025-12-22 03:16:16 +08:00
renovate[bot]
efbdee5508 chore: bump up storybook version to v10.1.10 [SECURITY] (#14131)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [storybook](https://storybook.js.org)
([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/core))
| [`10.1.5` ->
`10.1.10`](https://renovatebot.com/diffs/npm/storybook/10.1.5/10.1.10) |
![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/10.1.10?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/10.1.5/10.1.10?slim=true)
|

### GitHub Vulnerability Alerts

####
[CVE-2025-68429](https://redirect.github.com/storybookjs/storybook/security/advisories/GHSA-8452-54wp-rmv6)

On December 11th, the Storybook team received a responsible disclosure
alerting them to a potential vulnerability in certain built and
published Storybooks.

The vulnerability is a bug in how Storybook handles environment
variables defined in a `.env` file, which could, in specific
circumstances, lead to those variables being unexpectedly bundled into
the artifacts created by the `storybook build` command. When a built
Storybook is published to the web, the bundle’s source is viewable, thus
potentially exposing those variables to anyone with access. If those
variables contained secrets, they should be considered compromised.

## Who is impacted?

For a project to be vulnerable to this issue, it must:

- Build the Storybook (i.e. run `storybook build` directly or
indirectly) in a directory that contains a `.env` file (including
variants like `.env.local`)
- The `.env` file contains sensitive secrets
- Use Storybook version `7.0.0` or above
- Publish the built Storybook to the web

Storybooks built without a `.env` file at build time are not affected,
including common CI-based builds where secrets are provided via platform
environment variables rather than `.env` files.

Users' Storybook runtime environments (i.e. `storybook dev`) are not
affected. Deployed applications that share a repo with a project's
Storybook are not affected.

Storybook 6 and below are not affected.

## Recommended actions

First, Storybook recommends that everyone audit for any sensitive
secrets provided via `.env` files and rotate those keys.

Second, Storybook has released patched versions of all affected major
Storybook versions that no longer have this vulnerability. Projects
should upgrade their Storybook—on both local machines and CI
environments—to one of these versions **before publishing again**.

- `10.1.10+`
- `9.1.17+`
- `8.6.15+`
- `7.6.21+`

Finally, some projects may have been relying on the undocumented
behavior at the heart of this issue and will need to change how they
reference environment variables after this update. If a project can no
longer read necessary environmental variable values, it can either
prefix the variables with `STORYBOOK_` or use the [`env` property in
Storybook’s
configuration](https://storybook.js.org/docs/configure/environment-variables#using-storybook-configuration)
to manually specify values. In either case, **do not** include sensitive
secrets as they *will* be included in the built bundle.

## Further information

Details of the vulnerability can be found on the [Storybook
announcement](https://storybook.js.org/blog/security-advisory).

---

### Release Notes

<details>
<summary>storybookjs/storybook (storybook)</summary>

###
[`v10.1.10`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#10110)

[Compare
Source](https://redirect.github.com/storybookjs/storybook/compare/v10.1.9...v10.1.10)

- Core: Fix `.env`-file parsing -
[#&#8203;33383](https://redirect.github.com/storybookjs/storybook/pull/33383),
thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
- Next.js: Handle v14 compatibility for draftMode import -
[#&#8203;33341](https://redirect.github.com/storybookjs/storybook/pull/33341),
thanks [@&#8203;tanujbhaud](https://redirect.github.com/tanujbhaud)!

###
[`v10.1.9`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#1019)

[Compare
Source](https://redirect.github.com/storybookjs/storybook/compare/v10.1.8...v10.1.9)

- Telemetry: Remove instance of check for sub-error handling -
[#&#8203;33356](https://redirect.github.com/storybookjs/storybook/pull/33356),
thanks
[@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!

###
[`v10.1.8`](https://redirect.github.com/storybookjs/storybook/compare/v10.1.7...7cd0cbca4ee2f2c082c9876de2fb2feba6c12bbf)

[Compare
Source](https://redirect.github.com/storybookjs/storybook/compare/v10.1.7...v10.1.8)

###
[`v10.1.7`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#1017)

[Compare
Source](https://redirect.github.com/storybookjs/storybook/compare/v10.1.6...v10.1.7)

- Automigrate: Fix missing await -
[#&#8203;33333](https://redirect.github.com/storybookjs/storybook/pull/33333),
thanks
[@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
- CLI: Remove REACT\_PROJECT projectType -
[#&#8203;33334](https://redirect.github.com/storybookjs/storybook/pull/33334),
thanks
[@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
- Core: Exclude open from pre-bundling to make local xdg-open reachable
-
[#&#8203;33325](https://redirect.github.com/storybookjs/storybook/pull/33325),
thanks [@&#8203;Sidnioulz](https://redirect.github.com/Sidnioulz)!
- Nextjs-Vite: Install `vite` during migration if not installed yet -
[#&#8203;33316](https://redirect.github.com/storybookjs/storybook/pull/33316),
thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
- Telemetry: Fix race condition in telemetry cache causing malformed
JSON -
[#&#8203;33323](https://redirect.github.com/storybookjs/storybook/pull/33323),
thanks
[@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!

###
[`v10.1.6`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#1016)

[Compare
Source](https://redirect.github.com/storybookjs/storybook/compare/v10.1.5...v10.1.6)

- Manager: Do not display non-existing shortcuts in the settings page -
[#&#8203;32711](https://redirect.github.com/storybookjs/storybook/pull/32711),
thanks [@&#8203;DKER2](https://redirect.github.com/DKER2)!
- Preview: Enforce inert body if manager is focus-trapped -
[#&#8203;33186](https://redirect.github.com/storybookjs/storybook/pull/33186),
thanks [@&#8203;Sidnioulz](https://redirect.github.com/Sidnioulz)!
- Telemetry: Await pending operations in getLastEvents to prevent race
conditions -
[#&#8203;33285](https://redirect.github.com/storybookjs/storybook/pull/33285),
thanks
[@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
- UI: Fix keyboard navigation bug for "reset" option in `Select` -
[#&#8203;33268](https://redirect.github.com/storybookjs/storybook/pull/33268),
thanks [@&#8203;Sidnioulz](https://redirect.github.com/Sidnioulz)!

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (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.

🔕 **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:eyJjcmVhdGVkSW5WZXIiOiI0Mi41OS4wIiwidXBkYXRlZEluVmVyIjoiNDIuNTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-21 09:21:20 +00:00
Daniel Dybing
28a1ac4772 feat(core): focus on text body when opening journal (#14122)
Related to issue https://github.com/toeverything/AFFiNE/issues/14094

This PR makes it so that focus is put on the input body when loading a
journal. A check is made when loading the document whether it is a
normal document or a journal document. If it is a journal document, the
last noteblock in the document is focused on. This does not change how
the title is focused on normal documents.

This makes it more effortless to use the journal, as you don't have to
click on the body of the journal after opening/creating it.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Improved editor focus for journal documents: when opening or switching
to a journal the cursor now auto-positions to the end of the last note
entry (or the input area) after a short, smooth delay for faster typing
and reliable focus behavior.

* **Bug Fixes**
* Added safeguards and error handling to make automatic focus more
robust across load and editor states.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-20 06:45:40 +00:00
Daniel Dybing
caeec23ec6 feat(i18n): added support for Norwegian (Bokmål) (#14121)
Added support for Norwegian (Bokmål). 

Translation completeness is currently at 9%. 

<img width="1908" height="909" alt="Screenshot from 2025-12-18 13-57-15"
src="https://github.com/user-attachments/assets/4a6def20-92d5-4415-9976-301e23887187"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Norwegian Bokmål (nb-NO) language is now available with localized
interface and UI translations.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-19 17:24:17 +08:00
Daniel Dybing
a1767ebedb fix(core): fixed keyboard shortcut help for Windows and Linux (#14088)
This PR is related to issue
https://github.com/toeverything/AFFiNE/issues/13290

Keyboard shortcut for copying a private link works as expected, but the
overview of shortcuts shows the Mac shortcut for Windows, web and Linux
users. This fix shows the correct (Ctrl+Shift+C) shortcut to the
aforementioned users.

I have not tested this on a Mac (neither in browser nor in the app), but
ideally this should not have an impact for Mac users as the logic for
showing the correct shortcut is already implemented.

Affected files: 
- packages/frontend/core/src/components/hooks/affine/use-shortcuts.ts


Old: 
<img width="1402" height="946" alt="old_shortcut"
src="https://github.com/user-attachments/assets/5c8f2133-2b4d-49c7-8054-851c7de8f3cd"
/>

New:
<img width="650" height="379" alt="Keyboard shortcut fix"
src="https://github.com/user-attachments/assets/a29e2f7a-53d7-4743-a9b1-aa30e7622dd1"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Corrected the keyboard shortcut for copying private links on Windows
from Command+Shift+C to Ctrl+Shift+C.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-17 19:58:01 +08:00
hi
b052c92421 fix: fix typo in link shortcut key binding (#14117)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Corrected keyboard shortcut mapping for link function, ensuring it
properly recognizes Ctrl+K command.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-17 10:15:25 +00:00
Daniel Dybing
66407f2b2f feat(core): adapt date fields in database for notion import (#14111)
This is related to issue/feature request
https://github.com/toeverything/AFFiNE/issues/13962.

This PR extends the Notion import functionality to properly handle date
fields from databases. Previously, these were imported as text (see
photo below), which served little purpose. These Notion date fields are
now parsed as actual dates, and imported to AFFiNE as epoch time (which
is what the date field in AFFiNe expects). Because of this, even date
fields with time (e.g. 09:00 AM) are also handled correctly - although
they are only shown as dates, since AFFiNE's `Date` field does not
support time.

Tested with several Notion imports both with and without time, and they
all seem to work correctly.


Affected files: 
- blocksuite/affine/blocks/database/src/adapters/notion-html.ts

Old: 
<img width="802" height="305" alt="image"
src="https://github.com/user-attachments/assets/44019dba-cffb-4a30-a5ea-69cd9f86e0a1"
/>

New: 
<img width="804" height="271" alt="image"
src="https://github.com/user-attachments/assets/3f52f328-7ee3-4754-9726-10dcfa0f8462"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Enhanced Notion imports with automatic date column detection. When
importing Notion databases, date fields are now automatically
recognized, properly configured as date columns, and formatted
correctly. This improvement ensures accurate data preservation,
eliminates manual type corrections, and provides a streamlined import
experience for all users working with date-rich Notion databases.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-16 02:55:34 +00:00
Daniel Dybing
f5076a37ae feat(core): find todo list based on 'checkbox' search query (#13982)
This feature enhances the /slash command by allowing users to search for
'checkbox' and have the to-do list item show up as a result. Users come
from different systems and environments, and some may use the name
'checkbox' but be confused as they cannot find it in the search menu.

This is achieved by adding a `searchAlias` property on the to-do list
item block that contains the string `checkbox`.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added search-alias support for slash menu items so entries can be
found by alternative terms.
* To-do List entry now includes "checkbox" as an additional searchable
alias to improve discoverability.
* Slash menu search results updated to reflect alias-driven matches
(additional item appears when searching).

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2025-12-15 15:32:00 +08:00
DarkSky
4717886c9e fix: title icon display (#14101)
fix #14073
2025-12-14 01:00:01 +08:00
DarkSky
844b9d9592 feat(server): impl native reader for server (#14100) 2025-12-14 00:28:43 +08:00
Xun Sun
a0eeed0cdb feat: implement export as PDF (#14057)
I used [pdfmake](https://www.npmjs.com/package/pdfmake) to implement an
"export as PDF" feature, and I am happy to share with you!

This should fix #13577, fix #8846, and fix #13959.

A showcase:

[Getting
Started.pdf](https://github.com/user-attachments/files/24013057/Getting.Started.pdf)

Although it might miss rendering some properties currently, it can
evolve in the long run and provide a more native experience for the
users.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
- Experimental "Export to PDF" option added to the export menu (behind a
feature flag)
- PDF export supports headings, paragraphs, lists, code blocks, tables,
images, callouts, linked documents and embedded content

* **Chores**
  - Added PDF rendering library and consolidated PDF utilities
  - Feature flag introduced to control rollout

* **Tests**
  - Comprehensive unit tests added for PDF content rendering logic

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: DarkSky <darksky2048@gmail.com>
2025-12-13 18:05:25 +08:00
Fangdun Tsai
246e09e0cd fix: roll back electron version to v35 (#14089)
In electron v36, all workers do not work. 
The webpack configuration is too complicated, so go back first.

If start a new project with [forge](https://www.electronforge.io/) and
latest electron, the worker works well.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
* Downgraded the Electron development/runtime used for building and
testing the desktop app from v36 to v35; this is a
development-environment change with no functional or API changes
affecting end users.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-12 02:46:58 +00:00
renovate[bot]
7f96c97b67 chore: bump up rustc version to v1.92.0 (#13624)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [rustc](https://redirect.github.com/rust-lang/rust) | minor | `1.91.0`
-> `1.92.0` |

---

### Release Notes

<details>
<summary>rust-lang/rust (rustc)</summary>

###
[`v1.92.0`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1920-2025-12-11)

[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.91.1...1.92.0)

\==========================

<a id="1.92.0-Language"></a>

## Language

- [Document `MaybeUninit` representation and
validity](https://redirect.github.com/rust-lang/rust/pull/140463)
- [Allow `&raw [mut | const]` for union field in safe
code](https://redirect.github.com/rust-lang/rust/pull/141469)
- [Prefer item bounds of associated types over where-bounds for
auto-traits and
`Sized`](https://redirect.github.com/rust-lang/rust/pull/144064)
- [Do not materialize `X` in `[X; 0]` when `X` is unsizing a
const](https://redirect.github.com/rust-lang/rust/pull/145277)
- [Support combining `#[track_caller]` and `#[no_mangle]` (requires
every declaration specifying `#[track_caller]` as
well)](https://redirect.github.com/rust-lang/rust/pull/145724)
- [Make never type lints `never_type_fallback_flowing_into_unsafe` and
`dependency_on_unit_never_type_fallback`
deny-by-default](https://redirect.github.com/rust-lang/rust/pull/146167)
- [Allow specifying multiple bounds for same associated item, except in
trait objects](https://redirect.github.com/rust-lang/rust/pull/146593)
- [Slightly strengthen higher-ranked region handling in
coherence](https://redirect.github.com/rust-lang/rust/pull/146725)
- [The `unused_must_use` lint no longer warns on `Result<(),
Uninhabited>` (for instance, `Result<(), !>`), or
`ControlFlow<Uninhabited,
()>`](https://redirect.github.com/rust-lang/rust/pull/147382). This
avoids having to check for an error that can never happen.

<a id="1.92.0-Compiler"></a>

## Compiler

- [Make `mips64el-unknown-linux-muslabi64` link
dynamically](https://redirect.github.com/rust-lang/rust/pull/146858)
- [Remove current code for embedding command-line args in
PDB](https://redirect.github.com/rust-lang/rust/pull/147022)
Command-line information is typically not needed by debugging tools, and
the removed code
was causing problems for incremental builds even on targets that don't
use PDB debuginfo.

<a id="1.92.0-Libraries"></a>

## Libraries

- [Specialize `Iterator::eq{_by}` for `TrustedLen`
iterators](https://redirect.github.com/rust-lang/rust/pull/137122)
- [Simplify `Extend` for
tuples](https://redirect.github.com/rust-lang/rust/pull/138799)
- [Added details to `Debug` for
`EncodeWide`](https://redirect.github.com/rust-lang/rust/pull/140153).
-
[`iter::Repeat::last`](https://redirect.github.com/rust-lang/rust/pull/147258)
and [`count`](https://redirect.github.com/rust-lang/rust/pull/146410)
will now panic, rather than looping infinitely.

<a id="1.92.0-Stabilized-APIs"></a>

## Stabilized APIs

-
[`NonZero<u{N}>::div_ceil`](https://doc.rust-lang.org/stable/std/num/struct.NonZero.html#method.div_ceil)
-
[`Location::file_as_c_str`](https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.file_as_c_str)
-
[`RwLockWriteGuard::downgrade`](https://doc.rust-lang.org/stable/std/sync/struct.RwLockWriteGuard.html#method.downgrade)
-
[`Box::new_zeroed`](https://doc.rust-lang.org/stable/std/boxed/struct.Box.html#method.new_zeroed)
-
[`Box::new_zeroed_slice`](https://doc.rust-lang.org/stable/std/boxed/struct.Box.html#method.new_zeroed_slice)
-
[`Rc::new_zeroed`](https://doc.rust-lang.org/stable/std/rc/struct.Rc.html#method.new_zeroed)
-
[`Rc::new_zeroed_slice`](https://doc.rust-lang.org/stable/std/rc/struct.Rc.html#method.new_zeroed_slice)
-
[`Arc::new_zeroed`](https://doc.rust-lang.org/stable/std/sync/struct.Arc.html#method.new_zeroed)
-
[`Arc::new_zeroed_slice`](https://doc.rust-lang.org/stable/std/sync/struct.Arc.html#method.new_zeroed_slice)
-
[`btree_map::Entry::insert_entry`](https://doc.rust-lang.org/stable/std/collections/btree_map/enum.Entry.html#method.insert_entry)
-
[`btree_map::VacantEntry::insert_entry`](https://doc.rust-lang.org/stable/std/collections/btree_map/struct.VacantEntry.html#method.insert_entry)
- [`impl Extend<proc_macro::Group> for
proc_macro::TokenStream`](https://doc.rust-lang.org/stable/proc_macro/struct.TokenStream.html#impl-Extend%3CGroup%3E-for-TokenStream)
- [`impl Extend<proc_macro::Literal> for
proc_macro::TokenStream`](https://doc.rust-lang.org/stable/proc_macro/struct.TokenStream.html#impl-Extend%3CLiteral%3E-for-TokenStream)
- [`impl Extend<proc_macro::Punct> for
proc_macro::TokenStream`](https://doc.rust-lang.org/stable/proc_macro/struct.TokenStream.html#impl-Extend%3CPunct%3E-for-TokenStream)
- [`impl Extend<proc_macro::Ident> for
proc_macro::TokenStream`](https://doc.rust-lang.org/stable/proc_macro/struct.TokenStream.html#impl-Extend%3CIdent%3E-for-TokenStream)

These previously stable APIs are now stable in const contexts:

-
[`<[_]>::rotate_left`](https://doc.rust-lang.org/stable/std/primitive.slice.html#method.rotate_left)
-
[`<[_]>::rotate_right`](https://doc.rust-lang.org/stable/std/primitive.slice.html#method.rotate_right)

<a id="1.92.0-Cargo"></a>

## Cargo

- [Added a new
chapter](https://redirect.github.com/rust-lang/cargo/issues/16119) to
the Cargo book, ["Optimizing Build
Performance"](https://doc.rust-lang.org/stable/cargo/guide/build-performance.html).

<a id="1.92.0-Rustdoc"></a>

## Rustdoc

- [If a trait item appears in rustdoc search, hide the corresponding
impl items](https://redirect.github.com/rust-lang/rust/pull/145898).
Previously a search for "last" would show both `Iterator::last` as well
as impl methods like `std::vec::IntoIter::last`. Now these impl methods
will be hidden, freeing up space for inherent methods like
`BTreeSet::last`.
- [Relax rules for identifiers in
search](https://redirect.github.com/rust-lang/rust/pull/147860).
Previously you could only search for identifiers that were valid in rust
code, now searches only need to be valid as part of an identifier. For
example, you can now perform a search that starts with a digit.

<a id="1.92.0-Compatibility-Notes"></a>

## Compatibility Notes

- [Fix backtraces with `-C panic=abort` on Linux by generating unwind
tables by
default](https://redirect.github.com/rust-lang/rust/pull/143613). Build
with `-C force-unwind-tables=no` to keep omitting unwind tables.

* As part of the larger effort refactoring compiler built-in attributes
and their diagnostics, [the future-compatibility lint
`invalid_macro_export_arguments` is upgraded to deny-by-default and will
be reported in dependencies
too.](https://redirect.github.com/rust-lang/rust/pull/143857)
* [Update the minimum external LLVM to
20](https://redirect.github.com/rust-lang/rust/pull/145071)
* [Prevent downstream `impl DerefMut for
Pin<LocalType>`](https://redirect.github.com/rust-lang/rust/pull/145608)
* [Don't apply temporary lifetime extension rules to the arguments of
non-extended `pin!` and formatting
macros](https://redirect.github.com/rust-lang/rust/pull/145838)

###
[`v1.91.1`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1911-2025-11-10)

[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.91.0...1.91.1)

\===========================

<a id="1.91.1"></a>

- [Enable file locking support in
illumos](https://redirect.github.com/rust-lang/rust/pull/148322). This
fixes Cargo not locking the build directory on illumos.
- [Fix `wasm_import_module` attribute
cross-crate](https://redirect.github.com/rust-lang/rust/pull/148363).
This fixes linker errors on WASM targets.

</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:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQyLjQyLjIiLCJ0YXJnZXRCcmFuY2giOiJjYW5hcnkiLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-12 02:26:29 +00:00
Richard Lora
f832b28dac feat(editor): add date grouping configurations (#12679)
https://github.com/user-attachments/assets/d5578060-2c8c-47a5-ba65-ef2e9430518b

This PR adds the ability to group-by date with configuration which an
example is shown in the image below:


![image](https://github.com/user-attachments/assets/8762342a-999e-444e-afa2-5cfbf7e24907)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Date-based grouping modes (relative, day, week Sun/Mon, month, year),
a date group renderer, and quick lookup for group-by configs by name.

* **Improvements**
* Enhanced group settings: date sub‑modes, week‑start, per‑group
visibility, Hide All/Show All, date sort order, improved drag/drop and
reorder.
* Consistent popup placement/middleware, nested popup positioning,
per‑item close-on-select, and enforced minimum menu heights.
* UI: empty groups now display "No <property>"; views defensively handle
null/hidden groups.

* **Tests**
  * Added unit tests for date-key sorting and comparison.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Norkz <richardlora557@gmail.com>
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-12-11 22:32:21 +00:00
DarkSky
b258fc3775 feat: update dmg compress algorithm 2025-12-11 21:11:35 +08:00
Mord0reK
396cda2fff feat(i18n): add Polish language support (#14080)
It's my first time making a pull request to any repo. If there are any
issues, let me know.

## Summary
Adds Polish language support. Translation is 98% complete (10,447/10,646
words).

## Changes
- Added `pl` to Language type
- Added Polish to SUPPORTED_LANGUAGES with lazy loading

The `pl.json` file already exists in the repo with good translation
coverage. Some AI-related strings are not yet translated but will fall
back to English.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Added Polish language support to the application, including localized
language name, native language name, and flag emoji.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-10 12:12:47 +00:00
DarkSky
cb0ff04efa feat: bump more deps (#14079) 2025-12-10 16:02:28 +08:00