Skip to content

fix(deps): update sanity packages - #1864

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/sanity-packages
Open

fix(deps): update sanity packages#1864
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/sanity-packages

Conversation

@renovate

@renovate renovate Bot commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@portabletext/react 8.0.08.0.1 age confidence
@sanity/assist (source) 6.1.196.1.21 age confidence
@sanity/client (source) 8.0.08.2.0 age confidence
@sanity/code-input (source) 7.3.57.3.7 age confidence
@sanity/preview-url-secret (source) 4.1.44.1.5 age confidence
@sanity/table (source) 3.1.143.1.16 age confidence
@sanity/vision (source) 6.9.26.10.1 age confidence
@sanity/visual-editing (source) 6.0.46.1.1 age confidence
groq (source) 6.9.26.10.1 age confidence
sanity (source) 6.9.26.10.1 age confidence

Release Notes

portabletext/react-portabletext (@​portabletext/react)

v8.0.1

Compare Source

Patch Changes
sanity-io/plugins (@​sanity/assist)

v6.1.21

Compare Source

Patch Changes
  • #​1928 3195e01 Thanks @​stipsan! - Compile React Compiler memoization with the native oxc transform (reactCompiler: {transform: 'oxc'} from @sanity/tsdown-config 0.26, backed by oxc-transform-react) instead of babel-plugin-react-compiler

v6.1.20

Compare Source

Patch Changes
sanity-io/client (@​sanity/client)

v8.2.0

Compare Source

