Skip to content

fix(deps): update dependency @sanity/tsdown-config to ^0.24.0 - #1832

Open
squiggler-app[bot] wants to merge 1 commit into
mainfrom
renovate/sanity-tsdown-config-0.x
Open

fix(deps): update dependency @sanity/tsdown-config to ^0.24.0#1832
squiggler-app[bot] wants to merge 1 commit into
mainfrom
renovate/sanity-tsdown-config-0.x

Conversation

@squiggler-app

@squiggler-app squiggler-app Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@sanity/tsdown-config (source) ^0.21.2^0.24.0 age confidence

Release Notes

sanity-io/pkg-utils (@​sanity/tsdown-config)

v0.24.0

Compare Source

Minor Changes
  • #​3250 33e7b93 Thanks @​stipsan! - Move the conditional CSS export from inject.nodeCompat to exports.nodeCompat, and give @tsdown/css output the same treatment.

    nodeCompat configures how the CSS file is published, not how the import is injected, so it moves to a dedicated exports option. inject and exports are now independent: inject prepends an import of the CSS to entry chunks, while exports publishes it as the ./<fileName> export subpath (which also makes any injected import self-referential). exports: true declares a plain string export for browser-only packages; exports: {nodeCompat: true} declares the conditional export and emits the no-op JS shim plus its .d.ts. inject: {nodeCompat: true} keeps working, normalized to {inject: true, exports: {nodeCompat: true}} with a deprecation warning; an explicit exports wins over it.

    @sanity/tsdown-config gains a css.exports option implementing the same pattern on top of @tsdown/css (an optional peer dependency), which compiles CSS but has no node-shim concept of its own — its inject emits a relative import that throws in runtimes that cannot load .css files.

    @sanity/pkg-utils gains a css option, and builds a .css export subpath that declares a source:

    "./ui/styles.css": {"source": "./src/ui/styles.css"}

    pkg build compiles it to dist/ui/styles.css with the same minify and lowering settings vanillaExtract gets, emits the shim, and fills in the types/browser/style/node/default conditions. @sanity/parse-package-json exposes the new parseCssExports for reading those subpaths, and parseExports no longer returns them as JS entries.

  • #​3253 bc16006 Thanks @​stipsan! - Suppress CIRCULAR_DEPENDENCY warnings from the declaration bundling pass by default, and add a suppressWarnings option.

    defineConfig enables Rolldown's checks.circularDependency, which also reports cycles between the emitted .d.ts modules. Those imports are type-only and erased at runtime, so the cycles carry none of the hazards the check exists to surface, and they're unavoidable for mutually referencing public types — in sanity-io/sanity#13753 109 of 136 cycle warnings were declaration-only, drowning out the 27 real ones. The config now sets tsdown's suppressWarnings to drop warnings whose entire cycle consists of declaration files (.d.ts/.d.mts/.d.cts); a cycle that includes even one runtime module still warns. Consumers that filtered these out themselves (like @repo/tsdown.config in sanity-io/sanity) can drop their own predicate.

    The new suppressWarnings option takes tsdown's own value shapes (strings matched with includes, regular expressions matched with test, or a predicate) and is OR'd with the built-in suppression, so per-package suppressions can't silently undo it. Merging suppressWarnings over the returned config still replaces the default entirely (mergeConfig replaces functions), which is the escape hatch for restoring every warning: mergeConfig(await defineConfig(), {suppressWarnings: () => false}).

    tsdown added suppressWarnings in 0.22.7, so the tsdown peer range is raised from ^0.22.5 to ^0.22.7. On 0.22.5/0.22.6 the option is silently ignored (the cycle warnings keep appearing) and the UserConfig['suppressWarnings'] indexed access in the published declarations does not resolve.

  • #​3246 c1106f1 Thanks @​stipsan! - Move the tsdoc feature (API Extractor TSDoc/release-tag checking) from @sanity/pkg-utils into @sanity/tsdown-config.

    In @sanity/tsdown-config the option is false by default; set tsdoc: true (or an options object) to run the check after the build via tsdown's build:done hook. The checker lives at @sanity/tsdown-config/tsdoc and is lazy-loaded from the root config, so API Extractor is not part of the default entry's module graph. @sanity/pkg-utils continues enabling it by default (tsdoc: true) when composing the config, and still runs it during pkg check via checkTsdoc from @sanity/tsdown-config/tsdoc.

Patch Changes

