Skip to content

Prepare first TanStack DB 1.0 release candidate - #2171

Open
KyleAMathews wants to merge 16 commits into
mainfrom
codex/rc1-deprecation-cleanup
Open

KyleAMathews wants to merge 16 commits into
mainfrom
codex/rc1-deprecation-cleanup

Conversation

@KyleAMathews

@KyleAMathews KyleAMathews commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Prepare TanStack DB for its first 1.0 release candidate. Remove the deprecated APIs in #1319 and document recent migration steps.

This PR also keeps virtual metadata tied to the selected source row. The release scripts support ordinary Changesets throughout the RC period.

API and migration

Replace $synced with $hasPendingWrites. Replace transaction.isPersisted with transaction.when('settled').

Remove deprecated handler return values, React hook dependency arrays, and Solid query .data access. Electric mutation handlers now reject returned values. Await collection.utils.awaitTxId(txid) or awaitMatch() inside the handler.

A live query protects $hasPendingWrites, $origin, $key, and $collectionId on published Collection rows. A selected joined row keeps its source metadata. With multiple source spreads, the last spread supplies that metadata. Collection-valued includes follow the same rule. Inline query values keep their selected shape.

Client renders can use getKey or schema without a React queryKey. Keep those option references stable across renders. SSR streaming still needs an explicit, serializable queryKey.

The migration guide covers these removals and changes since @tanstack/db@0.9.2 in September. It includes Query Collection writes, IndexedDB imports, sync and persistence contracts, query windows, and adapter requirements.

Release process

The first Changeset versions all 21 public packages below 1.0 as 1.0.0-rc.1.

Query Collection and Offline Transactions accidentally reached 1.x before this RC. They stay on 1.x and receive compatibility patches. Both packages now accept @tanstack/db through the peer range ^0.15.0 || ^1.0.0-rc.0.

During the RC, maintainers can add ordinary Changesets:

  • A patch moves 1.0.0-rc.1 to 1.0.0-rc.1.1, then to 1.0.0-rc.1.2.
  • A minor or major change moves 1.0.0-rc.1.2 to 1.0.0-rc.2.
  • Stable packages continue normal semantic versioning.

The publish command sends stable compatibility patches to npm's latest tag first. It then sends candidate packages to the rc tag. Both passes use the existing publish authentication.

For the final 1.0 release, commit the result of pnpm changeset pre exit. The next Version Packages PR promotes candidates to 1.0.0. Exit applies only pending Changesets. It also includes dependent bumps when an exact workspace dependency must change.

Verification

  • All executable PR CI checks passed on fa5a48a6d, including both DB shards and browser, desktop, and cloud/mobile E2E. CodeRabbit skipped its review because 335 changed files exceed its 300-file limit.
  • The three ordered-query and index oracles updated after the main merge passed 592/592 tests locally with no type errors.
  • pnpm test:release: 9 tests passed after the latest main merge.
  • Affected DB query tests: 260 passed after the merge.
  • React tests: 78 passed after the merge.
  • Query Collection tests: 380 passed after the merge.
  • Electric tests: 233 passed after the merge.
  • The four affected packages built after the merge.
  • pnpm test:sherif passed after the peer dependency order fix.
  • A frozen lockfile install passed. Packed Query Collection and Offline Transactions contain the DB peer range and no direct DB dependency.
  • pnpm test:docs still reports 32 existing links outside /docs. None points to the edited migration guide.

Closes #1319.

@changeset-bot

changeset-bot Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: fa5a48a

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 36 packages
Name Type
@tanstack/angular-db Major
@tanstack/browser-db-sqlite-persistence Major
@tanstack/capacitor-db-sqlite-persistence Major
@tanstack/cloudflare-durable-objects-db-sqlite-persistence Major
@tanstack/db Major
@tanstack/db-ivm Major
@tanstack/db-sqlite-persistence-core Major
@tanstack/electric-db-collection Major
@tanstack/electron-db-sqlite-persistence Major
@tanstack/expo-db-sqlite-persistence Major
@tanstack/node-db-sqlite-persistence Major
@tanstack/offline-transactions Patch
@tanstack/powersync-db-collection Major
@tanstack/query-db-collection Patch
@tanstack/react-db Major
@tanstack/react-native-db-sqlite-persistence Major
@tanstack/react-router-with-db Major
@tanstack/rxdb-db-collection Major
@tanstack/solid-db Major
@tanstack/svelte-db Major
@tanstack/tauri-db-sqlite-persistence Major
@tanstack/trailbase-db-collection Major
@tanstack/vue-db Major
todos Patch
@tanstack/capacitor-db-sqlite-persistence-e2e-app Patch
@tanstack/expo-db-sqlite-persistence-e2e-app Patch
@tanstack/tauri-db-sqlite-persistence-e2e-app Patch
offline-transactions-react-native Patch
shopping-list-react-native Patch
@tanstack/db-example-react-next-ssr-e2e Patch
@tanstack/db-example-paced-mutations-demo Patch
@tanstack/db-example-react-todo Patch
@tanstack/db-example-solid-todo Patch
offline-first-electron Patch
@tanstack/db-example-react-action-enforcement Patch
@tanstack/db-example-react-start-ssr-e2e Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai

coderabbitai Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 335 files, which is 35 over the limit of 300.

To get a review, reduce the PR to 300 files or fewer by splitting it into smaller PRs or changing its base branch.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 73f5f946-0ffa-4ec0-888e-3ece68238009
📥 Commits

Reviewing files that changed from the base of the PR and between 7d60818 and fa5a48a.