Minor Changes
  • add collaboration comments client (@alpha) (#​1235) (5906f72)

  • add variant actions (#​1279) (dd25720)

    Adds CreateVariantAction, EditVariantAction, DeleteVariantAction, PublishVariantAction and
    UnpublishVariantAction, along with a VariantAction union, covering the
    sanity.action.document.variant.* actions. They are included in the Action union, so
    client.action() accepts them.

    Each action addresses a variant document by the publishedId, variantId and bundleId triple
    rather than by document ID, since the API derives the document ID from those three values.

    Note that Action widening is a breaking change for code that exhaustively switches on
    Action['actionType'] with a never fallthrough, which will need to handle the new cases.

v8.1.0

Compare Source

Minor Changes
  • add client.functions.invoke() for calling deployed functions on demand (#​1258) (4c2f718)

    Invoke a Sanity Pubsub Function by the name. Only sanity.function.pubsub functions can be
    invoked on demand.

    Available in two forms, client.functions.invoke() resolves with the function's return value, client.observable.functions.invoke() emits it and accepts an event.data payload,
    a per-call timeout and an AbortSignal.

    Names are only unique within a stack, so resolving one requires a stackId, either from the new
    stackId client config option or from the request. That resolution costs one extra request per
    call. A function that returns nothing resolves to undefined.

    Stacks deployed at organization scope are reached with the new organizationId client config
    option, or a per-call organizationId. It takes precedence over projectId, which becomes
    optional in that case.

  • add request handler for client integrations (#​1286) (a9db52f)

  • add variant definition actions (#​1278) (7c98361)

    Adds CreateVariantDefinitionAction, EditVariantDefinitionAction and
    DeleteVariantDefinitionAction, along with a VariantDefinitionAction union, covering the
    sanity.action.variant.definition.* actions. They are included in the Action union, so
    client.action() accepts them.

    Note that Action widening is a breaking change for code that exhaustively switches on
    Action['actionType'] with a never fallthrough, which will need to handle the new cases.

Patch Changes
  • route the live-events CORS probe through the configured transport (#​1282) (aaada67)

    The /check/cors probe that client.live.events() uses to distinguish a CORS
    rejection from other connection failures called the global fetch directly, so
    a custom resolveFetch or an explicit proxy was not applied to it. It now
    resolves the same fetch the EventSource connection uses.

  • reword the createVersion() warning about baseId (#​1282) (aaada67)

    createVersion({document}) warned that "the recommended approach is to provide a baseId and releaseId instead", which reads as a correction even when the caller had no other option: baseId creates a version of a document that already exists, so creating a genuinely new document inside a release can only be done by passing document.

    The client cannot tell those two cases apart, so the warning is now phrased as a condition rather than a correction: "If you are creating a version of a document that already exists, prefer providing baseId and releaseId instead." No behavior changed, and both forms remain supported.

  • correct the return type of delete() and mutate() when called with no options (#​1282) (aaada67)

    client.delete(id) and client.mutate(mutations) were typed to resolve to a
    document (SanityDocument<R>) when called without an options argument, but
    they actually resolve to a mutation result object
    ({transactionId, documentIds, results}, MultipleMutationResult). The
    document is genuinely mutated, but code that read ._id off the resolved
    value was reading undefined at runtime without any type error. The
    underlying method (create()) does return the document by default, so this
    was easy to assume also held for delete() and mutate() - it does not.

    Both methods now correctly type as resolving to MultipleMutationResult by
    default, matching the (unchanged) runtime behavior, on both the
    promise-based and observable clients.

    Released as a patch rather than a major even though a declared type changed. Code that read ._id off the result was reading undefined at runtime, so no working application can have depended on the old type: anything that type-checked against it was already broken when it ran. What changes is that the mistake is now visible at compile time instead of at runtime.

    If tsc starts failing on one of these calls, that failure is pointing at a real bug. To fix it:

    • To get the document back, pass {returnFirst: true, returnDocuments: true}
      explicitly: await client.delete(id, {returnFirst: true, returnDocuments: true}).
    • To keep the mutation-result shape, read documentIds (or documentId with
      returnFirst: true) off the result instead of _id.

    No runtime behavior changed - this only corrects the public types.

  • populate server-sent event IDs on Cloudflare Workers (#​1282) (aaada67)

    client.live.events() and client.listen() read lastEventId off the
    MessageEvent that eventsource constructs. workerd does not carry that member
    through the MessageEvent constructor's init dict, so on bare Cloudflare Workers
    every event arrived with an empty id. Raising the eventsource floor to
    >= 5.1.0 picks up the fix.

  • return the asset from assets.upload() against a Media Library (#​1282) (aaada67)

    client.assets.upload() resolved to undefined when the client was configured against a Media Library (resource: {type: 'media-library', id}), even though the upload succeeded server-side. Content Lake's upload endpoint responds with {document: {...}}, and upload() unwrapped that key unconditionally - but the Media Library upload endpoint responds with {asset: {...}} instead, so the unwrap produced undefined.

    upload() now unwraps .asset for a Media Library response and .document otherwise, on both the promise-based and observable clients. It resolves to the uploaded asset instead of undefined.

    The Media Library asset shape is not the same as a Content Lake asset document: it is a sanity.asset document that tracks one or more uploaded versions via currentVersion/versions, rather than a document with url, size, mimeType, and so on. That shape is now exported as MediaLibraryAssetDocument.

    The declared return type is knowingly incomplete, and this is a patch on purpose. Which shape you get back depends on how the client is configured, not on the arguments to upload(), so no overload can discriminate it. Expressing it would mean widening the return type into a union that every existing caller has to narrow - a breaking change for all users, to correct the typing of a much less common configuration. So the declared type still describes only the Content Lake shape. If you upload to a Media Library, narrow the result yourself (for example, check for currentVersion) or annotate it as SanityImageAssetDocument | MediaLibraryAssetDocument. Typing this accurately is deferred to the next major.

sanity-io/plugins (@​sanity/code-input)

v7.3.7

Compare Source

Patch Changes
  • #​1928 3195e01 Thanks @​stipsan! - Compile React Compiler memoization with the native oxc transform (reactCompiler: {transform: 'oxc'} from @sanity/tsdown-config 0.26, backed by oxc-transform-react) instead of babel-plugin-react-compiler

v7.3.6

Compare Source

Patch Changes
sanity-io/visual-editing (@​sanity/preview-url-secret)

v4.1.5

Compare Source

Patch Changes
sanity-io/plugins (@​sanity/table)

v3.1.16

Compare Source

Patch Changes
  • #​1928 3195e01 Thanks @​stipsan! - Compile React Compiler memoization with the native oxc transform (reactCompiler: {transform: 'oxc'} from @sanity/tsdown-config 0.26, backed by oxc-transform-react) instead of babel-plugin-react-compiler

v3.1.15

Compare Source

Patch Changes
sanity-io/sanity (@​sanity/vision)

v6.10.1

Compare Source

Bug Fixes
  • build: bake correct package version into cdn module bundles (#​14155) (3e5a82e)

v6.10.0

Compare Source

Features
Bug Fixes
sanity-io/visual-editing (@​sanity/visual-editing)

v6.1.1

Compare Source

Patch Changes

v6.1.0

Compare Source

Minor Changes
  • #​3620 8748e20 Thanks @​rexxars! - feat: accept any @sanity/client version in the loaders via SanityClientLike

    Options that took a client used to be typed as SanityClient | SanityStegaClient. SanityClient
    declares a #private field, which makes it nominal rather than structural, so a client only
    satisfied it when it came from the exact same copy of @sanity/client. Passing a client from a
    different major failed to typecheck, and so did a duplicate install of the same version:

    Type 'SanityClient' is not assignable to type 'SanityClient | SanityStegaClient'.
      Property '#private' in type 'SanityClient' refers to a different member that cannot be
      accessed from within type 'SanityClient'.
    

    These options now take SanityClientLike, a structural interface covering only what the loaders
    use: config(), withConfig() and fetch(). Any client satisfies it, from any version, including
    the ones from @sanity/client/stega, @sanity/preview-kit/client and next-sanity.

    This affects createQueryStore({client}), setServerClient(), enableLiveMode({client}),
    useLiveMode({client}), handlePreview({client}) and handleLoadQuery({client}). All of them
    accept strictly more than before, so no changes are needed.

    For SvelteKit, event.locals.client still gives you the full SanityClient API. If your app
    resolves a different copy of @sanity/client than these packages do, name your own client type in
    app.d.ts to avoid a mismatch:

    import type { SanityClient } from "@sanity/client";
    import type { LoaderLocals } from "@sanity/svelte-loader";
    
    declare global {
      namespace App {
        interface Locals extends LoaderLocals<SanityClient> {}
      }
    }

    The one narrowing is unstable__serverClient.instance, which is now SanityClientLike. It is
    marked @internal and prefixed unstable__.

Patch Changes
sanity-io/sanity (groq)

v6.10.1

Compare Source

Sanity Studio v6.10.1

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit:
www.sanity.io/changelog/studio-Ni4xMC4w

Install or upgrade Sanity Studio

To upgrade to this version, run:

npm install sanity@latest

To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.

📓 Full changelog

Author Message Commit
@​stipsan fix(build): bake correct package version into cdn module bundles (#​14155) 3e5a82e
@​stipsan chore(deps): revert client v8 upgrade for hotfix release (#​14153) fdb7c52
@​stipsan fix(core): classify client v8 timeout errors in the request-error channel (#​14146) dc5e4c0
squiggler-app[bot] chore(deps): dedupe pnpm-lock.yaml (#​14130) 8b8eaf9
@​pedrobonamin fix(core): duplicate variant documents into the same variant (#​14041) a29e7a7
@​rexxars chore(deps): upgrade @sanity/client to v8 (#​14092) 37bdbaa

v6.10.0

Compare Source

Sanity Studio v6.10.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit:
www.sanity.io/changelog/studio-Ni45LjI

Install or upgrade Sanity Studio

To upgrade to this version, run:

npm install sanity@latest

To initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.

📓 Full changelog
Author Message Commit
@​stipsan chore(deps): remove unused @​tanstack/react-table dependency (#​14121) 6f143b4
squiggler-app[bot] chore(deps): dedupe pnpm-lock.yaml (#​14122) 08e96ff
@​christianhg chore: ignore and remove committed browser-test failure screenshots (#​14038) 62e62db
squiggler-app[bot] fix(deps): update portabletext (#​14080) 9079e9a
squiggler-app[bot] chore(deps): dedupe pnpm-lock.yaml (#​14064) 2c1d713
@​christianhg fix(core): open the added annotation via markDefPaths instead of the deprecated markDefPath (#​14048) 44d3ee2
squiggler-app[bot] fix(deps): update dependency @​portabletext/react to v8 (#​14082) 14c460a
@​bjoerge chore(bench): avoid self-test failing on inconclusive + syntheticLarge (#​14085) dcb12a5
squiggler-app[bot] chore(deps): update dependency @​sanity/workbench to v0.1.0-alpha.42 (#​14120) ae5001d
@​bjoerge fix(core): increase spacing between troubleshooting tips (#​14099) a2d57e6
squiggler-app[bot] chore(deps): update dependency @​testing-library/user-event to ^14.6.4 (#​14111) ac3d154
squiggler-app[bot] chore(tests): generate dts tests 🤖 ✨ (#​14118) f6d25a2
squiggler-app[bot] fix(deps): update portabletext to v6 (#​14084) 1012cce
squiggler-app[bot] chore(deps): update dependency web-vitals to ^6.1.1 (#​14112) e8fdbfa
squiggler-app[bot] chore(deps): update dependency @​sanity/workbench to v0.1.0-alpha.41 (#​14097) 2330f13
@​pedrobonamin feat(vision): pass navbar variant with pinned release queries (#​14063) ee6ebee
squiggler-app[bot] fix(deps): update dependency @​sanity/cli to ^8.0.2 (#​14113) 9a3f73a
@​jordanl17 feat(test-studio): add sso login option for sandbox org (#​14089) dbd7e76
squiggler-app[bot] chore(deps): update renovatebot/github-action action to v46.2.2 (#​14076) 6f1e8c0
squiggler-app[bot] chore(deps): update dependency @​sanity/functions to v1.6.8 (#​14067) 72338f9
@​stipsan chore(sanity): add opt-in markdown bundle analyzer (#​14106) 31ae4a5
@​stipsan test(storybook): co-locate visual regression stories (#​14104) 3729ae4
@​stipsan chore(deps): bump styled-components to 6.5.3 (#​14103) 7d2ea95
squiggler-app[bot] chore(deps): update dependency @​sanity/vanilla-extract-vite-plugin to ^0.2.13 (#​14096) 4ea5888
@​christianhg fix(core): declare the Style and ListItem prop shapes locally (#​14049) e032325
squiggler-app[bot] chore(deps): update dependency chromatic to ^18.2.0 (#​14081) 2a12d2f
squiggler-app[bot] fix(deps): update dependency @​sanity/preview-url-secret to ^4.1.4 (#​14077) cf51cf9
squiggler-app[bot] chore(deps): update dependency swr to ^2.5.1 (#​14075) a4e6056
squiggler-app[bot] chore(deps): update dependency sanity-plugin-internationalized-array to ^5.1.27 (#​14073) 093ac7f
squiggler-app[bot] chore(deps): update dependency esbuild to v0.28.2 (#​14071) 8403750
squiggler-app[bot] chore(deps): update dependency eventsource-parser to ^3.1.1 (#​14072) c9b486e
squiggler-app[bot] chore(deps): update dependency @​sanity/visual-editing-csm to ^3.0.15 (#​14070) aa52529
squiggler-app[bot] chore(deps): update dependency @​sanity/sdk-react to ^2.19.0 (#​14069) 4b18a10
squiggler-app[bot] chore(deps): update dependency @​sanity/blueprints to ^0.23.6 (#​14066) 2da388a
squiggler-app[bot] chore(tests): generate dts tests 🤖 ✨ (#​14094) d6fb375
@​bjoerge fix(core): link status.sanity.io in network troubleshooting tips (#​14095) 8ee1ed0
@​pedrobonamin refactor(releases): route version discard through document operations (#​14058) 94ce4b8
@​pedrobonamin refactor(structure): remove obsolete selectedVariantDisplay chip (#​13932) 9f542af
squiggler-app[bot] fix(deps): update dependency @​sanity/cli to v8 (#​14083) 68297d0
@​shapirodaniel fix(studio): replace robot token sign out with claim action (#​14044) bbe74b5
squiggler-app[bot] fix(deps): update dev-non-major (#​14078) bb95b55
@​laurenashpole chore: migrate box in components directories in core/studio (#​14019) 8341627
@​laurenashpole chore: migrate box in misc directories in core/studio (#​14018) b03ff17
squiggler-app[bot] chore(deps): update dependency @​sanity/google-maps-input to ^6.1.11 (#​14068) 3999125
squiggler-app[bot] chore(deps): update dependency @​sanity/ui to ^4.0.3 (#​14065) 999f834
squiggler-app[bot] chore(deps): update dependency @​sanity/tsdown-config to ^0.24.1 (#​14047) d53048e
@​pedrobonamin fix(variants): report ALREADY_UNPUBLISHED for release-scoped variants (#​14012) 0b6b972
@​bjoerge ci(bench): build packages in the self-test job (#​14061) fe71d2e
squiggler-app[bot] chore(deps): dedupe pnpm-lock.yaml (#​14046) d1a4c99
@​EoinFalconer chore: untrack the lefthook-generated husky hook (#​14060) 1524806
@​pedrobonamin test(e2e): make navbar search spec resilient to search index lag (#​14043) 8c88091
@​shapirodaniel fix(core): redirect to login after project claim (#​14042) 4666d4e
@​bjoerge fix(bench): borrow head harness install for worktree builds (#​14040) c1eaa37
@​pedrobonamin refactor(releases): route version unpublish through document operations (#​14001) 708f04d
@​pedrobonamin fix(structure): show published badge for live edit documents (#​14029) f859eb2
@​jordanl17 fix(vision): stop swallowing paste events outside vision (#​14016) 75de447
@​stipsan fix(presentation): replace path-to-regexp with urlpattern for main document routes (#​14028) 7147d04
@​pedrobonamin fix(structure): keep manage versions when document has no actions (#​14031) 66e492c
squiggler-app[bot] fix(deps): update dependency motion to ^13.1.0 (#​13981) 67ac5e9
@​jordanl17 ci(release): reconcile in-flight release checks on a schedule (#​13927) 481d12f
@​laurenashpole chore: migrate box in core tasks (#​14015) e63212d
@​laurenashpole chore: migrate box in core field (#​13996) 4a671a6
@​christianhg refactor(core): render the comment input through editor node registrations (#​14034) da6f0f0
@​bjoerge fix: prevent layout shift when switching field groups in dialog (#​14039) 4eeeb55
@​bjoerge fix(core): record a resolva

Note

PR body was truncated to here.


Configuration

📅 Schedule: (in timezone Europe/Oslo)

  • Branch creation
    • "before 6am on Saturday"
  • 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 if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate using a preset from Obos. View repository job log here

@renovate
renovate Bot requested a review from a team as a code owner August 22, 2026 03:41
@changeset-bot

changeset-bot Bot commented Aug 22, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 9529dfa

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

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

@renovate
renovate Bot force-pushed the renovate/sanity-packages branch 4 times, most recently from 05211ea to d5fa6b1 Compare August 25, 2026 16:08
@renovate
renovate Bot force-pushed the renovate/sanity-packages branch from d5fa6b1 to 9529dfa Compare August 26, 2026 11:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants