Releases: sanity-io/sanity
v3.57.4
✨ Highlights
Performance improvements for large documents
This release introduces significant performance improvements for form state computation in Sanity Studio, especially for complex documents:
- Up to 10x performance improvement for documents with multiple large objects in arrays
- Noticeable improvements for documents with large Portable Text fields
- Memoization for form state computation
🐛 Notable bugfixes
- The
_createdAt
document property will now always be set to the time when the document in question was first created in its initial draft state rather than the time of publishing, as intended. - In the Portable Text Editor, annotations can now be added across existing annotations and decorators without accidentally expanding or removing those.
- In the Portable Text Editor, a collapsed selection can now toggle off an entire annotation.
- A performance regression introduced in
3.52.3
, affecting large Portable Text documents, has now been fixed. - Toggling decorators in selections spanning empty lines in the Portable Text Editor now works more predictably.
- Lists created in the Portable Text Editor should now reset sublist indices under different parent list items (thank you, @phattran2905!).
- When focused, the Portable Text Editor now automatically adds empty
markDefs
arrays to blocks if missing. - Array inputs now forward the received
onItemPrepend
andonItemAppend
hooks to the insert button/array functions component.
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Cody Olsen | chore(deps): bump typescript to 5.6.2 (#7494) |
caec753 |
Ash | fix(sanity): prevent empty patches being created (#7499) | 99f1bb6 |
renovate[bot] | chore(deps): update typescript-tooling (#7504) | 9a646d8 |
Phat Tran | fix(core): correctly reset PTE list counts after non-numbered lists and in sublists (#7506) | 4918a9e |
renovate[bot] | chore(deps): update dependency turbo to ^2.1.2 (#7507) | 618d95c |
renovate[bot] | chore(deps): update pnpm to v9.10.0 (#7509) | cf55d9d |
renovate[bot] | chore(deps): update linters (#7508) | 453c4a4 |
renovate[bot] | fix(deps): Update dev-non-major (#7510) | fe75e37 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.1.0 (#7501) | a6e0389 |
Jordan Lawrence | fix(core): drafts not using server actions always generate a created at (#7503) | 728311e |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.1.1 (#7514) | daf4ffa |
Simeon Griggs | fix: add padding above the "Push to reload" button instead of below (#7464) | 1a33125 |
Bjørge Næss | fix: forward received onItemPrepend/onItemAppend to ArrayFunctions (#7516) | 4a50023 |
Rico Kahler | perf(core): memoize prepareFormState (#7498) |
3bf7096 |
v3.57.3
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
✨ Highlights
Auto-updates enabled by default
Newly initialized studios now have auto-updates enabled by default.
This feature keeps your deployed studio up to date with the latest versions of Sanity while maintaining full control over your code and customizations, ensuring the same great developer experience you’re accustomed to.
With auto-updates enabled, you'll only need to rebuild and redeploy when making your own changes, as new features and improvements from Sanity are delivered automatically.
Learn more at https://www.sanity.io/docs/auto-updating-studios
📓 Full changelog
Author | Message | Commit |
---|---|---|
RitaDias | docs(sanity): remove @beta tags from migrate (#7490) |
aba8072 |
renovate[bot] | fix(deps): Update dev-non-major (#7488) | fd37976 |
renovate[bot] | fix(deps): update dependency @sanity/insert-menu to v1.0.9 (#7492) | e4afd03 |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.16.5 (#7493) | f9d354f |
Carolina Gonzalez | chore: add help text for auto-updates in the studio (#7461) | 8b0eeff |
Carolina Gonzalez | feat(cli): use auto-updates flag in init (#7401) | 17c02f9 |
v3.57.2
✨ Highlights
Improved developer tooling for Next.js and Sanity
- When
sanity init
is run inside a Next.js project, an appropriate CORS origin is added to the project - When
sanity init
is run inside a Next.js project, environment variables are written to an .env.local file
🐛 Notable bugfixes
- Fixes flickering issue when navigating within presentation introduced in v3.57.0
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
renovate[bot] | chore(deps): update dependency @sanity/pkg-utils to v6.11.0 (#7441) | ef7fff8 |
RitaDias | feat(sanity): add telemetry when creating a draft (#7459) | e6b0614 |
Jordan Lawrence | refactor(core): minor type usage improvement and using task plugin name (#7453) | 23086e2 |
Ryan Bonial | fix(core): Fix Title in "Untitled was published" toast (#7473) | f44786c |
renovate[bot] | fix(deps): update dependency @sanity/client to ^6.21.3 (#7373) | 2002add |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.101 (#7382) | 3a18971 |
Jordan Lawrence | chore(core, structure): validation on references (#7431) | 112df24 |
renovate[bot] | fix(deps): update dependency @sanity/ui to ^2.8.9 (#7436) | 048068e |
renovate[bot] | chore(deps): update pnpm to v9.9.0 (#7480) | f1e2a55 |
renovate[bot] | fix(deps): Update dev-non-major (#7477) | dce41fb |
renovate[bot] | chore(deps): update dependency turbo to ^2.1.1 (#7478) | 5ef2990 |
renovate[bot] | chore(deps): update peter-evans/create-pull-request action to v7 (#7481) | b241a3d |
renovate[bot] | chore(deps): update linters (#7479) | d05a8ec |
Cody Olsen | chore: fix tsc build errors in latest @types/react (#7482) |
e2a30fe |
renovate[bot] | fix(deps): update dependency @sanity/mutate to ^0.10.0 (#7451) | ea3a79a |
Simeon Griggs | fix(cli) use Next.js specific defaults for new projects (#7465) | de03c57 |
Jordan Lawrence | Revert "chore: support for sticky params in URL and intent ops (#7429)" (#7489) | 5cb335b |
v3.57.1
🐛 Notable bugfixes
- Fixes a performance regression introduced in v3.51.0 (#7471)
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Rico Kahler | fix(core): ensure all keys are reconciled | 6393df8 |
v3.57.0
✨ Highlights
Significant rendering perf. improvements (up to x10) in dev mode
This change enables styled-components
"speedy mode" in sanity dev
, improving developer mode performance. This change impacts only development builds (sanity dev
) – production builds (sanity build
or sanity start
) remain unaffected since "speedy mode" has always been enabled in production.
Developers embedding Sanity Studio in other frameworks like Next.js or Remix need to adjust their own build tooling to declare the SC_DISABLE_SPEEDY
flag to achieve the same performance benefits. For example, Next.js users can add this snippet to their next.config.{js,mjs,ts}
file:
export default {
env: {
SC_DISABLE_SPEEDY: 'false' // makes styled-components as fast in dev mode as it is in production mode
}
}
For Safari users, while they will still be able to inspect and see CSS rules coming from styled-components
, these will now be read-only in the DevTools inspector. The performance benefits from enabling "speedy mode" in development mode are significant for Safari users and outweigh the convenience of being able to edit these rules directly in the inspector. With Hot Module Reload, developers can still quickly make changes to their source code, and the new styles will apply immediately.
Enabling "speedy mode" offers a faster development experience across the board. Developers using Safari for testing purposes can still verify the functionality of the studio, and for more detailed CSS editing, they can switch to Chrome, Firefox, or other Chromium-based browsers like Arc or Brave.
It's still possible to restore the old behaviour of disabling speedy in dev mode in userland with a custom sanity.cli.ts
override:
import {defineCliConfig} from 'sanity/cli'
import {type UserConfig} from 'vite'
export default defineCliConfig({
vite(viteConfig: UserConfig): UserConfig {
return {
...viteConfig,
define: {
...viteConfig.define,
// `sanity dev` enables speedy in both development and production, this line restores the default `styled-components` behaviour of only enabling it in production
'process.env.SC_DISABLE_SPEEDY': JSON.stringify(process.env.NODE_ENV !== 'production'),
},
}
},
})
add --max-fetch-concurrency
to prevent stalled validators
This update addresses an issue where the sanity documents validate
CLI command could time out when validating documents with complex custom validation rules. The changes include:
- Increased default maximum fetch concurrency from 10 to 25, which should resolve most timeout issues.
- Added a new CLI flag
--max-fetch-concurrency
to allow users to adjust the maximum number of concurrentclient.fetch
requests during validation. - Made the default maximum custom validation concurrency explicit and configurable.
Usage:
sanity documents validate --max-fetch-concurrency <number>
These changes should improve the performance and reliability of document validation for projects with complex custom validation rules. Users experiencing timeouts during validation should try increasing the --max-fetch-concurrency
value if issues persist with the new default.
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Rico Kahler | feat(cli): allow setting --max-fetch-concurrency to prevent stalled validators (#7450) | 85b0538 |
Jordan Lawrence | chore(core): improvements to diff component styles and presentation (#7385) | 35b6600 |
Jordan Lawrence | fix(structure): passing from operation context to label for success toast (#7437) | f4e414c |
Cody Olsen | fix: significantly speed up styled-components in dev mode (#7440) | c259119 |
Jordan Lawrence | test: improved context mocking on TestProvider (#7433) | 58863af |
Jordan Lawrence | chore(core): single addon dataset context (#7432) | 9da634e |
Jordan Lawrence | chore: improved data testing by ui and test id (#7428) | deca138 |
RitaDias | test(sanity): skip toolbar test (#7446) | 713c3f9 |
renovate[bot] | chore(lockfile): update dependency styled-components to v6.1.13 (#7443) | 7395a93 |
renovate[bot] | chore(deps): update dependency styled-components to ^6.1.13 (#7442) | c5a4207 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.19 (#7405) | 5ebff0d |
v3.56.0
✨ Highlights
Improved document sync notification
Fixes an issue where the syncing document notification would sometimes remain on the screen indefinitely, even after the document was no longer visible. The toast is now dismissible, improving the user experience when working with synchronized documents.
Copy document URL to clipboard
A new feature has been added to the document pane, allowing users to easily copy the current document's URL to their clipboard. This makes sharing documents with colleagues and collaborators more convenient.
Ending the "Array Tree Editing" beta
Thank you to everyone who participated in the "Array Tree Editing" beta. Based on your feedback, we are ending this experiment as we continue to explore better ways to navigate nested structured.
🐛 Notable bugfixes
- Optimized rendering in Presence: We’ve optimized how presence changes are handled, reducing unnecessary re-renders in the Studio. This enhancement improves overall performance when multiple users are working on the same document.
- Respect for
--no-auto-updates
flag in CLI: Fixed an issue where the CLI would not respect the--no-auto-updates
flag, ensuring that this configuration setting now behaves as expected. - Improved feedback when extracting schema: The schema extraction process now outputs the file path, providing clearer feedback and making it easier to locate the saved schema.
- Constrain size for date picker popover: Added a prop to constrain the size of the date picker popover in the
DateTimeInput
UI component, providing more control over its appearance, especially in modal contexts.
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Carolina Gonzalez | feat(cli): respect --no-auto-updates flag in CLI config (#7396) |
c83021e |
Pedro Bonamin | chore(structure): add DocumentListBuilder.filter JSdoc details (#7402) | 445384d |
Pedro Bonamin | fix(structure): make sync document toast dismisable (#7209) | dc40f6e |
Pedro Bonamin | chore(core): end "Array Tree Editing" beta (#7411) | 9894c6d |
Rune Botten | fix(core): avoid unnecessary re-renders in useDocumentPresence (#7365) | 379620e |
Simeon Griggs | output path when extracting schema (#7414) | 6fdfcac |
RitaDias | refactor(sanity): Move date inputs UI Components to ui-components (#7410) | 0d1dcd7 |
renovate[bot] | fix(deps): update dependency @sanity/icons to ^3.4.0 (#7417) | 6bd4f8c |
RitaDias | fix(sanity): add prop for constraintSize (#7421) | 17a7b1d |
Drew Lyton | feat(sanity): add always present document action to copy url to clipboard (#7416) | 7afcdb4 |
renovate[bot] | fix(deps): update dependency groq-js to ^1.13.0 (#7424) | 14530aa |
Drew Lyton | feat(sanity): Update presence menu button for inviting new collaborators (#7406) | 064519a |
v3.55.0
✨ Highlights
Request access to Studios
Users can now request access to a project they're not yet a member of, straight from the Studio's "Not authorized" screen. Project administrators will be alerted by email and can approve or deny the request from the project settings area.
TypeGen updates
Running sanity typegen
will now by default generate a query typemap which the Sanity Client can use to automatically infer the returned types of a query.
🐛 Notable bugfixes
- The TypeGen CLI command should now correctly detect and generate types defined by
defineQuery
from thenext-sanity
package. - Fixes an issue with
FormInput
causingincludeField
to not have any effect for nested paths. - Fixes an issue with the cursor sometimes moving around as you typed in the Portable Text Editor.
- Fixes an issue where references would not open if clicked inside a Field Group.
- Fixes an issue where it wasn't possible to copy a text selection inside a
text
field.
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Bjørge Næss | fix(form): fix issue where FormInput was not rendering field when passed 'includeField' (#7350) | e6185ef |
Jordan Lawrence | chore(tests): collapsing ct test report comment (#7378) | cd341d8 |
renovate[bot] | chore(deps): update dependency @sanity/pkg-utils to v6.10.10 (#7381) | 292b7d0 |
renovate[bot] | fix(deps): update dependency get-it to ^8.6.5 (#7376) | b5d7418 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.15 (#7377) | f273249 |
Bjørge Næss | refactor(preview): extract global listener, refactor preview APIs and improve typings (#7360) | 5c75a38 |
Bjørge Næss | chore: add docgen script (#7387) | e3a02c4 |
Sindre Gulseth | fix(typegen): find queries imported with defineQuery from next-sanity (#7391) | b86e3d0 |
Sindre Gulseth | feat(typegen): set overload client methods to default to true (#7390) | c11e51f |
Jordan Lawrence | test(core): updating import on helpers to using jest and not playwright (#7384) | 87316d6 |
Carolina Gonzalez | fix: do not show latest version if auto-updating (#7388) | 1872388 |
Espen Hovlandsdal | chore(types): deprecate studioHost, externalStudioHost properties (#7369) | 565eb49 |
Bjørge Næss | chore: fix wrong version format in generate documents script (#7393) | 1a2ef91 |
Fred Carlsen | fix(core): fix copy related issues (#7394) | 49083dd |
Drew Lyton | feat(sanity): request access flow (#7248) | 5ab35a5 |
v3.54.0
✨ Highlights
Copy Paste Improvements
- Adds support for copying supported object types into array fields
- Adds support for copying and pasting individual array items
Multiple deployment targets for Sanity Studio
Introduces support for adding multiple [my-company].sanity.studio
deployments for a project. Link your studio code to a specific hostname with the new studioHost
property in the CLI config as shown below, or select or create a deployment target when prompted while running sanity deploy
. You can now see all your studio deployments in the project management settings.
// ./sanity.cli.ts
import {defineCliConfig} from 'sanity/cli'
export default defineCliConfig({
api: {
projectId: 'projectid',
dataset: 'production'
},
// Tip: You can use an environment variable for studioHost if you want
// to deploy separate studios for production, staging, testing etc.
studioHost: 'my-company'
})
Read more in the Hosting and deployment article in the docs.
🐛 Notable bugfixes
- Fixes an issue where you were able to copy and paste documents that contained non-existing references
- Fixes an issue where
getValueAtPath()
utility wouldn't work for 0 index path segments(['array', 0])
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Sindre Gulseth | chore(typegen): move prettier formatting into generateAction (#7333) | 3c34f08 |
Cody Olsen | fix(deps): @bjoerge/mutiny is now @sanity/mutate (#7344) |
4aeb5b6 |
Bjørge Næss | chore(dev): add groq package to monorepo aliases (#7340) | d44b06e |
renovate[bot] | chore(deps): update pnpm to v9.7.0 (#7346) | 0772245 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.12 (#7352) | ecde097 |
renovate[bot] | fix(deps): update dependency @sanity/insert-menu to v1.0.8 (#7343) | 088139d |
renovate[bot] | fix(deps): update dependency get-it to ^8.6.4 (#7353) | f6b6378 |
renovate[bot] | fix(deps): Update dev-non-major (#7345) | eefb5ea |
Christian Grøngaard | chore(test-studio): fix custom markers PTE example (#7358) | 43b9969 |
RitaDias | test(dev): add media plugin to studio e2e & test (#7236) | 12d1411 |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.16.4 (#7359) | 441d7e5 |
Ash | feat(test-studio): add noop custom publish action example | 7860c8e |
Ash | fix(sanity): prevent empty actions being executed | c2e4eb3 |
Fred Carlsen | feat(core): support pasting object into array + copying individual array items (#7292) | ea55826 |
Rune Botten | fix(deps): update and pin react-i18next to 14.0.2 (#7364) | 3cecfdd |
renovate[bot] | fix(deps): update dependency @sanity/client to ^6.21.2 (#7354) | db6741b |
Sindre Gulseth | fix(typegen): dont treat all document type refs as references (#7366) | 32958d3 |
Pedro Bonamin | fix(core): update eslintrc config to show no-restricted-imports rules (#7367) | 22e717e |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.13 (#7370) | a361063 |
Rico Kahler | feat(cli): update CLI to use new deploy endpoint (#7244) | 14ae5cb |
v3.53.0
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
Improved Sanity Client and TypeGen integration
With the new defineQuery
utility it is no longer necessary to pass generics into client.fetch
calls for the sanity typegen
command to generate type definitions for query results. 🥳
Update @sanity/client
to v6.21.0
or later, then add "overloadClientMethods": true
to your sanity-typegen.json
configuration file, and finally wrap your query strings in the new defineQuery
utility method from groq
:
import {createClient} from '@sanity/client'
-import groq from 'groq'
+import {defineQuery} from 'groq'
-import type { SettingsQueryResult } from "~/sanity.types";
const client = createClient({ /* ... */ })
-const settingsQuery = groq`
+const settingsQuery = defineQuery(`
*[_type == "settings"][0]
-`
+`)
-const settings = await client.fetch<SettingsQueryResult>(settingsQuery)
+const settings = await client.fetch(settingsQuery)
Huge thanks to @romeovs for championing this feature!
🐛 Notable bugfixes
- Fixes default messaging in the environment variable file created by
sanity init --env
- Fixes an issue that could cause wrong list counts in the Portable Text Editor
- Fixes an issue that could cause malformed strings to appear in documents passed to migration scripts
- Fixes several issues that could cause "missing context" errors in certain environments
- Fixes an issue causing the Presence avatar overlays on form fields not to appear when Sanity Studio is embedded in a React 19 app
📓 Full changelog
Author | Message | Commit |
---|---|---|
renovate[bot] | fix(deps): update dependency react-rx to v4 (#7266) | a9b9feb |
Simeon Griggs | feat: embellish nextjs blog starter (#7258) | 0fc8216 |
renovate[bot] | chore(deps): update linters (#7285) | eebb27b |
renovate[bot] | chore(deps): update dependency turbo to ^2.0.10 (#7284) | ecc74b4 |
Cody Olsen | chore: remove agressive npmrc options (#7282) | 8e99272 |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.87 (#7287) | cade4c7 |
Cody Olsen | fix: remove react hooks linter suppressions in PT hooks (#7222) | f5cac7b |
Cody Olsen | fix: ensure search context provider value is memoized (#7200) | edf7560 |
Espen Hovlandsdal | chore(test-studio): add workspace for us based dataset (#7293) | 9f60cdc |
Simeon Griggs | fix(cli): don't prepend message about .env.local if creating .env.local (#7288) | ec27de0 |
renovate[bot] | fix(deps): Update dev-non-major (#7294) | 8d47f3e |
renovate[bot] | chore(deps): update dependency @sanity/pkg-utils to v6.10.8 (#7278) | 9ac527f |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.10 (#7290) | e5e2c89 |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.88 (#7296) | b221828 |
renovate[bot] | chore(deps): update dependency @bjoerge/mutiny to ^0.7.0 (#7274) | 9edbcd9 |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.88 (#7295) | e32932c |
Christian Grøngaard | fix(core): correctly reset PTE list counts (#7286) | acbc351 |
renovate[bot] | chore(deps): update dependency turbo to ^2.0.11 (#7300) | 1b21691 |
renovate[bot] | chore(deps): update dependency eslint-config-turbo to ^2.0.11 (#7299) | 45bfdd0 |
Geoff Ball | Update types.ts | c041d28 |
renovate[bot] | fix(deps): update dependency @sanity/presentation to v1.16.3 (#7302) | cc744df |
renovate[bot] | chore(deps): update dependency @bjoerge/mutiny to ^0.7.1 (#7306) | 6a6c4bf |
renovate[bot] | fix(deps): Update dev-non-major (#7307) | fe40caf |
Cody Olsen | feat(codegen): generate SanityQueries interface in @sanity/codegen (#6997) (#7304) | 886ab25 |
renovate[bot] | chore(deps): update dependency @sanity/pkg-utils to v6.10.9 (#7313) | 33c3c7b |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.90 (#7314) | ffaf81b |
renovate[bot] | chore(deps): update dependency @sanity/tsdoc to v1.0.90 (#7315) | e5563b6 |
Rico Kahler | fix(cli): dedupe styled-components in vite config (#7310) |
e82e815 |
Rico Kahler | refactor: flatten _singletons and increase usage of sanity/_createContext (#7311) |
c512fa7 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.11 (#7316) | cec7b12 |
Binoy Patel | chore(deps): updates ora to ^8.0.1 (#7320) | 327e5b4 |
renovate[bot] | fix(deps): update dependency @portabletext/editor to ^1.0.11 (#7317) | de01242 |
renovate[bot] | chore(deps): update dependency lerna to ^8.1.8 (#7322) | d53ab33 |
Cody Olsen | refactor: remove prefersLatestPublished handling (#7305) |
542b07b |
Cody Olsen | fix: support field presence avatars on react 19 (#7308) | 8d003e8 |
Bjørge Næss | fix(migrate): properly decode chunks of multibyte unicode strings (#7321) | ba4d4a8 |
Sindre Gulseth | feat(typegen): add location of discovered query (#7327) | d77e3ad |
Sindre Gulseth | chore(typegen): trace overloadClientMethods usage (#7326) | 68fe8cd |
v3.52.4
Install or upgrade Sanity Studio
To initiate a new Sanity Studio project or upgrade an existing one, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
If you are updating from a version earlier than 3.37.0, you should also check out this article to ensure your dependencies are up to date.
🐛 Notable bugfixes
- Fixes a bug that prevents keyboard shortcuts from pasting images and files.
📓 Full changelog
Author | Message | Commit |
---|---|---|
Rico Kahler | fix(core): early return if paste target is a file/image (#7269) | 6fc602c |
Cody Olsen | fix(deps): bump @sanity/pkg-utils to v6.10.7 (#7277) |
56d9e16 |