⛔ Files ignored due to path filters: 1
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing: 335
  • .changeset/first-rc.md
  • .github/workflows/pr.yml
  • .github/workflows/release.yml
  • CONTRIBUTING.md
  • docs/collections/electric-collection.md
  • docs/collections/indexed-db-collection.md
  • docs/collections/local-storage-collection.md
  • docs/collections/powersync-collection.md
  • docs/collections/query-collection.md
  • docs/config.json
  • docs/contributing/oracle-coverage.md
  • docs/framework/react/overview.md
  • docs/framework/react/reference/functions/useLiveInfiniteQuery.md
  • docs/framework/react/reference/functions/useLiveQuery.md
  • docs/framework/react/reference/functions/useLiveSuspenseQuery.md
  • docs/framework/react/reference/functions/usePacedMutations.md
  • docs/framework/react/reference/type-aliases/ConditionalUseLiveQueryConfig.md
  • docs/framework/react/reference/type-aliases/LiveQueryKey.md
  • docs/framework/react/reference/type-aliases/UseLiveInfiniteQueryConfig.md
  • docs/framework/react/reference/type-aliases/UseLiveInfiniteQueryReturn.md
  • docs/framework/react/reference/type-aliases/UseLiveInfiniteQueryReturnWithCollection.md
  • docs/framework/react/reference/type-aliases/UseLiveQueryConfig.md
  • docs/framework/react/reference/type-aliases/UseLiveQueryStatus.md
  • docs/framework/solid/overview.md
  • docs/framework/solid/reference/functions/useLiveQuery.md
  • docs/guides/collection-options-creator.md
  • docs/guides/live-queries.md
  • docs/guides/migrate-to-1-0-rc.md
  • docs/guides/mutations.md
  • docs/guides/ssr.md
  • docs/overview.md
  • docs/reference/classes/AggregateFunctionNotInSelectError.md
  • docs/reference/classes/CannotCombineEmptyExpressionListError.md
  • docs/reference/classes/CollectionPreloadAbortedError.md
  • docs/reference/classes/DuplicateAliasInSubqueryError.md
  • docs/reference/classes/EmptyReferencePathError.md
  • docs/reference/classes/GroupByError.md
  • docs/reference/classes/InvalidJoinCondition.md
  • docs/reference/classes/InvalidJoinConditionLeftSourceError.md
  • docs/reference/classes/InvalidJoinConditionRightSourceError.md
  • docs/reference/classes/InvalidJoinConditionSameSourceError.md
  • docs/reference/classes/InvalidJoinConditionSourceMismatchError.md
  • docs/reference/classes/InvalidStorageDataFormatError.md
  • docs/reference/classes/InvalidStorageObjectFormatError.md
  • docs/reference/classes/JoinCollectionNotFoundError.md
  • docs/reference/classes/JoinError.md
  • docs/reference/classes/LoadSubsetOperationAbortedError.md
  • docs/reference/classes/LocalStorageCollectionError.md
  • docs/reference/classes/MissingAliasInputsError.md
  • docs/reference/classes/NonAggregateExpressionNotInGroupByError.md
  • docs/reference/classes/QueryCompilationError.md
  • docs/reference/classes/QueryOptimizerError.md
  • docs/reference/classes/SerializationError.md
  • docs/reference/classes/SetWindowFindOneLimitError.md
  • docs/reference/classes/SetWindowReentrancyError.md
  • docs/reference/classes/SetWindowRequiresOrderByError.md
  • docs/reference/classes/StorageError.md
  • docs/reference/classes/StorageKeyRequiredError.md
  • docs/reference/classes/SyncCleanupError.md
  • docs/reference/classes/SyncTransactionAbortedError.md
  • docs/reference/classes/UnhashableQueryIRError.md
  • docs/reference/classes/UnknownExpressionTypeError.md
  • docs/reference/classes/UnknownFunctionError.md
  • docs/reference/classes/UnknownHavingExpressionTypeError.md
  • docs/reference/classes/UnsupportedAggregateFunctionError.md
  • docs/reference/classes/UnsupportedFromTypeError.md
  • docs/reference/classes/UnsupportedJoinSourceTypeError.md
  • docs/reference/classes/UnsupportedJoinTypeError.md
  • docs/reference/electric-db-collection/functions/electricCollectionOptions.md
  • docs/reference/electric-db-collection/interfaces/ElectricCollectionConfig.md
  • docs/reference/electric-db-collection/interfaces/ElectricCollectionUtils.md
  • docs/reference/electric-db-collection/type-aliases/AwaitTxIdFn.md
  • docs/reference/electric-db-collection/type-aliases/Txid.md
  • docs/reference/functions/hasVirtualProps.md
  • docs/reference/index.md
  • docs/reference/interfaces/BaseCollectionConfig.md
  • docs/reference/interfaces/CollectionConfig.md
  • docs/reference/interfaces/Context.md
  • docs/reference/interfaces/CurrentStateAsChangesOptions.md
  • docs/reference/interfaces/IndexedDBCollectionConfig.md
  • docs/reference/interfaces/LiveQueryCollectionConfig.md
  • docs/reference/interfaces/LocalOnlyCollectionConfig.md
  • docs/reference/interfaces/LocalStorageCollectionConfig.md
  • docs/reference/interfaces/SubscribeChangesOptions.md
  • docs/reference/interfaces/SubscribeChangesSnapshotOptions.md
  • docs/reference/interfaces/Transaction.md
  • docs/reference/interfaces/VirtualRowProps.md
  • docs/reference/query-db-collection/functions/queryCollectionOptions.md
  • docs/reference/query-db-collection/interfaces/QueryCollectionConfig.md
  • docs/reference/query-db-collection/interfaces/QueryCollectionUtils.md
  • docs/reference/rxdb-db-collection/functions/rxdbCollectionOptions.md
  • docs/reference/type-aliases/ApplyJoinOptionalityToMergedSchema.md
  • docs/reference/type-aliases/ChangeListener.md
  • docs/reference/type-aliases/ChangesPayload.md
  • docs/reference/type-aliases/CollectionConfigSingleRowOption.md
  • docs/reference/type-aliases/CollectionStatus.md
  • docs/reference/type-aliases/ContextFromSource.md
  • docs/reference/type-aliases/ContextFromUnionBranches.md
  • docs/reference/type-aliases/ContextFromUnionSource.md
  • docs/reference/type-aliases/ContextSchema.md
  • docs/reference/type-aliases/DeleteMutationFn.md
  • docs/reference/type-aliases/FunctionalHavingRow.md
  • docs/reference/type-aliases/GetResult.md
  • docs/reference/type-aliases/GroupByCallback.md
  • docs/reference/type-aliases/InferCollectionType.md
  • docs/reference/type-aliases/InferResultType.md
  • docs/reference/type-aliases/InputRow.md
  • docs/reference/type-aliases/InsertMutationFn.md
  • docs/reference/type-aliases/JoinOnCallback.md
  • docs/reference/type-aliases/KeyedNamespacedRow.md
  • docs/reference/type-aliases/KeyedStream.md
  • docs/reference/type-aliases/MakeOptional.md
  • docs/reference/type-aliases/MaybeSingleResult.md
  • docs/reference/type-aliases/MergeContextForJoinCallback.md
  • docs/reference/type-aliases/MergeContextWithJoinType.md
  • docs/reference/type-aliases/NamespacedAndKeyedStream.md
  • docs/reference/type-aliases/NamespacedRow.md
  • docs/reference/type-aliases/NonSingleResult.md
  • docs/reference/type-aliases/OrderByCallback.md
  • docs/reference/type-aliases/Prettify.md
  • docs/reference/type-aliases/Ref.md
  • docs/reference/type-aliases/RefsForContext.md
  • docs/reference/type-aliases/ResultStream.md
  • docs/reference/type-aliases/ResultTypeFromSelect.md
  • docs/reference/type-aliases/SchemaFromSource.md
  • docs/reference/type-aliases/SelectObject.md
  • docs/reference/type-aliases/SingleResult.md
  • docs/reference/type-aliases/SingleSource.md
  • docs/reference/type-aliases/Source.md
  • docs/reference/type-aliases/SyncMode.md
  • docs/reference/type-aliases/UpdateMutationFn.md
  • docs/reference/type-aliases/WhereCallback.md
  • docs/reference/type-aliases/WithResult.md
  • docs/reference/type-aliases/WithVirtualProps.md
  • docs/reference/type-aliases/WithoutVirtualProps.md
  • docs/reference/type-aliases/WritableDeep.md
  • examples/react-native/shopping-list/src/components/ListDetail.tsx
  • examples/react-native/shopping-list/src/components/ListsScreen.tsx
  • examples/react/paced-mutations-demo/src/App.tsx
  • examples/react/projects/src/routes/_authenticated/index.tsx
  • examples/react/todo/src/lib/collections.ts
  • examples/react/todo/src/routes/electric.tsx
  • examples/solid/todo/src/lib/collections.ts
  • examples/solid/todo/src/routes/trailbase.tsx
  • package.json
  • packages/browser-db-sqlite-persistence/e2e/browser-single-tab-persisted-collection.e2e.test.ts
  • packages/browser-db-sqlite-persistence/e2e/electric-immediate-reload.opfs.ts
  • packages/capacitor-db-sqlite-persistence/e2e/shared/capacitor-persisted-collection-harness.ts
  • packages/capacitor-db-sqlite-persistence/tests/capacitor-persistence.test.ts
  • packages/cloudflare-durable-objects-db-sqlite-persistence/e2e/fixtures/worker.mjs
  • packages/db-sqlite-persistence-core/src/persisted.ts
  • packages/db-sqlite-persistence-core/tests/contracts/runtime-persistence-contract.ts
  • packages/db-sqlite-persistence-core/tests/persisted-oracle.test.ts
  • packages/db-sqlite-persistence-core/tests/persisted-real-adapter-lifecycle.test.ts
  • packages/db-sqlite-persistence-core/tests/sqlite-resume-snapshot-oracle.test.ts
  • packages/db/e2e/indexed-db/browser.ts
  • packages/db/e2e/indexed-db/coverage-browser.ts
  • packages/db/e2e/indexed-db/host-driver.ts
  • packages/db/package-tests/indexed-db/packed-consumer.ts
  • packages/db/skills/db-core/collection-setup/SKILL.md
  • packages/db/skills/db-core/collection-setup/references/electric-adapter.md
  • packages/db/skills/db-core/live-queries/SKILL.md
  • packages/db/skills/db-core/mutations-optimistic/SKILL.md
  • packages/db/skills/db-core/mutations-optimistic/references/transaction-api.md
  • packages/db/src/collection/changes.ts
  • packages/db/src/collection/mutations.ts
  • packages/db/src/collection/state.ts
  • packages/db/src/errors.ts
  • packages/db/src/indexed-db.ts
  • packages/db/src/live-query-options.ts
  • packages/db/src/local-only.ts
  • packages/db/src/local-storage.ts
  • packages/db/src/paced-mutations.ts
  • packages/db/src/query/builder/ref-proxy.ts
  • packages/db/src/query/builder/types.ts
  • packages/db/src/query/compiler/group-by.ts
  • packages/db/src/query/compiler/index.ts
  • packages/db/src/query/live/ARCHITECTURE.md
  • packages/db/src/query/live/collection-config-builder.ts
  • packages/db/src/strategies/commit-completion.ts
  • packages/db/src/strategies/queueStrategy.ts
  • packages/db/src/transactions.ts
  • packages/db/src/types.ts
  • packages/db/src/virtual-props.ts
  • packages/db/tests/change-event-history-oracle.test.ts
  • packages/db/tests/collection-indexes.test.ts
  • packages/db/tests/collection-metadata-publication-oracle.property.test.ts
  • packages/db/tests/collection-mutation-startup-oracle.test.ts
  • packages/db/tests/collection-query-publication-boundaries.test.ts
  • packages/db/tests/collection-row-metadata-composition-oracle.test.ts
  • packages/db/tests/collection-state-retention-oracle.property.test.ts
  • packages/db/tests/collection-subscribe-changes.test.ts
  • packages/db/tests/collection-subscription-replay-oracle.property.test.ts
  • packages/db/tests/collection-sync-reentrancy-oracle.test.ts
  • packages/db/tests/collection-truncate.test.ts
  • packages/db/tests/collection.test.ts
  • packages/db/tests/conformance-result-laws.test.ts
  • packages/db/tests/conformance/contract.ts
  • packages/db/tests/conformance/result-laws.ts
  • packages/db/tests/conformance/suite.ts
  • packages/db/tests/db-client-hydration-authority-oracle.test.ts
  • packages/db/tests/db-client.test.ts
  • packages/db/tests/error-sample-arguments.ts
  • packages/db/tests/index-suggestion-oracle.test.ts
  • packages/db/tests/indexed-db/api.test.ts
  • packages/db/tests/indexed-db/compatibility-oracle.test.ts
  • packages/db/tests/indexed-db/cross-tab-boundary-oracle.test.ts
  • packages/db/tests/indexed-db/cross-tab-driver.ts
  • packages/db/tests/indexed-db/cross-tab-oracle.ts
  • packages/db/tests/indexed-db/harness.ts
  • packages/db/tests/indexed-db/local-write-order-oracle.test.ts
  • packages/db/tests/indexed-db/pending-history-oracle.test.ts
  • packages/db/tests/indexed-db/persistence-oracle.test.ts
  • packages/db/tests/indexed-db/persistence-values-oracle.test.ts
  • packages/db/tests/indexed-db/retirement-oracle.test.ts
  • packages/db/tests/indexed-db/settlement-oracle.test.ts
  • packages/db/tests/indexed-db/transport-oracle.test.ts
  • packages/db/tests/live-query-options.test.ts
  • packages/db/tests/live-query-order-only-move.test.ts
  • packages/db/tests/local-only-direct-write-oracle.test.ts
  • packages/db/tests/local-only.test-d.ts
  • packages/db/tests/local-only.test.ts
  • packages/db/tests/local-storage-order-oracle.test.ts
  • packages/db/tests/local-storage-peer-oracle.test.ts
  • packages/db/tests/local-storage-persistence-failure.test.ts
  • packages/db/tests/local-storage.test-d.ts
  • packages/db/tests/local-storage.test.ts
  • packages/db/tests/mutation-handler-compatibility.test-d.ts
  • packages/db/tests/mutation-handler-type-oracle.test-d.ts
  • packages/db/tests/optimistic-action.test.ts
  • packages/db/tests/optimistic-composition-oracle.test.ts
  • packages/db/tests/optimistic-history-oracle.ts
  • packages/db/tests/optimistic-transaction-oracle.property.test.ts
  • packages/db/tests/paced-mutations-oracle.test.ts
  • packages/db/tests/paced-mutations.test.ts
  • packages/db/tests/proxy-detachment-contract-oracle.test.ts
  • packages/db/tests/proxy-iteration-contract-oracle.test.ts
  • packages/db/tests/proxy-oracle.test.ts
  • packages/db/tests/query/compiler/group-by-pipeline.test.ts
  • packages/db/tests/query/derived-delete-reconciliation-oracle.test.ts
  • packages/db/tests/query/includes-alias-shadowing-oracle.test.ts
  • packages/db/tests/query/includes-collection-oracle.property.test.ts
  • packages/db/tests/query/includes-context-transport-oracle.test.ts
  • packages/db/tests/query/includes-cross-formulation-oracle.property.test.ts
  • packages/db/tests/query/includes-functional-projection-oracle.test.ts
  • packages/db/tests/query/includes-optimistic-oracle.property.test.ts
  • packages/db/tests/query/includes-oracle.property.test.ts
  • packages/db/tests/query/includes-publication-oracle.test.ts
  • packages/db/tests/query/includes-temporal-oracle.test.ts
  • packages/db/tests/query/includes-work-counter-oracle.test.ts
  • packages/db/tests/query/includes.test-d.ts
  • packages/db/tests/query/live-query-collection.test.ts
  • packages/db/tests/query/load-subset-oracle.property.test.ts
  • packages/db/tests/query/load-subset-transaction-refinement-oracle.test.ts
  • packages/db/tests/query/ordered-lifecycle-oracle.property.test.ts
  • packages/db/tests/query/ordered-work-oracle.property.test.ts
  • packages/db/tests/query/pagination-oracle.property.test.ts
  • packages/db/tests/query/pooled-live-query-oracle.property.test.ts
  • packages/db/tests/query/scheduler.test.ts
  • packages/db/tests/query/virtual-row-fields-oracle.test-d.ts
  • packages/db/tests/query/virtual-row-fields-oracle.test.ts
  • packages/db/tests/query/where-predicate-publication-oracle.property.test.ts
  • packages/db/tests/transaction-ownership-oracle.property.test.ts
  • packages/db/tests/transaction-types.test.ts
  • packages/db/tests/transactions.test.ts
  • packages/db/tests/truncate-readiness-oracle.test.ts
  • packages/db/tests/utils.ts
  • packages/db/tests/virtual-props-cache.test.ts
  • packages/db/tests/virtual-row-guard.test-d.ts
  • packages/electric-db-collection/src/electric.ts
  • packages/electric-db-collection/tests/electric-descriptor-isolation-oracle.test.ts
  • packages/electric-db-collection/tests/electric-oracle.property.test.ts
  • packages/electric-db-collection/tests/electric-recovery-oracle.test.ts
  • packages/electric-db-collection/tests/electric.test-d.ts
  • packages/electric-db-collection/tests/electric.test.ts
  • packages/electron-db-sqlite-persistence/tests/electron-persisted-collection.e2e.test.ts
  • packages/expo-db-sqlite-persistence/e2e/expo-runtime-app/App.tsx
  • packages/expo-db-sqlite-persistence/e2e/mobile-persisted-collection-conformance-suite.ts
  • packages/expo-db-sqlite-persistence/tests/expo-persistence.test.ts
  • packages/node-db-sqlite-persistence/e2e/node-persisted-collection.e2e.test.ts
  • packages/node-db-sqlite-persistence/tests/node-persistence.test.ts
  • packages/offline-transactions/README.md
  • packages/offline-transactions/package.json
  • packages/offline-transactions/src/OfflineExecutor.ts
  • packages/offline-transactions/tests/leadership-replay-oracle.property.test.ts
  • packages/offline-transactions/tests/restoration-ownership.test.ts
  • packages/offline-transactions/tests/transaction-serializer-oracle.property.test.ts
  • packages/offline-transactions/tests/transaction-settlement-oracle.property.test.ts
  • packages/powersync-db-collection/tests/collection-schema.test.ts
  • packages/powersync-db-collection/tests/correctness-oracle.test.ts
  • packages/powersync-db-collection/tests/on-demand-sync.test.ts
  • packages/powersync-db-collection/tests/powersync.test.ts
  • packages/query-db-collection/package.json
  • packages/query-db-collection/src/query.ts
  • packages/query-db-collection/tests/optimistic-ordered-refetch-oracle.test.ts
  • packages/query-db-collection/tests/optimistic-writeback.test.ts
  • packages/query-db-collection/tests/ownership-lifecycle.oracle.test.ts
  • packages/query-db-collection/tests/query.test.ts
  • packages/query-db-collection/tests/refetch-ordered-prefix-oracle.test.ts
  • packages/react-db/skills/react-db/SKILL.md
  • packages/react-db/src/live-query-internals.ts
  • packages/react-db/src/useLiveInfiniteQuery.ts
  • packages/react-db/src/useLiveQuery.ts
  • packages/react-db/src/useLiveSuspenseQuery.ts
  • packages/react-db/src/usePacedMutations.ts
  • packages/react-db/tests/conformance.test.tsx
  • packages/react-db/tests/descriptor-query-binding-oracle.test.tsx
  • packages/react-db/tests/infinite-query-conformance.test.tsx
  • packages/react-db/tests/infinite-query-render-cuts-oracle.test.tsx
  • packages/react-db/tests/source-id-reuse-oracle.test.tsx
  • packages/react-db/tests/useLiveInfiniteQuery.test.tsx
  • packages/react-db/tests/useLiveQuery.test-d.tsx
  • packages/react-db/tests/useLiveQuery.test.tsx
  • packages/react-db/tests/useLiveSuspenseQuery.test.tsx
  • packages/react-db/tests/usePacedMutations.test.tsx
  • packages/react-native-db-sqlite-persistence/e2e/mobile-persisted-collection-conformance-suite.ts
  • packages/react-native-db-sqlite-persistence/tests/react-native-persistence.test.ts
  • packages/rxdb-db-collection/src/rxdb.ts
  • packages/rxdb-db-collection/tests/rxdb.test.ts
  • packages/solid-db/skills/solid-db/SKILL.md
  • packages/solid-db/src/useLiveQuery.ts
  • packages/solid-db/tests/conformance.test.tsx
  • packages/solid-db/tests/useLiveQuery.test.tsx
  • packages/tauri-db-sqlite-persistence/e2e/shared/tauri-persisted-collection-harness.ts
  • packages/tauri-db-sqlite-persistence/tests/tauri-persistence.test.ts
  • packages/trailbase-db-collection/src/trailbase.ts
  • packages/trailbase-db-collection/tests/lifecycle-oracle.property.test.ts
  • packages/trailbase-db-collection/tests/trailbase.test.ts
  • packages/vue-db/tests/useLiveQuery.test.ts
  • scripts/bench/incremental-update.ts
  • scripts/publish-packages.mjs
  • scripts/publish-packages.test.mjs
  • scripts/test-minified-db.mjs
  • scripts/version-packages.mjs
  • scripts/version-packages.test.mjs

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Size Change: -700 B (-0.32%)

