From cc2e2d5f3a59f46116eb1715063d22f6eb02374e Mon Sep 17 00:00:00 2001 From: Guilherme Carreiro Date: Mon, 16 Sep 2024 10:10:50 +0200 Subject: [PATCH] * Rename `--stable` to `--legacy` * Add info banner in the new `shopify theme dev` command (mentioning the --legacy flag) * Update docs --- .changeset/pretty-olives-promise.md | 2 +- .../commands/interfaces/app-dev.interface.ts | 6 -- .../commands/interfaces/app-logs.interface.ts | 6 -- .../interfaces/theme-console.interface.ts | 6 -- .../interfaces/theme-dev.interface.ts | 6 -- .../generated/generated_docs_data.json | 44 +------- .../generated/generated_static_pages.json | 31 ------ docs-shopify.dev/static/cli.doc.ts | 36 ------- packages/app/src/cli/commands/app/dev.ts | 7 +- packages/app/src/cli/commands/app/logs.ts | 2 +- packages/cli/README.md | 22 ++-- packages/cli/oclif.manifest.json | 101 +++++++++--------- .../theme/src/cli/commands/theme/console.ts | 10 +- packages/theme/src/cli/commands/theme/dev.ts | 13 +-- .../theme/src/cli/commands/theme/pull.test.ts | 2 +- packages/theme/src/cli/commands/theme/pull.ts | 8 +- .../theme/src/cli/commands/theme/push.test.ts | 28 +++-- packages/theme/src/cli/commands/theme/push.ts | 9 +- packages/theme/src/cli/services/dev.test.ts | 10 +- packages/theme/src/cli/services/dev.ts | 15 ++- 20 files changed, 120 insertions(+), 244 deletions(-) diff --git a/.changeset/pretty-olives-promise.md b/.changeset/pretty-olives-promise.md index 5b3c54022e7..a6ebacd954d 100644 --- a/.changeset/pretty-olives-promise.md +++ b/.changeset/pretty-olives-promise.md @@ -4,4 +4,4 @@ '@shopify/cli': minor --- -Default to Typescript implementation for theme commands. Legacy implementation is stil available via the `--stable` flag. +Default to Typescript implementation for theme commands. Legacy implementation is stil available via the `--legacy` flag. diff --git a/docs-shopify.dev/commands/interfaces/app-dev.interface.ts b/docs-shopify.dev/commands/interfaces/app-dev.interface.ts index 00e6c1620e6..49abf044d22 100644 --- a/docs-shopify.dev/commands/interfaces/app-dev.interface.ts +++ b/docs-shopify.dev/commands/interfaces/app-dev.interface.ts @@ -54,12 +54,6 @@ export interface appdev { */ '--skip-dependencies-installation'?: '' - /** - * Use the legacy Ruby implementation for managing theme app extensions. - * @environment SHOPIFY_FLAG_STABLE - */ - '--stable'?: '' - /** * Store URL. Must be an existing development or Shopify Plus sandbox store. * @environment SHOPIFY_FLAG_STORE diff --git a/docs-shopify.dev/commands/interfaces/app-logs.interface.ts b/docs-shopify.dev/commands/interfaces/app-logs.interface.ts index 62845870f0f..954067bdf5e 100644 --- a/docs-shopify.dev/commands/interfaces/app-logs.interface.ts +++ b/docs-shopify.dev/commands/interfaces/app-logs.interface.ts @@ -42,12 +42,6 @@ export interface applogs { */ '--source '?: string - /** - * Use the legacy Ruby implementation for managing theme app extensions. - * @environment SHOPIFY_FLAG_STABLE - */ - '--stable'?: '' - /** * Filters output to the specified status (success or failure). * @environment SHOPIFY_FLAG_STATUS diff --git a/docs-shopify.dev/commands/interfaces/theme-console.interface.ts b/docs-shopify.dev/commands/interfaces/theme-console.interface.ts index 982cf800152..ccab48c2250 100644 --- a/docs-shopify.dev/commands/interfaces/theme-console.interface.ts +++ b/docs-shopify.dev/commands/interfaces/theme-console.interface.ts @@ -24,12 +24,6 @@ export interface themeconsole { */ '--port '?: string - /** - * Use the legacy Ruby implementation for the `theme console` command. - * @environment SHOPIFY_FLAG_STABLE - */ - '--stable'?: '' - /** * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com). * @environment SHOPIFY_FLAG_STORE diff --git a/docs-shopify.dev/commands/interfaces/theme-dev.interface.ts b/docs-shopify.dev/commands/interfaces/theme-dev.interface.ts index 4bc12b51ab2..a3b2bf38893 100644 --- a/docs-shopify.dev/commands/interfaces/theme-dev.interface.ts +++ b/docs-shopify.dev/commands/interfaces/theme-dev.interface.ts @@ -81,12 +81,6 @@ export interface themedev { */ '--port '?: string - /** - * Use the legacy Ruby implementation for the `theme dev` command. - * @environment SHOPIFY_FLAG_STABLE - */ - '--stable'?: '' - /** * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com). * @environment SHOPIFY_FLAG_STORE diff --git a/docs-shopify.dev/generated/generated_docs_data.json b/docs-shopify.dev/generated/generated_docs_data.json index 16495752cd2..f66c95f71a7 100644 --- a/docs-shopify.dev/generated/generated_docs_data.json +++ b/docs-shopify.dev/generated/generated_docs_data.json @@ -486,15 +486,6 @@ "isOptional": true, "environmentValue": "SHOPIFY_FLAG_SKIP_DEPENDENCIES_INSTALLATION" }, - { - "filePath": "docs-shopify.dev/commands/interfaces/app-dev.interface.ts", - "syntaxKind": "PropertySignature", - "name": "--stable", - "value": "\"\"", - "description": "Use the legacy Ruby implementation for managing theme app extensions.", - "isOptional": true, - "environmentValue": "SHOPIFY_FLAG_STABLE" - }, { "filePath": "docs-shopify.dev/commands/interfaces/app-dev.interface.ts", "syntaxKind": "PropertySignature", @@ -559,7 +550,7 @@ "environmentValue": "SHOPIFY_FLAG_THEME" } ], - "value": "export interface appdev {\n /**\n * Resource URL for checkout UI extension. Format: \"/cart/{productVariantID}:{productQuantity}\"\n * @environment SHOPIFY_FLAG_CHECKOUT_CART_URL\n */\n '--checkout-cart-url '?: string\n\n /**\n * The Client ID of your app.\n * @environment SHOPIFY_FLAG_CLIENT_ID\n */\n '--client-id '?: string\n\n /**\n * The name of the app configuration.\n * @environment SHOPIFY_FLAG_APP_CONFIG\n */\n '-c, --config '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * Skips the Partners Dashboard URL update step.\n * @environment SHOPIFY_FLAG_NO_UPDATE\n */\n '--no-update'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NOTIFY\n */\n '--notify '?: string\n\n /**\n * The path to your app directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Reset all your settings.\n * @environment SHOPIFY_FLAG_RESET\n */\n '--reset'?: ''\n\n /**\n * Skips the installation of dependencies. Deprecated, use workspaces instead.\n * @environment SHOPIFY_FLAG_SKIP_DEPENDENCIES_INSTALLATION\n */\n '--skip-dependencies-installation'?: ''\n\n /**\n * Use the legacy Ruby implementation for managing theme app extensions.\n * @environment SHOPIFY_FLAG_STABLE\n */\n '--stable'?: ''\n\n /**\n * Store URL. Must be an existing development or Shopify Plus sandbox store.\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * Resource URL for subscription UI extension. Format: \"/products/{productId}\"\n * @environment SHOPIFY_FLAG_SUBSCRIPTION_PRODUCT_URL\n */\n '--subscription-product-url '?: string\n\n /**\n * Theme ID or name of the theme app extension host theme.\n * @environment SHOPIFY_FLAG_THEME\n */\n '-t, --theme '?: string\n\n /**\n * Local port of the theme app extension development server.\n * @environment SHOPIFY_FLAG_THEME_APP_EXTENSION_PORT\n */\n '--theme-app-extension-port '?: string\n\n /**\n * Use a custom tunnel, it must be running before executing dev. Format: \"https://my-tunnel-url:port\".\n * @environment SHOPIFY_FLAG_TUNNEL_URL\n */\n '--tunnel-url '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" + "value": "export interface appdev {\n /**\n * Resource URL for checkout UI extension. Format: \"/cart/{productVariantID}:{productQuantity}\"\n * @environment SHOPIFY_FLAG_CHECKOUT_CART_URL\n */\n '--checkout-cart-url '?: string\n\n /**\n * The Client ID of your app.\n * @environment SHOPIFY_FLAG_CLIENT_ID\n */\n '--client-id '?: string\n\n /**\n * The name of the app configuration.\n * @environment SHOPIFY_FLAG_APP_CONFIG\n */\n '-c, --config '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * Skips the Partners Dashboard URL update step.\n * @environment SHOPIFY_FLAG_NO_UPDATE\n */\n '--no-update'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NOTIFY\n */\n '--notify '?: string\n\n /**\n * The path to your app directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Reset all your settings.\n * @environment SHOPIFY_FLAG_RESET\n */\n '--reset'?: ''\n\n /**\n * Skips the installation of dependencies. Deprecated, use workspaces instead.\n * @environment SHOPIFY_FLAG_SKIP_DEPENDENCIES_INSTALLATION\n */\n '--skip-dependencies-installation'?: ''\n\n /**\n * Store URL. Must be an existing development or Shopify Plus sandbox store.\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * Resource URL for subscription UI extension. Format: \"/products/{productId}\"\n * @environment SHOPIFY_FLAG_SUBSCRIPTION_PRODUCT_URL\n */\n '--subscription-product-url '?: string\n\n /**\n * Theme ID or name of the theme app extension host theme.\n * @environment SHOPIFY_FLAG_THEME\n */\n '-t, --theme '?: string\n\n /**\n * Local port of the theme app extension development server.\n * @environment SHOPIFY_FLAG_THEME_APP_EXTENSION_PORT\n */\n '--theme-app-extension-port '?: string\n\n /**\n * Use a custom tunnel, it must be running before executing dev. Format: \"https://my-tunnel-url:port\".\n * @environment SHOPIFY_FLAG_TUNNEL_URL\n */\n '--tunnel-url '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" } } } @@ -1727,15 +1718,6 @@ "isOptional": true, "environmentValue": "SHOPIFY_FLAG_SOURCE" }, - { - "filePath": "docs-shopify.dev/commands/interfaces/app-logs.interface.ts", - "syntaxKind": "PropertySignature", - "name": "--stable", - "value": "\"\"", - "description": "Use the legacy Ruby implementation for managing theme app extensions.", - "isOptional": true, - "environmentValue": "SHOPIFY_FLAG_STABLE" - }, { "filePath": "docs-shopify.dev/commands/interfaces/app-logs.interface.ts", "syntaxKind": "PropertySignature", @@ -1782,7 +1764,7 @@ "environmentValue": "SHOPIFY_FLAG_STORE" } ], - "value": "export interface applogs {\n /**\n * The Client ID of your app.\n * @environment SHOPIFY_FLAG_CLIENT_ID\n */\n '--client-id '?: string\n\n /**\n * The name of the app configuration.\n * @environment SHOPIFY_FLAG_APP_CONFIG\n */\n '-c, --config '?: string\n\n /**\n * Log the run result as a JSON object.\n * @environment SHOPIFY_FLAG_JSON\n */\n '-j, --json'?: ''\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * The path to your app directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Reset all your settings.\n * @environment SHOPIFY_FLAG_RESET\n */\n '--reset'?: ''\n\n /**\n * Filters output to the specified log source.\n * @environment SHOPIFY_FLAG_SOURCE\n */\n '--source '?: string\n\n /**\n * Use the legacy Ruby implementation for managing theme app extensions.\n * @environment SHOPIFY_FLAG_STABLE\n */\n '--stable'?: ''\n\n /**\n * Filters output to the specified status (success or failure).\n * @environment SHOPIFY_FLAG_STATUS\n */\n '--status '?: string\n\n /**\n * Store URL. Must be an existing development or Shopify Plus sandbox store.\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" + "value": "export interface applogs {\n /**\n * The Client ID of your app.\n * @environment SHOPIFY_FLAG_CLIENT_ID\n */\n '--client-id '?: string\n\n /**\n * The name of the app configuration.\n * @environment SHOPIFY_FLAG_APP_CONFIG\n */\n '-c, --config '?: string\n\n /**\n * Log the run result as a JSON object.\n * @environment SHOPIFY_FLAG_JSON\n */\n '-j, --json'?: ''\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * The path to your app directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Reset all your settings.\n * @environment SHOPIFY_FLAG_RESET\n */\n '--reset'?: ''\n\n /**\n * Filters output to the specified log source.\n * @environment SHOPIFY_FLAG_SOURCE\n */\n '--source '?: string\n\n /**\n * Filters output to the specified status (success or failure).\n * @environment SHOPIFY_FLAG_STATUS\n */\n '--status '?: string\n\n /**\n * Store URL. Must be an existing development or Shopify Plus sandbox store.\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" } } } @@ -4609,15 +4591,6 @@ "isOptional": true, "environmentValue": "SHOPIFY_FLAG_PORT" }, - { - "filePath": "docs-shopify.dev/commands/interfaces/theme-console.interface.ts", - "syntaxKind": "PropertySignature", - "name": "--stable", - "value": "\"\"", - "description": "Use the legacy Ruby implementation for the `theme console` command.", - "isOptional": true, - "environmentValue": "SHOPIFY_FLAG_STABLE" - }, { "filePath": "docs-shopify.dev/commands/interfaces/theme-console.interface.ts", "syntaxKind": "PropertySignature", @@ -4664,7 +4637,7 @@ "environmentValue": "SHOPIFY_FLAG_STORE" } ], - "value": "export interface themeconsole {\n /**\n * The environment to apply to the current command.\n * @environment SHOPIFY_FLAG_ENVIRONMENT\n */\n '-e, --environment '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * Password generated from the Theme Access app.\n * @environment SHOPIFY_CLI_THEME_TOKEN\n */\n '--password '?: string\n\n /**\n * Local port to serve authentication service.\n * @environment SHOPIFY_FLAG_PORT\n */\n '--port '?: string\n\n /**\n * Use the legacy Ruby implementation for the `theme console` command.\n * @environment SHOPIFY_FLAG_STABLE\n */\n '--stable'?: ''\n\n /**\n * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com).\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * The password for storefronts with password protection.\n * @environment SHOPIFY_FLAG_STORE_PASSWORD\n */\n '--store-password '?: string\n\n /**\n * The url to be used as context\n * @environment SHOPIFY_FLAG_URL\n */\n '--url '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" + "value": "export interface themeconsole {\n /**\n * The environment to apply to the current command.\n * @environment SHOPIFY_FLAG_ENVIRONMENT\n */\n '-e, --environment '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * Password generated from the Theme Access app.\n * @environment SHOPIFY_CLI_THEME_TOKEN\n */\n '--password '?: string\n\n /**\n * Local port to serve authentication service.\n * @environment SHOPIFY_FLAG_PORT\n */\n '--port '?: string\n\n /**\n * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com).\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * The password for storefronts with password protection.\n * @environment SHOPIFY_FLAG_STORE_PASSWORD\n */\n '--store-password '?: string\n\n /**\n * The url to be used as context\n * @environment SHOPIFY_FLAG_URL\n */\n '--url '?: string\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" } } } @@ -4901,15 +4874,6 @@ "isOptional": true, "environmentValue": "SHOPIFY_FLAG_PORT" }, - { - "filePath": "docs-shopify.dev/commands/interfaces/theme-dev.interface.ts", - "syntaxKind": "PropertySignature", - "name": "--stable", - "value": "\"\"", - "description": "Use the legacy Ruby implementation for the `theme dev` command.", - "isOptional": true, - "environmentValue": "SHOPIFY_FLAG_STABLE" - }, { "filePath": "docs-shopify.dev/commands/interfaces/theme-dev.interface.ts", "syntaxKind": "PropertySignature", @@ -4992,7 +4956,7 @@ "environmentValue": "SHOPIFY_FLAG_IGNORE" } ], - "value": "export interface themedev {\n /**\n * The environment to apply to the current command.\n * @environment SHOPIFY_FLAG_ENVIRONMENT\n */\n '-e, --environment '?: string\n\n /**\n * Set which network interface the web server listens on. The default value is 127.0.0.1.\n * @environment SHOPIFY_FLAG_HOST\n */\n '--host '?: string\n\n /**\n * Skip hot reloading any files that match the specified pattern.\n * @environment SHOPIFY_FLAG_IGNORE\n */\n '-x, --ignore '?: string\n\n /**\n * 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\n * @environment SHOPIFY_FLAG_LIVE_RELOAD\n */\n '--live-reload '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NODELETE\n */\n '-n, --nodelete'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NOTIFY\n */\n '--notify '?: string\n\n /**\n * Hot reload only files that match the specified pattern.\n * @environment SHOPIFY_FLAG_ONLY\n */\n '-o, --only '?: string\n\n /**\n * Automatically launch the theme preview in your default web browser.\n * @environment SHOPIFY_FLAG_OPEN\n */\n '--open'?: ''\n\n /**\n * Password generated from the Theme Access app.\n * @environment SHOPIFY_CLI_THEME_TOKEN\n */\n '--password '?: string\n\n /**\n * The path to your theme directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Force polling to detect file changes.\n * @environment SHOPIFY_FLAG_POLL\n */\n '--poll'?: ''\n\n /**\n * Local port to serve theme preview from.\n * @environment SHOPIFY_FLAG_PORT\n */\n '--port '?: string\n\n /**\n * Use the legacy Ruby implementation for the `theme dev` command.\n * @environment SHOPIFY_FLAG_STABLE\n */\n '--stable'?: ''\n\n /**\n * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com).\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * The password for storefronts with password protection.\n * @environment SHOPIFY_FLAG_STORE_PASSWORD\n */\n '--store-password '?: string\n\n /**\n * Theme ID or name of the remote theme.\n * @environment SHOPIFY_FLAG_THEME_ID\n */\n '-t, --theme '?: string\n\n /**\n * Synchronize Theme Editor updates in the local theme files.\n * @environment SHOPIFY_FLAG_THEME_EDITOR_SYNC\n */\n '--theme-editor-sync'?: ''\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" + "value": "export interface themedev {\n /**\n * The environment to apply to the current command.\n * @environment SHOPIFY_FLAG_ENVIRONMENT\n */\n '-e, --environment '?: string\n\n /**\n * Set which network interface the web server listens on. The default value is 127.0.0.1.\n * @environment SHOPIFY_FLAG_HOST\n */\n '--host '?: string\n\n /**\n * Skip hot reloading any files that match the specified pattern.\n * @environment SHOPIFY_FLAG_IGNORE\n */\n '-x, --ignore '?: string\n\n /**\n * 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\n * @environment SHOPIFY_FLAG_LIVE_RELOAD\n */\n '--live-reload '?: string\n\n /**\n * Disable color output.\n * @environment SHOPIFY_FLAG_NO_COLOR\n */\n '--no-color'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NODELETE\n */\n '-n, --nodelete'?: ''\n\n /**\n * 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.\n * @environment SHOPIFY_FLAG_NOTIFY\n */\n '--notify '?: string\n\n /**\n * Hot reload only files that match the specified pattern.\n * @environment SHOPIFY_FLAG_ONLY\n */\n '-o, --only '?: string\n\n /**\n * Automatically launch the theme preview in your default web browser.\n * @environment SHOPIFY_FLAG_OPEN\n */\n '--open'?: ''\n\n /**\n * Password generated from the Theme Access app.\n * @environment SHOPIFY_CLI_THEME_TOKEN\n */\n '--password '?: string\n\n /**\n * The path to your theme directory.\n * @environment SHOPIFY_FLAG_PATH\n */\n '--path '?: string\n\n /**\n * Force polling to detect file changes.\n * @environment SHOPIFY_FLAG_POLL\n */\n '--poll'?: ''\n\n /**\n * Local port to serve theme preview from.\n * @environment SHOPIFY_FLAG_PORT\n */\n '--port '?: string\n\n /**\n * Store URL. It can be the store prefix (example) or the full myshopify.com URL (example.myshopify.com, https://example.myshopify.com).\n * @environment SHOPIFY_FLAG_STORE\n */\n '-s, --store '?: string\n\n /**\n * The password for storefronts with password protection.\n * @environment SHOPIFY_FLAG_STORE_PASSWORD\n */\n '--store-password '?: string\n\n /**\n * Theme ID or name of the remote theme.\n * @environment SHOPIFY_FLAG_THEME_ID\n */\n '-t, --theme '?: string\n\n /**\n * Synchronize Theme Editor updates in the local theme files.\n * @environment SHOPIFY_FLAG_THEME_EDITOR_SYNC\n */\n '--theme-editor-sync'?: ''\n\n /**\n * Increase the verbosity of the output.\n * @environment SHOPIFY_FLAG_VERBOSE\n */\n '--verbose'?: ''\n}" } } } diff --git a/docs-shopify.dev/generated/generated_static_pages.json b/docs-shopify.dev/generated/generated_static_pages.json index 588fd8b189c..0e13d201638 100644 --- a/docs-shopify.dev/generated/generated_static_pages.json +++ b/docs-shopify.dev/generated/generated_static_pages.json @@ -43,37 +43,6 @@ ] } }, - { - "type": "Generic", - "anchorLink": "requirements-themes", - "title": "Requirements for themes", - "sectionContent": "\nTo work with themes, your system must meet the following additional requirements:\n- [Ruby](https://www.ruby-lang.org/en/) version 2.7.5 or higher\n\n> Note: Theme requirements are automatically installed on macOS when you use Homebrew to install Shopify CLI.\n", - "codeblock": { - "title": "Installation requirements for themes", - "tabs": [ - { - "title": "macOS: brew", - "code": "brew install ruby\n", - "language": "bash" - }, - { - "title": "Windows", - "code": "Install Ruby+Devkit 3.0 using https://rubyinstaller.org/downloads/\n\nSelect the MSYS2 component and the MSYS2 base installation option\n", - "language": "bash" - }, - { - "title": "Linux: apt", - "code": "\nsudo apt update && sudo apt upgrade\n\nsudo apt install curl gcc g++ make\n\nsudo apt install ruby-full\n\nsudo apt install ruby-dev\n# Ruby development environment\n\nsudo apt install git\n", - "language": "bash" - }, - { - "title": "Linux: yum", - "code": "sudo yum install curl\n\nsudo yum group install \"Development Tools\"\n# Includes GCC, g++, and Make\n\nsudo yum install ruby\nsudo yum install ruby-devel\n# Ruby development environment\n\nsudo yum install git\n", - "language": "bash" - } - ] - } - }, { "type": "Generic", "anchorLink": "commands", diff --git a/docs-shopify.dev/static/cli.doc.ts b/docs-shopify.dev/static/cli.doc.ts index b78f1c6b656..bc4d0ea014f 100644 --- a/docs-shopify.dev/static/cli.doc.ts +++ b/docs-shopify.dev/static/cli.doc.ts @@ -50,42 +50,6 @@ const data: LandingTemplateSchema = { ], }, }, - { - type: 'Generic', - anchorLink: 'requirements-themes', - title: 'Requirements for themes', - sectionContent: ` -To work with themes, your system must meet the following additional requirements: -- [Ruby](https://www.ruby-lang.org/en/) version 2.7.5 or higher - -> Note: Theme requirements are automatically installed on macOS when you use Homebrew to install Shopify CLI. -`, - codeblock: { - title: 'Installation requirements for themes', - tabs: [ - { - title: 'macOS: brew', - code: 'examples/requirements.brew.example.sh', - language: 'bash', - }, - { - title: 'Windows', - code: 'examples/requirements.win.example.sh', - language: 'bash', - }, - { - title: 'Linux: apt', - code: 'examples/requirements.apt.example.sh', - language: 'bash', - }, - { - title: 'Linux: yum', - code: 'examples/requirements.yum.example.sh', - language: 'bash', - }, - ], - }, - }, { type: 'Generic', anchorLink: 'commands', diff --git a/packages/app/src/cli/commands/app/dev.ts b/packages/app/src/cli/commands/app/dev.ts index 14a1d9f2826..ce69f28f1ad 100644 --- a/packages/app/src/cli/commands/app/dev.ts +++ b/packages/app/src/cli/commands/app/dev.ts @@ -131,9 +131,10 @@ If you're using the PHP or Ruby app template, then you need to complete the foll 'Key used to authenticate GraphiQL requests. Should be specified if exposing GraphiQL on a publicly accessible URL. By default, no key is required.', env: 'SHOPIFY_FLAG_GRAPHIQL_KEY', }), - stable: Flags.boolean({ + legacy: Flags.boolean({ + hidden: true, description: 'Use the legacy Ruby implementation for managing theme app extensions.', - env: 'SHOPIFY_FLAG_STABLE', + env: 'SHOPIFY_FLAG_LEGACY', }), } @@ -182,7 +183,7 @@ If you're using the PHP or Ruby app template, then you need to complete the foll notify: flags.notify, graphiqlPort: flags['graphiql-port'], graphiqlKey: flags['graphiql-key'], - devPreview: !flags.stable, + devPreview: !flags.legacy, } await dev(devOptions) diff --git a/packages/app/src/cli/commands/app/logs.ts b/packages/app/src/cli/commands/app/logs.ts index 14dc1de6d31..89d46351484 100644 --- a/packages/app/src/cli/commands/app/logs.ts +++ b/packages/app/src/cli/commands/app/logs.ts @@ -37,7 +37,7 @@ export default class Logs extends Command { 'no-tunnel': Dev.flags['no-tunnel'], 'graphiql-port': Dev.flags['graphiql-port'], 'graphiql-key': Dev.flags['graphiql-key'], - stable: Dev.flags.stable, + stable: Dev.flags.legacy, source: Flags.string({ description: 'Filters output to the specified log source.', env: 'SHOPIFY_FLAG_SOURCE', diff --git a/packages/cli/README.md b/packages/cli/README.md index bba854bcc0f..e73ca3a450e 100644 --- a/packages/cli/README.md +++ b/packages/cli/README.md @@ -202,9 +202,9 @@ Run the app. ``` USAGE $ shopify app dev [--checkout-cart-url ] [--client-id | -c ] [--no-color] - [--no-update] [--notify ] [--path ] [--reset | ] [--skip-dependencies-installation] [--stable] [-s - ] [--subscription-product-url ] [-t ] [--theme-app-extension-port ] [--tunnel-url - | | ] [--verbose] + [--no-update] [--notify ] [--path ] [--reset | ] [--skip-dependencies-installation] [-s ] + [--subscription-product-url ] [-t ] [--theme-app-extension-port ] [--tunnel-url | | ] + [--verbose] FLAGS -c, --config= The name of the app configuration. @@ -221,7 +221,6 @@ FLAGS --path= The path to your app directory. --reset Reset all your settings. --skip-dependencies-installation Skips the installation of dependencies. Deprecated, use workspaces instead. - --stable Use the legacy Ruby implementation for managing theme app extensions. --subscription-product-url= Resource URL for subscription UI extension. Format: "/products/{productId}" --theme-app-extension-port= Local port of the theme app extension development server. --tunnel-url= Use a custom tunnel, it must be running before executing dev. Format: @@ -548,7 +547,7 @@ Stream detailed logs for your Shopify app. ``` USAGE $ shopify app logs [--client-id | -c ] [-j] [--no-color] [--path ] [--reset | ] - [--source ] [--stable] [--status success|failure] [-s ] [--verbose] + [--source ] [--status success|failure] [-s ] [--verbose] FLAGS -c, --config= The name of the app configuration. @@ -559,7 +558,6 @@ FLAGS --path= The path to your app directory. --reset Reset all your settings. --source=... Filters output to the specified log source. - --stable Use the legacy Ruby implementation for managing theme app extensions. --status=