From f23fe6cddc0413001769f5628592b4e26fa1e712 Mon Sep 17 00:00:00 2001 From: Alfonso Noriega Date: Mon, 11 May 2026 13:45:26 +0200 Subject: [PATCH] Remove deprecated `shopify app generate schema` command The `shopify app generate schema` command was a hidden alias deprecated in favor of `shopify app function schema`. This change removes the command class and unregisters it from the CLI command map. --- .../remove-app-generate-schema-command.md | 5 ++ .../src/cli/commands/app/generate/schema.ts | 11 --- packages/app/src/cli/index.ts | 2 - packages/cli/oclif.manifest.json | 87 ------------------- 4 files changed, 5 insertions(+), 100 deletions(-) create mode 100644 .changeset/remove-app-generate-schema-command.md delete mode 100644 packages/app/src/cli/commands/app/generate/schema.ts diff --git a/.changeset/remove-app-generate-schema-command.md b/.changeset/remove-app-generate-schema-command.md new file mode 100644 index 00000000000..e107378be6e --- /dev/null +++ b/.changeset/remove-app-generate-schema-command.md @@ -0,0 +1,5 @@ +--- +'@shopify/app': major +--- + +Remove the deprecated `shopify app generate schema` command. Use `shopify app function schema` instead. diff --git a/packages/app/src/cli/commands/app/generate/schema.ts b/packages/app/src/cli/commands/app/generate/schema.ts deleted file mode 100644 index 9189c2680c8..00000000000 --- a/packages/app/src/cli/commands/app/generate/schema.ts +++ /dev/null @@ -1,11 +0,0 @@ -import FetchSchema from '../function/schema.js' - -export default class GenerateSchema extends FetchSchema { - static hidden = true - - static descriptionWithMarkdown = `[DEPRECATED, use \`app function schema\`] Generates the latest [GraphQL schema](https://shopify.dev/docs/apps/functions/input-output#graphql-schema) for a function in your app. Run this command from the function directory. - - This command uses the API type and version of your function, as defined in your extension TOML file, to generate the latest GraphQL schema. The schema is written to the \`schema.graphql\` file.` - - static description = this.descriptionWithoutMarkdown() -} diff --git a/packages/app/src/cli/index.ts b/packages/app/src/cli/index.ts index 6578cdb93a0..8ae694ad4b6 100644 --- a/packages/app/src/cli/index.ts +++ b/packages/app/src/cli/index.ts @@ -19,7 +19,6 @@ import FunctionRun from './commands/app/function/run.js' import FetchSchema from './commands/app/function/schema.js' import FunctionTypegen from './commands/app/function/typegen.js' import AppGenerateExtension from './commands/app/generate/extension.js' -import GenerateSchema from './commands/app/generate/schema.js' import ImportExtensions from './commands/app/import-extensions.js' import AppInfo from './commands/app/info.js' import Init from './commands/app/init.js' @@ -65,7 +64,6 @@ export const commands: {[key: string]: typeof AppLinkedCommand | typeof AppUnlin 'app:env:show': EnvShow, 'app:execute': Execute, 'app:bulk:execute': BulkExecute, - 'app:generate:schema': GenerateSchema, 'app:function:build': FunctionBuild, 'app:function:replay': FunctionReplay, 'app:function:run': FunctionRun, diff --git a/packages/cli/oclif.manifest.json b/packages/cli/oclif.manifest.json index 7fd1048256e..ad9cfd500c8 100644 --- a/packages/cli/oclif.manifest.json +++ b/packages/cli/oclif.manifest.json @@ -2143,93 +2143,6 @@ "strict": true, "summary": "Generate a new app Extension." }, - "app:generate:schema": { - "aliases": [ - ], - "args": { - }, - "customPluginName": "@shopify/app", - "description": "\"DEPRECATED, use `app function schema`] Generates the latest [GraphQL schema\" (https://shopify.dev/docs/apps/functions/input-output#graphql-schema) for a function in your app. Run this command from the function directory.\n\n This command uses the API type and version of your function, as defined in your extension TOML file, to generate the latest GraphQL schema. The schema is written to the `schema.graphql` file.", - "descriptionWithMarkdown": "[DEPRECATED, use `app function schema`] Generates the latest [GraphQL schema](https://shopify.dev/docs/apps/functions/input-output#graphql-schema) for a function in your app. Run this command from the function directory.\n\n This command uses the API type and version of your function, as defined in your extension TOML file, to generate the latest GraphQL schema. The schema is written to the `schema.graphql` file.", - "flags": { - "client-id": { - "description": "The Client ID of your app.", - "env": "SHOPIFY_FLAG_CLIENT_ID", - "exclusive": [ - "config" - ], - "hasDynamicHelp": false, - "hidden": false, - "multiple": false, - "name": "client-id", - "type": "option" - }, - "config": { - "char": "c", - "description": "The name of the app configuration.", - "env": "SHOPIFY_FLAG_APP_CONFIG", - "hasDynamicHelp": false, - "hidden": false, - "multiple": false, - "name": "config", - "type": "option" - }, - "no-color": { - "allowNo": false, - "description": "Disable color output.", - "env": "SHOPIFY_FLAG_NO_COLOR", - "hidden": false, - "name": "no-color", - "type": "boolean" - }, - "path": { - "description": "The path to your function directory.", - "env": "SHOPIFY_FLAG_PATH", - "hasDynamicHelp": false, - "hidden": false, - "multiple": false, - "name": "path", - "noCacheDefault": true, - "type": "option" - }, - "reset": { - "allowNo": false, - "description": "Reset all your settings.", - "env": "SHOPIFY_FLAG_RESET", - "exclusive": [ - "config" - ], - "hidden": false, - "name": "reset", - "type": "boolean" - }, - "stdout": { - "allowNo": false, - "description": "Output the schema to stdout instead of writing to a file.", - "env": "SHOPIFY_FLAG_STDOUT", - "name": "stdout", - "required": false, - "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": "app:generate:schema", - "pluginAlias": "@shopify/cli", - "pluginName": "@shopify/cli", - "pluginType": "core", - "summary": "Fetch the latest GraphQL schema for a function." - }, "app:import-custom-data-definitions": { "aliases": [ ],