Total Size: 217 kB

📦 View Changed
Filename Size Change
packages/db/dist/esm/collection/changes.js 2.96 kB -6 B (-0.2%)
packages/db/dist/esm/collection/mutations.js 2.97 kB -15 B (-0.5%)
packages/db/dist/esm/collection/state.js 7.1 kB -66 B (-0.92%)
packages/db/dist/esm/errors.js 6.41 kB -124 B (-1.9%)
packages/db/dist/esm/index.js 4.5 kB -20 B (-0.44%)
packages/db/dist/esm/indexed-db.js 3.7 kB -8 B (-0.22%)
packages/db/dist/esm/live-query-options.js 1.44 kB +34 B (+2.42%)
packages/db/dist/esm/local-only.js 1.06 kB -22 B (-2.04%)
packages/db/dist/esm/local-storage.js 3.92 kB -4 B (-0.1%)
packages/db/dist/esm/query/compiler/group-by.js 4.45 kB -34 B (-0.76%)
packages/db/dist/esm/query/compiler/index.js 10.6 kB +317 B (+3.08%)
packages/db/dist/esm/query/live/collection-config-builder.js 6.84 kB +2 B (+0.03%)
packages/db/dist/esm/strategies/commit-completion.js 154 B -2 B (-1.28%)
packages/db/dist/esm/transactions.js 4.69 kB +81 B (+1.76%)
packages/db/dist/esm/virtual-props.js 400 B -13 B (-3.15%)
packages/react-db/dist/esm/useLiveInfiniteQuery.js 2.04 kB -114 B (-5.3%) ✅
packages/react-db/dist/esm/useLiveQuery.js 2.81 kB -527 B (-15.77%) 👏
packages/react-db/dist/esm/useLiveSuspenseQuery.js 1.15 kB -179 B (-13.48%) 👏
ℹ️ View Unchanged
Filename Size
packages/db/dist/esm/client.js 4.22 kB
packages/db/dist/esm/collection-options-brand.js 219 B
packages/db/dist/esm/collection-options.js 258 B
packages/db/dist/esm/collection/change-events.js 1.76 kB
packages/db/dist/esm/collection/cleanup-queue.js 901 B
packages/db/dist/esm/collection/config-errors.js 547 B
packages/db/dist/esm/collection/events.js 481 B
packages/db/dist/esm/collection/index.js 5.27 kB
packages/db/dist/esm/collection/indexes.js 2.3 kB
packages/db/dist/esm/collection/lifecycle.js 2.94 kB
packages/db/dist/esm/collection/subscription.js 8.9 kB
packages/db/dist/esm/collection/sync.js 5.4 kB
packages/db/dist/esm/collection/validate-config.js 1.17 kB
packages/db/dist/esm/deferred.js 207 B
packages/db/dist/esm/error-message.js 642 B
packages/db/dist/esm/event-emitter.js 1.06 kB
packages/db/dist/esm/indexed-db-wrapper.js 1.91 kB
packages/db/dist/esm/indexes/auto-index.js 924 B
packages/db/dist/esm/indexes/base-index.js 1.92 kB
packages/db/dist/esm/indexes/basic-index.js 1.93 kB
packages/db/dist/esm/indexes/btree-index.js 1.62 kB
packages/db/dist/esm/indexes/index-registry.js 916 B
packages/db/dist/esm/indexes/reverse-index.js 1.01 kB
packages/db/dist/esm/live-query-adapter.js 338 B
packages/db/dist/esm/live-query-observer.js 4.8 kB
packages/db/dist/esm/live-query-window-controller.js 4.27 kB
packages/db/dist/esm/optimistic-action.js 359 B
packages/db/dist/esm/paced-mutations.js 1.11 kB
packages/db/dist/esm/persisted-readiness.js 195 B
packages/db/dist/esm/proxy.js 3.51 kB
packages/db/dist/esm/query/builder/clone-query.js 849 B
packages/db/dist/esm/query/builder/functions.js 1.56 kB
packages/db/dist/esm/query/builder/index.js 7.48 kB
packages/db/dist/esm/query/builder/query-ir.js 312 B
packages/db/dist/esm/query/builder/ref-proxy-identity.js 292 B
packages/db/dist/esm/query/builder/ref-proxy.js 1.67 kB
packages/db/dist/esm/query/builder/wrapper-identity.js 221 B
packages/db/dist/esm/query/compiler/evaluators.js 2.51 kB
packages/db/dist/esm/query/compiler/expressions.js 603 B
packages/db/dist/esm/query/compiler/joins.js 3.42 kB
packages/db/dist/esm/query/compiler/lazy-targets.js 1.11 kB
packages/db/dist/esm/query/compiler/order-by.js 2.8 kB
packages/db/dist/esm/query/compiler/parent-routes.js 319 B
packages/db/dist/esm/query/compiler/query-equivalence.js 568 B
packages/db/dist/esm/query/compiler/route-metadata.js 1.24 kB
packages/db/dist/esm/query/compiler/select.js 1.5 kB
packages/db/dist/esm/query/effect.js 5.36 kB
packages/db/dist/esm/query/equality-conjunct.js 486 B
packages/db/dist/esm/query/equality-value-identity.js 735 B
packages/db/dist/esm/query/expression-helpers.js 1.61 kB
packages/db/dist/esm/query/ir-stable-identity.js 4.2 kB
packages/db/dist/esm/query/ir.js 2.2 kB
packages/db/dist/esm/query/join-conditions.js 257 B
packages/db/dist/esm/query/live-query-collection.js 391 B
packages/db/dist/esm/query/live/bucket-facade-adapter.js 3.17 kB
packages/db/dist/esm/query/live/collection-registry.js 264 B
packages/db/dist/esm/query/live/collection-subscriber.js 2.28 kB
packages/db/dist/esm/query/live/graph-scheduler.js 305 B
packages/db/dist/esm/query/live/internal.js 145 B
packages/db/dist/esm/query/live/materialized-pipeline.js 2.39 kB
packages/db/dist/esm/query/live/ordered-source-loader.js 5.35 kB
packages/db/dist/esm/query/live/subset-demand-controller.js 1.73 kB
packages/db/dist/esm/query/live/utils.js 1.35 kB
packages/db/dist/esm/query/optimizer.js 2.95 kB
packages/db/dist/esm/query/pooled-live-query.js 4.13 kB
packages/db/dist/esm/query/query-once.js 359 B
packages/db/dist/esm/query/runtime-reference-identity.js 630 B
packages/db/dist/esm/query/subset-dedupe.js 493 B
packages/db/dist/esm/scheduler.js 1.23 kB
packages/db/dist/esm/SortedMap.js 1.6 kB
packages/db/dist/esm/strategies/debounceStrategy.js 658 B
packages/db/dist/esm/strategies/queueStrategy.js 523 B
packages/db/dist/esm/strategies/serial-pacer.js 486 B
packages/db/dist/esm/strategies/throttleStrategy.js 738 B
packages/db/dist/esm/sync-persistence.js 626 B
packages/db/dist/esm/sync-receipt.js 211 B
packages/db/dist/esm/transaction-commit-work.js 351 B
packages/db/dist/esm/utils.js 1.67 kB
packages/db/dist/esm/utils/array-utils.js 270 B
packages/db/dist/esm/utils/browser-polyfills.js 304 B
packages/db/dist/esm/utils/btree.js 3.02 kB
packages/db/dist/esm/utils/callbacks.js 174 B
packages/db/dist/esm/utils/comparison.js 1.94 kB
packages/db/dist/esm/utils/cursor.js 753 B
packages/db/dist/esm/utils/error.js 262 B
packages/db/dist/esm/utils/get-or-create.js 155 B
packages/db/dist/esm/utils/index-optimization.js 2.58 kB
packages/db/dist/esm/utils/source-record.js 140 B
packages/db/dist/esm/utils/type-guards.js 230 B
packages/db/dist/esm/utils/uuid.js 530 B
packages/react-db/dist/esm/DbProvider.js 317 B
packages/react-db/dist/esm/development.js 190 B
packages/react-db/dist/esm/HydrationBoundary.js 263 B
packages/react-db/dist/esm/index.js 330 B
packages/react-db/dist/esm/live-query-internals.js 282 B
packages/react-db/dist/esm/source-id-bindings.js 746 B
packages/react-db/dist/esm/useLiveQueryEffect.js 504 B
packages/react-db/dist/esm/usePacedMutations.js 429 B

