mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-05 03:25:10 +08:00
fc59dff9e26eb65a6fbf3d0cfb65ebb0463e6c2f
10946 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
fc59dff9e2 | chore: enable blur background for mac | ||
|
|
27a58e764c | chore: bump version & deps | ||
|
|
13907f7234 | fix(core): event flow handle (#14256) | ||
|
|
7c24b2521a |
feat: reduce backend (#14251)
#### PR Dependency Tree * **PR #14251** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Current user profile now exposes access tokens, revealed tokens, and detailed calendar accounts/subscriptions. * Workspace now exposes permissions, calendars, calendar events, and a workspace-scoped blob upload part URL. * New document-update mutation for applying doc updates. * **API Changes** * validateAppConfig is now a query (mutation deprecated). * Several legacy top-level calendar/blob endpoints deprecated in favor of user/workspace fields. * **Refactor** * Calendar, blob-upload and access-token surfaces reorganized to use user/workspace-centric fields. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
7c440686ad |
chore(i18n): sync translations (#14148)
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: DarkSky <darksky2048@gmail.com>v0.26.0-beta.5 |
||
|
|
b331a08744 |
feat: native update merge (#14250)
#### PR Dependency Tree * **PR #14250** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Backend Optimization** * Faster document retrieval via a native binary fetch path. * Native-accelerated merging of document updates for improved performance and consistency. * **Indexing & Reliability** * Indexing now only proceeds on valid parse results, with clearer warnings and richer metadata on failures. * More consistent sync behavior and enhanced diagnostic logging for indexing operations. * **Tests** * Expanded tests to cover native binary retrieval error handling. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
279b7bb64f |
feat(core): integrate google calendar sync (#14248)
fix #14170 fix #13893 fix #13673 fix #13543 fix #13308 fix #7607 #### PR Dependency Tree * **PR #14247** * **PR #14248** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Integrations panel in Account Settings to link/unlink calendar providers. * Collapsible settings wrapper for improved layout. * **Improvements** * Calendar system reworked: per-account calendar groups, simplified toggles with explicit Save, richer event display (multi-dot date indicators), improved event time/title handling across journal views. * **Localization** * Added calendar keys: save-error, no-journal, no-calendar; removed legacy duplicate-error keys. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
89f0430242 | fix: race conditions (y-crdt/y-octo#51) | ||
|
|
0bd8160ed4 |
feat: init cloud calendar support (#14247)
#### PR Dependency Tree * **PR #14247** 👈 * **PR #14248** This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Google Calendar integration (disabled by default): link/unlink accounts, OAuth flow, webhooks, real-time push, background sync, workspace calendars with customizable items and date-range event viewing. * **GraphQL / Client** * New queries & mutations for accounts, subscriptions, events, providers, and workspace calendar management. * **Localization** * Added localized error message for calendar provider request failures. * **Tests** * Backend tests covering sync, webhook renewal, and error/error-recovery scenarios. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
a5b60cf679 | fix: index calc & detached node handle (y-crdt/y-octo#50) | ||
|
|
ca2462f987 |
feat(native): sync yocto codes (#14243)
#### PR Dependency Tree * **PR #14243** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Batch management API for coordinated document mutations and change tracking. * New document accessors (IDs, state snapshots, change/delete set queries) and subscriber count. * **Chores** * Upgraded Rust edition across packages to 2024. * Repository-wide formatting, stylistic cleanups and test adjustments. * **Breaking Changes** * Removed the Node native bindings package and its JS/TS declarations and tests (no longer published/available). <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d515d295ce |
feat(editor): enhance string comparison handling in eval.ts (#14233)
Refactors the compareString function to safely handle null and undefined
inputs and improves overall string comparison logic. This prevents
incorrect sort behavior and ensures consistent ordering when comparing
mixed or missing values, particularly in table view sorting scenarios.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Bug Fixes**
* Improved string comparison used for sorting: empty values are
consistently placed last, numeric parts sort numerically before
non-numeric parts, and mixed-type and case variations are handled more
predictably for stable, consistent ordering across data views.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
e4dc82ee35 |
chore: bump deps (#14227)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Updated backend service dependencies to the latest stable versions for
improved performance and security.
* Upgraded UI component library dependencies to the latest minor
releases.
* **Improvements**
* Enhanced web search functionality for better search results on
standard AI models.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
aa6f26b1a5 |
chore: bump up opentelemetry (#14208)
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [@opentelemetry/instrumentation-ioredis](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/instrumentation-ioredis#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/HEAD/packages/instrumentation-ioredis)) | [`^0.56.0` → `^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.56.0/0.57.0) |  |  | | [@opentelemetry/instrumentation-socket.io](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/instrumentation-socket.io#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/HEAD/packages/instrumentation-socket.io)) | [`0.55.0` → `0.55.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.55.0/0.55.1) |  |  | --- ### Release Notes <details> <summary>open-telemetry/opentelemetry-js-contrib (@​opentelemetry/instrumentation-ioredis)</summary> ### [`v0.57.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-ioredis/CHANGELOG.md#0570-2025-12-17) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/compare/94e5b7da4500459e38e8d4dfda93542f22159600...66935ac724cc271f70028035e534d47a4dfbcf12) ##### Features - **instrumentations-ioredis:** support `net.*` and database semconv migration ([#​3266](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3266)) ([9f92c8b](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/commit/9f92c8b5b1660ff83ae27a733d13ac9f71695484)) ##### Dependencies - The following workspace dependencies were updated - devDependencies - [@​opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils) bumped from ^0.55.0 to ^0.56.0 </details> <details> <summary>open-telemetry/opentelemetry-js-contrib (@​opentelemetry/instrumentation-socket.io)</summary> ### [`v0.55.1`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-socket.io/CHANGELOG.md#0551-2025-12-17) [Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/compare/94e5b7da4500459e38e8d4dfda93542f22159600...66935ac724cc271f70028035e534d47a4dfbcf12) ##### Dependencies - The following workspace dependencies were updated - devDependencies - [@​opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils) bumped from ^0.55.0 to ^0.56.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. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4xIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
c1d43b9b18 |
fix(editor): keep slash menu alive on text input when no_result (#14141)
**Problem** Slash menu can be prematurely aborted when the query is still in `no_result` due to async query updates after deletion. **Solution** Keep the slash menu alive on text input while in `no_result`, preventing aborts based on a stale query state. **Repro** 1. Type `/eeee` 2. Delete to `/` 3. Type `h` 4. Slash menu should recover and show results <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Bug Fixes** * Enhanced slash-menu keyboard interaction: users can now continue typing to refine queries when no results are displayed, instead of the menu closing unexpectedly. Keyboard navigation and other controls remain responsive. <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> |
||
|
|
b8e597fa1d | fix: hide search local label if need | ||
|
|
cf98afb32e |
chore: bump theme@1.1.23 (#14222)
close #13952 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Upgraded the shared theme library from v1.1.16 to v1.1.23 across the project (core components, UI widgets, content blocks, and frontend apps), delivering the latest styling and design refinements platform-wide. <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: L-Sun <zover.v@gmail.com>v0.26.0-beta.4 |
||
|
|
a11e9fe8ca |
feat(server): add LISTEN_ADDR env var for allowing server to listen on ipv6 (#14211)
The old code hardcoded 0.0.0.0 which means the server only listened for
ipv4 connections, making it not work on ipv6-only networks.
This change adds a LISTEN_ADDR env var which allows the server to bind
to ipv6 as well.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Server listen address is now configurable via the LISTEN_ADDR
environment variable (default: 0.0.0.0), enabling IPv4/IPv6 or
interface-specific binding.
* Configuration schemas and admin UI now expose the listen address
option so deployments can view and override it.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
f42246aba1 | fix: allow method for cors | ||
|
|
f5394b7450 |
fix: refine handling for non-standard keyboards to avoid incorrect keyCode fallback (#14206)
Fix https://github.com/toeverything/AFFiNE/issues/14059 With the help of Claude Opus 4.5 Improve handling of keyCode fallback for non-standard keyboards by only applying it when modifier keys are pressed. This change prevents incorrect fallback behavior for non-ASCII characters, ensuring users can type intended characters without triggering shortcuts. After https://github.com/user-attachments/assets/00ab4fb2-4bc2-4ca7-a284-9782686d298c Event dump for Cyrillic x ```json { "key": "х", "keyCode": 219, "which": 219, "code": "BracketLeft", "location": 0, "altKey": false, "ctrlKey": false, "metaKey": false, "shiftKey": false, "repeat": false } ``` blocksuite commit https://github.com/toeverything/blocksuite/commit/4c0d39890fb65e8de974169fa1c96b038f6d4a83#diff-68c46455e0eece88312235df85f8ce27ae254efccde6fb987f2505180730bd8c <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Bug Fixes** * Refined keyboard input handling to properly support non-ASCII characters (e.g., Cyrillic, Greek) by ensuring user-typed characters are preserved instead of inadvertently triggering keyboard shortcuts. The fix maintains keyboard shortcut functionality while improving compatibility with international keyboards and input methods. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e7d0f31546 | fix: blob redirect | ||
|
|
fe5d6c0c0f |
feat(editor): support frontmatter & colored text parsing (#14205)
fix #13847 |
||
|
|
510933becf |
chore(server): bump ioredis to 5.8.2 for ipv6 support (#14204)
Bump ioredis to 5.8.2 for ipv6 support. Prior to 5.8.2 ioredis required passing `family: 0` or `family: 6` when constructing a client in order to connect to redis over ipv6. This was fixed in 5.8.2. fix #14197 |
||
|
|
3633c75c6f |
feat: cleanup tables (#14203)
#### PR Dependency Tree * **PR #14203** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Removed deprecated database tables, enums and schema fields (cleanup of legacy subscription, invoice, runtime settings and session expiry data). This includes irreversible data removal for those legacy elements. * **Tests** * Updated tests and test data to align with the cleaned-up schema and removed fields. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
41addfe311 | fix: blob sync v0.26.0-beta.3 | ||
|
|
9a7f8e7d4d |
feat: workspace level share settings (#14201)
fix #13698 |
||
|
|
60de882a30 |
feat: shared link list (#14200)
#### PR Dependency Tree * **PR #14200** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes * **New Features** * Added a "Shared Links" panel to workspace management, enabling admins to view all published documents within a workspace * Added publication date tracking for published documents, now displayed alongside shared links * **Chores** * Removed deprecated `publicPages` field; use `publicDocs` instead <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
9f96633b33 |
fix: normalize shortcut display (#14196)
Normalize shortcut tokens and remove stray whitespace. Uncomment group/ungroup shortcuts now that the feature is implemented. Fix Windows redo shortcut display. <img width="142" height="230" alt="image" src="https://github.com/user-attachments/assets/989e061e-1ca2-489c-ab8e-6baad853d438" /><img width="142" height="37" alt="image" src="https://github.com/user-attachments/assets/671ed9b2-ccad-44ad-8889-7810bb01143c" /> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Standardized keyboard shortcut representations across the application for improved consistency and clarity in shortcut displays. * Corrected spacing inconsistencies in shortcut entries to ensure uniform formatting. <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>v0.26.0-beta.2 |
||
|
|
1e8095c224 | fix: ci | ||
|
|
0b0ae5ea0a | feat: add queue management for admin panel | ||
|
|
f745f7b669 | feat: pre-aggregation workspace stats | ||
|
|
97507e7043 | fix: query type cast v0.26.0-beta.1 | ||
|
|
91e6f3c45c | feat: improve workspace index | ||
|
|
c7b74384a4 | fix: types | ||
|
|
20c4951847 | feat: improve workspace list perf | ||
|
|
bc03fab649 | chore: cleanup logs | ||
|
|
99332228da |
feat: native sync state (#14190)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added indexed clock management capabilities for documents, enabling
get, set, and clear operations across Android, iOS, Electron, and web
platforms.
* **Refactor**
* Improved storage architecture to dynamically select platform-specific
implementations (SQLite for Electron, IndexedDB for others).
* **Bug Fixes**
* Enhanced document operations to properly maintain and clean up indexer
synchronization state during document lifecycle changes.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
95ef04f3e0 | fix: cloud workspace search prefer & highlights v0.26.0-beta.0 | ||
|
|
e2adab7805 | fix: table compatibility (#14185) | ||
|
|
30fb953344 | fix: build | ||
|
|
ff2e96d847 | feat: database indexing support (#14181) | ||
|
|
95a5e941e7 | feat: improve admin panel (#14180) | ||
|
|
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 -->
|
||
|
|
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> |
||
|
|
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 -->
|
||
|
|
1bfd29df99 | docs: update docs | ||
|
|
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 'Jod' (LTS), @​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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 'Jod' (LTS), @​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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é) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59824](https://redirect.github.com/nodejs/node/pull/59824) - \[[`758271ae66`](https://redirect.github.com/nodejs/node/commit/758271ae66)] - **http**: optimize checkIsHttpToken for short strings (방진혁) [#​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) [#​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é) [#​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) [#​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) [#​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) [#​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) [#​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]) [#​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]) [#​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]) [#​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]) [#​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]) [#​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]) [#​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]) [#​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]) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59825](https://redirect.github.com/nodejs/node/pull/59825) - \[[`7a91282bf9`](https://redirect.github.com/nodejs/node/commit/7a91282bf9)] - **src**: use simdjson::pad (0hm☘️) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59808](https://redirect.github.com/nodejs/node/pull/59808) - \[[`ef005d0c9b`](https://redirect.github.com/nodejs/node/commit/ef005d0c9b)] - **typings**: update 'types' binding (René) [#​59692](https://redirect.github.com/nodejs/node/pull/59692) - \[[`28ef564ecd`](https://redirect.github.com/nodejs/node/commit/28ef564ecd)] - **typings**: remove unused imports (Nam Yooseong) [#​59880](https://redirect.github.com/nodejs/node/pull/59880) - \[[`f88752ddb6`](https://redirect.github.com/nodejs/node/commit/f88752ddb6)] - **url**: replaced slice with at (Mikhail) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59877](https://redirect.github.com/nodejs/node/pull/59877) - \[[`816e1befb1`](https://redirect.github.com/nodejs/node/commit/816e1befb1)] - **zlib**: reduce code duplication (jhofstee) [#​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 'Jod' (LTS), @​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) [#​59571](https://redirect.github.com/nodejs/node/pull/59571) - \[[`34b25fd97b`](https://redirect.github.com/nodejs/node/commit/34b25fd97b)] - **doc**: stabilize --disable-sigusr1 (Rafael Gonzaga) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59859](https://redirect.github.com/nodejs/node/pull/59859) - \[[`1233e92d10`](https://redirect.github.com/nodejs/node/commit/1233e92d10)] - **diagnostics\_channel**: revoke DEP0163 (René) [#​59758](https://redirect.github.com/nodejs/node/pull/59758) - \[[`34b25fd97b`](https://redirect.github.com/nodejs/node/commit/34b25fd97b)] - **doc**: stabilize --disable-sigusr1 (Rafael Gonzaga) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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é) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​58996](https://redirect.github.com/nodejs/node/pull/58996) - \[[`da6e8cb75b`](https://redirect.github.com/nodejs/node/commit/da6e8cb75b)] - **http**: unbreak keepAliveTimeoutBuffer (Robert Nagy) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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é) [#​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) [#​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) [#​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) [#​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]) [#​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]) [#​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]) [#​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]) [#​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]) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​55623](https://redirect.github.com/nodejs/node/pull/55623) - \[[`24e825f8f5`](https://redirect.github.com/nodejs/node/commit/24e825f8f5)] - **sea**: implement sea.getAssetKeys() (Joyee Cheung) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59601](https://redirect.github.com/nodejs/node/pull/59601) - \[[`fd7559f8c3`](https://redirect.github.com/nodejs/node/commit/fd7559f8c3)] - **src**: remove JSONParser (Joyee Cheung) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​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) [#​59363](https://redirect.github.com/nodejs/node/pull/59363) - \[[`8e0f9cd061`](https://redirect.github.com/nodejs/node/commit/8e0f9cd061)] - **src**: remove unused DSAKeyExportJob (Filip Skokan) [#​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) [#​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 (방진혁) [#​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) [#​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) [#​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) [#​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> |
||
|
|
6951f1002f | feat: improve event handle (#14177) | ||
|
|
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 -->
|
||
|
|
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 --> |