Commit Graph

6963 Commits

Author SHA1 Message Date
DarkSky
8192a492d9 feat: improve kanban grouping & data materialization (#14393)
fix #13512 
fix #13255
fix #9743 

#### PR Dependency Tree


* **PR #14393** 👈

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**
* Enhanced Kanban view grouping support for additional property types:
checkboxes, select fields, multi-select fields, members, and created-by
information.
* Improved drag-and-drop visual feedback with more precise drop
indicators in Kanban views.

* **Bug Fixes**
* Refined grouping logic to ensure only compatible properties appear in
group-by options.
* Enhanced column visibility and ordering consistency when managing
Kanban views.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-08 03:48:12 +08:00
DarkSky
31e11b2563 chore: polish config & docs (#14392)
#### PR Dependency Tree


* **PR #14392** 👈

This tree was auto-generated by
[Charcoal](https://github.com/danerwilliams/charcoal)
2026-02-08 01:16:00 +08:00
DarkSky
8ce620e2e6 chore: bump deps 2026-02-07 17:26:44 +08:00
DarkSky
7655c2b73e fix: missing self hosted script (#14386)
fix #14382

#### PR Dependency Tree


* **PR #14386** 👈

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**
* Updated Docker cleanup process to preserve script files during
maintenance operations.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-07 05:01:06 +08:00
DarkSky
1a2410f541 feat: merge service (#14384) 2026-02-07 04:52:25 +08:00
DarkSky
a0cf5681c4 chore: cleanup images (#14380)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Added canary build version support with automatic validation and
age-based restrictions for testing pre-release versions.

* **Chores**
* Enhanced Docker build process with multi-stage builds, image
optimization, and memory allocation improvements.
  * Reorganized dependencies to distinguish development-only packages.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-06 19:49:02 +08:00
DarkSky
8c15df489b fix: web login (#14378)
#### PR Dependency Tree


* **PR #14378** 👈

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**
* Added a deprecated GET sign-out endpoint for backward compatibility
with legacy clients.

* **Improvements**
* Updated magic-link and OAuth flows to always generate and manage
client nonces; native clients use a nonce, web preserves cross-device
behavior.

* **Tests**
* Added tests covering the deprecated sign-out flow and OAuth preflight
client_nonce handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-06 03:05:50 +08:00
DarkSky
5a51d447fb fix: android build 2026-02-06 00:06:34 +08:00
DarkSky
b2a495e885 fix: sign out (#14376)
#### PR Dependency Tree


* **PR #14376** 👈

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

* **Bug Fixes**
* Sign-out functionality now works in more scenarios, including when
headers are absent or duplicated.

* **Tests**
* Added test coverage for sign-out behavior across different header
configurations.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-05 23:39:26 +08:00
DarkSky
8d201cd1ad fix: android build 2026-02-05 22:29:39 +08:00
DarkSky
31f6f209e3 chore: bump deps 2026-02-05 21:45:22 +08:00
DarkSky
944fab36ac feat: drop outdated session (#14373)
#### PR Dependency Tree


* **PR #14373** 👈

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**
* Added client version tracking and validation to ensure application
compatibility across authentication flows and sessions.
* Enhanced OAuth authentication with improved version handling during
sign-in and refresh operations.

* **Bug Fixes**
* Improved payment callback URL handling with safer defaults for
redirect links.

* **Tests**
* Expanded test coverage for client version enforcement and session
management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-05 21:35:36 +08:00
DarkSky
161eb302fd chore: bump deps 2026-02-05 03:21:19 +08:00
renovate[bot]
f494420509 chore: bump up @vitejs/plugin-react version to v5 (#14365)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@vitejs/plugin-react](https://redirect.github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react#readme)
([source](https://redirect.github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react))
| [`^4.3.4` →
`^5.0.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react/4.4.1/5.1.2)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-react/5.1.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-react/4.4.1/5.1.2?slim=true)
|

---

### Release Notes

<details>
<summary>vitejs/vite-plugin-react
(@&#8203;vitejs/plugin-react)</summary>

###
[`v5.1.2`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#512-2025-12-08)

[Compare
Source](23db72731b...f127a24376)

###
[`v5.1.1`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#511-2025-11-12)

[Compare
Source](3e5a3742e9...23db72731b)

##### Update code to support newer `rolldown-vite`
([#&#8203;976](https://redirect.github.com/vitejs/vite-plugin-react/pull/976))

`rolldown-vite` will remove `optimizeDeps.rollupOptions` in favor of
`optimizeDeps.rolldownOptions` soon. This plugin now uses
`optimizeDeps.rolldownOptions` to support newer `rolldown-vite`. Please
update `rolldown-vite` to the latest version if you are using an older
version.

###
[`v5.1.0`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#510-2025-10-24)

[Compare
Source](450d7df80a...3e5a3742e9)

##### Add `@vitejs/plugin-react/preamble` virtual module for SSR HMR
([#&#8203;890](https://redirect.github.com/vitejs/vite-plugin-react/pull/890))

SSR applications can now initialize HMR runtime by importing
`@vitejs/plugin-react/preamble` at the top of their client entry instead
of manually calling `transformIndexHtml`. This simplifies SSR setup for
applications that don't use the `transformIndexHtml` API.

##### Fix raw Rolldown support for Rolldown 1.0.0-beta.44+
([#&#8203;930](https://redirect.github.com/vitejs/vite-plugin-react/pull/930))

Rolldown 1.0.0-beta.44+ removed the top-level `jsx` option in favor of
`transform.jsx`. This plugin now uses the `transform.jsx` option to
support Rolldown 1.0.0-beta.44+.

###
[`v5.0.4`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#504-2025-09-27)

[Compare
Source](8293cb3894...450d7df80a)

##### Perf: use native refresh wrapper plugin in rolldown-vite
([#&#8203;881](https://redirect.github.com/vitejs/vite-plugin-react/pull/881))

###
[`v5.0.3`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#503-2025-09-17)

[Compare
Source](1f4b4d9523...8293cb3894)

##### HMR did not work for components imported with queries with
rolldown-vite
([#&#8203;872](https://redirect.github.com/vitejs/vite-plugin-react/pull/872))

##### Perf: simplify refresh wrapper generation
([#&#8203;835](https://redirect.github.com/vitejs/vite-plugin-react/pull/835))

###
[`v5.0.2`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#502-2025-08-28)

[Compare
Source](efe4344175...1f4b4d9523)

##### Skip transform hook completely in rolldown-vite in dev if possible
([#&#8203;783](https://redirect.github.com/vitejs/vite-plugin-react/pull/783))

###
[`v5.0.1`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#501-2025-08-19)

[Compare
Source](9e4a94428d...efe4344175)

##### Set `optimizeDeps.rollupOptions.transform.jsx` instead of
`optimizeDeps.rollupOptions.jsx` for rolldown-vite
([#&#8203;735](https://redirect.github.com/vitejs/vite-plugin-react/pull/735))

`optimizeDeps.rollupOptions.jsx` is going to be deprecated in favor of
`optimizeDeps.rollupOptions.transform.jsx`.

##### Perf: skip `babel-plugin-react-compiler` if code has no `"use
memo"` when `{ compilationMode: "annotation" }`
([#&#8203;734](https://redirect.github.com/vitejs/vite-plugin-react/pull/734))

##### Respect tsconfig `jsxImportSource`
([#&#8203;726](https://redirect.github.com/vitejs/vite-plugin-react/pull/726))

##### Fix `reactRefreshHost` option on rolldown-vite
([#&#8203;716](https://redirect.github.com/vitejs/vite-plugin-react/pull/716))

##### Fix `RefreshRuntime` being injected twice for class components on
rolldown-vite
([#&#8203;708](https://redirect.github.com/vitejs/vite-plugin-react/pull/708))

##### Skip `babel-plugin-react-compiler` on non client environment
([689](https://redirect.github.com/vitejs/vite-plugin-react/pull/689))

###
[`v5.0.0`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#500-2025-08-07)

[Compare
Source](80417060f7...9e4a94428d)

###
[`v4.7.0`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#470-2025-07-18)

[Compare
Source](12bd153622...80417060f7)

##### Add HMR support for compound components
([#&#8203;518](https://redirect.github.com/vitejs/vite-plugin-react/pull/518))

HMR now works for compound components like this:

```tsx
const Root = () => <div>Accordion Root</div>
const Item = () => <div>Accordion Item</div>

export const Accordion = { Root, Item }
```

##### Return `Plugin[]` instead of `PluginOption[]`
([#&#8203;537](https://redirect.github.com/vitejs/vite-plugin-react/pull/537))

The return type has changed from `react(): PluginOption[]` to more
specialized type `react(): Plugin[]`. This allows for type-safe
manipulation of plugins, for example:

```tsx
// previously this causes type errors
react({ babel: { plugins: ['babel-plugin-react-compiler'] } })
  .map(p => ({ ...p, applyToEnvironment: e => e.name === 'client' }))
```

###
[`v4.6.0`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#460-2025-06-23)

[Compare
Source](bfb45addb8...12bd153622)

##### Add raw Rolldown support

This plugin only worked with Vite. But now it can also be used with raw
Rolldown. The main purpose for using this plugin with Rolldown is to use
react compiler.

###
[`v4.5.2`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#452-2025-06-10)

[Compare
Source](2f32052659...bfb45addb8)

##### Suggest `@vitejs/plugin-react-oxc` if rolldown-vite is detected
[#&#8203;491](https://redirect.github.com/vitejs/vite-plugin-react/pull/491)

Emit a log which recommends `@vitejs/plugin-react-oxc` when
`rolldown-vite` is detected to improve performance and use Oxc under the
hood. The warning can be disabled by setting `disableOxcRecommendation:
true` in the plugin options.

##### Use `optimizeDeps.rollupOptions` instead of
`optimizeDeps.esbuildOptions` for rolldown-vite
[#&#8203;489](https://redirect.github.com/vitejs/vite-plugin-react/pull/489)

This suppresses the warning about `optimizeDeps.esbuildOptions` being
deprecated in rolldown-vite.

##### Add Vite 7-beta to peerDependencies range
[#&#8203;497](https://redirect.github.com/vitejs/vite-plugin-react/pull/497)

React plugins are compatible with Vite 7, this removes the warning when
testing the beta.

###
[`v4.5.1`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#451-2025-06-03)

[Compare
Source](476e705375...2f32052659)

##### Add explicit semicolon in preambleCode
[#&#8203;485](https://redirect.github.com/vitejs/vite-plugin-react/pull/485)

This fixes an edge case when using HTML minifiers that strips line
breaks aggressively.

###
[`v4.5.0`](https://redirect.github.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#450-2025-05-23)

[Compare
Source](57cc39869c...476e705375)

##### Add `filter` for rolldown-vite
[#&#8203;470](https://redirect.github.com/vitejs/vite-plugin-react/pull/470)

Added `filter` so that it is more performant when running this plugin
with rolldown-powered version of Vite.

##### Skip HMR for JSX files with hooks
[#&#8203;480](https://redirect.github.com/vitejs/vite-plugin-react/pull/480)

This removes the HMR warning for hooks with JSX.

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-05 03:17:54 +08:00
DarkSky
a655b79166 feat: basic caldav support (#14372)
fix #13531 

#### PR Dependency Tree


* **PR #14372** 👈

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**
* CalDAV calendar integration: link and sync CalDAV-compatible calendars
(discovery, listing, event sync).
* New UI flow and dialog to link CalDAV accounts with provider
selection, credentials, and display name.

* **API / Config**
* Server exposes CalDAV provider presets in config and new GraphQL
mutation to link CalDAV accounts.
  * New calendar config section for CalDAV with validation and defaults.

* **Tests**
  * Comprehensive CalDAV integration test suite added.

* **Chores**
* Removed analytics tokens from build configuration and reduced Cloud
E2E test shards.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-05 03:04:21 +08:00
DarkSky
403f16b404 chore: drop old client support (#14369) 2026-02-05 02:49:33 +08:00
renovate[bot]
de29e8300a chore: bump up @types/uuid version to v11 (#14364)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| @&#8203;types/uuid | [`^10.0.0` →
`^11.0.0`](https://renovatebot.com/diffs/npm/@types%2fuuid/10.0.0/11.0.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fuuid/11.0.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fuuid/10.0.0/11.0.0?slim=true)
|

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-02 17:57:23 +00:00
renovate[bot]
12f0a9ae62 chore: bump up @types/multer version to v2 (#14353)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@types/multer](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/multer)
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/multer))
| [`^1` →
`^2.0.0`](https://renovatebot.com/diffs/npm/@types%2fmulter/1.4.12/2.0.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fmulter/2.0.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fmulter/1.4.12/2.0.0?slim=true)
|

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2026-02-02 16:21:40 +08:00
renovate[bot]
73d4da192d chore: bump up @types/sinon version to v21 (#14361)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@types/sinon](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/sinon)
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon))
| [`^17.0.3` →
`^21.0.0`](https://renovatebot.com/diffs/npm/@types%2fsinon/17.0.4/21.0.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fsinon/21.0.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fsinon/17.0.4/21.0.0?slim=true)
|

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2026-02-02 04:09:35 +00:00
renovate[bot]
0b648f8613 chore: bump up @types/nodemailer version to v7 (#14354)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@types/nodemailer](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/nodemailer)
([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/nodemailer))
| [`^6.4.17` →
`^7.0.0`](https://renovatebot.com/diffs/npm/@types%2fnodemailer/6.4.17/7.0.9)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnodemailer/7.0.9?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnodemailer/6.4.17/7.0.9?slim=true)
|

---

### 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2026-02-02 04:05:24 +00:00
DarkSky
516d72e83f fix: lint & lockfile 2026-02-02 10:35:52 +08:00
DarkSky
a27f8b168a Revert "feat: improve idb perf (#14159)"
This reverts commit 78949044ec.
2026-02-02 10:33:15 +08:00
renovate[bot]
cce6122a63 chore: bump up @sentry/esbuild-plugin version to v4 (#14350)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@sentry/esbuild-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/esbuild-plugin)
([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins))
| [`^3.0.0` →
`^4.0.0`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/3.6.1/4.8.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/4.8.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/3.6.1/4.8.0?slim=true)
|

---

### Release Notes

<details>
<summary>getsentry/sentry-javascript-bundler-plugins
(@&#8203;sentry/esbuild-plugin)</summary>

###
[`v4.8.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#480)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.7.0...4.8.0)

##### New Features 

- Inject component annotations into HTML elements rather than React
components by [@&#8203;timfish](https://redirect.github.com/timfish) in
[#&#8203;851](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/851)
- Combine injection snippets by
[@&#8203;timfish](https://redirect.github.com/timfish) in
[#&#8203;853](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/853)
- Use Rolldown native `MagicString` by
[@&#8203;timfish](https://redirect.github.com/timfish) in
[#&#8203;846](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/846)

###
[`v4.7.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#470)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.6.2...4.7.0)

- docs: Add RELEASE.md to document release process
([#&#8203;834](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/834))
- feat: Combine injection plugins
([#&#8203;844](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/844))
- fix(plugin-manager): Enable "rejectOnError" in debug
([#&#8203;837](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/837))
- fix(plugin-manager): Respect `sourcemap.ignore` values for injecting
debugIDs
([#&#8203;836](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/836))
- fix(vite): Skip HTML injection for MPA but keep it for SPA
([#&#8203;843](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/843))

<details>
  <summary> <strong>Internal Changes</strong> </summary>

- chore: Use pull\_request\_target for changelog preview
([#&#8203;842](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/842))
- ci(release): Switch from action-prepare-release to Craft
([#&#8203;831](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/831))
- test: Ensure Debug IDs match
([#&#8203;840](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/840))

</details>

###
[`v4.6.2`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#462)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.6.1...4.6.2)

- fix(vite): Ensure sentryVitePlugin always returns an array of plugins
([#&#8203;832](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/832))
- fix(vite): Skip code injection for HTML facade chunks
([#&#8203;830](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/830))
- fix(rollup): Prevent double-injection of debug ID
([#&#8203;827](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/827))
- fix(esbuild): fix debug ID injection when moduleMetadata or
applicationKey is set
([#&#8203;828](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/828))

###
[`v4.6.1`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#461)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.6.0...4.6.1)

- chore(deps): Update glob to 10.5.0
([#&#8203;823](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/823))

<details>
  <summary> <strong>Internal Changes</strong> </summary>

- chore(core): Log release output
([#&#8203;821](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/821))

</details>

###
[`v4.6.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#460)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.5.0...4.6.0)

- fix(core): Stop awaiting build start telemetry to avoid breaking
module federation builds
([#&#8203;818](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/818))
- feat(core): Bump
[@&#8203;sentry/cli](https://redirect.github.com/sentry/cli) from 2.51.0
to 2.57.0
([#&#8203;819](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/819))

###
[`v4.5.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#450)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.4.0...4.5.0)

- docs: added info on debug flag value precedence
([#&#8203;811](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/811))
- feat: add debug statements after sourcemap uploads
([#&#8203;812](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/812))
- feat(core): Allow multi-project sourcemaps upload
([#&#8203;813](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/813))
- fix: propagate the debug option to the cli
([#&#8203;810](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/810))

###
[`v4.4.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#440)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.3.0...4.4.0)

- feat(core): Explicitly allow `undefined` as value for `authToken`
option
([#&#8203;805](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/805))
- fix(core): Strip query strings from asset paths
([#&#8203;806](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/806))

Work in this release was contributed by
[@&#8203;aiktb](https://redirect.github.com/aiktb). Thank you for your
contribution!

###
[`v4.3.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#430)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.2.0...4.3.0)

- feat(core): Extend deploy option to allow opting out of automatic
deploy creation
([#&#8203;801](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/801))
- feat(core): No asset globbing for direct upload
([#&#8203;800](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/800))

###
[`v4.2.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#420)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.1.1...4.2.0)

- feat(core): Add `prepareArtifacts` option for uploading sourcemaps
([#&#8203;794](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/794))
- perf: use premove for build clean
([#&#8203;792](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/792))
- fix(core): Forward headers option to sentry-cli
([#&#8203;797](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/797))

Work in this release contributed by
[@&#8203;liAmirali](https://redirect.github.com/liAmirali). Thank you
for your contribution!

###
[`v4.1.1`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#411)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.1.0...4.1.1)

- fix(react-native): Enhance fragment detection for indirect references
([#&#8203;767](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/767))

###
[`v4.1.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#410)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.2...4.1.0)

- feat(deps): Bump
[@&#8203;sentry/cli](https://redirect.github.com/sentry/cli) to 2.51.0
[#&#8203;786](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/786)
- feat(core): Add flag for disabling sourcemaps upload
[#&#8203;785](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/785)
- fix(debugId): Add guards for injected code to avoid errors
[#&#8203;783](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/783)
- docs(options): Improve JSDoc for options
[#&#8203;781](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/781)
- feat(core): Expose method for injecting debug Ids from plugin manager
[#&#8203;784](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/784)

###
[`v4.0.2`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#402)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.1...4.0.2)

- fix(core): Make `moduleMetadata` injection snippet ES5-compliant
([#&#8203;774](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/774))

###
[`v4.0.1`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#401)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/4.0.0...4.0.1)

- fix(core): Make plugin inject ES5-friendly code
([#&#8203;770](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/770))
- fix(core): Use `renderChunk` for release injection for
Rollup/Rolldown/Vite
([#&#8203;761](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/761))

Work in this release was contributed by
[@&#8203;grushetsky](https://redirect.github.com/grushetsky). Thank you
for your contribution!

###
[`v4.0.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#400)

[Compare
Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/3.6.1...4.0.0)

##### Breaking Changes

- (Type change) Vite plugin now returns `VitePlugin` type instead of
`any`
- Deprecated function `getBuildInformation` has been removed

##### List of Changes

- feat(core)!: Remove `getBuildInformation` export
([#&#8203;765](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/765))
- feat(vite)!: Update return type of vite plugin
([#&#8203;728](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/pull/728))

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-02 01:40:58 +08:00
renovate[bot]
40a2518ff9 chore: bump up @chromatic-com/storybook version to v5 (#14347)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@chromatic-com/storybook](https://redirect.github.com/chromaui/addon-visual-tests)
| [`^4.1.3` →
`^5.0.0`](https://renovatebot.com/diffs/npm/@chromatic-com%2fstorybook/4.1.3/5.0.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@chromatic-com%2fstorybook/5.0.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@chromatic-com%2fstorybook/4.1.3/5.0.0?slim=true)
|

---

### Release Notes

<details>
<summary>chromaui/addon-visual-tests
(@&#8203;chromatic-com/storybook)</summary>

###
[`v5.0.0`](https://redirect.github.com/chromaui/addon-visual-tests/releases/tag/v5.0.0)

[Compare
Source](https://redirect.github.com/chromaui/addon-visual-tests/compare/v4.1.3...v5.0.0)

##### 💥 Breaking Change

- Upgrade to Storybook 10.1
[#&#8203;396](https://redirect.github.com/chromaui/addon-visual-tests/pull/396)
([@&#8203;ghengeveld](https://redirect.github.com/ghengeveld))

##### 🐛 Bug Fix

- Update npm version and add pull-requests permission for trusted
publishing
[#&#8203;403](https://redirect.github.com/chromaui/addon-visual-tests/pull/403)
([@&#8203;ghengeveld](https://redirect.github.com/ghengeveld))
- Update release workflow to use npm trusted publishing
[#&#8203;402](https://redirect.github.com/chromaui/addon-visual-tests/pull/402)
([@&#8203;ghengeveld](https://redirect.github.com/ghengeveld))
- Fix: Update broken and outdated links in the addon
[#&#8203;397](https://redirect.github.com/chromaui/addon-visual-tests/pull/397)
([@&#8203;jonniebigodes](https://redirect.github.com/jonniebigodes))

##### Authors: 2

- [@&#8203;jonniebigodes](https://redirect.github.com/jonniebigodes)
- Gert Hengeveld
([@&#8203;ghengeveld](https://redirect.github.com/ghengeveld))

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-01 22:33:49 +08:00
renovate[bot]
345f45d327 chore: bump up @capgo/inappbrowser version to v8 (#14346)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@capgo/inappbrowser](https://capgo.app/docs/plugins/inappbrowser/)
([source](https://redirect.github.com/Cap-go/capacitor-inappbrowser)) |
[`^7.1.0` →
`^8.0.0`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.29.4/8.1.11)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/8.1.11?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/7.29.4/8.1.11?slim=true)
|

---

### Release Notes

<details>
<summary>Cap-go/capacitor-inappbrowser
(@&#8203;capgo/inappbrowser)</summary>

###
[`v8.1.11`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.11)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.10...8.1.11)

#### 🆕 Changelog

#### Changed

- Added Capacitor version compatibility table to README documentation
clarifying which plugin versions work with which Capacitor versions and
their maintenance status

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.10...8.1.11>

###
[`v8.1.10`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.10)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.9...8.1.10)

#### 🆕 Changelog

#### Fixed

- Corrected `addEventListener` usage in `messageFromWebview` example
documentation

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.9...8.1.10>

###
[`v8.1.9`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.9)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.8...8.1.9)

#### 🆕 Changelog

#### Changed

- Locked capacitor-swift-pm dependency to version 8.0.0 for improved
stability

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.8...8.1.9>

###
[`v8.1.8`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.8)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.7...8.1.8)

#### 🆕 Changelog

#### Fixed

- Prevent race condition in `setHidden()` async path that could cause
visibility state inconsistencies

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.7...8.1.8>

###
[`v8.1.7`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.7)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.6...8.1.7)

#### 🆕 Changelog

#### Fixed

- Fixed show/hide functionality for Android that was not working
correctly

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.6...8.1.7>

###
[`v8.1.6`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.6)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.5...8.1.6)

#### 🆕 Changelog

#### Fixed

- Fixed `show()` method not properly displaying hidden WebView on iOS

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.5...8.1.6>

###
[`v8.1.5`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.5)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.4...8.1.5)

#### 🆕 Changelog

#### Added

- Exposed `mobileApp` interface on Android platform, providing access to
mobile app functionality and metadata

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.4...8.1.5>

###
[`v8.1.4`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.4)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.3...8.1.4)

#### 🆕 Changelog

#### Fixed

- Fixed safe bottom inset calculation for devices using gesture
navigation

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.3...8.1.4>

###
[`v8.1.3`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.3)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.2...8.1.3)

#### 🆕 Changelog

#### Added

- WebView visibility control from JavaScript via
`window.mobileApp.hide()` and `window.mobileApp.show()` methods
(requires `allowWebViewJsVisibilityControl: true` in CapacitorConfig)
- Native `hide()` and `show()` methods to the plugin API for
programmatic WebView visibility control

#### Fixed

- Configuration accessors for JavaScript visibility control
- Null guard checks in hide/show functionality to prevent crashes
- State management to properly restore hidden mode after snapshots

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.2...8.1.3>

###
[`v8.1.2`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.2)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.1...8.1.2)

#### 🆕 Changelog

#### Changed

- Updated Gradle to v8.14.4

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.1...8.1.2>

###
[`v8.1.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.1)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.1.0...8.1.1)

#### 🆕 Changelog

#### Changed

- Updated `capacitor-swift-pm` dependency from version 8.0.1 to a newer
version for improved Swift Package Manager integration

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.1.0...8.1.1>

###
[`v8.1.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.1.0)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.6...8.1.0)

#### 🆕 Changelog

#### Added

- Hidden webview mode allowing the browser to operate invisibly in the
background without displaying UI
- Support for hidden webview functionality on both iOS and Android
platforms

#### Changed

- Updated Capacitor Swift PM dependency to version 8.0.0
- Updated Vite to version 7.3.1 in example project

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.6...8.1.0>

###
[`v8.0.6`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.6)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.5...8.0.6)

#### 🆕 Changelog

#### Changed

- Updated dependency lock files to latest compatible versions
- Updated mistricky/ccc GitHub Action to v0.2.6

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.5...8.0.6>

###
[`v8.0.5`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.5)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.4...8.0.5)

#### 🆕 Changelog

#### Changed

- Updated lock files to maintain dependency integrity and improve
package resolution

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.4...8.0.5>

###
[`v8.0.4`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.4)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.3...8.0.4)

#### 🆕 Changelog

#### Fixed

- Updated `androidx.webkit:webkit` dependency to v1.15.0
- Updated `androidx.core:core-splashscreen` dependency to v1.2.0

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.3...8.0.4>

###
[`v8.0.3`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.3)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.2...8.0.3)

#### 🆕 Changelog

#### Added

- New `disableOverscroll` option for iOS to control bounce effect
behavior

#### Fixed

- Updated `androidx.window:window` dependency to version 1.5.1 for
improved Android window management

#### Changed

- Migrated build system to use Bun instead of npm for Android builds
- Updated `mistricky/ccc` action to version 0.2.5

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.2...8.0.3>

###
[`v8.0.2`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.2)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/8.0.1...8.0.2)

#### 🆕 Changelog

#### Changed

- Updated Capacitor Camera and Splash Screen dependencies to version
8.0.0 for improved compatibility
- Simplified safe area insets calculation in iOS WebView height
management for better code maintainability
- Removed redundant Android version check for mixed content mode in
WebView settings
- Improved variable naming throughout the codebase for better code
clarity and consistency
- Added homepage field to package metadata pointing to plugin
documentation

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/8.0.1...8.0.2>

###
[`v8.0.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/releases/tag/8.0.1)

[Compare
Source](5dcab17158...8.0.1)

#### 🆕 Changelog

#### Changed

- Updated package to support Capacitor 8.0.0

#### Fixed

- Improved checkout performance significantly
- Enhanced fetch speed

***

🔗 **Full Changelog**:
<https://github.com/Cap-go/capacitor-inappbrowser/compare/7.29.4...8.0.1>

###
[`v8.0.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.29.4...5dcab1715849de4b6bdf72f7e8019992a2f23295)

[Compare
Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.29.4...5dcab1715849de4b6bdf72f7e8019992a2f23295)

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-01 22:33:23 +08:00
Gabriele
1f94d7d1bc Merge commit from fork 2026-02-01 22:05:19 +08:00
DarkSky
f1a6e409cb feat(server): lightweight s3 client (#14348)
#### PR Dependency Tree


* **PR #14348** 👈

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**
* Added a dedicated S3-compatible client package and expanded
S3-compatible storage config (endpoint, region, forcePathStyle,
requestTimeoutMs, minPartSize, presign options, sessionToken).
* Document sync now broadcasts batched/compressed doc updates for more
efficient real-time syncing.

* **Tests**
* New unit and benchmark tests for base64 utilities and S3 multipart
listing; updated storage-related tests to match new formats.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-01 21:54:39 +08:00
DarkSky
059d3aa04a feat: improve native 2026-02-01 20:15:41 +08:00
renovate[bot]
948951d461 chore: bump up Lakr233/MarkdownView version to from: "3.6.2" (#14342)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[Lakr233/MarkdownView](https://redirect.github.com/Lakr233/MarkdownView)
| minor | `from: "3.4.7"` → `from: "3.6.2"` |

---

### Release Notes

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

###
[`v3.6.2`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.6.1...3.6.2)

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

###
[`v3.6.1`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.6.0...3.6.1)

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

###
[`v3.6.0`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.5.6...3.6.0)

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

###
[`v3.5.6`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.5.2...3.5.6)

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

###
[`v3.5.2`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.5.1...3.5.2)

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

###
[`v3.5.1`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.5.0...3.5.1)

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

###
[`v3.5.0`](https://redirect.github.com/Lakr233/MarkdownView/compare/3.4.9...3.5.0)

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

###
[`v3.4.9`](https://redirect.github.com/Lakr233/MarkdownView/releases/tag/3.4.9)

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

#### Changes since 3.4.7

- Add multi-platform support and SwiftUI integration
- Refactor Example app and remove legacy UIKit code
- Improve dynamic color handling for dark mode support
- Fix canImport order to check UIKit before AppKit

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

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

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-01 19:47:10 +08:00
renovate[bot]
b778207af9 chore: bump up RevenueCat/purchases-ios-spm version to from: "5.56.1" (#14343)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[RevenueCat/purchases-ios-spm](https://redirect.github.com/RevenueCat/purchases-ios-spm)
| minor | `from: "5.55.3"` → `from: "5.56.1"` |

---

### Release Notes

<details>
<summary>RevenueCat/purchases-ios-spm
(RevenueCat/purchases-ios-spm)</summary>

###
[`v5.56.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.56.0...5.56.1)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.56.0...5.56.1)

###
[`v5.56.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5560)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.55.3...5.56.0)

#### 5.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.

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-01 19:43:01 +08:00
DarkSky
888f1f39db chore: bump deps (#14341) 2026-02-01 05:55:18 +08:00
Akshaj Rawat
759aa1b684 feat: add option to disable image anti-aliasing (#14278)
## What this PR does

Closes #13869 
Adds a global setting to toggle image anti-aliasing in AFFiNE.

When disabled, images are rendered using nearest-neighbor scaling
(`image-rendering: pixelated`), preserving crisp pixels for pixel art,
sprites, icons, and low-resolution images.

## Why

Anti-aliasing causes small images to become blurry when scaled,
making it difficult to work with pixel art and technical assets.

## How to test

1. Open Settings → Appearance → Images
2. Toggle “Smooth image rendering”
3. Observe image scaling behavior:
   - ON: smooth / anti-aliased
   - OFF: pixelated / nearest-neighbor

## Notes

- Frontend-only change
- No backend required

# BEFORE
<img width="1911" height="909" alt="Screenshot 2026-01-18 202651"
src="https://github.com/user-attachments/assets/a40816c3-93fa-416d-90ec-38a919da182f"
/>

# AFTER
<img width="1919" height="910" alt="Screenshot 2026-01-18 202705"
src="https://github.com/user-attachments/assets/19fc348b-5f14-4e32-b6a8-a0905e569af5"
/>



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

* **New Features**
* Added an Images section in Appearance with a toggle to switch image
antialiasing on/off (setting is persisted).

* **Style**
* When antialiasing is turned off, images render with pixelated scaling
for a crisp, non-smoothed look.

* **Localization**
* Added English labels and description for the new Images and
antialiasing options.

<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>
2026-01-27 20:18:21 +00:00
Akshaj Rawat
b8f626513f feat: disable high power consumption without charger (#14281)
Co-authored-by: DarkSky <darksky2048@gmail.com>
2026-01-27 04:46:16 +08:00
DarkSky
3b4b0bad22 feat: improve admin panel styles (#14318) 2026-01-27 04:44:21 +08:00
DarkSky
27ed15a83e fix: chat session cannot delete (#14312)
fix #14309



#### PR Dependency Tree


* **PR #14312** 👈

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**
* Added AI chat session deletion with confirmation dialogs and
success/failure notifications.
* Localized AI chat panel labels, loading messages, and session
management text across multiple languages.

* **Documentation**
* Added internationalization support for chat panel titles, history
loading states, and deletion confirmations.

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

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 19:47:47 +08:00
JustAnDK
ecc98573eb fix: safe cookie parsing (#14292)
# Summary
This PR fixes a server-side cookie parsing edge case where malformed
cookie values throw `URI malformed`, causing socket.io auth to fail and
clients to get stuck in infinite workspace loading/syncing.

# Observed Behavior
- User creates a cloud-backed workspace and invites another user to it.
- Second user accepts the invite, awaits approval, and attempts to load
the workspace, getting stuck in infinite loading state.
- `api/workspaces/<id>/docs/<id>` return 404 for those users, as the
workspace they are trying to access was not synced to the server.
- Server logs show socket.io `CONNECT_ERROR` with `URI malformed`, then
connection closed.

# Confirmed Trigger
An externally-managed `auth_session` cookie containing a raw `%` symbol
causes `decodeURIComponent` to throw. This matches the observed
socket.io `CONNECT_ERROR`, explaining why some users were affected while
the rest were not.

# Root Cause
The `parseCookies` function calls `decodeURIComponent` on every cookie
key/value without guard, so when a malformed percent-encoded value is
encountered, `decodeURIComponent` throws, which bubbles into the
socket.io auth middleware, aborting the connection.

# Fix
Wrap `decodeURIComponent` calls in `try/catch`, on failure falling back
to the raw key/value.

# Testing
- Manually regenerating the bad cookie until no malformed parts are
present resolves the issue.
- With the guard in place, affected users can open shared workspaces
with sync successfully completing.


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

* **Bug Fixes**
* Improved cookie parsing robustness so malformed cookie values no
longer cause errors; the system now preserves raw cookie values when
decoding fails.

* **Tests**
* Added test coverage to ensure cookie parsing handles invalid/malformed
cookie values without throwing.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 17:24:11 +08:00
renovate[bot]
69907083f7 chore: bump up opentelemetry (#14300)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[@opentelemetry/core](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`2.2.0` →
`2.5.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/2.2.0/2.5.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/2.5.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/2.2.0/2.5.0?slim=true)
|
|
[@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`^0.208.0` →
`^0.211.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.208.0/0.211.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.211.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.208.0/0.211.0?slim=true)
|
|
[@opentelemetry/exporter-zipkin](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`2.2.0` →
`2.5.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/2.2.0/2.5.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/2.5.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/2.2.0/2.5.0?slim=true)
|
|
[@opentelemetry/host-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/host-metrics#readme)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/HEAD/packages/host-metrics))
| [`0.38.0` →
`0.38.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2fhost-metrics/0.38.0/0.38.2)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fhost-metrics/0.38.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fhost-metrics/0.38.0/0.38.2?slim=true)
|
|
[@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`^0.208.0` →
`^0.211.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.208.0/0.211.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.211.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.208.0/0.211.0?slim=true)
|
|
[@opentelemetry/instrumentation-graphql](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/instrumentation-graphql#readme)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/HEAD/packages/instrumentation-graphql))
| [`^0.56.0` →
`^0.58.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.56.0/0.58.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-graphql/0.58.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-graphql/0.56.0/0.58.0?slim=true)
|
|
[@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`^0.208.0` →
`^0.211.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.208.0/0.211.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.211.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.208.0/0.211.0?slim=true)
|
|
[@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.57.0` →
`^0.59.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.57.0/0.59.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-ioredis/0.59.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-ioredis/0.57.0/0.59.0?slim=true)
|
|
[@opentelemetry/instrumentation-nestjs-core](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/instrumentation-nestjs-core#readme)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/HEAD/packages/instrumentation-nestjs-core))
| [`^0.55.0` →
`^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.55.0/0.57.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-nestjs-core/0.57.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-nestjs-core/0.55.0/0.57.0?slim=true)
|
|
[@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.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.55.1/0.57.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-socket.io/0.57.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-socket.io/0.55.1/0.57.0?slim=true)
|
|
[@opentelemetry/resources](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`2.2.0` →
`2.5.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/2.2.0/2.5.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/2.5.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/2.2.0/2.5.0?slim=true)
|
|
[@opentelemetry/sdk-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`2.2.0` →
`2.5.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/2.2.0/2.5.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/2.5.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/2.2.0/2.5.0?slim=true)
|
|
[@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`^0.208.0` →
`^0.211.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.208.0/0.211.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.211.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.208.0/0.211.0?slim=true)
|
|
[@opentelemetry/sdk-trace-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`2.2.0` →
`2.5.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/2.2.0/2.5.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/2.5.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/2.2.0/2.5.0?slim=true)
|
|
[@opentelemetry/semantic-conventions](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions)
([source](https://redirect.github.com/open-telemetry/opentelemetry-js))
| [`1.38.0` →
`1.39.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsemantic-conventions/1.38.0/1.39.0)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsemantic-conventions/1.39.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsemantic-conventions/1.38.0/1.39.0?slim=true)
|

---

### Release Notes

<details>
<summary>open-telemetry/opentelemetry-js
(@&#8203;opentelemetry/core)</summary>

###
[`v2.5.0`](https://redirect.github.com/open-telemetry/opentelemetry-js/blob/HEAD/CHANGELOG.md#250)

[Compare
Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v2.4.0...v2.5.0)

##### 🐛 Bug Fixes

- refactor(resources): use runtime check for default service name
[#&#8203;6257](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6257)
[@&#8203;overbalance](https://redirect.github.com/overbalance)

##### 🏠 Internal

- chore(context-async-hooks): Deprecate `AsyncHooksContextManager`
[#&#8203;6298](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6298)
[@&#8203;trentm](https://redirect.github.com/trentm)
- chore: fix CODEOWNERS rule ordering
[#&#8203;6297](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6297)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- fix(github): fix CODEOWNERS browser package paths
[#&#8203;6303](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6303)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- fix(build): update
[@&#8203;types/node](https://redirect.github.com/types/node) to
18.19.130, remove DOM types from base tsconfig
[#&#8203;6280](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6280)
[@&#8203;overbalance](https://redirect.github.com/overbalance)

###
[`v2.4.0`](https://redirect.github.com/open-telemetry/opentelemetry-js/blob/HEAD/CHANGELOG.md#240)

[Compare
Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v2.3.0...v2.4.0)

##### 🐛 Bug Fixes

- fix(sdk-metrics): improve PeriodicExportingMetricReader() constructor
input validation
[#&#8203;6286](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6286)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- fix(core): Avoid using DOM types for otperformance export
[#&#8203;6278](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6278)
[@&#8203;samchungy](https://redirect.github.com/samchungy)

##### 🏠 Internal

- chore(browser): fix CODEOWNERS paths for browser-related packages
- refactor(sdk-metrics): remove Promise.allSettled() ponyfill
[#&#8203;6277](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6277)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)

###
[`v2.3.0`](https://redirect.github.com/open-telemetry/opentelemetry-js/blob/HEAD/CHANGELOG.md#230)

[Compare
Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v2.2.0...v2.3.0)

##### 🚀 Features

- feat(sdk-trace-base): implement on ending in span processor
[#&#8203;6024](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6024)
[@&#8203;majanjua-amzn](https://redirect.github.com/majanjua-amzn)
  - note: this feature is experimental and subject to change

##### 🐛 Bug Fixes

- fix(sdk-metrics): remove setImmediate usage in ConsoleMetricExporter
[#&#8203;6199](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6199)
[@&#8203;overbalance](https://redirect.github.com/overbalance)

##### 🏠 Internal

- refactor(bundler-tests): split webpack tests into webpack-4 and
webpack-5
[#&#8203;6098](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6098)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- refactor(sdk-metrics): remove isNotNullish() utility function
[#&#8203;6151](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6151)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- refactor(sdk-metrics): remove FlatMap() utility function
[#&#8203;6154](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6154)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- refactor(sdk-metrics): simplify AllowList and DenyList processors
[#&#8203;6159](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6159)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- chore: disallow constructor parameter property syntax
[#&#8203;6187](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6187)
[@&#8203;legendecas](https://redirect.github.com/legendecas)
- refactor(sdk-metrics): use test() instead of match() in isValidName()
[#&#8203;6205](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6205)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- refactor(core): remove TimeOriginLegacy Safari <15 fallback
[#&#8203;6235](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6235)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- chore: remove backcompat workspace
[#&#8203;6238](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6238)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- refactor(core,resources): consolidate platform-specific code
[#&#8203;6208](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6208)
[@&#8203;overbalance](https://redirect.github.com/overbalance)
- test(api): remove unnecessary conditional
[#&#8203;6241](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6241)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- refactor(api): remove several reverse() calls
[#&#8203;6252](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6252)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- refactor(api): remove unnecessary map() call
[#&#8203;6251](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6251)
[@&#8203;cjihrig](https://redirect.github.com/cjihrig)
- chore: add zed to gitignore
[#&#8203;6258](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/6258)
[@&#8203;overbalance](https://redirect.github.com/overbalance)

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib
(@&#8203;opentelemetry/host-metrics)</summary>

###
[`v0.38.2`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/host-metrics/CHANGELOG.md#0382-2026-01-21)

[Compare
Source](c84212cca7...7a5f3c0a09)

##### Bug Fixes

- **deps:** update dependency systeminformation to v5.30.3
([#&#8203;3335](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3335))
([9af0086](9af0086223))

###
[`v0.38.1`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/host-metrics/CHANGELOG.md#0381-2026-01-14)

[Compare
Source](66935ac724...c84212cca7)

##### Bug Fixes

- **deps:** update dependency systeminformation to v5.27.14 \[security]
([#&#8203;3308](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3308))
([c2d0bc5](c2d0bc5b19))

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib
(@&#8203;opentelemetry/instrumentation-graphql)</summary>

###
[`v0.58.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-graphql/CHANGELOG.md#0580-2026-01-21)

[Compare
Source](c84212cca7...7a5f3c0a09)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3353](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3353))
([a56bbdc](a56bbdc34a))

###
[`v0.57.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-graphql/CHANGELOG.md#0570-2026-01-14)

[Compare
Source](94e5b7da45...c84212cca7)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3332](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3332))
([925a150](925a1501ce))
- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3340](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3340))
([2954943](29549434e7))

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib
(@&#8203;opentelemetry/instrumentation-ioredis)</summary>

###
[`v0.59.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-ioredis/CHANGELOG.md#0590-2026-01-21)

[Compare
Source](c84212cca7...7a5f3c0a09)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3353](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3353))
([a56bbdc](a56bbdc34a))

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
-
[@&#8203;opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils)
bumped from ^0.57.0 to ^0.58.0

###
[`v0.58.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-ioredis/CHANGELOG.md#0580-2026-01-14)

[Compare
Source](66935ac724...c84212cca7)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3332](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3332))
([925a150](925a1501ce))
- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3340](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3340))
([2954943](29549434e7))

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
-
[@&#8203;opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils)
bumped from ^0.56.0 to ^0.57.0

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib
(@&#8203;opentelemetry/instrumentation-nestjs-core)</summary>

###
[`v0.57.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-nestjs-core/CHANGELOG.md#0570-2026-01-21)

[Compare
Source](c84212cca7...7a5f3c0a09)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3353](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3353))
([a56bbdc](a56bbdc34a))

###
[`v0.56.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-nestjs-core/CHANGELOG.md#0560-2026-01-14)

[Compare
Source](94e5b7da45...c84212cca7)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3332](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3332))
([925a150](925a1501ce))
- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3340](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3340))
([2954943](29549434e7))

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib
(@&#8203;opentelemetry/instrumentation-socket.io)</summary>

###
[`v0.57.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-socket.io/CHANGELOG.md#0570-2026-01-21)

[Compare
Source](c84212cca7...7a5f3c0a09)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3353](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3353))
([a56bbdc](a56bbdc34a))

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
-
[@&#8203;opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils)
bumped from ^0.57.0 to ^0.58.0

###
[`v0.56.0`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/blob/HEAD/packages/instrumentation-socket.io/CHANGELOG.md#0560-2026-01-14)

[Compare
Source](66935ac724...c84212cca7)

##### Features

- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3332](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3332))
([925a150](925a1501ce))
- **deps:** update deps matching '@&#8203;opentelemetry/\*'
([#&#8203;3340](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/issues/3340))
([2954943](29549434e7))

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
-
[@&#8203;opentelemetry/contrib-test-utils](https://redirect.github.com/opentelemetry/contrib-test-utils)
bumped from ^0.56.0 to ^0.57.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:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 13:33:43 +08:00
renovate[bot]
50507fc9bf chore: bump up RevenueCat/purchases-ios-spm version to from: "5.55.3" (#14302)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[RevenueCat/purchases-ios-spm](https://redirect.github.com/RevenueCat/purchases-ios-spm)
| minor | `from: "5.0.1"` → `from: "5.55.3"` |

---

### Release Notes

<details>
<summary>RevenueCat/purchases-ios-spm
(RevenueCat/purchases-ios-spm)</summary>

###
[`v5.55.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.55.2...5.55.3)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.55.2...5.55.3)

###
[`v5.55.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5552)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.55.1...5.55.2)

#### 5.55.2

###
[`v5.55.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5551)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.55.0...5.55.1)

#### 5.55.1

###
[`v5.55.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5550)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.54.1...5.55.0)

#### 5.55.0

###
[`v5.54.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5541)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.54.0...5.54.1)

#### 5.54.1

###
[`v5.54.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5540)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.53.0...5.54.0)

#### 5.54.0

###
[`v5.53.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5530)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.52.1...5.53.0)

#### 5.53.0

###
[`v5.52.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5521)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.52.0...5.52.1)

#### 5.52.1

###
[`v5.52.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5520)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.51.1...5.52.0)

#### 5.52.0

###
[`v5.51.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5511)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.51.0...5.51.1)

#### 5.51.1

###
[`v5.51.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5510)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.50.1...5.51.0)

#### 5.51.0

###
[`v5.50.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5501)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.50.0...5.50.1)

#### 5.50.1

###
[`v5.50.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5500)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.49.3...5.50.0)

#### 5.50.0

###
[`v5.49.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5493)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.49.2...5.49.3)

#### 5.49.3

###
[`v5.49.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5492)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.49.1...5.49.2)

#### 5.49.2

###
[`v5.49.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5491)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.49.0...5.49.1)

#### 5.49.1

###
[`v5.49.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5490)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.48.0...5.49.0)

#### 5.49.0

###
[`v5.48.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5480)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.47.1...5.48.0)

#### 5.48.0

###
[`v5.47.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5471)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.47.0...5.47.1)

#### 5.47.1

###
[`v5.47.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5470)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.46.3...5.47.0)

#### 5.47.0

###
[`v5.46.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5463)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.46.2...5.46.3)

##### 🔄 Other Changes

- Use cached offerings on network errors
([#&#8203;5707](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/5707))
via Antonio Pallares
([@&#8203;ajpallares](https://redirect.github.com/ajpallares))
- Allow the use of Test Store in release builds using the uiPreview
dangerous setting for the RC Mobile app
([#&#8203;5765](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/5765))
via Rick ([@&#8203;rickvdl](https://redirect.github.com/rickvdl))
- Fix signature verification fallback urls
([#&#8203;5756](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/5756))
via Antonio Pallares
([@&#8203;ajpallares](https://redirect.github.com/ajpallares))

###
[`v5.46.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5462)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.46.1...5.46.2)

#### 5.46.2

###
[`v5.46.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5461)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.46.0...5.46.1)

#### 5.46.1

###
[`v5.46.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5460)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.45.1...5.46.0)

#### 5.46.0

###
[`v5.45.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5451)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.45.0...5.45.1)

#### 5.45.1

###
[`v5.45.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5450)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.44.1...5.45.0)

#### 5.45.0

###
[`v5.44.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5441)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.44.0...5.44.1)

#### 5.44.1

###
[`v5.44.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5440)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.43.0...5.44.0)

#### 5.44.0

###
[`v5.43.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5430)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.42.0...5.43.0)

#### 5.43.0

###
[`v5.42.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5420)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.41.0...5.42.0)

#### 5.42.0

###
[`v5.41.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5410)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.40.0...5.41.0)

#### 5.41.0

###
[`v5.40.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5400)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.39.3...5.40.0)

#### 5.40.0

###
[`v5.39.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5393)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.39.2...5.39.3)

#### 5.39.3

###
[`v5.39.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5392)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.39.1...5.39.2)

#### 5.39.2

###
[`v5.39.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5391)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.39.0...5.39.1)

#### 5.39.1

###
[`v5.39.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5390)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.38.2...5.39.0)

#### 5.39.0

###
[`v5.38.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5382)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.38.1...5.38.2)

#### 5.38.2

###
[`v5.38.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5381)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.38.0...5.38.1)

#### 5.38.1

###
[`v5.38.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5380)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.37.0...5.38.0)

#### 5.38.0

###
[`v5.37.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5370)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.36.0...5.37.0)

#### 5.37.0

###
[`v5.36.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5360)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.35.1...5.36.0)

#### 5.36.0

###
[`v5.35.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5351)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.35.0...5.35.1)

#### 5.35.1

###
[`v5.35.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5350)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.34.0...5.35.0)

#### 5.35.0

###
[`v5.34.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5340)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.33.1...5.34.0)

#### 5.34.0

###
[`v5.33.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5331)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.33.0...5.33.1)

#### 5.33.1

###
[`v5.33.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5330)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.32.0...5.33.0)

#### 5.33.0

###
[`v5.32.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5320)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.31.0...5.32.0)

#### 5.32.0

###
[`v5.31.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5310)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.30.0...5.31.0)

#### 5.31.0

###
[`v5.30.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.29.0...5.30.0)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.29.0...5.30.0)

###
[`v5.29.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5290)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.28.1...5.29.0)

#### 5.29.0

###
[`v5.28.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5281)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.28.0...5.28.1)

#### 5.28.1

###
[`v5.28.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5280)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.27.1...5.28.0)

#### 5.28.0

###
[`v5.27.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5271)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.26.0...5.27.1)

#### 5.27.1

###
[`v5.26.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5260)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.25.3...5.26.0)

#### 5.26.0

###
[`v5.25.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5253)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.25.2...5.25.3)

#### 5.25.3

###
[`v5.25.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5252)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.25.1...5.25.2)

#### 5.25.2

###
[`v5.25.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5251)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.25.0...5.25.1)

#### 5.25.1

###
[`v5.25.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5250)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.24.0...5.25.0)

#### 5.25.0

###
[`v5.24.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5240)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.23.0...5.24.0)

#### 5.24.0

###
[`v5.23.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5230)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.22.2...5.23.0)

#### 5.23.0

###
[`v5.22.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5222)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.22.1...5.22.2)

#### 5.22.2

###
[`v5.22.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5221)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.22.0...5.22.1)

#### 5.22.1

###
[`v5.22.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5220)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.21.2...5.22.0)

#### 5.22.0

###
[`v5.21.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5212)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.21.1...5.21.2)

#### 5.21.2

###
[`v5.21.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5211)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.21.0...5.21.1)

#### 5.21.1

###
[`v5.21.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5210)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.20.3...5.21.0)

#### 5.21.0

###
[`v5.20.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5203)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.20.2...5.20.3)

#### 5.20.3

###
[`v5.20.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5202)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.20.1...5.20.2)

#### 5.20.2

###
[`v5.20.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5201)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.20.0...5.20.1)

#### 5.20.1

###
[`v5.20.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5200)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.19.0...5.20.0)

#### 5.20.0

###
[`v5.19.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5190)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.18.0...5.19.0)

#### 5.19.0

###
[`v5.18.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5180)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.17.0...5.18.0)

#### 5.18.0

###
[`v5.17.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5170)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.16.1...5.17.0)

#### 5.17.0

###
[`v5.16.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5161)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.16.0...5.16.1)

#### 5.16.1

###
[`v5.16.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5160)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.15.1...5.16.0)

#### 5.16.0

###
[`v5.15.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5151)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.15.0...5.15.1)

#### 5.15.1

###
[`v5.15.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5150)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.6...5.15.0)

#### 5.15.0

###
[`v5.14.6`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5146)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.5...5.14.6)

#### 5.14.6

###
[`v5.14.5`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5145)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.4...5.14.5)

#### 5.14.5

###
[`v5.14.4`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5144)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.3...5.14.4)

#### 5.14.4

###
[`v5.14.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5143)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.2...5.14.3)

#### 5.14.3

###
[`v5.14.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5142)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.1...5.14.2)

#### 5.14.2

###
[`v5.14.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5141)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.14.0...5.14.1)

#### 5.14.1

###
[`v5.14.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5140)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.13.0...5.14.0)

#### 5.14.0

###
[`v5.13.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5130)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.12.1...5.13.0)

#### 5.13.0

###
[`v5.12.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5121)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.12.0...5.12.1)

#### 5.12.1

###
[`v5.12.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5120)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.11.0...5.12.0)

#### 5.12.0

###
[`v5.11.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5110)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.10.0...5.11.0)

#### 5.11.0

###
[`v5.10.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#5100)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.9.0...5.10.0)

#### 5.10.0

###
[`v5.9.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#590)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.8.0...5.9.0)

#### 5.9.0

###
[`v5.8.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#580)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.7.1...5.8.0)

#### 5.8.0

###
[`v5.7.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#571)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.7.0...5.7.1)

#### 5.7.1

###
[`v5.7.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#570)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.6.0...5.7.0)

#### 5.7.0

###
[`v5.6.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#560)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.5.0...5.6.0)

#### 5.6.0

###
[`v5.5.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#550)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.4.0...5.5.0)

#### 5.5.0

###
[`v5.4.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#540)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.3.4...5.4.0)

#### 5.4.0

###
[`v5.3.4`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#534)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.3.3...5.3.4)

#### 5.3.4

###
[`v5.3.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#533)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.3.2...5.3.3)

##### Bugfixes

- Remove usage of adServicesToken in syncPurchases
([#&#8203;4257](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4257))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))
- Fixes a Paywall Template 7 crash when none of the tiers have any
available products.
([#&#8203;4243](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4243))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- \[SK2] send unsynced attributes when syncing purchases
([#&#8203;4245](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4245))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))

##### Other Changes

- Do not embed `RevenueCat.framework` in `RevenueCatUI`
([#&#8203;4256](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4256))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Add warnings and clarifications to v5 migration docs
([#&#8203;4231](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4231))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))
- Fixes SwiftLint violation of rule optional\_data\_string\_conversion
([#&#8203;4252](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4252))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- Paywall Components Localized Strings
([#&#8203;4237](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4237))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- Update `fastlane-plugin-revenuecat_internal`
([#&#8203;4244](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4244))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Add missing `#if PAYWALL_COMPONENTS`
([#&#8203;4241](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4241))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- Paywalls Components Viewmodels + partial localization support
([#&#8203;4230](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4230))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))

###
[`v5.3.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#532)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.3.1...5.3.2)

##### Bugfixes

- \[Customer Center] Build `WrongPlatformView` from JSON
([#&#8203;4234](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4234))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Add `feedbackSurveyCompleted` event to Customer Center events
([#&#8203;4194](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4194))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))

##### Other Changes

- \[Diagnostics] Add `backend_error_code` property
([#&#8203;4236](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4236))
via Toni Rico ([@&#8203;tonidero](https://redirect.github.com/tonidero))
- Update README.md
([#&#8203;3986](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/3986))
via Khoa ([@&#8203;onmyway133](https://redirect.github.com/onmyway133))

###
[`v5.3.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#531)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.3.0...5.3.1)

##### Bugfixes

- Fix `compatibleTopBarTrailing` in MacOS and api tests
([#&#8203;4226](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4226))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- \[Paywall] Fix restoreStarted not being called on
`presentPaywallIfNeeded` when using `requiredEntitlementIdentifier`
([#&#8203;4223](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4223))
via Josh Holtz
([@&#8203;joshdholtz](https://redirect.github.com/joshdholtz))
- \[CustomerCenter] Move sheet and restore alert creation to
`ManageSubscriptionsView`
([#&#8203;4220](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4220))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- \[EXTERNAL] `Custom Entitlements Computation`: fix support display on
debug screen
([#&#8203;4215](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4215))
by [@&#8203;NachoSoto](https://redirect.github.com/NachoSoto)
([#&#8203;4218](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4218))
via Toni Rico ([@&#8203;tonidero](https://redirect.github.com/tonidero))
- \[Customer Center] Add padding to `No thanks` in promotional offer
screen
([#&#8203;4221](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4221))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Fix version number in plist files
([#&#8203;4213](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4213))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- fix mac os sandbox check slowness
([#&#8203;3879](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/3879))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- \[Customer Center] Fix `FeedbackSurveyView` not opening
([#&#8203;4208](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4208))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Remove `unneeded_override` disable to fix linter
([#&#8203;4209](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4209))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))

##### Dependency Updates

- Bump rexml from 3.3.3 to 3.3.6 in
/Tests/InstallationTests/CocoapodsInstallation
([#&#8203;4210](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4210))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
- Bump rexml from 3.3.3 to 3.3.6
([#&#8203;4211](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4211))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])

##### Other Changes

- Update readme wording
([#&#8203;3914](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/3914))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- Set a maximum duration for iOS 15 tests
([#&#8203;4229](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4229))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Paywall Components Initial Commit
([#&#8203;4224](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4224))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- \[CustomerCenter] Open App Store when the user wants to update their
app
([#&#8203;4199](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4199))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- \[Customer Center] Shows a warning when the app is not the latest
version
([#&#8203;4193](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4193))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- Fix integration tests simulator version
([#&#8203;4219](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4219))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Pin swift-docc-plugin to 1.3.0
([#&#8203;4216](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4216))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))

###
[`v5.3.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#530)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.2.3...5.3.0)

##### New Features

- Price rounding logic
([#&#8203;4132](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4132))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))

##### Bugfixes

- \[Customer Center] Migrate to List style
([#&#8203;4190](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4190))
via Cody Kerns
([@&#8203;codykerns](https://redirect.github.com/codykerns))
- \[Paywalls] Improve locale consistency
([#&#8203;4158](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4158))
via Josh Holtz
([@&#8203;joshdholtz](https://redirect.github.com/joshdholtz))
- Set Paywalls Tester deployment target to iOS 15
([#&#8203;4196](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4196))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- \[Customer Center] Hide Contact Support button if URL can't be created
([#&#8203;4192](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4192))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Fix the setting for SKIP\_INSTALL in Xcode project
([#&#8203;4195](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4195))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- \[Customer Center] Improving customer center buttons
([#&#8203;4165](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4165))
via Cody Kerns
([@&#8203;codykerns](https://redirect.github.com/codykerns))
- Revert workaround for iOS 18 beta 5 SwiftUI crash
([#&#8203;4173](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4173))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))
- \[Paywalls] Make iOS version calculation lazy
([#&#8203;4163](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4163))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))
- Observe `PurchaseHandler` when owned externally
([#&#8203;4097](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4097))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))

##### Dependency Updates

- Bump fastlane-plugin-revenuecat\_internal from `d5f0742` to `4c4b8ce`
([#&#8203;4167](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4167))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
- Bump rexml from 3.2.8 to 3.3.3 in
/Tests/InstallationTests/CocoapodsInstallation
([#&#8203;4176](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4176))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
- Bump rexml from 3.2.9 to 3.3.3
([#&#8203;4175](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4175))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])

##### Other Changes

- \[Customer Center] Clean up colors in WrongPlatformView and
NoSubscriptionsView
([#&#8203;4204](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4204))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- Fix failing `all-tests` and retry more flaky tests
([#&#8203;4188](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4188))
via Josh Holtz
([@&#8203;joshdholtz](https://redirect.github.com/joshdholtz))
- Compatibility content unavailable improvements
([#&#8203;4197](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4197))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- Create lane to enable customer center
([#&#8203;4191](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4191))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))
- XCFramework artifacts in CircleCI
([#&#8203;4189](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4189))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- \[Customer Center] CustomerCenterViewModel checks whether the app is
the latest version
([#&#8203;4169](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4169))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- export RevenueCatUI xcframework
([#&#8203;4172](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4172))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Corrects references from ManageSubscriptionsButtonStyle to
ButtonsStyle.
([#&#8203;4186](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4186))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))
- Speed up carthage installation tests
([#&#8203;4184](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4184))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Customer center improvements
([#&#8203;4166](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4166))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- replace `color(from colorInformation:)` global with extension
([#&#8203;4183](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4183))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Generating new test snapshots for `main` - ios-13
([#&#8203;4181](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4181))
via RevenueCat Git Bot
([@&#8203;RCGitBot](https://redirect.github.com/RCGitBot))
- Generating new test snapshots for `main` - ios-16
([#&#8203;4182](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4182))
via RevenueCat Git Bot
([@&#8203;RCGitBot](https://redirect.github.com/RCGitBot))
- Generating new test snapshots for `main` - ios-14
([#&#8203;4180](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4180))
via RevenueCat Git Bot
([@&#8203;RCGitBot](https://redirect.github.com/RCGitBot))
- Generating new test snapshots for `main` - ios-15
([#&#8203;4179](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4179))
via RevenueCat Git Bot
([@&#8203;RCGitBot](https://redirect.github.com/RCGitBot))
- Fix tests in main
([#&#8203;4174](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4174))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Enable customer center tests
([#&#8203;4171](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4171))
via James Borthwick
([@&#8203;jamesrb1](https://redirect.github.com/jamesrb1))
- \[Customer Center] Initial implementation
([#&#8203;3967](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/3967))
via Cesar de la Vega
([@&#8203;vegaro](https://redirect.github.com/vegaro))

###
[`v5.2.3`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#523)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.2.2...5.2.3)

##### Bugfixes

- Fix Paywalls crash on iOS 18 beta
([#&#8203;4154](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4154))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))

##### Dependency Updates

- Bump danger from 9.4.3 to 9.5.0
([#&#8203;4143](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4143))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
- Bump nokogiri from 1.16.6 to 1.16.7
([#&#8203;4129](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4129))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
- Bump fastlane from 2.221.1 to 2.222.0
([#&#8203;4130](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4130))
via dependabot\[bot]
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])

##### Other Changes

- Update deployment targets for tests
([#&#8203;4145](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4145))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Deploy purchaserTester: clean up dry-run parameter
([#&#8203;4140](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4140))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Clean up API Testers
([#&#8203;4141](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4141))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- More project structure cleanup
([#&#8203;4131](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4131))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- temporarily disables purchasetester deploy
([#&#8203;4133](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4133))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Fix trigger all tests branch
([#&#8203;4135](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4135))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Clean up XCWorkspace and testing apps
([#&#8203;4111](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4111))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- tests trigger: add target-branch parameter to trigger from the right
branch
([#&#8203;4121](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4121))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Re-added the RevenueCatUI tests job on every commit
([#&#8203;4113](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4113))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))

###
[`v5.2.2`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#522-customercenteralpha3)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.2.1...5.2.2)

- Fix for disabled promo offer button
([#&#8203;4142](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4142))

###
[`v5.2.1`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#521-customercenteralpha1)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.2.0...5.2.1)

- Initial Customer Center Alpha Release

###
[`v5.2.0`](https://redirect.github.com/RevenueCat/purchases-ios-spm/blob/HEAD/CHANGELOG.md#520)

[Compare
Source](https://redirect.github.com/RevenueCat/purchases-ios-spm/compare/5.1.0...5.2.0)

##### New Features

- Added new paywall template to support multiple tiered subscriptions
([#&#8203;4022](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4022))
via Josh Holtz
([@&#8203;joshdholtz](https://redirect.github.com/joshdholtz))

##### Bugfixes

- Fix certain completion blocks not being dispatched on the main thread
([#&#8203;4058](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4058))
via Mark Villacampa
([@&#8203;MarkVillacampa](https://redirect.github.com/MarkVillacampa))
- Only checks staged files for leftover API keys.
([#&#8203;4073](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4073))
via JayShortway
([@&#8203;JayShortway](https://redirect.github.com/JayShortway))

##### Other Changes

- \[Ci] Fix trigger to run all tests from github actions
([#&#8203;4075](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4075))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- added new workflow to trigger all tests
([#&#8203;4051](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4051))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))
- Reduce CI jobs
([#&#8203;4025](https://redirect.github.com/RevenueCat/purchases-ios-spm/issues/4025))
via Andy Boedo ([@&#8203;aboedo](https://redirect.github.com/aboedo))

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 05:44:47 +08:00
DarkSky
09cc2dceda feat: cleanup chat panel (#14259)
#### PR Dependency Tree


* **PR #14258**
  * **PR #14259** 👈

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

* **Refactor**
* Split AI initialization into separate editor, app, and shared
registries; removed legacy chat-panel and replaced it with a
component-based editor chat, updating wiring and public exports.
* Propagated server/subscription/model services into chat/playground
components and improved session lifecycle and UI composition.

* **Tests**
* Added tests for AI effect registration and chat session resolution;
extended DOM/test utilities and assertions.

* **Chores**
  * Added happy-dom for runtime and test environments.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 04:02:07 +08:00
likljn
94431df236 fix(core): make member popover responsive (#14277)
## Problem
In Kanban view, clicking the `Empty` value for the Member property can
cause the member popover layout to overflow/break due to a fixed
container width.

### Before ScreenShot
<img width="410" height="119" alt="image"
src="https://github.com/user-attachments/assets/e0d28a37-2ea4-4a65-afca-e4ef10af37dd"
/>

## Repro
1. Open a Database in Kanban view
2. Ensure the Member property has some cards with `Empty`
3. Click the `Empty` member value
4. Observe the popover layout overflow/broken UI

## Solution
Make the popover container responsive by using `width: 100%` with
`maxWidth: 415px` to preserve the original intended size while
preventing overflow in narrow containers.

### After ScreenShot
<img width="410" height="146" alt="image (1)"
src="https://github.com/user-attachments/assets/d97e6b8b-eabc-499a-9f04-0422505c67bf"
/>


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

* **Style**
* Improved member selector popover styling: unified padding, made width
responsive with a max width limit, and added box-sizing for more
consistent layout and spacing across screen sizes.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-18 09:37:08 +00:00
DarkSky
f373e08583 feat: refactor doc write in native (#14272) 2026-01-18 16:31:12 +08:00
Gabriele
753b11deeb fix: resolve navbar overlay issue on sign-in page (#14274)
This pr fixes #14273.

I have implemented two minor CSS adjustments to resolve the navbar
interaction issue on the sign-in page:

- Removed position: relative and z-index: 1 from signInPageContainer.
- Set z-index: 1 on the SignInPanel div (prevent SignInBackgroundArts
from overlapping the SignInPanel)


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

## Summary by CodeRabbit

* **Style**
  * Adjusted z-index layering for the sign-in page component.

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

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-17 17:32:42 +00:00
Heera Rana
17f2ebc4de feat: render document header image from document metadata (#14255)
### What
Adds support for rendering an optional image above the document title
using document metadata.

### Why
Provides a visual identifier for documents and improves readability for
users who rely on visual cues.

### How
- Reads `headerImage` from document metadata (if present)
- Renders the image above the editor when present
- Fully optional and non-breaking
- No BlockSuite or data model changes

### Related
fix #14240


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

## Summary by CodeRabbit

* **New Features**
* Documents can now display header images in the page editor. When a
header image is available, it appears above the editor content,
enhancing visual presentation and providing better context for your
documents.

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

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-16 14:18:59 +00:00
realies
0da91e406e feat(server): add document write tools for mcp (#14245)
## Summary

This PR adds write capabilities to AFFiNE's MCP (Model Context Protocol)
integration, enabling external tools (Claude, GPT, etc.) to create and
modify documents programmatically.

**New MCP Tools:**
- `create_document` - Create new documents from markdown content
- `update_document` - Update document content using structural diffing
for minimal changes (preserves document history and enables real-time
collaboration)

**Implementation:**
- `markdown_to_ydoc.rs` - Converts markdown to AFFiNE-compatible y-octo
binary format
- `markdown_utils.rs` - Shared markdown parsing utilities (used by both
ydoc-to-md and md-to-ydoc)
- `update_ydoc.rs` - Structural diffing implementation for updating
existing documents
- `DocWriter` service - TypeScript service for document operations
- Exposes `markdownToDocBinary` and `updateDocBinary` via napi bindings

**Supported Markdown Elements:**
- Headings (H1-H6)
- Paragraphs
- Bullet lists and numbered lists
- Code blocks (with language detection)
- Blockquotes
- Horizontal dividers
- Todo items (checkboxes)

**y-octo Changes:**
This PR reverts the y-octo sync (ca2462f, a5b60cf) which introduced a
concurrency bug causing hangs when creating documents with many nested
block structures. It also ports the improved `get_node_index` binary
search fix from upstream that prevents divide-by-zero panics when
decoding documents.

## Test Results 

### Unit Tests (47/47 passing)

| Test Suite | Tests | Status |
|------------|-------|--------|
| markdown_to_ydoc | 16/16 |  Pass |
| markdown_utils | 11/11 |  Pass |
| update_ydoc | 13/13 |  Pass |
| delta_markdown | 2/2 |  Pass |
| affine (doc parser) | 5/5 |  Pass |

### End-to-End MCP Testing 

Tested against local AFFiNE server with real MCP client requests:

| Tool | Result | Notes |
|------|--------|-------|
| `tools/list` |  Pass | Returns all 5 tools with correct schemas |
| `create_document` |  Pass | Successfully created test documents |
| `update_document` |  Pass | Successfully updated documents with
structural diffing |
| `read_document` |  Pass | Existing tool, works correctly |
| `keyword_search` |  Pass | Existing tool, works correctly |

**E2E Test Details:**
- Started local AFFiNE server with PostgreSQL, Redis, and Manticore
- Created test user and workspace via seed/GraphQL
- Verified MCP endpoint at `/api/workspaces/:workspaceId/mcp`
- Tested JSON-RPC calls with proper SSE streaming
- Confirmed documents are stored and indexed correctly (verified via
server logs)

## Test Plan
- [x] All Rust unit tests pass (47 tests)
- [x] Native bindings build successfully (release mode)
- [x] Document creation via MCP works end-to-end
- [x] Document update via MCP works end-to-end
- [x] CodeRabbit feedback addressed
- [ ] Integration testing with Claude/GPT MCP clients

Closes #14161

---

**Requested by:** @realies  
**Key guidance from:** @darkskygit (use y-octo instead of yjs for memory
efficiency)

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

* **New Features**
* Create documents from Markdown: generate new documents directly from
Markdown content with automatic title extraction
* Update documents with Markdown: modify existing documents using
Markdown as the source with automatic diff calculation for efficient
updates
* Copilot integration: new tools for document creation and updates
through Copilot's interface

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-16 20:57:24 +08:00
DarkSky
2c5559ed0b fix: missing session fields 2026-01-16 17:26:05 +08:00
DarkSky
924d58603f chore: improve event flow (#14266) 2026-01-16 16:07:27 +08:00
DarkSky
00a458543f feat: cleanup chat panel (#14258)
#### PR Dependency Tree


* **PR #14258** 👈

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

* **Removed Features**
* Web search functionality has been removed from AI chat and related AI
features. Users will no longer see network search options or toggles in
chat preferences and panels.
  * AI chat requests no longer support external web search capabilities.

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

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


#### PR Dependency Tree


* **PR #14258** 👈
  * **PR #14259**

This tree was auto-generated by
[Charcoal](https://github.com/danerwilliams/charcoal)
2026-01-15 19:20:55 +08:00
DarkSky
ac7a95e708 feat: misc optimizations (#14257)
fix #13798
2026-01-15 03:47:22 +08:00
DarkSky
76e1721d70 fix: journal conflict handle 2026-01-15 00:55:35 +08:00
DarkSky
fc59dff9e2 chore: enable blur background for mac 2026-01-15 00:35:11 +08:00