compressed-size-action::db-and-react-package-size

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Incremental update benchmark

Comparing ff612df4 (this PR) against 7d608188 (base). Write times are per-write medians over 100 iterations (20 warmup writes). Cold hydrate is one timed first load of each query.

Overall median write time vs base: 1.03× · cold hydrate time: 1.03× (geometric mean of per-case ratios; lower is faster).

Writes: 0 regression(s), 1 improvement(s) (threshold: ±20% and >0.05ms).

Cold hydrate: 1 regression(s), 1 improvement(s) (threshold: ±50% and >5ms).

Per-case flags are noisy on shared runners. Read the geometric means first.

Writes

Query Δ median write time (geomean) Best case Worst case Flags
list: newest 50 open +3.5% -6.2% +36.1% —
list + author +6.2% -3.1% +28.9% —
list + comment count +1.5% -12.6% +9.5% —
list + 3 recent comments +2.7% -6.6% +23.2% —
issue detail + comments +1.1% -34.4% +13.1% 1 🟢

Cold hydrate

Query Δ cold hydrate time (geomean) Best case Worst case Flags
list: newest 50 open +1.8% -40.0% +63.3% —
list + author +12.8% -9.7% +179.0% —
list + comment count -5.3% -67.9% +101.2% 1 🔴 1 🟢
list + 3 recent comments -0.5% -49.3% +24.1% —
issue detail + comments +9.6% -17.1% +84.3% —