v0.23.0

Compare Source

Minor Changes
  • #​3238 e19e63e Thanks @​stipsan! - Default exports.enabled to true instead of 'local-only'.

    Gating on CI via 'local-only'/'ci-only' surprised environments that set CI=true without meaning "don't rewrite package.json" (notably Cursor Cloud and GitHub Copilot)

Patch Changes

v0.22.0

Compare Source

Minor Changes
  • #​3221 125080f Thanks @​stipsan! - Make defineConfig a composable base for programmatic hosts (like the upcoming tsdown-powered @sanity/pkg-utils):

    • New cwd option: forwarded to tsdown's own cwd, and used for the package-manager detection behind the devExports default instead of process.cwd() — so builds driven programmatically for a package in another directory resolve the right defaults.
    • Package-manager detection only runs when it can affect the outcome: it exists solely to decide the pnpm-gated devExports: true default, so it is skipped when the userland exports value replaces the defaults (false, true, a bare CI condition) or sets devExports explicitly. Explicit configs behave identically across package managers, with no filesystem probing.
    • The composition contract is now documented and covered by tests: defineConfig() output is a mergeConfig-safe base — plugins append (never clobbering the React Compiler / vanilla-extract plugins this config sets up), plain objects deep-merge, and scalars/non-plugin arrays replace.
    • Node 20 support is dropped: engines.node is now ^22.18.0 || >=24.11.0, matching tsdown's own requirement. The previous >=20.19 <22 range was unachievable in practice — this package only executes inside tsdown's process, which already requires Node ^22.18.0.
Patch Changes

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

This PR has been generated by Mend Renovate using a curated preset maintained by Sanity. View repository job log here

@squiggler-app
squiggler-app Bot requested a review from a team as a code owner August 4, 2026 09:17
@squiggler-app
squiggler-app Bot removed the request for review from a team August 4, 2026 09:17
@squiggler-app
squiggler-app Bot requested a review from pedrobonamin August 4, 2026 09:17
@squiggler-app
squiggler-app Bot enabled auto-merge (squash) August 4, 2026 09:17
@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
plugins-studio Ready Ready Preview Aug 7, 2026 10:26am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
plugins-e2e-test-studio Ignored Ignored Aug 7, 2026 10:26am

Request Review

@changeset-bot

changeset-bot Bot commented Aug 4, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: bb7e77f

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

@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

✅ E2E Tests

🟢 26 passedview full reportview run

Studio: https://plugins-e2e-test-studio-cz506sdef.sanity.dev

Datasets: pr-1832-chromium-31169990928, pr-1832-firefox-31169990928

@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 32% 5508 / 17209
🔵 Statements 31.78% 5812 / 18288
🔵 Functions 27.78% 1427 / 5136
🔵 Branches 23.33% 2828 / 12118
File CoverageNo changed files found.
Generated in workflow #8802 for commit bb7e77f by the Vitest Coverage Report Action

@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from 2bb87ed to a0a9438 Compare August 4, 2026 09:26
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from a0a9438 to a270609 Compare August 5, 2026 09:03
@squiggler-app squiggler-app Bot changed the title fix(deps): update dependency @sanity/tsdown-config to ^0.21.3 fix(deps): update dependency @sanity/tsdown-config to ^0.22.0 Aug 5, 2026
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from a270609 to 1e5beed Compare August 5, 2026 09:41
@socket-security

socket-security Bot commented Aug 5, 2026

Copy link
Copy Markdown

@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from 1e5beed to 273ca2b Compare August 5, 2026 14:56
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from 273ca2b to adde876 Compare August 5, 2026 16:41
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from adde876 to fec92d1 Compare August 5, 2026 20:37
@squiggler-app squiggler-app Bot changed the title fix(deps): update dependency @sanity/tsdown-config to ^0.22.0 fix(deps): update dependency @sanity/tsdown-config to ^0.23.0 Aug 5, 2026
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from fec92d1 to 49b25dd Compare August 6, 2026 08:20
@squiggler-app
squiggler-app Bot force-pushed the renovate/sanity-tsdown-config-0.x branch from 49b25dd to bb7e77f Compare August 7, 2026 10:25
@squiggler-app squiggler-app Bot changed the title fix(deps): update dependency @sanity/tsdown-config to ^0.23.0 fix(deps): update dependency @sanity/tsdown-config to ^0.24.0 Aug 7, 2026
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