Skip to content

Releases: sanity-io/sanity

v3.27.1

01 Feb 10:50
39c0b8d
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

✨ Highlights

🐛 Notable bugfixes

  • Fixes a bug with sanity migrate that caused a patch to be applied twice.

📓 Full changelog

Author Message Commit
Binoy Patel fix(migration): fixes issues where patch would happen twice (#5638) 343765d

v3.27.0

30 Jan 22:15
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Sanity Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a Sanity Studio, run this command in its folder:

npm install sanity@latest

✨ Highlights

New CLI command sanity migration create|list|run

You can now create, list, and run content migrations from the Sanity CLI. The new tooling lets you scaffold content migrations as code and run them in dry and production mode. It also introduces a new API for defining content migration with helper functions (defineMigration()).

We're still working out the documentation for schema and content migrations; early adopters can learn more by running the following CLI commands in a Sanity Studio project folder:

sanity migration --help

You can run sanity migration create to explore our new content migration templates.

New CLI command: sanity schema validate

You can now validate a Sanity Studio schema with the CLI command sanity schema validate. Among other things, it will identify problems with your schema type definitions. This tooling can be useful for running in CI/CD pipelines or debugging your schema configuration.

Learn more by running:

sanity schema validate ---help

Other features

  • Adds Studio UI localization support to the comments plugin
  • Adds support for validating dataset import and export files with sanity documents validate
  • Adds intentUrl in json and ndjson formats for sanity documents validate

🐛 Notable bugfixes

  • Fixes a type issue where Rule.min and Rule.max did not allow strings
  • Fixes an issue where large documents would not duplicate correctly
  • Fixes an issue with date validation when using custom format for dates
  • Fixes typo in asset source string (thanks @kkupcin)
  • Fixes an where valid documents would be reported in sanity documents validate --format json
  • Fixes a bug that caused uses of Vite-like environment variables import.meta.env to break the mock browser environment used in the CLI.

📓 Full changelog

Author Message Commit
Rico Kahler fix(validation): update min and max to include string for dates (#5555) 881a991
Rico Kahler fix(core): wait for duplicate success before navigating (#5556) 088830d
Cody Olsen refactor: move babel config to jest config (#5562) fa3bf84
Tommy Petty bug(core): fix issue with date formatting in validation message (#5551) ab0dbe1
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.6.1 68e6b07
ecospark[bot] chore(deps): dedupe yarn.lock (#5581) 974b601
Nina Andal Aarvik fix(comments): localize all strings (#5578) a7086f2
Rico Kahler feat(cli): support --file in sanity documents validate (#5580) 5cb4ea6
ecospark[bot] chore(deps): dedupe yarn.lock (#5588) ff3d625
Fred Carlsen chore(core): include user agent and screen density in telemetry calls (#5568) 8a166bd
Kornelija Kupcinskiene fix(i18n): spelling mistake in asset source string (#5575) 3a81d6b
Binoy Patel chore(cli): remove beta copy from documents validate command (#5589) c328dca
Nina Andal Aarvik fix(src): add textskeleton to loading state of mentions (#5587) 26cbae7
Binoy Patel fix(validation): filter system documents when running validation (#5590) d8c4a3f
Rico Kahler feat(cli): add new sanity schema validate command (#5583) 09cdb5f
renovate[bot] fix(deps): update dependency @sanity/client to ^6.12.3 (#5593) e6cad2e
renovate[bot] fix(deps): update dependency @sanity/presentation to v1.7.2 (#5596) 3650fb2
Bjørge Næss fix(studio): fallback to when logging installed plugins (#5602) 6df6ee5
renovate[bot] chore(deps): update dependency @sanity/ui to ^2.0.1 (#5594) b701756
Pedro Bonamin chore(deps): update dependency @sanity/ui to ^2.0.1 (#5607) dad3492
Rico Kahler feat(cli): add intentUrl to json and ndjson reporters (#5610) 71f9aed
Bjørge Næss feat(migrate): move into monorepo from poc fa86d63
Bjørge Næss test(migrate): make sure uint8array-extras package gets transpiled from esm 3b0e783
Bjørge Næss feat(cli): scaffold create/run migration cli commands 9495db7
Bjørge Næss fix(migrate): inline functions from uint8array-extras for now f379f40
Bjørge Næss feat: basic migration cli support 8304afc
Bjørge Næss feat: basic migrations list command ead9f3e
Bjørge Næss feat: migration create command w/templates 0a596e4
Bjørge Næss feat(sanity): add exports for sanity/migrate + sanity/migrate/mutations c4b19a4
Ash chore(migrate): add test script 4abe2bc
Ash test(migrate): add tests for parseJSON 1d39b78
Ash feat(migrate): add customisable parser and iterator type to parseJSON 5e8e666
Ash feat(migrate): add JSON parser that can handle chunks interrupted by an error object 74db2df
Bjørge Næss refactor(migrate): rename targets => destinations b730324
Ash feat(migrate): use safe JSON parser when streaming from Export HTTP API (#5542) a1c0faf
Bjørge Næss fix(util): fix package.json formatting 17e8130
Bjørge Næss feat(migrate): implement mutation batcher and use when submitting against mutate endpoint 1822dc2
Bjørge Næss feat(migrate): limit request concurrency a9bfef9
Bjørge Næss fix(migrate): workaround issue with p-map and ESM 7aaa5ed
Bjørge Næss feat(cli): allow user provided concurrency 2579159
Bjørge Næss feat(migration): improve progress as migration is running (#5550) 67aa5a9
Binoy Patel feat(migration): add a prompt before runing a real migration (#5552) 4ab2ac2
Binoy Patel feat(migration): support passing an array of documentTypes to migration (#5566) 458ac49
Binoy Patel chore(migration): add better error message when request fails (#5567) f1c2cd4
Bjørge Næss feat(migrate): add asyncIterableToStream util 0563e7b
Bjørge Næss feat(migrate): add bufferThroughFile utility ed7c904
Bjørge Næss fix(migrate): buffer exports through file dd47e2b
Bjørge Næss fix(cli): use dryRun from @sanity/migrate 4c2cab9
Bjørge Næss refactor(migrate): rename function 154483e
Bjørge Næss refactor(migrate): add ndjson support for both parsing and stringifying in ndjson util ec11092
Bjørge Næss refactor(sanity): remove mutiny dependency in favor of inlined creators 66bf826
Bjørge Næss fix(sanity): add --no-progress flag 24bc18f
Bjørge Næss fix(migrate): simplify bufferThroughFile 990fb50
Bjørge Næss feat(migrate): unify contexts, add support for document lookup and query during a migration 3a54e20
Bjørge Næss fix(dev): fix example migration script imports 5381f34
Binoy Patel feat(migration): support async hooks in migration nodes (#5564) cc6b2f3
Bjørge Næss fix(sanity): use --no-dry instead of --dry=false ba905dc
Bjørge Næss feat(migrate): add support for yielding transactions 0a58fa3
Bjørge Næss fix(migrate): minor typing issue 663da91
Bjørge Næss fix(sanity): polish cli and migration templates 027ad47
Bjørge Næss chore(deps): remove unused deps 2e61bd5
Bjørge Næss fix(sanity): fix quoting of documentTypes in migration templates 8a5f67b
Bjørge Næss fix(sanity): rename migration name => title 27b0088
Bjørge Næss fix(migrate): run migration against all documents if documentTypes is omitted e80bbdf
Binoy Patel fix(migration): fixes dry run not showing any information 2568666
Binoy Patel fix(migration): show proper error message when the file has code issues 7256f85
Bjørge Næss fix(migrate): various naming consistency fixes dbb7048
Bjørge Næss fix(sanity): add a few examples to help text for 'sanity migration create' 8290bae
Bjørge Næss fix(sanity): improve error handling on 'sanity migration run' without id 5d9a556
Bjørge Næss fix(migrate): fix error asserting transaction df310cf
Bjørge Næss fix(migrate): use transactionId instead of id on mutation payload a82df02
Ash feat(cli): add pretty mutation formatting to migration runner (#5573) 2dba206
Bjørge Næss chore(migrate): instrument with some debug logging 79c5e12
Bjørge Næss refactor(migration): move filtered document methods to a separate filtered-context key, add a client with limited concurrency to migration context 81e4309
Bjørge Næss fix(migrate): add request tags and user agent f22aa0c
Bjørge Næss fix(sanity): improve minimal example 2e77de7
Binoy Patel chore(migration): remove from-export flag from migration cli (#5611) b2a94ff
Binoy Patel chore(migration): remove query from migration context (#5612) ae7105a
Binoy Patel chore(migration): change dry command to dry-run (#5613) 81eb846
Bjørge Næss fix(migrate): limit client methods during migration 13de5a2
Binoy Patel fix(migration): parse cli arguments so the types are proper (#5616) 7751df1
Bjørge Næss fix(migrate): cleanup buffer file after read (#5618) 387945c
Bjørge Næss fix(migrate): remove mkdirp in favor of node:fs (#5619) 338bf26
Rico Kahler fix(cli): add support for import.meta.env (#5617) 083ff16
Bjørge Næss fix(migrate): scope node path to the current node (#5620) 93f82d2

v3.26.1

26 Jan 14:40
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

🐛 Notable bugfixes

  • Fixes issue introduced in v3.26.0 where, upon the first comment in a project lacking an addon dataset, the dataset fails to be created, and the comment remains unposted.
  • Enhanced export reliability through improved asset retry mechanisms.

📓 Full changelog

Author Message Commit
Sindre Gulseth Improve asset export retrying (#5563) a68df71
Herman Wikner fix(comments): addon dataset creation (#5577) c8f1da3

v3.26.0

23 Jan 17:26
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

  npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

  npm install sanity@latest

✨ Highlights

Deprecation support for Documents and Fields

This release introduces the option to mark document and field types as deprecated. This can be used to gently steer Studio users towards updated schemas or to phase out legacy fields without abrupt changes.

export const deprecatedDocument = defineType({
  name: 'deprecatedDocument',
  title: 'Deprecated Document',
  type: 'document',
  deprecated: {
    reason: 'Use the Author document type instead',
  },
  fields: [
    defineField({
      name: 'title',
      type: 'string',
      deprecated: {
        reason: 'This field was used in a legacy system and is no longer used.',
      },
    }),
  ],
})

Deprecation example

When a field or document is deprecated, an informative message will appear in the Studio, clearly indicating the recommended action to take. This aids in maintaining a clean and up-to-date content structure.

Bonus: Deprecation messages now appear in the GraphQL schema, providing clarity during transitions. Deprecated document types and fields should be appropriately treated in documentation and tooling.

Reactions to Comments

This release also introduces a new layer of interactivity in the Studio with the ability for users to react to comments! 🎉

Far be it from us to speak ill of verbose and precise communication using full sentences, but sometimes you just want to express a sentiment quickly with a 🚀 or a 👍 and Sanity Studio now has you covered for those occasions. Streamline feedback processes and consensus building, and make your Studio a more vibrant collaborative space in one fell swoop with comment reactions. 🎩

Comments Reactions Screenshot

🐛 Notable bugfixes

  • Enhances user experience in the Studio by adding localized browser document titles and correcting unlocalized strings, accommodating users who prefer languages other than English.
  • Fixes an issue where number-like string flags passed to CLI commands were parsed as numbers by the option parser, leading to truncation of large integer-only document IDs and similar.
  • Resolves a restoration issue with the token login method ensuring the active session is retained post webpage reloads when cookieless auth is in effect.
  • Enhances UI components consistency in tooltips and delay groups for better UX.
  • Fixes a performance issue by re-applying useMemo on DocumentPaneContext values, reducing unnecessary re-renders and improving document pane performances.
  • Ensures that errors in the useFeatureEnabled hook result in an empty features list rather than disruptive error toasts; this minimizes user interruption when feature availability checks fail.
  • Fixes multiple bugs in the sanity documents validate CLI command relating to visibility, unnecessary validation reports, reference checks batch processing, and unknown field validation for images and file types.
  • Improves spacing between the published date and the last updated date in the document status bar for better readability.

📓 Full changelog

Author Message Commit
Tommy Petty fix(cli): always treat arguments without options as strings (#5500) 9ca1cd0
Espen Hovlandsdal feat(i18n): add i18n resources for browser document title (#5477) fb4eb68
Herman Wikner refactor(core): grants permission logic (#5299) dfebba6
Espen Hovlandsdal test(structure): fix document title test d9cc636
Binoy Patel test(structure): update StructureTitle tests (#5518) 840ac3e
Ash fix(core): token login method session restoration (#5497) ae44bc7
Pedro Bonamin fix(ui-components): add TooltipDelayGroupProvider to ui-components (#5514) 030780a
Espen Hovlandsdal fix(desk): correct import from @sanity/structure to sanity/structure e644633
Espen Hovlandsdal chore(deps): bump minimum version of @sanity/logos to latest 7c20321
Tommy Petty chore(core): updated pull request template to emphasize testing (#5519) b1c55d8
Herman Wikner feat(comments): implement reactions (#5409) 8c140be
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.6.1 (#5526) 6dbacea
ecospark[bot] chore(deps): dedupe yarn.lock (#5527) 8fab227
Robin Pyon fix(cli): upgrade templates to use @sanity/ui@2 (#5528) 8c3d46a
Binoy Patel chore(deps): remove pretty-quick packages and fix formatting action (#5511) 9b3eae9
Espen Hovlandsdal refactor: colocate duplicate type + value imports (#5515) 9795480
Cody Olsen fix(performance): add back useMemo on DocumentPaneContext value (#5458) bd141cd
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.7.0 (#5537) 88ab3ad
Herman Wikner fix(core): error handling in useFeatureEnabled (#5538) 08eb76c
Rico Kahler fix(cli): misc sanity documents validate fixes (#5521) 475981d
Espen Hovlandsdal fix(i18n): import i18n utils from relative path/sanity module (#5546) e536d23
Espen Hovlandsdal fix(structure): fix unintended import from @sanity/ui-workshop (#5545) 0e18aa9
Tommy Petty fix(i18n): missing translation on document inspector close button (#5520) 39babbf
Bjørge Næss feat(core): add telemetry scaffolding to Studio (#5503) 66b88f7
Bjørge Næss Revert "fix(i18n): import i18n utils from relative path/sanity module (#5546)" bdfb913
Bjørge Næss chore(codeowners): add growth team as owners of telemetry definitions (#5525) aa62661
Robin Pyon chore: add ui component workshop stories, simplify internal tab component (#5549) 657c6e5
Binoy Patel feat(core): schema and field deprecation (#5489) f7c2417
Robin Pyon fix: increase space between published date and last updated date (#5548) 1d0bac9
Pedro Bonamin chore(telemetry): track expand and collapse pte actions (#5523) 0f8e1a2

v3.25.0

16 Jan 18:12
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

✨ Highlights

New Documents Validate CLI Command (beta)

CleanShot.2024-01-16.at.11.48.39.mp4

The sanity documents validate command is now available! This powerful tool checks your documents against your project's schema directly from your command line. It uses a mocked browser environment to validate all documents locally, perfect for ensuring data integrity.

Note: As this feature is currently in beta, some projects may not load correctly. We encourage users to report any issues encountered to help us improve here: #5510

Improved Copy-Paste experience from Google Docs and Notion

The Studio now preserves formatting more reliably when content is pasted from Google Docs in Safari, and no longer incorrectly applies underline decorators to pasted links. Additionally, the Studio now preserves formatting more reliably when content is copied from a single block in Notion.

User interface and experience updates

  • Root page link: The workspace icon now consistently serves as a direct link to the 'root' page (the first configured tool), streamlining navigation.
  • Improved Workspace Switcher: A new tooltip feature has been added to the workspace switcher for better clarity.
  • Simplified Tool Menu: The tool menu will now be hidden when only one tool is installed, reducing clutter.
  • Layout stability: We've resolved an issue with long workspace titles disrupting the navbar layout. Titles now truncate with ellipses to maintain a clean appearance.
  • Localized tooltip text: The 'open menu' button tooltip text has been localized and is now more accessible on smaller screens.
  • Intuitive icons: The help and resources button now features the correct icon, making it more intuitive and consistent with previous versions.
  • PTE improvements: Ensures that clicking to edit in presentation mode correctly focuses the relevant block, improving the editing workflow.

🐛 Notable bugfixes

  • Fixes a bug where logging out didn't invalidate the cookieless auth token.
  • Fixes an issue in the Portable Text Editor where the 'Empty' placeholder placement was off.
  • Fixes an issue where array item focus rings were cropped, ensuring they're now displayed in full.
  • Fixes a bug where the workspace switcher tooltip wasn't displaying correctly.

📓 Full changelog

Author Message Commit
Fred Carlsen feat(block-tools): add special notion handling for single block decorators (#5411) a281061
Fred Carlsen fix(block-tools): more robust formatting detection on copy paste in Safari (#5485) 0cec72b
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.5.3 (#5486) 4a25ee9
renovate[bot] fix(deps): update dependency @sanity/client to ^6.11.1 (#5488) 0f51ba9
renovate[bot] chore(deps): update dependency @sanity/ui to v2.0.0-beta.17 (#5487) 48066a3
Rico Kahler fix(test): use "runtime": "automatic" for "@babel/preset-react" (#5492) 8023c33
shur fix: mark builds as completed/errored and indicate empty cli runs (#5469) a581d8d
Ash fix(core): include cookieless auth token in logout request if it exists (#5491) ee9f89f
Nina Andal Aarvik fix(core): add missing inter fontface for weights 800+900 (#5490) ec84a42
Bjørge Næss fix(cli): telemetry: only log first 10 elements in args array (#5471) 5281b42
Tommy Petty chore(i18n): fixed missing translations with document status pulse (#5498) c558040
Ash test(cli): fix flaky dev server test (#5476) 87cc62b
Bjørge Næss chore(deps): regenerate lockfile 2fe7f09
Per-Kristian Nordnes fix(form/inputs): include text blocks in PT-members when theya are focused (#5502) f2a228f
Robin Pyon fix: use help icon for help + resources button (#5506) 9105ec7
Robin Pyon fix: ensure list array card focusRing isn't cropped and renders with correct radii (#5505) ffb6268
Robin Pyon fix(deps): update @sanity/ui to 2.0.0 and @sanity/color to 3.0.0 (#5507) cc27cb8
Robin Pyon fix: various navbar improvements (#5504) 6c8dce9
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.6.0 (#5508) ddece4c
Rico Kahler feat(cli): new documents validate command (#5475) 8369061

v3.24.1

10 Jan 20:36
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

  npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

  npm install sanity@latest

✨ Highlights

Updated legacy theme customization

Legacy themes for Sanity Studio will now handle custom colors without losing the scaffolding provided by the default studio theme. This improvement means that the custom colors you define will no longer revert to default values, but instead integrate seamlessly with Sanity Studio.

Experimental document pane title opt-out

A new flag __experimental_formPreviewTitle has been introduced, allowing you to hide the large preview title displayed in the document pane form. This grants more control to users with custom implementations that do not benefit from this title being displayed.

import {defineType} from 'sanity'

export const playlistType = defineType({
  name: 'playlist',
  type: 'document',
  // 👇👇👇
  __experimental_formPreviewTitle: false,
  // 👆👆👆
  // ...
})

Comments feature now enabled by default

The comments feature within Sanity Studio is now enabled by default, embracing collaboration and social interactions on your documents right out of the box.

Importing Structure as structureTool

The import path for the structure tool has been updated. Developers should now import from sanity/structure instead of sanity/desk. A helpful codemod is available to facilitate the migration of any existing code. Existing imports to sanity/desk will still work but those imports have been marked as deprecated and will be removed in a later major version.

A codemod is available to migrate any code that may be using it:

npx @sanity/cli codemod deskRename

Be sure to check in any local changes to version control before running the codemod in case it should fail.

GraphQL deployment optimization

A new opt-in cache, --with-union-cache, improves GraphQL schema generation speed by up to 95% for schemas with numerous self-referencing documents. This optimization is essential for larger projects and significantly improves the deploy experience.

🐛 Notable bugfixes

  • Fixes a regression where custom document action modal dialogs were not rendering footer content correctly.
  • Resolves issues related to incorrect default locale strings, ensuring the restoration process of document revisions is accompanied by proper messaging.
  • Fixes problems with the strike-through formatting when pasting content from Google Docs.
  • Corrects font weight rendering issues on iOS16, ensuring consistent visual experience across platforms.
  • Fixes the improper alignment of button text in the Portable Text Editor to match standard UI practices.
  • Ensures annotation toolbar popover in PTE follows the correct element on scroll, enhancing usability.
  • Fixes fieldset border issues in forms for a cleaner UI presentation.
  • Resolves console warnings stemming from passing non-DOM properties to styled-components.
  • Updates navbar button positions for better user discoverability and accessibility by adding aria labels to expand buttons in PTE.

📓 Full changelog

Author Message Commit
Binoy Patel chore(e2e): update docs and make missing env more clear (#5421) a63a20a
renovate[bot] chore(deps): update babel monorepo to ^7.23.7 (#5430) 232aab8
renovate[bot] chore(deps): update dependency turbo to ^1.11.2 (#5436) cee0e15
Pedro Bonamin fix(legacy-theme): update buildLegacyTheme to support custom colors (#5437) b4fb5b6
Fred Carlsen feat: conditionally set maximum search depth in studio search (#5440) 261b05e
renovate[bot] chore(deps): update dependency @sanity/ui to v2.0.0-beta.14 (#5445) ac1e465
renovate[bot] chore(lockfile): update dependency framer-motion to v10.17.4 (#5450) e462d96
renovate[bot] chore(deps): update dependency styled-components to ^6.1.6 (#5446) 5cc319d
Robin Pyon fix: opt-out of internal studio ui-components for user facing custom document action dialogs (#5444) 5a9d1f8
Robin Pyon fix(i18n): use correct locale string for document restore confirmation (#5453) 2d817cb
Jørn Knutsen fix(vision): use untranslated value for "other" api version (#5433) f3181ba
Espen Hovlandsdal refactor(structure): desk => structure file rename 7c484f7
Espen Hovlandsdal refactor(structure): rename references to desk/Desk e3ea119
Espen Hovlandsdal fix(structure): fix typo in renamed structure tool context 00496ab
Espen Hovlandsdal feat(cli): add desk rename codemod 749444d
Espen Hovlandsdal chore: run desk rename codemod e6a2b3a
Espen Hovlandsdal fix(cli): bootstrap new studios with structure import 7516d0f
Espen Hovlandsdal refactor(desk): explicitly import/export for improved deprecation handling 47c5e4b
Espen Hovlandsdal fix(core): correct typesVersions path for structure export b018193
ecospark[bot] chore(prettier): fix unformatted files 🤖 ✨ (#5454) c446609
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.4.2 7972ff4
ecospark[bot] chore(deps): dedupe yarn.lock (#5455) 01d5238
Fred Carlsen fix(block-tools): keep strike-through formatting when pasting from gdocs (#5443) 779a114
Nina Andal Aarvik fix(core): remove variable fonts in global styles (#5456) 47d84a2
Tommy Petty fix(cli): uniquify temp directory used during dataset import (#5400) a84cfeb
Cody Olsen chore(deps): update dependency @sanity/ui to v2.0.0-beta.15 d916bd7
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.4.3 5479069
Nina Andal Aarvik fix(desk): utranslate when form title is missing (#5439) 8c52faa
Robin Pyon fix: add custom resize handle icon (#5462) 38f951c
Herman Wikner fix(core): form fieldset border (#5468) 8ff0308
Pedro Bonamin feat(desk): add __experimental_formPreviewTitle to documents (#5452) 90c24c8
Nina Andal Aarvik fix(core): left align button text in PTE (#5422) a21656e
Nina Andal Aarvik fix(core): add scroll event listener for AnnotationToolbarPopover referenceBoundary (#5410) 5719a09
Nina Andal Aarvik fix(core): add useClickOutside function to filter buttons afdb3f9
Herman Wikner feat(comments): enable by default (#5467) c09a26d
Pedro Bonamin chore(dependencies): update @sanity/ui to 2.0.0-beta.16 (#5474) 49e1a7e
Sindre Gulseth refactor(graphql): use Set to speedup guard check 31b7559
Sindre Gulseth refactor(graphql): optimize multiple loops into two for loops ab1459a
Sindre Gulseth chore(graphql): remove unncessary type cast and optimize readability 330c621
Sindre Gulseth feat(graphql): add experimental mode to optimize/cache schema union definitions 52e4369
Espen Hovlandsdal fix(i18n): pass Code component to document list pane error (#5434) 30f9bef
Rico Kahler fix(cli): update esbuild options for better compat (#5461) fc45930
Cody Olsen fix(deps): update dependency @sanity/presentation to v1.5.0 75b052c
Robin Pyon fix: update reverse trial button styles, add tooltips to nav button and localize (#5478) 8e8c474
Cody Olsen fix: prevent props that are unknown html attributes from passing through (#5481) ddf605f
Robin Pyon fix: position search button in the LHS navbar (#5479) 8b3aa07
Nina Andal Aarvik ...
Read more

v3.23.4

22 Dec 18:04
c03a07b
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

🐛 Notable bugfixes

  • Fixes occational wrong placement of the free trial popover
  • Fixes an issue where custom icons were displayed with incorrect sizes in previews

📓 Full changelog

Author Message Commit
Herman Wikner fix(core): icon size in previews with custom icon (#5425) c6becc9
Bjørge Næss fix(core): wait until the ref is available before showing trial popover (#5424) 26d08fe

v3.23.3

22 Dec 14:38
a8d277d
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

🐛 Notable bugfixes

  • Makes sure latest version of next-sanity is installed when initializing in a Next.js project

📓 Full changelog

Author Message Commit
Fred Carlsen chore(cli): pin next-sanity to v7 (#5423) 7827696

v3.23.2

21 Dec 17:05
7d23196
Compare
Choose a tag to compare

Installation and upgrading

To initiate a new Studio without installing the CLI globally:

npm create sanity@latest

To upgrade a v3 Studio, run this command in its folder:

npm install sanity@latest

🐛 Notable bugfixes

  • Fixes missing subtitle in object and reference previews inside arrays
  • Improves error handling if enabling telemetry consent fails
  • Fixes issue with inverted color for field action buttons
  • Fixes an issue that could happen if using an older system version of the Sanity CLI in combination with a more recent version installed in a project directory

📓 Full changelog

Author Message Commit
Fred Carlsen fix(portable-text-editor): copy paste improvements (#5274) a5901b0
Fred Carlsen fix(block-tools): fix broken unit tests 87895f1
ecospark[bot] chore(prettier): fix unformatted files 🤖 ✨ (#5399) 6bd95d6
Robin Pyon fix: temporarily disable locale selection in nav drawer menu (#5406) 67aac92
Fred Carlsen fix(form): fix missing subtitles in array previews (#5412) 963b778
Pedro Bonamin fix(core): adds consistent padding to document footer (#5415) dfe1039
Pedro Bonamin fix(core): box sizing content box in preview elements, free trial popover position (#5418) 37d9c28
Nina Andal Aarvik fix(core): add missing deprecated tag to workspace logo (#5413) cc53cca
Bjørge Næss fix(cli): provide more detailed info if consent status change fails (#5416) 8eaea18
Rico Kahler Revert "test(e2e): disable dataset creation per PR (#5210)" (#5402) 30de036
Binoy Patel chore(test): update cli tests to use staging env (#5404) 2cedcaf
Bjørge Næss fix(sanity): guard against telemetry not provided from older global CLI versions (#5420) 7e435e4
Nina Andal Aarvik fix(desk): add bleed mode to field action button (#5414) 790a71a

v3.22.3

21 Dec 17:07
3104632
Compare
Choose a tag to compare

🐛 Notable bugfixes

  • Improves error handling if enabling telemetry consent fails
  • Fixes an issue that could happen if using an older system version of the Sanity CLI in combination with a more recent version installed in a project directory

📓 Full changelog

Author Message Commit
Rico Kahler Revert "test(e2e): disable dataset creation per PR (#5210)" (#5402) 75eac0a
Binoy Patel chore(test): update cli tests to use staging env (#5404) 31109cf
Bjørge Næss fix(cli): provide more detailed info if consent status change fails (#5416) e97a639
Bjørge Næss fix(sanity): guard against telemetry not provided from older global CLI versions (#5420) 1327bbc