Each row aggregates the 14.4 scale/index/write-mode configurations of that query; per-configuration tables below.

100 rows/collection | source indexes: none | synced writes — geomean 1.00×, cold 0.89×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.208ms 0.213ms +2.2% 0.331ms 0.369ms +11.3% 13.802ms 13.239ms -4.1%
list: newest 50 open 0.536ms 0.517ms -3.5% 0.840ms 0.915ms +8.9% 5.710ms 3.426ms -40.0%
list + author 0.209ms 0.202ms -3.1% 0.327ms 0.354ms +8.4% 9.062ms 9.736ms +7.4%
list + comment count 0.340ms 0.352ms +3.3% 0.532ms 0.552ms +3.7% 13.236ms 12.499ms -5.6%
list + 3 recent comments 0.236ms 0.231ms -2.4% 0.381ms 0.381ms -0.1% 12.313ms 11.205ms -9.0%
issue detail + comments 0.160ms 0.163ms +1.9% 0.270ms 0.235ms -12.7% 1.926ms 1.809ms -6.1%
100 rows/collection | source indexes: none | optimistic writes — geomean 1.05×, cold 1.08×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.140ms 0.144ms +2.4% 0.226ms 0.224ms -1.0% 2.591ms 2.223ms -14.2%
list: newest 50 open 0.096ms 0.097ms +1.6% 0.168ms 0.182ms +8.2% 2.174ms 2.361ms +8.6%
list + author 0.156ms 0.171ms +9.9% 0.256ms 0.286ms +11.8% 3.322ms 4.068ms +22.5%
list + comment count 0.239ms 0.238ms -0.4% 0.387ms 0.418ms +7.8% 4.754ms 4.447ms -6.5%
list + 3 recent comments 0.132ms 0.138ms +4.8% 0.258ms 0.249ms -3.4% 7.335ms 9.102ms +24.1%
issue detail + comments 0.161ms 0.179ms +11.2% 0.252ms 0.272ms +8.2% 1.002ms 1.211ms +20.8%
100 rows/collection | source indexes: manual | synced writes — geomean 1.04×, cold 1.04×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.116ms 0.109ms -6.2% 0.231ms 0.211ms -8.7% 3.231ms 3.361ms +4.0%
list: newest 50 open 0.463ms 0.479ms +3.5% 0.694ms 0.791ms +14.0% 1.326ms 1.374ms +3.6%
list + author 0.128ms 0.165ms +28.9% 0.250ms 0.266ms +6.1% 2.756ms 2.723ms -1.2%
list + comment count 0.259ms 0.239ms -7.8% 0.502ms 0.437ms -13.1% 3.413ms 3.411ms -0.1%
list + 3 recent comments 0.167ms 0.171ms +2.2% 0.291ms 0.298ms +2.3% 4.288ms 4.652ms +8.5%
issue detail + comments 0.118ms 0.128ms +8.7% 0.201ms 0.212ms +5.7% 0.560ms 0.604ms +7.9%
100 rows/collection | source indexes: manual | optimistic writes — geomean 1.03×, cold 0.95×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.107ms 0.109ms +1.8% 0.199ms 0.186ms -6.9% 1.553ms 1.652ms +6.4%
list: newest 50 open 0.085ms 0.088ms +3.7% 0.115ms 0.140ms +21.8% 1.318ms 1.007ms -23.6%
list + author 0.141ms 0.138ms -2.1% 0.239ms 0.220ms -7.8% 3.712ms 3.964ms +6.8%
list + comment count 0.204ms 0.224ms +9.5% 0.353ms 0.348ms -1.5% 4.309ms 3.800ms -11.8%
list + 3 recent comments 0.124ms 0.126ms +1.3% 0.186ms 0.193ms +3.9% 5.694ms 5.594ms -1.8%
issue detail + comments 0.107ms 0.109ms +1.9% 0.155ms 0.145ms -6.8% 0.615ms 0.593ms -3.6%
1,000 rows/collection | source indexes: none | synced writes — geomean 0.90×, cold 1.16×, 2 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.133ms 0.128ms -3.4% 0.195ms 0.182ms -6.7% 12.285ms 12.000ms -2.3%
list: newest 50 open 1.110ms 1.121ms +1.1% 1.760ms 1.749ms -0.6% 6.517ms 6.676ms +2.4%
list + author 0.108ms 0.107ms -0.9% 0.142ms 0.152ms +7.0% 19.506ms 19.454ms -0.3%
list + comment count 0.237ms 0.207ms -12.6% 0.511ms 0.284ms -44.4% 11.721ms 23.583ms +101.2% 🔴
list + 3 recent comments 0.303ms 0.283ms -6.6% 0.352ms 0.352ms +0.2% 12.307ms 14.519ms +18.0%
issue detail + comments 0.162ms 0.106ms -34.4% 0.207ms 0.154ms -25.5% 🟢 1.624ms 1.676ms +3.2%
1,000 rows/collection | source indexes: none | optimistic writes — geomean 1.09×, cold 0.93×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.105ms 0.143ms +36.1% 0.186ms 0.239ms +28.6% 6.495ms 6.098ms -6.1%
list: newest 50 open 0.097ms 0.096ms -0.2% 0.180ms 0.177ms -1.4% 8.757ms 8.763ms +0.1%
list + author 0.127ms 0.138ms +8.9% 0.220ms 0.234ms +6.4% 22.227ms 20.067ms -9.7%
list + comment count 0.170ms 0.174ms +2.3% 0.270ms 0.220ms -18.6% 9.151ms 8.433ms -7.9%
list + 3 recent comments 0.107ms 0.113ms +4.7% 0.134ms 0.181ms +34.9% 9.879ms 10.178ms +3.0%
issue detail + comments 0.097ms 0.101ms +3.9% 0.125ms 0.128ms +2.6% 1.524ms 1.263ms -17.1%
1,000 rows/collection | source indexes: manual | synced writes — geomean 1.04×, cold 1.34×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.077ms 0.080ms +3.1% 0.100ms 0.101ms +0.7% 0.980ms 1.078ms +10.0%
list: newest 50 open 0.317ms 0.319ms +0.9% 0.570ms 0.574ms +0.7% 0.913ms 1.491ms +63.3%
list + author 0.108ms 0.107ms -0.8% 0.153ms 0.189ms +23.7% 1.830ms 5.106ms +179.0%
list + comment count 0.198ms 0.206ms +3.8% 0.337ms 0.250ms -25.9% 2.555ms 2.578ms +0.9%
list + 3 recent comments 0.136ms 0.144ms +6.1% 0.165ms 0.255ms +54.3% 5.407ms 5.894ms +9.0%
issue detail + comments 0.098ms 0.111ms +13.1% 0.124ms 0.195ms +57.6% 0.413ms 0.441ms +6.8%
1,000 rows/collection | source indexes: manual | optimistic writes — geomean 1.04×, cold 0.86×, 1 change(s)
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.088ms 0.096ms +9.0% 0.122ms 0.135ms +10.6% 0.802ms 0.820ms +2.3%
list: newest 50 open 0.073ms 0.077ms +6.3% 0.111ms 0.130ms +17.4% 0.877ms 1.034ms +17.8%
list + author 0.118ms 0.123ms +3.6% 0.160ms 0.161ms +0.4% 2.135ms 2.003ms -6.2%
list + comment count 0.170ms 0.180ms +5.8% 0.218ms 0.215ms -1.5% 7.519ms 2.415ms -67.9% 🟢
list + 3 recent comments 0.115ms 0.117ms +1.3% 0.165ms 0.147ms -10.7% 3.887ms 3.845ms -1.1%
issue detail + comments 0.106ms 0.102ms -4.4% 0.189ms 0.133ms -29.6% 0.370ms 0.413ms +11.6%
10,000 rows/collection | source indexes: none | synced writes — geomean 1.07×, cold 1.07×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.074ms 0.079ms +5.7% 0.099ms 0.132ms +33.5% 74.119ms 62.848ms -15.2%
list: newest 50 open 10.639ms 10.802ms +1.5% 11.501ms 11.689ms +1.6% 67.863ms 66.221ms -2.4%
list + author 0.104ms 0.134ms +28.6% 0.145ms 0.213ms +47.2% 214.151ms 205.317ms -4.1%
list + comment count 0.191ms 0.202ms +5.6% 0.340ms 0.346ms +1.7% 97.346ms 102.738ms +5.5%
list + 3 recent comments 0.127ms 0.127ms -0.2% 0.233ms 0.233ms +0.1% 83.140ms 81.062ms -2.5%
issue detail + comments 0.095ms 0.097ms +2.8% 0.129ms 0.175ms +36.3% 5.300ms 9.767ms +84.3%
10,000 rows/collection | source indexes: none | optimistic writes — geomean 1.04×, cold 1.00×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.095ms 0.099ms +3.6% 0.173ms 0.174ms +0.5% 63.424ms 67.317ms +6.1%
list: newest 50 open 0.060ms 0.063ms +5.7% 0.095ms 0.082ms -13.5% 64.141ms 57.008ms -11.1%
list + author 0.118ms 0.125ms +6.2% 0.145ms 0.202ms +39.3% 197.131ms 200.501ms +1.7%
list + comment count 0.197ms 0.207ms +5.2% 0.238ms 0.319ms +34.2% 70.228ms 72.493ms +3.2%
list + 3 recent comments 0.110ms 0.112ms +2.1% 0.135ms 0.146ms +8.1% 73.045ms 77.293ms +5.8%
issue detail + comments 0.102ms 0.102ms +0.4% 0.143ms 0.138ms -3.3% 5.505ms 5.351ms -2.8%
10,000 rows/collection | source indexes: manual | synced writes — geomean 1.01×, cold 1.14×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.098ms 0.094ms -4.5% 0.186ms 0.181ms -2.8% 2.404ms 2.699ms +12.3%
list: newest 50 open 0.953ms 0.971ms +2.0% 1.465ms 1.534ms +4.7% 1.662ms 1.745ms +5.0%
list + author 0.104ms 0.103ms -0.3% 0.177ms 0.142ms -19.4% 2.628ms 3.568ms +35.8%
list + comment count 0.221ms 0.222ms +0.3% 0.283ms 0.276ms -2.4% 3.939ms 4.036ms +2.5%
list + 3 recent comments 0.146ms 0.144ms -1.1% 0.235ms 0.187ms -20.4% 4.723ms 5.368ms +13.6%
issue detail + comments 0.106ms 0.117ms +10.1% 0.138ms 0.197ms +42.9% 0.570ms 0.655ms +15.1%
10,000 rows/collection | source indexes: manual | optimistic writes — geomean 1.09×, cold 1.01×
Query Base median PR median Δ median Base p95 PR p95 Δ p95 Base cold PR cold Δ cold
list: newest 50 open 0.096ms 0.104ms +8.3% 0.134ms 0.208ms +54.6% 1.664ms 2.627ms +57.9%
list: newest 50 open 0.075ms 0.082ms +9.3% 0.108ms 0.139ms +29.1% 1.510ms 1.656ms +9.6%
list + author 0.120ms 0.122ms +1.4% 0.147ms 0.154ms +5.2% 3.353ms 3.298ms -1.6%
list + comment count 0.238ms 0.252ms +5.7% 0.403ms 0.380ms -5.8% 3.431ms 3.398ms -1.0%
list + 3 recent comments 0.134ms 0.165ms +23.2% 0.166ms 0.300ms +80.8% 8.918ms 4.521ms -49.3%
issue detail + comments 0.113ms 0.123ms +8.8% 0.141ms 0.169ms +19.9% 0.550ms 0.670ms +21.7%

