diff --git a/.changeset/api-throttle-backoff.md b/.changeset/api-throttle-backoff.md deleted file mode 100644 index 5276607319b..00000000000 --- a/.changeset/api-throttle-backoff.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Retry throttled API requests with bounded exponential backoff and jitter, respecting Retry-After delays. diff --git a/.changeset/app-access-shop-scopes.md b/.changeset/app-access-shop-scopes.md deleted file mode 100644 index 2e94cd6e96f..00000000000 --- a/.changeset/app-access-shop-scopes.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/app': patch ---- - -Fix `app config link` so that it no longer drops Shop scopes (e.g. `shop_app:oauth`). diff --git a/.changeset/app-automation-token-deprecation.md b/.changeset/app-automation-token-deprecation.md deleted file mode 100644 index 9c7e5697182..00000000000 --- a/.changeset/app-automation-token-deprecation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': minor ---- - -Warn that `SHOPIFY_APP_AUTOMATION_TOKEN` and `SHOPIFY_CLI_PARTNERS_TOKEN` are deprecated in favor of `SHOPIFY_SERVICE_ACCOUNT_TOKEN`, which takes the same tokens. The warning shows at most once a day, and both variables keep working for now. diff --git a/.changeset/app-bulk-cancel-json.md b/.changeset/app-bulk-cancel-json.md deleted file mode 100644 index 6fe347d18a2..00000000000 --- a/.changeset/app-bulk-cancel-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to app bulk cancel. diff --git a/.changeset/app-bulk-execute-json.md b/.changeset/app-bulk-execute-json.md deleted file mode 100644 index 16591b45916..00000000000 --- a/.changeset/app-bulk-execute-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to app bulk execute. diff --git a/.changeset/app-bulk-status-json.md b/.changeset/app-bulk-status-json.md deleted file mode 100644 index 089cd563f66..00000000000 --- a/.changeset/app-bulk-status-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to app bulk status. diff --git a/.changeset/app-dev-clean-json.md b/.changeset/app-dev-clean-json.md deleted file mode 100644 index d07284f25f5..00000000000 --- a/.changeset/app-dev-clean-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app dev clean`. diff --git a/.changeset/app-development-fixes.md b/.changeset/app-development-fixes.md new file mode 100644 index 00000000000..173f9778ea7 --- /dev/null +++ b/.changeset/app-development-fixes.md @@ -0,0 +1,6 @@ +--- +'@shopify/app': patch +'@shopify/cli': patch +--- + +Fix lost Shop scopes in `app config link`, legacy Checkout and POS extension migration detection, and UI extension builds with multiple `should_render` targets. diff --git a/.changeset/app-execute-json.md b/.changeset/app-execute-json.md deleted file mode 100644 index 1ebd329f8cc..00000000000 --- a/.changeset/app-execute-json.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': minor -'@shopify/cli': minor ---- - -Add typed JSON output to `app execute` with GraphQL error details and file receipts. diff --git a/.changeset/app-import-custom-data-json.md b/.changeset/app-import-custom-data-json.md deleted file mode 100644 index 3438a94d593..00000000000 --- a/.changeset/app-import-custom-data-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app import custom-data-definitions`. diff --git a/.changeset/app-import-dashboard-extensions-json.md b/.changeset/app-import-dashboard-extensions-json.md deleted file mode 100644 index b6d60405e2f..00000000000 --- a/.changeset/app-import-dashboard-extensions-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": minor ---- - -Add typed JSON output to `app import dashboard-extensions`. diff --git a/.changeset/app-security-check-improvements.md b/.changeset/app-security-check-improvements.md new file mode 100644 index 00000000000..56e1c7574ae --- /dev/null +++ b/.changeset/app-security-check-improvements.md @@ -0,0 +1,7 @@ +--- +'@shopify/app': minor +'@shopify/cli': minor +'@shopify/cli-kit': minor +--- + +Improve `app security check` accuracy and safely scan untrusted repositories; add `--print-instructions`, deprecate `--yes`, and require Git 2.38.0 or later for Git operations. diff --git a/.changeset/app-security-dependency-automation-repository-root.md b/.changeset/app-security-dependency-automation-repository-root.md deleted file mode 100644 index ef03df1d659..00000000000 --- a/.changeset/app-security-dependency-automation-repository-root.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/app': patch ---- - -Check for Dependabot or Renovate configuration at the Git repository root when `shopify app security check` scans an app below it diff --git a/.changeset/app-security-empty-remote-helper.md b/.changeset/app-security-empty-remote-helper.md deleted file mode 100644 index 7e95978eaa0..00000000000 --- a/.changeset/app-security-empty-remote-helper.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Stop `shopify app security check` from running a command that a scanned repository names through an empty Git remote helper diff --git a/.changeset/app-security-flag-descriptions.md b/.changeset/app-security-flag-descriptions.md deleted file mode 100644 index a8cde0e31f3..00000000000 --- a/.changeset/app-security-flag-descriptions.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Clarify the `--blocking` and `--skip-instructions` help text for `shopify app security` diff --git a/.changeset/app-security-git-version.md b/.changeset/app-security-git-version.md deleted file mode 100644 index bd03fde8cb3..00000000000 --- a/.changeset/app-security-git-version.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch -'@shopify/cli-kit': minor ---- - -Require Git 2.38.0 or later when `shopify app security check` uses Git, and add a reusable CLI Kit minimum-version guard. diff --git a/.changeset/app-security-monorepo-lockfiles.md b/.changeset/app-security-monorepo-lockfiles.md deleted file mode 100644 index f189116d200..00000000000 --- a/.changeset/app-security-monorepo-lockfiles.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Skip lockfiles in every `shopify app security check` scan directory, so a monorepo root lockfile no longer leaves the secret check unresolved diff --git a/.changeset/app-security-print-instructions.md b/.changeset/app-security-print-instructions.md deleted file mode 100644 index 790d987d2db..00000000000 --- a/.changeset/app-security-print-instructions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add `--print-instructions` to `app security check` and deprecate `--yes` without removing support. diff --git a/.changeset/app-security-react-router-roots.md b/.changeset/app-security-react-router-roots.md deleted file mode 100644 index 836cdab0ecb..00000000000 --- a/.changeset/app-security-react-router-roots.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/app': patch ---- - -Detect React Router app code outside the app directory, such as in `--include-dir` or web directories, in `shopify app security check` diff --git a/.changeset/app-security-regression-test-nudge.md b/.changeset/app-security-regression-test-nudge.md deleted file mode 100644 index 715ef5ae562..00000000000 --- a/.changeset/app-security-regression-test-nudge.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Tell `shopify app security check` agents to add or update a regression test when fixing a verified finding diff --git a/.changeset/app-security-shared-namespace-metafield.md b/.changeset/app-security-shared-namespace-metafield.md deleted file mode 100644 index 01a481359ff..00000000000 --- a/.changeset/app-security-shared-namespace-metafield.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': minor -'@shopify/cli': minor ---- - -Treat shared-namespace metafields as writable by other installed apps in `shopify app security check` XSS checks, and add the `SHARED_NAMESPACE_METAFIELD_RENDER` agent check diff --git a/.changeset/app-security-static-only.md b/.changeset/app-security-static-only.md deleted file mode 100644 index d16613a2f45..00000000000 --- a/.changeset/app-security-static-only.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Keep `shopify app security check` agent verification static-only: agents prove findings by reading code, without running app code or making network calls diff --git a/.changeset/app-security-telemetry-disclosure.md b/.changeset/app-security-telemetry-disclosure.md deleted file mode 100644 index f5963fcdc0d..00000000000 --- a/.changeset/app-security-telemetry-disclosure.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": patch ---- - -Document command-specific telemetry in security command help. diff --git a/.changeset/app-security-unresolved-calibration.md b/.changeset/app-security-unresolved-calibration.md deleted file mode 100644 index 17a89f5f28d..00000000000 --- a/.changeset/app-security-unresolved-calibration.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Stop app security agent checks from leaving the React Router app template's metafield, authorization and frame-ancestors checks unresolved diff --git a/.changeset/app-security-untrusted-git-config.md b/.changeset/app-security-untrusted-git-config.md deleted file mode 100644 index 7a2f10d0077..00000000000 --- a/.changeset/app-security-untrusted-git-config.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -`shopify app security check` only reads from Git: it no longer starts file-system monitors or fetches missing objects, and it doesn't use repositories committed inside the scanned directory diff --git a/.changeset/app-webhook-trigger-json.md b/.changeset/app-webhook-trigger-json.md deleted file mode 100644 index c6557b24da3..00000000000 --- a/.changeset/app-webhook-trigger-json.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': minor -'@shopify/cli': minor ---- - -Add typed JSON output to `app webhook trigger`. diff --git a/.changeset/autocorrect-off-json.md b/.changeset/autocorrect-off-json.md deleted file mode 100644 index 8c8fd453c20..00000000000 --- a/.changeset/autocorrect-off-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `config autocorrect` commands diff --git a/.changeset/branded-loading-indicator.md b/.changeset/branded-loading-indicator.md deleted file mode 100644 index b3e4a73912f..00000000000 --- a/.changeset/branded-loading-indicator.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli-kit': patch ---- - -Replace task and app dev spinners with a branded Shopify loading indicator. diff --git a/.changeset/bundle-all-should-render-targets.md b/.changeset/bundle-all-should-render-targets.md deleted file mode 100644 index 33c6e67b237..00000000000 --- a/.changeset/bundle-all-should-render-targets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/app': patch ---- - -Bundle every UI extension `should_render` target instead of only the last one. diff --git a/.changeset/captured-process-failures.md b/.changeset/captured-process-failures.md deleted file mode 100644 index 23d095ec8bb..00000000000 --- a/.changeset/captured-process-failures.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Reject captured process startup failures and signal termination instead of reporting exit code zero. diff --git a/.changeset/clean-themes-stay.md b/.changeset/clean-themes-stay.md deleted file mode 100644 index 7ca859d1c24..00000000000 --- a/.changeset/clean-themes-stay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/theme': patch ---- - -Keep theme pull files inside the selected theme directory. diff --git a/.changeset/cli-json-app-build.md b/.changeset/cli-json-app-build.md deleted file mode 100644 index 02e6fce6e2b..00000000000 --- a/.changeset/cli-json-app-build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add JSON status output to app build. diff --git a/.changeset/cli-reliability-fixes.md b/.changeset/cli-reliability-fixes.md new file mode 100644 index 00000000000..6a94e32073f --- /dev/null +++ b/.changeset/cli-reliability-fixes.md @@ -0,0 +1,5 @@ +--- +'@shopify/cli-kit': patch +--- + +Retry throttled API requests, report process failures correctly, and keep login available when the browser cannot open. diff --git a/.changeset/cli-security-fixes.md b/.changeset/cli-security-fixes.md new file mode 100644 index 00000000000..7ed1b2c9299 --- /dev/null +++ b/.changeset/cli-security-fixes.md @@ -0,0 +1,7 @@ +--- +'@shopify/cli': patch +'@shopify/cli-kit': patch +'@shopify/plugin-cloudflare': patch +--- + +Protect webhook secrets in debug output, prevent GraphQL cache reuse across tokens, and harden GraphiQL and local command execution. diff --git a/.changeset/doc-fetch-json-output.md b/.changeset/doc-fetch-json-output.md deleted file mode 100644 index f270d0cf1b5..00000000000 --- a/.changeset/doc-fetch-json-output.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output and schema discovery to `doc fetch`. diff --git a/.changeset/doc-search-json-output.md b/.changeset/doc-search-json-output.md deleted file mode 100644 index dfb6525d650..00000000000 --- a/.changeset/doc-search-json-output.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output and schema discovery to `doc search`. diff --git a/.changeset/empty-automation-token-variable.md b/.changeset/empty-automation-token-variable.md deleted file mode 100644 index 84df421ca6e..00000000000 --- a/.changeset/empty-automation-token-variable.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Fail with a clear error, instead of logging in with your Shopify account, when `SHOPIFY_APP_AUTOMATION_TOKEN` or `SHOPIFY_CLI_PARTNERS_TOKEN` is set but empty diff --git a/.changeset/fix-legacy-ui-extension-migration.md b/.changeset/fix-legacy-ui-extension-migration.md deleted file mode 100644 index d6e81a3d76c..00000000000 --- a/.changeset/fix-legacy-ui-extension-migration.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': patch ---- - -Fix migration detection for legacy Checkout and POS UI extensions in App Management apps. diff --git a/.changeset/function-info-json-contract.md b/.changeset/function-info-json-contract.md deleted file mode 100644 index 884d8087a9b..00000000000 --- a/.changeset/function-info-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Wrap `app function info --json` in `function`, expose targets as an array, and use null for unavailable fields. diff --git a/.changeset/function-json.md b/.changeset/function-json.md deleted file mode 100644 index b9ff8963dba..00000000000 --- a/.changeset/function-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app function` commands diff --git a/.changeset/function-replay-json-contract.md b/.changeset/function-replay-json-contract.md deleted file mode 100644 index 9d8534b7345..00000000000 --- a/.changeset/function-replay-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Buffer finite `app function replay` text output until completion and require `--no-watch` for validated JSON output with structured diagnostics. diff --git a/.changeset/function-run-json-contract.md b/.changeset/function-run-json-contract.md deleted file mode 100644 index 1a180bd6bfb..00000000000 --- a/.changeset/function-run-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Buffer `app function run` text output until completion and validate JSON output with structured errors, stderr diagnostics, and nonzero exits for failed executions. diff --git a/.changeset/generate-extension-json-output.md b/.changeset/generate-extension-json-output.md deleted file mode 100644 index 75eb6186be0..00000000000 --- a/.changeset/generate-extension-json-output.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app generate extension`. diff --git a/.changeset/graphiql-inline-script-json.md b/.changeset/graphiql-inline-script-json.md deleted file mode 100644 index 7dd907816bb..00000000000 --- a/.changeset/graphiql-inline-script-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Serialize the GraphiQL initial query and variables as HTML-safe JSON before they are placed in the page's inline script. diff --git a/.changeset/graphql-cache-principal-key.md b/.changeset/graphql-cache-principal-key.md deleted file mode 100644 index 923206f7270..00000000000 --- a/.changeset/graphql-cache-principal-key.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Partition the GraphQL response cache by a hash of the endpoint URL and access token. Existing cache entries are not reused, so each cached query is fetched again once. diff --git a/.changeset/headless-open-url-crash.md b/.changeset/headless-open-url-crash.md deleted file mode 100644 index 14b8c82ca65..00000000000 --- a/.changeset/headless-open-url-crash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Don't crash `shopify auth login` when the browser can't be opened (for example, `spawn xdg-open ENOENT` in a headless container). The CLI now prints the login link and keeps waiting for you to approve it in any browser. diff --git a/.changeset/json-app-channel-config.md b/.changeset/json-app-channel-config.md deleted file mode 100644 index b6a9d8f0789..00000000000 --- a/.changeset/json-app-channel-config.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Return a success status and absolute file path in `app import channel-config --json`. diff --git a/.changeset/json-app-deploy.md b/.changeset/json-app-deploy.md deleted file mode 100644 index 246fbde6d55..00000000000 --- a/.changeset/json-app-deploy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app deploy`. diff --git a/.changeset/json-app-init.md b/.changeset/json-app-init.md deleted file mode 100644 index f86c1ed9cd7..00000000000 --- a/.changeset/json-app-init.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to `app init`. diff --git a/.changeset/json-app-release.md b/.changeset/json-app-release.md deleted file mode 100644 index 8fff9b67391..00000000000 --- a/.changeset/json-app-release.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add typed JSON output to app release. diff --git a/.changeset/json-success-diagnostics.md b/.changeset/json-success-diagnostics.md deleted file mode 100644 index 8748ecd86a5..00000000000 --- a/.changeset/json-success-diagnostics.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/cli': patch -'@shopify/cli-kit': patch ---- - -Route success banners through JSON diagnostics. diff --git a/.changeset/keypress-accepted-keys.md b/.changeset/keypress-accepted-keys.md deleted file mode 100644 index aef7cdc7589..00000000000 --- a/.changeset/keypress-accepted-keys.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': minor ---- - -`keypress` accepts a `keys` option: only those keys end the wait, and other keys are ignored. `keypress` now sets raw mode back to its earlier state, and it also detects Ctrl+C when an Ink renderer has set the stdin encoding. diff --git a/.changeset/liquid-unsafe-render-schema-types.md b/.changeset/liquid-unsafe-render-schema-types.md deleted file mode 100644 index 23243add12d..00000000000 --- a/.changeset/liquid-unsafe-render-schema-types.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/app': patch -'@shopify/cli': patch ---- - -Stop `shopify app security check` from flagging inert schema-typed app block settings (checkbox, range, and select/radio with safe option values) under LIQUID_UNSAFE_RENDER when they render as element text or safe quoted attributes diff --git a/.changeset/native-path-containment.md b/.changeset/native-path-containment.md deleted file mode 100644 index 2c20f9a5566..00000000000 --- a/.changeset/native-path-containment.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': minor ---- - -Add a native option to isSubpath for checking containment using filesystem path semantics. diff --git a/.changeset/normalize-migration-status-json.md b/.changeset/normalize-migration-status-json.md deleted file mode 100644 index 8960b227897..00000000000 --- a/.changeset/normalize-migration-status-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": major ---- - -Normalize migration status JSON with gid and shopGid identifiers and flat per-shop results. diff --git a/.changeset/normalize-migration-submission-json.md b/.changeset/normalize-migration-submission-json.md deleted file mode 100644 index e097dfabd38..00000000000 --- a/.changeset/normalize-migration-submission-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": major ---- - -Normalize migration submission JSON with outcome statuses, changed, GID fields, flattened results, fieldPath errors, and successful cancellation results. diff --git a/.changeset/normalize-migration-subscription-list-json.md b/.changeset/normalize-migration-subscription-list-json.md deleted file mode 100644 index cadfa7ac421..00000000000 --- a/.changeset/normalize-migration-subscription-list-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": major ---- - -Normalize migration subscription JSON with shopGid identifiers, whole-second UTC instants, and calendar dates. diff --git a/.changeset/normalize-migration-unscheduling-json.md b/.changeset/normalize-migration-unscheduling-json.md deleted file mode 100644 index 4546004f26d..00000000000 --- a/.changeset/normalize-migration-unscheduling-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@shopify/cli": major ---- - -Normalize migration unscheduling JSON with explicit outcomes, successful cancellation, GID fields, and flattened results. diff --git a/.changeset/normalize-subscription-migration-json.md b/.changeset/normalize-subscription-migration-json.md deleted file mode 100644 index 9e0982fb8f2..00000000000 --- a/.changeset/normalize-subscription-migration-json.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@shopify/cli": major -"@shopify/cli-kit": minor ---- - -Normalize migration cancellation JSON and share error serialization to preserve completed batch outcomes, error classifications, and recovery guidance. diff --git a/.changeset/plugin-cloudflare-tar-argv.md b/.changeset/plugin-cloudflare-tar-argv.md deleted file mode 100644 index 64f4faf9e77..00000000000 --- a/.changeset/plugin-cloudflare-tar-argv.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/plugin-cloudflare': patch ---- - -Run the macOS cloudflared archive extraction with an argument list instead of a shell command string. diff --git a/.changeset/preserve-captured-newlines.md b/.changeset/preserve-captured-newlines.md deleted file mode 100644 index cfe8e68ad95..00000000000 --- a/.changeset/preserve-captured-newlines.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Support writable streams and optional final-newline preservation when capturing process output. diff --git a/.changeset/quiet-upgrades-report.md b/.changeset/quiet-upgrades-report.md deleted file mode 100644 index 28912c7d24a..00000000000 --- a/.changeset/quiet-upgrades-report.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor -'@shopify/cli-kit': minor ---- -Add typed JSON output to `shopify upgrade`. diff --git a/.changeset/security-check-usage-examples.md b/.changeset/security-check-usage-examples.md deleted file mode 100644 index d90a4cc40a1..00000000000 --- a/.changeset/security-check-usage-examples.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': patch ---- - -Add usage examples to `shopify app security check` help. diff --git a/.changeset/service-account-token.md b/.changeset/service-account-token.md index 6ba56532dd1..d7e2c6c212d 100644 --- a/.changeset/service-account-token.md +++ b/.changeset/service-account-token.md @@ -2,4 +2,4 @@ '@shopify/cli-kit': minor --- -Add `SHOPIFY_SERVICE_ACCOUNT_TOKEN` to run `shopify organization list`, `shopify store list`, `shopify store create dev`, `shopify store info`, `shopify store delete` and app commands with a service account token. It can't be set together with `SHOPIFY_APP_AUTOMATION_TOKEN` or `SHOPIFY_CLI_PARTNERS_TOKEN`, and commands that need your Shopify account or a store's Admin API access, such as `shopify store execute`, refuse to run while it's set. +Add `SHOPIFY_SERVICE_ACCOUNT_TOKEN` for app, store, and organization automation; it replaces the deprecated `SHOPIFY_APP_AUTOMATION_TOKEN` and `SHOPIFY_CLI_PARTNERS_TOKEN`, which remain supported. diff --git a/.changeset/store-execute-response-extensions.md b/.changeset/store-execute-response-extensions.md deleted file mode 100644 index 6b110783e22..00000000000 --- a/.changeset/store-execute-response-extensions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Preserve GraphQL extensions in `store execute --json` results and error details, plus partial data on failure. Query data moves from the root to `.data` when using `--json`, including with `--output-file`. diff --git a/.changeset/theme-access-permanent-domain.md b/.changeset/theme-access-permanent-domain.md deleted file mode 100644 index 410e350dea6..00000000000 --- a/.changeset/theme-access-permanent-domain.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/cli-kit': patch -'@shopify/theme': patch ---- - -Fix Theme Access authentication to work with all of a store’s domains. diff --git a/.changeset/theme-check-json-contract.md b/.changeset/theme-check-json-contract.md deleted file mode 100644 index 4782eab7bab..00000000000 --- a/.changeset/theme-check-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Return `valid` and flat `issues` with camelCase zero-based positions from Theme Check JSON output, retaining every requested environment and failing blocking validations. diff --git a/.changeset/theme-commands-json.md b/.changeset/theme-commands-json.md deleted file mode 100644 index f672c372ab6..00000000000 --- a/.changeset/theme-commands-json.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': minor ---- - -Add structured JSON output to finite theme operations, including metafield downloads. diff --git a/.changeset/theme-dev-market-redirect-preview.md b/.changeset/theme-dev-market-redirect-preview.md deleted file mode 100644 index a6cd2691197..00000000000 --- a/.changeset/theme-dev-market-redirect-preview.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/theme': patch ---- - -Fix `theme dev` showing the live theme instead of the development theme on stores where every market uses a subfolder. Sessions using a Theme Access password are not yet covered. diff --git a/.changeset/theme-development-fixes.md b/.changeset/theme-development-fixes.md new file mode 100644 index 00000000000..75dad5c0a93 --- /dev/null +++ b/.changeset/theme-development-fixes.md @@ -0,0 +1,7 @@ +--- +'@shopify/app': patch +'@shopify/cli-kit': minor +'@shopify/theme': patch +--- + +Fix development theme previews on stores with market subfolders when using account authentication, improve Theme Access authentication, keep pulled files inside the theme directory, and support browser identity verification. diff --git a/.changeset/theme-duplicate-json-contract.md b/.changeset/theme-duplicate-json-contract.md deleted file mode 100644 index 52482e6191f..00000000000 --- a/.changeset/theme-duplicate-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Use string IDs, camelCase resources, cancellation results, and fatal error envelopes for `theme duplicate --json`. diff --git a/.changeset/theme-info-json-contract.md b/.changeset/theme-info-json-contract.md deleted file mode 100644 index f0b975f1389..00000000000 --- a/.changeset/theme-info-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Use camelCase fields, string theme IDs, null unavailable values, and one complete environment batch object in `theme info --json`. diff --git a/.changeset/theme-list-json-contract.md b/.changeset/theme-list-json-contract.md deleted file mode 100644 index 83e569126ac..00000000000 --- a/.changeset/theme-list-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Return `{themes}` with string IDs and complete environment batches from `theme list --json`, excluding internal runtime fields. diff --git a/.changeset/theme-mutations-missing-scope.md b/.changeset/theme-mutations-missing-scope.md deleted file mode 100644 index fa65debeb95..00000000000 --- a/.changeset/theme-mutations-missing-scope.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli-kit': patch ---- - -Show the missing theme access scope message for theme changes, as theme reads already do. diff --git a/.changeset/theme-open-json-contract.md b/.changeset/theme-open-json-contract.md deleted file mode 100644 index 91e90f10ba8..00000000000 --- a/.changeset/theme-open-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Use string IDs and camelCase links inside `theme open --json` resources, and emit only a fatal error when opening the browser fails. diff --git a/.changeset/theme-preview-json-contract.md b/.changeset/theme-preview-json-contract.md deleted file mode 100644 index edf26429585..00000000000 --- a/.changeset/theme-preview-json-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Return theme preview JSON as a strict `preview` resource with an opaque string `id` and retain every requested environment. diff --git a/.changeset/theme-profile-environments.md b/.changeset/theme-profile-environments.md deleted file mode 100644 index 473f9a8d34d..00000000000 --- a/.changeset/theme-profile-environments.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/cli': major ---- - -Wrap explicit environment results in `theme profile --json` while preserving native Speedscope profiles. diff --git a/.changeset/theme-push-json-contract.md b/.changeset/theme-push-json-contract.md deleted file mode 100644 index 93f3a4d10ce..00000000000 --- a/.changeset/theme-push-json-contract.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -"@shopify/cli": major ---- -Use string theme IDs, camelCase fields, complete environment batches and partial upload results in theme push JSON. diff --git a/.changeset/theme-trust-challenge.md b/.changeset/theme-trust-challenge.md deleted file mode 100644 index 1854acedd66..00000000000 --- a/.changeset/theme-trust-challenge.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@shopify/cli-kit': minor -'@shopify/theme': patch -'@shopify/app': patch ---- - -Handle Trust Battery identity challenges in theme commands. When Shopify asks you to verify your identity, the CLI opens the verification page in your browser and continues after you complete it. In CI, with `--no-input`, or with `--json`, the command stops and prints the verification link. `app dev` stops creating its host theme when you cancel the verification or it fails, instead of trying again. diff --git a/.changeset/typed-app-config-use.md b/.changeset/typed-app-config-use.md deleted file mode 100644 index fe04961a9fa..00000000000 --- a/.changeset/typed-app-config-use.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -'@shopify/cli': minor ---- -Add typed JSON output to app config use, pull, and link. diff --git a/.changeset/typed-app-config-validate.md b/.changeset/typed-app-config-validate.md deleted file mode 100644 index 7c51586e6ca..00000000000 --- a/.changeset/typed-app-config-validate.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -'@shopify/cli': major ---- -Rename app config validate JSON diagnostics to filePath and fieldPath, use null for unavailable fields, and report setup failures as fatal errors. diff --git a/.changeset/typed-app-env-pull.md b/.changeset/typed-app-env-pull.md deleted file mode 100644 index beae240d840..00000000000 --- a/.changeset/typed-app-env-pull.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -'@shopify/cli': minor ---- -Add typed JSON output to app env commands. diff --git a/.changeset/typed-json-output.md b/.changeset/typed-json-output.md new file mode 100644 index 00000000000..68c4a016087 --- /dev/null +++ b/.changeset/typed-json-output.md @@ -0,0 +1,7 @@ +--- +'@shopify/app': minor +'@shopify/cli': major +'@shopify/cli-kit': minor +--- + +Add typed JSON output across CLI commands; update scripts for the new schemas with `--json-schema`, read `store execute` query results from `.data`, and use `--no-watch` with `app function replay --json`. diff --git a/.changeset/webhook-debug-secret.md b/.changeset/webhook-debug-secret.md deleted file mode 100644 index afe4a590321..00000000000 --- a/.changeset/webhook-debug-secret.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/cli-kit': patch -'@shopify/cli': patch ---- - -Hide webhook shared secrets in GraphQL request diagnostics. diff --git a/.changeset/windows-working-directory-command.md b/.changeset/windows-working-directory-command.md deleted file mode 100644 index abdda8743bb..00000000000 --- a/.changeset/windows-working-directory-command.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@shopify/cli-kit': patch -'@shopify/cli': patch ---- - -Fix the check that stops the CLI from running a program found in the working directory on Windows