diff --git a/.changeset/remove-theme-serve-command.md b/.changeset/remove-theme-serve-command.md new file mode 100644 index 00000000000..9c9c560e9ec --- /dev/null +++ b/.changeset/remove-theme-serve-command.md @@ -0,0 +1,5 @@ +--- +'@shopify/theme': major +--- + +Remove the deprecated `shopify theme serve` command. Use `shopify theme dev` instead. diff --git a/packages/cli/oclif.manifest.json b/packages/cli/oclif.manifest.json index 1b72ee8d48e..57aa12022db 100644 --- a/packages/cli/oclif.manifest.json +++ b/packages/cli/oclif.manifest.json @@ -7854,219 +7854,6 @@ "strict": true, "summary": "Renames an existing theme." }, - "theme:serve": { - "aliases": [ - ], - "args": { - }, - "customPluginName": "@shopify/theme", - "description": "\n Uploads the current theme as the specified theme, or a \"development theme\" (https://shopify.dev/docs/themes/tools/cli#development-themes), to a store so you can preview it.\n\nThis command returns the following information:\n\n- A link to your development theme at http://127.0.0.1:9292. This URL can hot reload local changes to CSS and sections, or refresh the entire page when a file changes, enabling you to preview changes in real time using the store's data.\n\n You can specify a different network interface and port using `--host` and `--port`.\n\n- A link to the \"editor\" (https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.\n\n- A \"preview link\" (https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with other developers.\n\nIf you already have a development theme for your current environment, then this command replaces the development theme with your local theme. You can override this using the `--theme-editor-sync` flag.\n\n> Note: You can't preview checkout customizations using http://127.0.0.1:9292.\n\nDevelopment themes are deleted when you run `shopify auth logout`. If you need a preview link that can be used after you log out, then you should \"share\" (https://shopify.dev/docs/api/shopify-cli/theme/theme-share) your theme or \"push\" (https://shopify.dev/docs/api/shopify-cli/theme/theme-push) to an unpublished theme on your store.\n\nYou can run this command only in a directory that matches the \"default Shopify theme folder structure\" (https://shopify.dev/docs/themes/tools/cli#directory-structure).", - "descriptionWithMarkdown": "\n Uploads the current theme as the specified theme, or a [development theme](https://shopify.dev/docs/themes/tools/cli#development-themes), to a store so you can preview it.\n\nThis command returns the following information:\n\n- A link to your development theme at http://127.0.0.1:9292. This URL can hot reload local changes to CSS and sections, or refresh the entire page when a file changes, enabling you to preview changes in real time using the store's data.\n\n You can specify a different network interface and port using `--host` and `--port`.\n\n- A link to the [editor](https://shopify.dev/docs/themes/tools/online-editor) for the theme in the Shopify admin.\n\n- A [preview link](https://help.shopify.com/manual/online-store/themes/adding-themes#share-a-theme-preview-with-others) that you can share with other developers.\n\nIf you already have a development theme for your current environment, then this command replaces the development theme with your local theme. You can override this using the `--theme-editor-sync` flag.\n\n> Note: You can't preview checkout customizations using http://127.0.0.1:9292.\n\nDevelopment themes are deleted when you run `shopify auth logout`. If you need a preview link that can be used after you log out, then you should [share](https://shopify.dev/docs/api/shopify-cli/theme/theme-share) your theme or [push](https://shopify.dev/docs/api/shopify-cli/theme/theme-push) to an unpublished theme on your store.\n\nYou can run this command only in a directory that matches the [default Shopify theme folder structure](https://shopify.dev/docs/themes/tools/cli#directory-structure).", - "flags": { - "allow-live": { - "allowNo": false, - "char": "a", - "description": "Allow development on a live theme.", - "env": "SHOPIFY_FLAG_ALLOW_LIVE", - "name": "allow-live", - "type": "boolean" - }, - "environment": { - "char": "e", - "description": "The environment to apply to the current command.", - "env": "SHOPIFY_FLAG_ENVIRONMENT", - "hasDynamicHelp": false, - "multiple": true, - "name": "environment", - "type": "option" - }, - "error-overlay": { - "default": "default", - "description": "Controls the visibility of the error overlay when an theme asset upload fails:\n- silent Prevents the error overlay from appearing.\n- default Displays the error overlay.\n ", - "env": "SHOPIFY_FLAG_ERROR_OVERLAY", - "hasDynamicHelp": false, - "multiple": false, - "name": "error-overlay", - "options": [ - "silent", - "default" - ], - "type": "option" - }, - "force": { - "allowNo": false, - "char": "f", - "description": "Proceed without confirmation, if current directory does not seem to be theme directory.", - "env": "SHOPIFY_FLAG_FORCE", - "hidden": true, - "name": "force", - "type": "boolean" - }, - "host": { - "description": "Set which network interface the web server listens on. The default value is 127.0.0.1.", - "env": "SHOPIFY_FLAG_HOST", - "hasDynamicHelp": false, - "multiple": false, - "name": "host", - "type": "option" - }, - "ignore": { - "char": "x", - "description": "Skip hot reloading any files that match the specified pattern.", - "env": "SHOPIFY_FLAG_IGNORE", - "hasDynamicHelp": false, - "multiple": true, - "name": "ignore", - "type": "option" - }, - "listing": { - "description": "The listing preset to use for multi-preset themes. Applies preset files from listings/[preset-name] directory.", - "env": "SHOPIFY_FLAG_LISTING", - "hasDynamicHelp": false, - "multiple": false, - "name": "listing", - "type": "option" - }, - "live-reload": { - "default": "hot-reload", - "description": "The live reload mode switches the server behavior when a file is modified:\n- hot-reload Hot reloads local changes to CSS and sections (default)\n- full-page Always refreshes the entire page\n- off Deactivate live reload", - "env": "SHOPIFY_FLAG_LIVE_RELOAD", - "hasDynamicHelp": false, - "multiple": false, - "name": "live-reload", - "options": [ - "hot-reload", - "full-page", - "off" - ], - "type": "option" - }, - "no-color": { - "allowNo": false, - "description": "Disable color output.", - "env": "SHOPIFY_FLAG_NO_COLOR", - "hidden": false, - "name": "no-color", - "type": "boolean" - }, - "nodelete": { - "allowNo": false, - "char": "n", - "description": "Prevents files from being deleted in the remote theme when a file has been deleted locally. This applies to files that are deleted while the command is running, and files that have been deleted locally before the command is run.", - "env": "SHOPIFY_FLAG_NODELETE", - "name": "nodelete", - "type": "boolean" - }, - "notify": { - "description": "The file path or URL. The file path is to a file that you want updated on idle. The URL path is where you want a webhook posted to report on file changes.", - "env": "SHOPIFY_FLAG_NOTIFY", - "hasDynamicHelp": false, - "multiple": false, - "name": "notify", - "type": "option" - }, - "only": { - "char": "o", - "description": "Hot reload only files that match the specified pattern.", - "env": "SHOPIFY_FLAG_ONLY", - "hasDynamicHelp": false, - "multiple": true, - "name": "only", - "type": "option" - }, - "open": { - "allowNo": false, - "description": "Automatically launch the theme preview in your default web browser.", - "env": "SHOPIFY_FLAG_OPEN", - "name": "open", - "type": "boolean" - }, - "password": { - "description": "Password generated from the Theme Access app or an Admin API token.", - "env": "SHOPIFY_CLI_THEME_TOKEN", - "hasDynamicHelp": false, - "multiple": false, - "name": "password", - "type": "option" - }, - "path": { - "description": "The path where you want to run the command. Defaults to the current working directory.", - "env": "SHOPIFY_FLAG_PATH", - "hasDynamicHelp": false, - "multiple": false, - "name": "path", - "noCacheDefault": true, - "type": "option" - }, - "poll": { - "allowNo": false, - "description": "Force polling to detect file changes.", - "env": "SHOPIFY_FLAG_POLL", - "hidden": true, - "name": "poll", - "type": "boolean" - }, - "port": { - "description": "Local port to serve theme preview from.", - "env": "SHOPIFY_FLAG_PORT", - "hasDynamicHelp": false, - "multiple": false, - "name": "port", - "type": "option" - }, - "store": { - "char": "s", - "description": "Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com).", - "env": "SHOPIFY_FLAG_STORE", - "hasDynamicHelp": false, - "multiple": false, - "name": "store", - "type": "option" - }, - "store-password": { - "description": "The password for storefronts with password protection.", - "env": "SHOPIFY_FLAG_STORE_PASSWORD", - "hasDynamicHelp": false, - "multiple": false, - "name": "store-password", - "type": "option" - }, - "theme": { - "char": "t", - "description": "Theme ID or name of the remote theme.", - "env": "SHOPIFY_FLAG_THEME_ID", - "hasDynamicHelp": false, - "multiple": false, - "name": "theme", - "type": "option" - }, - "theme-editor-sync": { - "allowNo": false, - "description": "Synchronize Theme Editor updates in the local theme files.", - "env": "SHOPIFY_FLAG_THEME_EDITOR_SYNC", - "name": "theme-editor-sync", - "type": "boolean" - }, - "verbose": { - "allowNo": false, - "description": "Increase the verbosity of the output.", - "env": "SHOPIFY_FLAG_VERBOSE", - "hidden": false, - "name": "verbose", - "type": "boolean" - } - }, - "hasDynamicHelp": false, - "hidden": true, - "hiddenAliases": [ - ], - "id": "theme:serve", - "multiEnvironmentsFlags": null, - "pluginAlias": "@shopify/cli", - "pluginName": "@shopify/cli", - "pluginType": "core", - "summary": "Uploads the current theme as a development theme to the connected store, then prints theme editor and preview URLs to your terminal. While running, changes will push to the store in real time." - }, "theme:share": { "aliases": [ ], diff --git a/packages/theme/src/cli/commands/theme/serve.ts b/packages/theme/src/cli/commands/theme/serve.ts deleted file mode 100644 index df5b755eb81..00000000000 --- a/packages/theme/src/cli/commands/theme/serve.ts +++ /dev/null @@ -1,15 +0,0 @@ -import Dev from './dev.js' -import {renderWarning} from '@shopify/cli-kit/node/ui' - -export default class Serve extends Dev { - static hidden = true - - async run() { - renderWarning({ - headline: ['The', {command: 'shopify theme serve'}, 'command is deprecated.'], - body: ['Use', {command: 'shopify theme dev'}, 'instead.'], - }) - - await super.run() - } -} diff --git a/packages/theme/src/index.ts b/packages/theme/src/index.ts index c354592360c..31e99bce476 100644 --- a/packages/theme/src/index.ts +++ b/packages/theme/src/index.ts @@ -16,7 +16,6 @@ import Preview from './cli/commands/theme/preview.js' import Pull from './cli/commands/theme/pull.js' import Push from './cli/commands/theme/push.js' import Rename from './cli/commands/theme/rename.js' -import Serve from './cli/commands/theme/serve.js' import Share from './cli/commands/theme/share.js' const COMMANDS = { @@ -38,7 +37,6 @@ const COMMANDS = { 'theme:pull': Pull, 'theme:push': Push, 'theme:rename': Rename, - 'theme:serve': Serve, 'theme:share': Share, }