Runner: node v24.8.0, linux 6.17.0-1022-azure, AMD EPYC 7763 64-Core Processor. Timings on shared CI runners are noisy; treat small deltas as indicative only.

@pkg-pr-new

pkg-pr-new Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
More templates

@tanstack/angular-db

npm i https://pkg.pr.new/@tanstack/angular-db@2171

@tanstack/browser-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/browser-db-sqlite-persistence@2171

@tanstack/capacitor-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/capacitor-db-sqlite-persistence@2171

@tanstack/cloudflare-durable-objects-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/cloudflare-durable-objects-db-sqlite-persistence@2171

@tanstack/db

npm i https://pkg.pr.new/@tanstack/db@2171

@tanstack/db-ivm

npm i https://pkg.pr.new/@tanstack/db-ivm@2171

@tanstack/db-sqlite-persistence-core

npm i https://pkg.pr.new/@tanstack/db-sqlite-persistence-core@2171

@tanstack/electric-db-collection

npm i https://pkg.pr.new/@tanstack/electric-db-collection@2171

@tanstack/electron-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/electron-db-sqlite-persistence@2171

@tanstack/expo-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/expo-db-sqlite-persistence@2171

@tanstack/node-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/node-db-sqlite-persistence@2171

@tanstack/offline-transactions

npm i https://pkg.pr.new/@tanstack/offline-transactions@2171

@tanstack/powersync-db-collection

npm i https://pkg.pr.new/@tanstack/powersync-db-collection@2171

@tanstack/query-db-collection

npm i https://pkg.pr.new/@tanstack/query-db-collection@2171

@tanstack/react-db

npm i https://pkg.pr.new/@tanstack/react-db@2171

@tanstack/react-native-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/react-native-db-sqlite-persistence@2171

@tanstack/react-router-with-db

npm i https://pkg.pr.new/@tanstack/react-router-with-db@2171

@tanstack/rxdb-db-collection

npm i https://pkg.pr.new/@tanstack/rxdb-db-collection@2171

@tanstack/solid-db

npm i https://pkg.pr.new/@tanstack/solid-db@2171

@tanstack/svelte-db

npm i https://pkg.pr.new/@tanstack/svelte-db@2171

@tanstack/tauri-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/tauri-db-sqlite-persistence@2171

@tanstack/trailbase-db-collection

npm i https://pkg.pr.new/@tanstack/trailbase-db-collection@2171

@tanstack/vue-db

npm i https://pkg.pr.new/@tanstack/vue-db@2171

commit: fa5a48a

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove deprecated features for the first RC

1 participant