@shopify/cli-kit 3.39.0 → 3.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/cli-ruby/.devcontainer.json +5 -0
- package/assets/cli-ruby/.rubocop.yml +102 -0
- package/assets/cli-ruby/.rubocop_todo.yml +24 -0
- package/assets/cli-ruby/.ruby-version +1 -0
- package/assets/cli-ruby/CHANGELOG.md +634 -0
- package/assets/cli-ruby/CONTRIBUTING.md +3 -0
- package/assets/cli-ruby/Codespace.dockerfile +35 -0
- package/assets/cli-ruby/Gemfile +31 -0
- package/assets/cli-ruby/Gemfile.lock +190 -0
- package/{LICENSE → assets/cli-ruby/LICENSE} +2 -0
- package/assets/cli-ruby/README.md +30 -0
- package/assets/cli-ruby/RELEASING.md +72 -0
- package/assets/cli-ruby/Rakefile +243 -0
- package/assets/cli-ruby/SECURITY.md +59 -0
- package/assets/cli-ruby/Tests.dockerfile +35 -0
- package/assets/cli-ruby/assets/logo.png +0 -0
- package/assets/cli-ruby/bin/console +11 -0
- package/assets/cli-ruby/bin/load_shopify.rb +22 -0
- package/assets/cli-ruby/bin/shopify +60 -0
- package/assets/cli-ruby/bin/shopify.bat +3 -0
- package/assets/cli-ruby/dev.yml +29 -0
- package/assets/cli-ruby/docs/README.md +13 -0
- package/assets/cli-ruby/docs/contributors/testing.md +27 -0
- package/assets/cli-ruby/docs/users/installation.md +3 -0
- package/assets/cli-ruby/docs/users/migrate-from-themekit.md +18 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.1.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.2.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.2.1.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-arm-macos-v0.3.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.1.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.2.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.2.1.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-linux-v0.3.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.1.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.2.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.2.1.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-macos-v0.3.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.1.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.2.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.2.1.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/hashes/javy-x86_64-windows-v0.3.0.gz.sha256 +1 -0
- package/assets/cli-ruby/ext/javy/javy.rb +204 -0
- package/assets/cli-ruby/ext/javy/version +1 -0
- package/assets/cli-ruby/ext/shopify-extensions/extconf.rb +21 -0
- package/assets/cli-ruby/ext/shopify-extensions/shopify_extensions.rb +152 -0
- package/assets/cli-ruby/ext/shopify-extensions/version +1 -0
- package/assets/cli-ruby/features/support/assertions.rb +17 -0
- package/assets/cli-ruby/features/support/cli.rb +7 -0
- package/assets/cli-ruby/features/support/process.rb +27 -0
- package/assets/cli-ruby/features/support/requires.rb +3 -0
- package/assets/cli-ruby/lib/docgen/class_template.md.erb +81 -0
- package/assets/cli-ruby/lib/docgen/index_template.md.erb +5 -0
- package/assets/cli-ruby/lib/docgen/markdown.rb +101 -0
- package/assets/cli-ruby/lib/graphql/admin_introspection.graphql +87 -0
- package/assets/cli-ruby/lib/graphql/all_organizations.graphql +19 -0
- package/assets/cli-ruby/lib/graphql/all_orgs_with_apps.graphql +30 -0
- package/assets/cli-ruby/lib/graphql/api_versions.graphql +6 -0
- package/assets/cli-ruby/lib/graphql/convert_dev_to_test_store.graphql +10 -0
- package/assets/cli-ruby/lib/graphql/create_app.graphql +20 -0
- package/assets/cli-ruby/lib/graphql/create_customer.graphql +9 -0
- package/assets/cli-ruby/lib/graphql/create_draft_order.graphql +8 -0
- package/assets/cli-ruby/lib/graphql/create_product.graphql +9 -0
- package/assets/cli-ruby/lib/graphql/extension_create.graphql +36 -0
- package/assets/cli-ruby/lib/graphql/extension_update_draft.graphql +18 -0
- package/assets/cli-ruby/lib/graphql/fetch_specifications.graphql +14 -0
- package/assets/cli-ruby/lib/graphql/find_organization.graphql +18 -0
- package/assets/cli-ruby/lib/graphql/find_organization_with_apps.graphql +20 -0
- package/assets/cli-ruby/lib/graphql/get_app_by_api_key.graphql +9 -0
- package/assets/cli-ruby/lib/graphql/get_app_urls.graphql +6 -0
- package/assets/cli-ruby/lib/graphql/get_extension_registrations.graphql +27 -0
- package/assets/cli-ruby/lib/graphql/get_variant_id.graphql +16 -0
- package/assets/cli-ruby/lib/graphql/update_dashboard_urls.graphql +8 -0
- package/assets/cli-ruby/lib/project_types/extension/cli.rb +156 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/build.rb +51 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/check.rb +51 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/connect.rb +35 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/create.rb +100 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/extension_command.rb +29 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/info.rb +86 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/push.rb +112 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/register.rb +67 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/serve.rb +150 -0
- package/assets/cli-ruby/lib/project_types/extension/commands/tunnel.rb +73 -0
- package/assets/cli-ruby/lib/project_types/extension/errors.rb +9 -0
- package/assets/cli-ruby/lib/project_types/extension/extension_project.rb +151 -0
- package/assets/cli-ruby/lib/project_types/extension/extension_project_keys.rb +12 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo.rb +50 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_config.rb +59 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_dependencies.rb +28 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_runtime.rb +15 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_serve.rb +115 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_setup.rb +54 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_setup_step.rb +31 -0
- package/assets/cli-ruby/lib/project_types/extension/features/argo_setup_steps.rb +51 -0
- package/assets/cli-ruby/lib/project_types/extension/features/runtimes/admin.rb +29 -0
- package/assets/cli-ruby/lib/project_types/extension/features/runtimes/base.rb +19 -0
- package/assets/cli-ruby/lib/project_types/extension/features/runtimes/checkout_post_purchase.rb +23 -0
- package/assets/cli-ruby/lib/project_types/extension/features/runtimes/checkout_ui_extension.rb +29 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/connect.rb +42 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/create.rb +49 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/questions/ask_app.rb +53 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/questions/ask_name.rb +48 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/questions/ask_registration.rb +55 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/questions/ask_template.rb +37 -0
- package/assets/cli-ruby/lib/project_types/extension/forms/questions/ask_type.rb +47 -0
- package/assets/cli-ruby/lib/project_types/extension/loaders/project.rb +50 -0
- package/assets/cli-ruby/lib/project_types/extension/loaders/specification_handler.rb +22 -0
- package/assets/cli-ruby/lib/project_types/extension/messages/message_loading.rb +34 -0
- package/assets/cli-ruby/lib/project_types/extension/messages/messages.rb +292 -0
- package/assets/cli-ruby/lib/project_types/extension/models/app.rb +14 -0
- package/assets/cli-ruby/lib/project_types/extension/models/development_server.rb +77 -0
- package/assets/cli-ruby/lib/project_types/extension/models/development_server_requirements.rb +56 -0
- package/assets/cli-ruby/lib/project_types/extension/models/lazy_specification_handler.rb +12 -0
- package/assets/cli-ruby/lib/project_types/extension/models/npm_package.rb +44 -0
- package/assets/cli-ruby/lib/project_types/extension/models/product.rb +12 -0
- package/assets/cli-ruby/lib/project_types/extension/models/registration.rb +20 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/app.rb +13 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/base.rb +31 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/capabilities.rb +11 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/development.rb +33 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/development_entries.rb +38 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/development_renderer.rb +38 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/development_resource.rb +13 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/extension.rb +46 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/root.rb +21 -0
- package/assets/cli-ruby/lib/project_types/extension/models/server_config/user.rb +10 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification.rb +41 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/checkout_post_purchase.rb +29 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/checkout_ui_extension.rb +170 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/default.rb +145 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/theme_app_extension.rb +122 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/web_pixel_extension.rb +58 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/web_pixel_extension_utils/script_config.rb +33 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/web_pixel_extension_utils/script_config_repository.rb +75 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specifications.rb +89 -0
- package/assets/cli-ruby/lib/project_types/extension/models/validation_error.rb +17 -0
- package/assets/cli-ruby/lib/project_types/extension/models/version.rb +15 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/choose_next_available_port.rb +36 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/configure_features.rb +73 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/configure_options.rb +21 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/convert_server_config.rb +85 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/converters/app_converter.rb +27 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/converters/product_converter.rb +21 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/converters/registration_converter.rb +28 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/converters/validation_error_converter.rb +25 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/converters/version_converter.rb +28 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/create_extension.rb +31 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/ensure_resource_url.rb +39 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/execute_commands/base.rb +15 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/execute_commands/build.rb +30 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/execute_commands/create.rb +30 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/execute_commands/outdated_extension_detection.rb +57 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/execute_commands/serve.rb +36 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/fetch_specifications.rb +21 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/find_npm_packages.rb +106 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/find_package_from_json.rb +37 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/get_app.rb +22 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/get_apps.rb +26 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/get_extensions.rb +33 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/get_product.rb +22 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/merge_server_config.rb +47 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/update_draft.rb +29 -0
- package/assets/cli-ruby/lib/project_types/extension/tasks/user_errors.rb +45 -0
- package/assets/cli-ruby/lib/project_types/node/cli.rb +12 -0
- package/assets/cli-ruby/lib/project_types/node/forms/create.rb +45 -0
- package/assets/cli-ruby/lib/project_types/node/messages/messages.rb +33 -0
- package/assets/cli-ruby/lib/project_types/php/cli.rb +16 -0
- package/assets/cli-ruby/lib/project_types/php/forms/create.rb +44 -0
- package/assets/cli-ruby/lib/project_types/php/messages/messages.rb +29 -0
- package/assets/cli-ruby/lib/project_types/rails/cli.rb +15 -0
- package/assets/cli-ruby/lib/project_types/rails/forms/create.rb +75 -0
- package/assets/cli-ruby/lib/project_types/rails/gem.rb +110 -0
- package/assets/cli-ruby/lib/project_types/rails/messages/messages.rb +101 -0
- package/assets/cli-ruby/lib/project_types/script/cli.rb +27 -0
- package/assets/cli-ruby/lib/project_types/script/commands/connect.rb +16 -0
- package/assets/cli-ruby/lib/project_types/script/commands/create.rb +24 -0
- package/assets/cli-ruby/lib/project_types/script/commands/javy.rb +24 -0
- package/assets/cli-ruby/lib/project_types/script/commands/push.rb +26 -0
- package/assets/cli-ruby/lib/project_types/script/loaders/project.rb +46 -0
- package/assets/cli-ruby/lib/project_types/script/loaders/specification_handler.rb +22 -0
- package/assets/cli-ruby/lib/project_types/script/messages/messages.rb +11 -0
- package/assets/cli-ruby/lib/project_types/theme/cli.rb +33 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/check.rb +38 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/common/root_helper.rb +93 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/common/shop_helper.rb +13 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/delete.rb +70 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/init.rb +46 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/language_server.rb +18 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/list.rb +33 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/open.rb +73 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/package.rb +73 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/publish.rb +49 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/pull.rb +112 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/push.rb +153 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/serve.rb +88 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/share.rb +62 -0
- package/assets/cli-ruby/lib/project_types/theme/conversions/base_glob.rb +65 -0
- package/assets/cli-ruby/lib/project_types/theme/conversions/ignore_glob.rb +15 -0
- package/assets/cli-ruby/lib/project_types/theme/conversions/include_glob.rb +15 -0
- package/assets/cli-ruby/lib/project_types/theme/forms/confirm_store.rb +15 -0
- package/assets/cli-ruby/lib/project_types/theme/forms/select.rb +34 -0
- package/assets/cli-ruby/lib/project_types/theme/messages/messages.rb +424 -0
- package/assets/cli-ruby/lib/project_types/theme/models/specification_handlers/theme.rb +19 -0
- package/assets/cli-ruby/lib/project_types/theme/presenters/theme_presenter.rb +48 -0
- package/assets/cli-ruby/lib/project_types/theme/presenters/themes_presenter.rb +29 -0
- package/assets/cli-ruby/lib/project_types/theme/ui/sync_progress_bar.rb +20 -0
- package/assets/cli-ruby/lib/rubygems_plugin.rb +26 -0
- package/assets/cli-ruby/lib/shopify_cli/admin_api/populate_resource_command.rb +166 -0
- package/assets/cli-ruby/lib/shopify_cli/admin_api/schema.rb +35 -0
- package/assets/cli-ruby/lib/shopify_cli/admin_api.rb +163 -0
- package/assets/cli-ruby/lib/shopify_cli/api.rb +131 -0
- package/assets/cli-ruby/lib/shopify_cli/app_type_detector.rb +36 -0
- package/assets/cli-ruby/lib/shopify_cli/assets/post_auth_page/index.html.erb +34 -0
- package/assets/cli-ruby/lib/shopify_cli/assets/post_auth_page/style.css +58 -0
- package/assets/cli-ruby/lib/shopify_cli/changelog.rb +148 -0
- package/assets/cli-ruby/lib/shopify_cli/command/app_sub_command.rb +26 -0
- package/assets/cli-ruby/lib/shopify_cli/command/project_command.rb +31 -0
- package/assets/cli-ruby/lib/shopify_cli/command/sub_command.rb +21 -0
- package/assets/cli-ruby/lib/shopify_cli/command.rb +173 -0
- package/assets/cli-ruby/lib/shopify_cli/command_options/command_serve_options.rb +53 -0
- package/assets/cli-ruby/lib/shopify_cli/command_options.rb +7 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/connect.rb +22 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/create/node.rb +40 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/create/php.rb +37 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/create/rails.rb +42 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/create.rb +28 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/deploy.rb +51 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/open.rb +19 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/serve.rb +51 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app/tunnel.rb +43 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/app.rb +29 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/config.rb +76 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/help.rb +52 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/login.rb +98 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/logout.rb +50 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/populate/customer.rb +25 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/populate/draft_order.rb +28 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/populate/product.rb +24 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/populate.rb +23 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/reporting.rb +38 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/store.rb +15 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/switch.rb +39 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/system.rb +165 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/version.rb +15 -0
- package/assets/cli-ruby/lib/shopify_cli/commands/whoami.rb +28 -0
- package/assets/cli-ruby/lib/shopify_cli/commands.rb +36 -0
- package/assets/cli-ruby/lib/shopify_cli/connect.rb +32 -0
- package/assets/cli-ruby/lib/shopify_cli/constants.rb +91 -0
- package/assets/cli-ruby/lib/shopify_cli/context.rb +691 -0
- package/assets/cli-ruby/lib/shopify_cli/core/cli_version.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/core/entry_point.rb +64 -0
- package/assets/cli-ruby/lib/shopify_cli/core/executor.rb +23 -0
- package/assets/cli-ruby/lib/shopify_cli/core/finalize.rb +13 -0
- package/assets/cli-ruby/lib/shopify_cli/core/help_resolver.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/core/monorail.rb +122 -0
- package/assets/cli-ruby/lib/shopify_cli/core.rb +9 -0
- package/assets/cli-ruby/lib/shopify_cli/db.rb +114 -0
- package/assets/cli-ruby/lib/shopify_cli/environment.rb +198 -0
- package/assets/cli-ruby/lib/shopify_cli/exception_reporter.rb +79 -0
- package/assets/cli-ruby/lib/shopify_cli/feature.rb +95 -0
- package/assets/cli-ruby/lib/shopify_cli/file_system_listener.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/form.rb +42 -0
- package/assets/cli-ruby/lib/shopify_cli/git.rb +320 -0
- package/assets/cli-ruby/lib/shopify_cli/github/issue_url_generator.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/github.rb +5 -0
- package/assets/cli-ruby/lib/shopify_cli/helpers/haikunator.rb +92 -0
- package/assets/cli-ruby/lib/shopify_cli/helpers.rb +5 -0
- package/assets/cli-ruby/lib/shopify_cli/heroku.rb +140 -0
- package/assets/cli-ruby/lib/shopify_cli/http_request.rb +43 -0
- package/assets/cli-ruby/lib/shopify_cli/identity_auth/env_auth_token.rb +34 -0
- package/assets/cli-ruby/lib/shopify_cli/identity_auth/servlet.rb +44 -0
- package/assets/cli-ruby/lib/shopify_cli/identity_auth.rb +333 -0
- package/assets/cli-ruby/lib/shopify_cli/js_deps.rb +110 -0
- package/assets/cli-ruby/lib/shopify_cli/js_system.rb +115 -0
- package/assets/cli-ruby/lib/shopify_cli/lazy_delegator.rb +55 -0
- package/assets/cli-ruby/lib/shopify_cli/messages/messages.rb +863 -0
- package/assets/cli-ruby/lib/shopify_cli/method_object.rb +123 -0
- package/assets/cli-ruby/lib/shopify_cli/migrator/migration.rb +27 -0
- package/assets/cli-ruby/lib/shopify_cli/migrator/migrations/1631709766_noop.rb +13 -0
- package/assets/cli-ruby/lib/shopify_cli/migrator/migrations/1633691650_merge_reporting_configuration.rb +41 -0
- package/assets/cli-ruby/lib/shopify_cli/migrator.rb +46 -0
- package/assets/cli-ruby/lib/shopify_cli/options.rb +40 -0
- package/assets/cli-ruby/lib/shopify_cli/packager.rb +108 -0
- package/assets/cli-ruby/lib/shopify_cli/partners_api/app_extensions/job.rb +36 -0
- package/assets/cli-ruby/lib/shopify_cli/partners_api/app_extensions.rb +46 -0
- package/assets/cli-ruby/lib/shopify_cli/partners_api/organizations.rb +45 -0
- package/assets/cli-ruby/lib/shopify_cli/partners_api.rb +91 -0
- package/assets/cli-ruby/lib/shopify_cli/php_deps.rb +102 -0
- package/assets/cli-ruby/lib/shopify_cli/process_supervision.rb +228 -0
- package/assets/cli-ruby/lib/shopify_cli/project.rb +199 -0
- package/assets/cli-ruby/lib/shopify_cli/project_commands.rb +16 -0
- package/assets/cli-ruby/lib/shopify_cli/project_type.rb +66 -0
- package/assets/cli-ruby/lib/shopify_cli/release.rb +197 -0
- package/assets/cli-ruby/lib/shopify_cli/reporting_configuration_controller.rb +64 -0
- package/assets/cli-ruby/lib/shopify_cli/resolve_constant.rb +25 -0
- package/assets/cli-ruby/lib/shopify_cli/resources/env_file.rb +108 -0
- package/assets/cli-ruby/lib/shopify_cli/resources.rb +5 -0
- package/assets/cli-ruby/lib/shopify_cli/result.rb +448 -0
- package/assets/cli-ruby/lib/shopify_cli/sed.rb +19 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/connect_service.rb +25 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/create/node_service.rb +143 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/create/php_service.rb +147 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/create/rails_service.rb +239 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/deploy/heroku/node_service.rb +101 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/deploy/heroku/php_service.rb +135 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/deploy/heroku/rails_service.rb +120 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/open_service.rb +19 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/serve/node_service.rb +19 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/serve/php_service.rb +23 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/serve/rails_service.rb +28 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/serve/serve_service.rb +57 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/tunnel/auth_service.rb +21 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/tunnel/start_service.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/services/app/tunnel/stop_service.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/services/base_service.rb +13 -0
- package/assets/cli-ruby/lib/shopify_cli/services/reporting_service.rb +16 -0
- package/assets/cli-ruby/lib/shopify_cli/services.rb +38 -0
- package/assets/cli-ruby/lib/shopify_cli/shopifolk.rb +81 -0
- package/assets/cli-ruby/lib/shopify_cli/task.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/confirm_store.rb +18 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/create_api_client.rb +40 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_authenticated.rb +19 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_dev_store.rb +41 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_env.rb +90 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_git_dependency.rb +14 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_loopback_url.rb +20 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/ensure_project_type.rb +14 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/select_org_and_shop.rb +81 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks/update_dashboard_urls.rb +57 -0
- package/assets/cli-ruby/lib/shopify_cli/tasks.rb +44 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/backoff_helper.rb +47 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/cdn_fonts.rb +73 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/certificate_manager.rb +79 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/errors.rb +9 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/header_hash.rb +98 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hooks/file_change_hook.rb +77 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/remote_file_deleter.rb +62 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/remote_file_reloader.rb +63 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/hot-reload-no-script.html +27 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/hot_reload.js +48 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/sse_client.js +43 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/theme.js +114 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/resources/theme_extension.js +121 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/script_injector.rb +57 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/sections_index.rb +50 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload.rb +68 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/local_assets.rb +87 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/proxy.rb +246 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/proxy_param_builder.rb +82 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/reload_mode.rb +34 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/remote_watcher/json_files_update_job.rb +35 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/remote_watcher.rb +44 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/sse.rb +75 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/watcher.rb +61 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/web_server.rb +140 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server.rb +320 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/development_theme.rb +101 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/app_extension.rb +40 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hooks/file_change_hook.rb +68 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hot_reload/script_injector.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/hot_reload.rb +13 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/local_assets.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/proxy_param_builder.rb +94 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server/watcher.rb +47 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server.rb +150 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/host_theme.rb +104 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer/extension_serve_job.rb +133 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer/operation.rb +21 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/syncer.rb +81 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/ui/host_theme_progress_bar.rb +35 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/file.rb +149 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/filter/path_matcher.rb +38 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/ignore_filter.rb +112 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/ignore_helper.rb +37 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/include_filter.rb +67 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/mime_type.rb +34 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/root.rb +62 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/checksums.rb +66 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/downloader.rb +63 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/error_reporter.rb +45 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/merger.rb +53 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/operation.rb +57 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/standard_reporter.rb +32 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/unsupported_script_warning.rb +90 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk.rb +133 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_item.rb +64 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_job.rb +139 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/bulk_request.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/apply_to_all.rb +41 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/apply_to_all_form.rb +37 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/base_strategy_form.rb +64 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/select_delete_strategy.rb +29 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/forms/select_update_strategy.rb +30 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/json_delete_handler.rb +49 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader/json_update_handler.rb +71 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/uploader.rb +231 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer.rb +386 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/theme.rb +212 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/theme_access_api.rb +89 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/theme_admin_api.rb +101 -0
- package/assets/cli-ruby/lib/shopify_cli/thread_pool/job.rb +35 -0
- package/assets/cli-ruby/lib/shopify_cli/thread_pool.rb +49 -0
- package/assets/cli-ruby/lib/shopify_cli/transform_data_structure.rb +87 -0
- package/assets/cli-ruby/lib/shopify_cli/tunnel.rb +255 -0
- package/assets/cli-ruby/lib/shopify_cli/utilities.rb +21 -0
- package/assets/cli-ruby/lib/shopify_cli/version.rb +3 -0
- package/assets/cli-ruby/lib/shopify_cli.rb +191 -0
- package/assets/cli-ruby/shipit.rubygems.yml +3 -0
- package/assets/cli-ruby/shopify-cli.gemspec +54 -0
- package/assets/cli-ruby/shopify-dev +16 -0
- package/assets/cli-ruby/test/minitest_ext.rb +115 -0
- package/assets/cli-ruby/test/project_types/extension/extension_test_helpers.rb +70 -0
- package/assets/cli-ruby/test/shopify-cli/migrator/migrations/migration_helper.rb +20 -0
- package/assets/cli-ruby/test/test_helpers.rb +18 -0
- package/assets/cli-ruby/utilities/constants.rb +7 -0
- package/assets/cli-ruby/utilities/docker/container.rb +104 -0
- package/assets/cli-ruby/utilities/docker.rb +89 -0
- package/assets/cli-ruby/utilities/utilities.rb +6 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/REVISION +1 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/autocall.rb +21 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/base_command.rb +49 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/command_registry.rb +94 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/config.rb +133 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/error_handler.rb +123 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/executor.rb +79 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/ini.rb +102 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/levenshtein.rb +82 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/logger.rb +82 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/resolver.rb +60 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/ruby_backports/enumerable.rb +6 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/support/test_helper.rb +244 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/support.rb +9 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/system.rb +243 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/util.rb +193 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit/version.rb +5 -0
- package/assets/cli-ruby/vendor/deps/cli-kit/lib/cli/kit.rb +60 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/REVISION +1 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/ansi.rb +157 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/color.rb +84 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/formatter.rb +192 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_stack.rb +98 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/box.rb +166 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/bracket.rb +139 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style.rb +120 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/frame.rb +269 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/glyph.rb +84 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/os.rb +73 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/printer.rb +59 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/progress.rb +90 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt/interactive_options.rb +484 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb +29 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/prompt.rb +282 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner/async.rb +40 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner/spin_group.rb +263 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/spinner.rb +66 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/stdout_router.rb +232 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/terminal.rb +46 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/truncater.rb +102 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/version.rb +5 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets/base.rb +27 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets/status.rb +61 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/widgets.rb +77 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui/wrap.rb +56 -0
- package/assets/cli-ruby/vendor/deps/cli-ui/lib/cli/ui.rb +233 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/LICENSE +22 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/README.md +67 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/Rakefile +54 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/lib/ruby2_keywords.rb +57 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/ruby2_keywords.gemspec +18 -0
- package/assets/cli-ruby/vendor/deps/ruby2_keywords/test/test_keyword.rb +41 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/REVISION +1 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/errors.rb +114 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/property.rb +168 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/property_collection.rb +83 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/validations/ancestor.rb +27 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/validations.rb +8 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties/version.rb +3 -0
- package/assets/cli-ruby/vendor/deps/smart_properties/lib/smart_properties.rb +174 -0
- package/assets/cli-ruby/vendor/deps/webrick/Gemfile +3 -0
- package/assets/cli-ruby/vendor/deps/webrick/LICENSE.txt +22 -0
- package/assets/cli-ruby/vendor/deps/webrick/README.md +61 -0
- package/assets/cli-ruby/vendor/deps/webrick/Rakefile +10 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/accesslog.rb +157 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/cgi.rb +313 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/compat.rb +36 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/config.rb +158 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/cookie.rb +172 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/htmlutils.rb +30 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/authenticator.rb +117 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/basicauth.rb +116 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/digestauth.rb +395 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htdigest.rb +132 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htgroup.rb +97 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/htpasswd.rb +158 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth/userdb.rb +53 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpauth.rb +96 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpproxy.rb +354 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httprequest.rb +636 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpresponse.rb +564 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/https.rb +152 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpserver.rb +294 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/abstract.rb +152 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/cgi_runner.rb +47 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/cgihandler.rb +126 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/erbhandler.rb +88 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/filehandler.rb +552 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb +47 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpservlet.rb +23 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpstatus.rb +194 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httputils.rb +512 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/httpversion.rb +76 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/log.rb +156 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/server.rb +381 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/ssl.rb +215 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/utils.rb +265 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick/version.rb +18 -0
- package/assets/cli-ruby/vendor/deps/webrick/lib/webrick.rb +232 -0
- package/assets/cli-ruby/vendor/deps/webrick/webrick.gemspec +74 -0
- package/assets/cli-ruby/vendor/gen/lib/gen/commands/help.rb +20 -0
- package/assets/cli-ruby/vendor/gen/lib/gen/commands/new.rb +21 -0
- package/assets/cli-ruby/vendor/gen/lib/gen/commands.rb +18 -0
- package/assets/cli-ruby/vendor/gen/lib/gen/entry_point.rb +10 -0
- package/assets/cli-ruby/vendor/gen/lib/gen/generator.rb +165 -0
- package/assets/cli-ruby/vendor/gen/lib/gen.rb +39 -0
- package/assets/cli-ruby/vendor/gen/template/Gemfile +10 -0
- package/assets/cli-ruby/vendor/gen/template/README.md +1 -0
- package/assets/cli-ruby/vendor/gen/template/bin/testunit +23 -0
- package/assets/cli-ruby/vendor/gen/template/bin/update-deps +97 -0
- package/assets/cli-ruby/vendor/gen/template/dev-gems.yml +3 -0
- package/assets/cli-ruby/vendor/gen/template/dev-vendor.yml +4 -0
- package/assets/cli-ruby/vendor/gen/template/exe/__app__-gems +17 -0
- package/assets/cli-ruby/vendor/gen/template/exe/__app__-vendor +18 -0
- package/assets/cli-ruby/vendor/gen/template/lib/__app__/commands/example.rb +19 -0
- package/assets/cli-ruby/vendor/gen/template/lib/__app__/commands/help.rb +21 -0
- package/assets/cli-ruby/vendor/gen/template/lib/__app__/commands.rb +18 -0
- package/assets/cli-ruby/vendor/gen/template/lib/__app__/entry_point.rb +10 -0
- package/assets/cli-ruby/vendor/gen/template/lib/__app__.rb +33 -0
- package/assets/cli-ruby/vendor/gen/template/test/example_test.rb +17 -0
- package/assets/cli-ruby/vendor/gen/template/test/test_helper.rb +22 -0
- package/assets/cli-ruby/vendor/lib/semantic/LICENSE +20 -0
- package/assets/cli-ruby/vendor/lib/semantic/semantic.rb +4 -0
- package/assets/cli-ruby/vendor/lib/semantic/version.rb +179 -0
- package/dist/private/node/analytics.js +1 -1
- package/dist/private/node/analytics.js.map +1 -1
- package/dist/private/node/api/headers.js +2 -2
- package/dist/private/node/api/headers.js.map +1 -1
- package/dist/private/node/constants.d.ts +1 -1
- package/dist/private/node/constants.js +1 -1
- package/dist/private/node/constants.js.map +1 -1
- package/dist/private/node/{environment → context}/service.d.ts +0 -0
- package/dist/private/node/{environment → context}/service.js +1 -1
- package/dist/private/node/context/service.js.map +1 -0
- package/dist/private/node/{environment → context}/spin-cache.d.ts +0 -0
- package/dist/private/node/{environment → context}/spin-cache.js +0 -0
- package/dist/private/node/context/spin-cache.js.map +1 -0
- package/dist/private/node/{environment → context}/utilities.d.ts +0 -0
- package/dist/private/node/{environment → context}/utilities.js +0 -0
- package/dist/private/node/context/utilities.js.map +1 -0
- package/dist/private/node/session/authorize.js +13 -3
- package/dist/private/node/session/authorize.js.map +1 -1
- package/dist/private/node/session/device-authorization.js +1 -1
- package/dist/private/node/session/device-authorization.js.map +1 -1
- package/dist/private/node/session/exchange.js +1 -1
- package/dist/private/node/session/exchange.js.map +1 -1
- package/dist/private/node/session/identity-token-validation.js +1 -1
- package/dist/private/node/session/identity-token-validation.js.map +1 -1
- package/dist/private/node/session/identity.js +1 -1
- package/dist/private/node/session/identity.js.map +1 -1
- package/dist/private/node/session/validate.js +1 -1
- package/dist/private/node/session/validate.js.map +1 -1
- package/dist/private/node/session.js +3 -3
- package/dist/private/node/session.js.map +1 -1
- package/dist/private/node/testing/ui.d.ts +31 -0
- package/dist/private/node/testing/ui.js +32 -1
- package/dist/private/node/testing/ui.js.map +1 -1
- package/dist/private/node/ui/components/Alert.d.ts +7 -7
- package/dist/private/node/ui/components/Alert.js +14 -13
- package/dist/private/node/ui/components/Alert.js.map +1 -1
- package/dist/private/node/ui/components/Alert.test.js +18 -4
- package/dist/private/node/ui/components/Alert.test.js.map +1 -1
- package/dist/private/node/ui/components/AutocompletePrompt.d.ts +5 -5
- package/dist/private/node/ui/components/AutocompletePrompt.js +10 -8
- package/dist/private/node/ui/components/AutocompletePrompt.js.map +1 -1
- package/dist/private/node/ui/components/AutocompletePrompt.test.js.map +1 -1
- package/dist/private/node/ui/components/Banner.d.ts +3 -3
- package/dist/private/node/ui/components/Banner.js.map +1 -1
- package/dist/private/node/ui/components/Command.d.ts +3 -3
- package/dist/private/node/ui/components/Command.js.map +1 -1
- package/dist/private/node/ui/components/ConcurrentOutput.d.ts +9 -3
- package/dist/private/node/ui/components/ConcurrentOutput.js +31 -16
- package/dist/private/node/ui/components/ConcurrentOutput.js.map +1 -1
- package/dist/private/node/ui/components/ConcurrentOutput.test.js +36 -12
- package/dist/private/node/ui/components/ConcurrentOutput.test.js.map +1 -1
- package/dist/private/node/ui/components/FatalError.d.ts +2 -2
- package/dist/private/node/ui/components/FatalError.js +10 -10
- package/dist/private/node/ui/components/FatalError.js.map +1 -1
- package/dist/private/node/ui/components/FilePath.d.ts +3 -3
- package/dist/private/node/ui/components/FilePath.js +1 -4
- package/dist/private/node/ui/components/FilePath.js.map +1 -1
- package/dist/private/node/ui/components/FilePath.test.js +1 -1
- package/dist/private/node/ui/components/FilePath.test.js.map +1 -1
- package/dist/private/node/ui/components/FullScreen.d.ts +3 -3
- package/dist/private/node/ui/components/FullScreen.js +1 -1
- package/dist/private/node/ui/components/FullScreen.js.map +1 -1
- package/dist/private/node/ui/components/Link.d.ts +3 -3
- package/dist/private/node/ui/components/Link.js.map +1 -1
- package/dist/private/node/ui/components/List.d.ts +6 -5
- package/dist/private/node/ui/components/List.js +4 -3
- package/dist/private/node/ui/components/List.js.map +1 -1
- package/dist/private/node/ui/components/Prompts/InfoTable.d.ts +6 -5
- package/dist/private/node/ui/components/Prompts/InfoTable.js +5 -5
- package/dist/private/node/ui/components/Prompts/InfoTable.js.map +1 -1
- package/dist/private/node/ui/components/Prompts/InfoTable.test.d.ts +1 -0
- package/dist/private/node/ui/components/Prompts/InfoTable.test.js +29 -0
- package/dist/private/node/ui/components/Prompts/InfoTable.test.js.map +1 -0
- package/dist/private/node/ui/components/SelectInput.d.ts +9 -3
- package/dist/private/node/ui/components/SelectInput.js +24 -17
- package/dist/private/node/ui/components/SelectInput.js.map +1 -1
- package/dist/private/node/ui/components/SelectInput.test.js +36 -8
- package/dist/private/node/ui/components/SelectInput.test.js.map +1 -1
- package/dist/private/node/ui/components/SelectPrompt.d.ts +8 -7
- package/dist/private/node/ui/components/SelectPrompt.js +22 -13
- package/dist/private/node/ui/components/SelectPrompt.js.map +1 -1
- package/dist/private/node/ui/components/SelectPrompt.test.js +27 -2
- package/dist/private/node/ui/components/SelectPrompt.test.js.map +1 -1
- package/dist/private/node/ui/components/Subdued.d.ts +3 -3
- package/dist/private/node/ui/components/Subdued.js.map +1 -1
- package/dist/private/node/ui/components/Table/Row.d.ts +2 -2
- package/dist/private/node/ui/components/Table/Row.js +3 -2
- package/dist/private/node/ui/components/Table/Row.js.map +1 -1
- package/dist/private/node/ui/components/Table/Table.d.ts +10 -7
- package/dist/private/node/ui/components/Table/Table.js +3 -1
- package/dist/private/node/ui/components/Table/Table.js.map +1 -1
- package/dist/private/node/ui/components/Table/Table.test.js +1 -1
- package/dist/private/node/ui/components/Table/Table.test.js.map +1 -1
- package/dist/private/node/ui/components/Tasks.d.ts +2 -2
- package/dist/private/node/ui/components/Tasks.js +2 -1
- package/dist/private/node/ui/components/Tasks.js.map +1 -1
- package/dist/private/node/ui/components/Tasks.test.js +1 -1
- package/dist/private/node/ui/components/Tasks.test.js.map +1 -1
- package/dist/private/node/ui/components/TextAnimation.d.ts +3 -3
- package/dist/private/node/ui/components/TextAnimation.js.map +1 -1
- package/dist/private/node/ui/components/TextInput.d.ts +3 -3
- package/dist/private/node/ui/components/TextInput.js +1 -2
- package/dist/private/node/ui/components/TextInput.js.map +1 -1
- package/dist/private/node/ui/components/TextInput.test.js +1 -1
- package/dist/private/node/ui/components/TextInput.test.js.map +1 -1
- package/dist/private/node/ui/components/TextPrompt.d.ts +3 -3
- package/dist/private/node/ui/components/TextPrompt.js +5 -4
- package/dist/private/node/ui/components/TextPrompt.js.map +1 -1
- package/dist/private/node/ui/components/TextPrompt.test.js +2 -2
- package/dist/private/node/ui/components/TextPrompt.test.js.map +1 -1
- package/dist/private/node/ui/components/TextWithBackground.d.ts +12 -0
- package/dist/private/node/ui/components/TextWithBackground.js +39 -0
- package/dist/private/node/ui/components/TextWithBackground.js.map +1 -0
- package/dist/private/node/ui/components/TokenizedText.d.ts +17 -13
- package/dist/private/node/ui/components/TokenizedText.js +24 -6
- package/dist/private/node/ui/components/TokenizedText.js.map +1 -1
- package/dist/private/node/ui/components/TokenizedText.test.js +7 -2
- package/dist/private/node/ui/components/TokenizedText.test.js.map +1 -1
- package/dist/private/node/ui/components/UserInput.d.ts +3 -3
- package/dist/private/node/ui/components/UserInput.js.map +1 -1
- package/dist/private/node/ui/hooks/use-async-and-unmount.d.ts +1 -1
- package/dist/private/node/ui/hooks/use-async-and-unmount.js +1 -1
- package/dist/private/node/ui/hooks/use-async-and-unmount.js.map +1 -1
- package/dist/private/node/ui/hooks/use-layout.d.ts +1 -0
- package/dist/private/node/ui/hooks/use-layout.js +1 -0
- package/dist/private/node/ui/hooks/use-layout.js.map +1 -1
- package/dist/private/node/ui/utilities.d.ts +1 -1
- package/dist/private/node/ui.js +3 -2
- package/dist/private/node/ui.js.map +1 -1
- package/dist/public/common/string.d.ts +2 -2
- package/dist/public/common/string.js.map +1 -1
- package/dist/public/common/version.d.ts +1 -1
- package/dist/public/common/version.js +1 -1
- package/dist/public/common/version.js.map +1 -1
- package/dist/public/node/analytics.js +1 -1
- package/dist/public/node/analytics.js.map +1 -1
- package/dist/public/node/api/partners.js +1 -1
- package/dist/public/node/api/partners.js.map +1 -1
- package/dist/public/node/base-command.d.ts +3 -3
- package/dist/public/node/base-command.js +33 -31
- package/dist/public/node/base-command.js.map +1 -1
- package/dist/public/node/cli.d.ts +1 -1
- package/dist/public/node/cli.js +6 -5
- package/dist/public/node/cli.js.map +1 -1
- package/dist/public/node/{environment → context}/fqdn.d.ts +0 -0
- package/dist/public/node/{environment → context}/fqdn.js +1 -1
- package/dist/public/node/context/fqdn.js.map +1 -0
- package/dist/public/node/{environment → context}/local.d.ts +3 -3
- package/dist/public/node/{environment → context}/local.js +6 -6
- package/dist/public/node/context/local.js.map +1 -0
- package/dist/public/node/{environment → context}/spin.d.ts +0 -0
- package/dist/public/node/{environment → context}/spin.js +3 -3
- package/dist/public/node/context/spin.js.map +1 -0
- package/dist/public/node/environments.d.ts +15 -0
- package/dist/public/node/environments.js +33 -0
- package/dist/public/node/environments.js.map +1 -0
- package/dist/public/node/error.d.ts +5 -5
- package/dist/public/node/error.js.map +1 -1
- package/dist/public/node/git.js +1 -1
- package/dist/public/node/git.js.map +1 -1
- package/dist/public/node/hooks/postrun.d.ts +1 -1
- package/dist/public/node/hooks/postrun.js +1 -1
- package/dist/public/node/hooks/postrun.js.map +1 -1
- package/dist/public/node/http.d.ts +1 -0
- package/dist/public/node/http.js +1 -0
- package/dist/public/node/http.js.map +1 -1
- package/dist/public/node/metadata.js +1 -1
- package/dist/public/node/metadata.js.map +1 -1
- package/dist/public/node/output.js +1 -1
- package/dist/public/node/output.js.map +1 -1
- package/dist/public/node/ruby.d.ts +1 -0
- package/dist/public/node/ruby.js +43 -20
- package/dist/public/node/ruby.js.map +1 -1
- package/dist/public/node/session.js +1 -1
- package/dist/public/node/session.js.map +1 -1
- package/dist/public/node/themes/generate-theme-name.d.ts +1 -0
- package/dist/public/node/themes/generate-theme-name.js +13 -0
- package/dist/public/node/themes/generate-theme-name.js.map +1 -0
- package/dist/public/node/themes/models/theme.d.ts +11 -0
- package/dist/public/node/themes/models/theme.js +29 -0
- package/dist/public/node/themes/models/theme.js.map +1 -0
- package/dist/public/node/themes/replace-invalid-characters.d.ts +1 -0
- package/dist/public/node/themes/replace-invalid-characters.js +6 -0
- package/dist/public/node/themes/replace-invalid-characters.js.map +1 -0
- package/dist/public/node/themes/theme-manager.d.ts +13 -0
- package/dist/public/node/themes/theme-manager.js +40 -0
- package/dist/public/node/themes/theme-manager.js.map +1 -0
- package/dist/public/node/themes/theme-urls.d.ts +5 -0
- package/dist/public/node/themes/theme-urls.js +16 -0
- package/dist/public/node/themes/theme-urls.js.map +1 -0
- package/dist/public/node/themes/themes-api/headers.d.ts +3 -0
- package/dist/public/node/themes/themes-api/headers.js +29 -0
- package/dist/public/node/themes/themes-api/headers.js.map +1 -0
- package/dist/public/node/themes/themes-api/retry.d.ts +1 -0
- package/dist/public/node/themes/themes-api/retry.js +6 -0
- package/dist/public/node/themes/themes-api/retry.js.map +1 -0
- package/dist/public/node/themes/themes-api/throttler.d.ts +2 -0
- package/dist/public/node/themes/themes-api/throttler.js +82 -0
- package/dist/public/node/themes/themes-api/throttler.js.map +1 -0
- package/dist/public/node/themes/themes-api.d.ts +9 -0
- package/dist/public/node/themes/themes-api.js +85 -0
- package/dist/public/node/themes/themes-api.js.map +1 -0
- package/dist/public/node/ui.d.ts +25 -26
- package/dist/public/node/ui.js +47 -5
- package/dist/public/node/ui.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -5
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/dist/private/node/environment/service.js.map +0 -1
- package/dist/private/node/environment/spin-cache.js.map +0 -1
- package/dist/private/node/environment/utilities.js.map +0 -1
- package/dist/public/node/environment/fqdn.js.map +0 -1
- package/dist/public/node/environment/local.js.map +0 -1
- package/dist/public/node/environment/spin.js.map +0 -1
- package/dist/public/node/presets.d.ts +0 -8
- package/dist/public/node/presets.js +0 -26
- package/dist/public/node/presets.js.map +0 -1
- package/dist/ui/executor.d.ts +0 -2
- package/dist/ui/executor.js +0 -56
- package/dist/ui/executor.js.map +0 -1
- package/dist/ui.d.ts +0 -40
- package/dist/ui.js +0 -91
- package/dist/ui.js.map +0 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# This is a Docker image to test the CLI in UNIX environments other than macOS
|
|
2
|
+
# Build the image: docker build . -t shopify-cli
|
|
3
|
+
# Run tests: docker run -t --rm --volume "$(pwd):/usr/src/app" shopify-cli bundle exec rake test
|
|
4
|
+
FROM cimg/ruby:2.7.5
|
|
5
|
+
|
|
6
|
+
RUN git config --global user.email "development-lifecycle@shopify.com"
|
|
7
|
+
RUN git config --global user.name "Development Lifecycle"
|
|
8
|
+
|
|
9
|
+
RUN gem update bundler
|
|
10
|
+
|
|
11
|
+
WORKDIR /usr/src/app
|
|
12
|
+
|
|
13
|
+
COPY Gemfile Gemfile.lock ./
|
|
14
|
+
COPY shopify-cli.gemspec shopify-cli.gemspec
|
|
15
|
+
COPY lib/shopify_cli/version.rb lib/shopify_cli/version.rb
|
|
16
|
+
RUN bundle install
|
|
17
|
+
|
|
18
|
+
# Update git
|
|
19
|
+
RUN sudo add-apt-repository -y ppa:git-core/ppa
|
|
20
|
+
RUN sudo apt-get update
|
|
21
|
+
RUN sudo apt-get install git -y
|
|
22
|
+
|
|
23
|
+
# Install the latest version of NodeJS
|
|
24
|
+
RUN sudo apt-get install ca-certificates -y
|
|
25
|
+
RUN curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash -
|
|
26
|
+
RUN sudo apt-get install -y nodejs
|
|
27
|
+
|
|
28
|
+
# Install the latest version of Yarn
|
|
29
|
+
RUN sudo npm install --global yarn
|
|
30
|
+
|
|
31
|
+
# Python is necessary to compile NPM packages with native extensions through node-gyp
|
|
32
|
+
RUN sudo apt install python2-minimal -y
|
|
33
|
+
|
|
34
|
+
# Install sqlite3
|
|
35
|
+
RUN sudo apt-get install libsqlite3-dev -y
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# NOTE: These are development-only dependencies
|
|
2
|
+
source "https://rubygems.org"
|
|
3
|
+
|
|
4
|
+
gemspec
|
|
5
|
+
|
|
6
|
+
# None of these can actually be used in a development copy of dev
|
|
7
|
+
# They are all for CI and tests
|
|
8
|
+
# `dev` uses no gems
|
|
9
|
+
group :development, :test do
|
|
10
|
+
gem "rake"
|
|
11
|
+
gem "pry-byebug"
|
|
12
|
+
gem "byebug"
|
|
13
|
+
gem "rubocop-shopify", require: false
|
|
14
|
+
gem "rubocop-minitest", require: false
|
|
15
|
+
gem "rubocop-rake", require: false
|
|
16
|
+
gem "iniparse", "~> 1.5"
|
|
17
|
+
gem "colorize", "~> 0.8.1"
|
|
18
|
+
gem "octokit", "~> 4.0"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
group :test do
|
|
22
|
+
gem "mocha", require: false
|
|
23
|
+
gem "minitest", ">= 5.0.0", require: false
|
|
24
|
+
gem "minitest-reporters", require: false
|
|
25
|
+
gem "minitest-fail-fast", require: false
|
|
26
|
+
gem "fakefs", ">= 1.0", require: false
|
|
27
|
+
gem "webmock", require: false
|
|
28
|
+
gem "timecop", require: false
|
|
29
|
+
gem "rack", require: false
|
|
30
|
+
gem "cucumber", "~> 7.0", require: false
|
|
31
|
+
end
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
shopify-cli (2.34.0)
|
|
5
|
+
bugsnag (~> 6.22)
|
|
6
|
+
listen (~> 3.7.0)
|
|
7
|
+
theme-check (~> 1.14.0)
|
|
8
|
+
|
|
9
|
+
GEM
|
|
10
|
+
remote: https://rubygems.org/
|
|
11
|
+
specs:
|
|
12
|
+
addressable (2.8.0)
|
|
13
|
+
public_suffix (>= 2.0.2, < 5.0)
|
|
14
|
+
ansi (1.5.0)
|
|
15
|
+
ast (2.4.2)
|
|
16
|
+
bugsnag (6.24.2)
|
|
17
|
+
concurrent-ruby (~> 1.0)
|
|
18
|
+
builder (3.2.4)
|
|
19
|
+
byebug (11.1.3)
|
|
20
|
+
coderay (1.1.3)
|
|
21
|
+
colorize (0.8.1)
|
|
22
|
+
concurrent-ruby (1.1.10)
|
|
23
|
+
crack (0.4.5)
|
|
24
|
+
rexml
|
|
25
|
+
cucumber (7.0.0)
|
|
26
|
+
builder (~> 3.2, >= 3.2.4)
|
|
27
|
+
cucumber-core (~> 10.0, >= 10.0.1)
|
|
28
|
+
cucumber-create-meta (~> 6.0, >= 6.0.1)
|
|
29
|
+
cucumber-cucumber-expressions (~> 12.1, >= 12.1.1)
|
|
30
|
+
cucumber-gherkin (~> 20.0, >= 20.0.1)
|
|
31
|
+
cucumber-html-formatter (~> 16.0, >= 16.0.1)
|
|
32
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
33
|
+
cucumber-wire (~> 6.0, >= 6.0.1)
|
|
34
|
+
diff-lcs (~> 1.4, >= 1.4.4)
|
|
35
|
+
mime-types (~> 3.3, >= 3.3.1)
|
|
36
|
+
multi_test (~> 0.1, >= 0.1.2)
|
|
37
|
+
sys-uname (~> 1.2, >= 1.2.2)
|
|
38
|
+
cucumber-core (10.0.1)
|
|
39
|
+
cucumber-gherkin (~> 20.0, >= 20.0.1)
|
|
40
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
41
|
+
cucumber-tag-expressions (~> 3.0, >= 3.0.1)
|
|
42
|
+
cucumber-create-meta (6.0.1)
|
|
43
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
44
|
+
sys-uname (~> 1.2, >= 1.2.2)
|
|
45
|
+
cucumber-cucumber-expressions (12.1.3)
|
|
46
|
+
cucumber-gherkin (20.0.1)
|
|
47
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
48
|
+
cucumber-html-formatter (16.0.1)
|
|
49
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
50
|
+
cucumber-messages (17.1.1)
|
|
51
|
+
cucumber-tag-expressions (3.0.1)
|
|
52
|
+
cucumber-wire (6.1.1)
|
|
53
|
+
cucumber-core (~> 10.0, >= 10.0.1)
|
|
54
|
+
cucumber-cucumber-expressions (~> 12.1, >= 12.1.2)
|
|
55
|
+
cucumber-messages (~> 17.0, >= 17.0.1)
|
|
56
|
+
diff-lcs (1.4.4)
|
|
57
|
+
fakefs (1.3.2)
|
|
58
|
+
faraday (1.10.0)
|
|
59
|
+
faraday-em_http (~> 1.0)
|
|
60
|
+
faraday-em_synchrony (~> 1.0)
|
|
61
|
+
faraday-excon (~> 1.1)
|
|
62
|
+
faraday-httpclient (~> 1.0)
|
|
63
|
+
faraday-multipart (~> 1.0)
|
|
64
|
+
faraday-net_http (~> 1.0)
|
|
65
|
+
faraday-net_http_persistent (~> 1.0)
|
|
66
|
+
faraday-patron (~> 1.0)
|
|
67
|
+
faraday-rack (~> 1.0)
|
|
68
|
+
faraday-retry (~> 1.0)
|
|
69
|
+
ruby2_keywords (>= 0.0.4)
|
|
70
|
+
faraday-em_http (1.0.0)
|
|
71
|
+
faraday-em_synchrony (1.0.0)
|
|
72
|
+
faraday-excon (1.1.0)
|
|
73
|
+
faraday-httpclient (1.0.1)
|
|
74
|
+
faraday-multipart (1.0.3)
|
|
75
|
+
multipart-post (>= 1.2, < 3)
|
|
76
|
+
faraday-net_http (1.0.1)
|
|
77
|
+
faraday-net_http_persistent (1.2.0)
|
|
78
|
+
faraday-patron (1.0.0)
|
|
79
|
+
faraday-rack (1.0.0)
|
|
80
|
+
faraday-retry (1.0.3)
|
|
81
|
+
ffi (1.15.4)
|
|
82
|
+
hashdiff (1.0.1)
|
|
83
|
+
iniparse (1.5.0)
|
|
84
|
+
liquid (5.4.0)
|
|
85
|
+
listen (3.7.1)
|
|
86
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
87
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
|
88
|
+
method_source (1.0.0)
|
|
89
|
+
mime-types (3.3.1)
|
|
90
|
+
mime-types-data (~> 3.2015)
|
|
91
|
+
mime-types-data (3.2021.0901)
|
|
92
|
+
mini_portile2 (2.8.1)
|
|
93
|
+
minitest (5.14.4)
|
|
94
|
+
minitest-fail-fast (0.1.0)
|
|
95
|
+
minitest (~> 5)
|
|
96
|
+
minitest-reporters (1.4.3)
|
|
97
|
+
ansi
|
|
98
|
+
builder
|
|
99
|
+
minitest (>= 5.0)
|
|
100
|
+
ruby-progressbar
|
|
101
|
+
mocha (1.13.0)
|
|
102
|
+
multi_test (0.1.2)
|
|
103
|
+
multipart-post (2.1.1)
|
|
104
|
+
nokogiri (1.13.10)
|
|
105
|
+
mini_portile2 (~> 2.8.0)
|
|
106
|
+
racc (~> 1.4)
|
|
107
|
+
octokit (4.22.0)
|
|
108
|
+
faraday (>= 0.9)
|
|
109
|
+
sawyer (~> 0.8.0, >= 0.5.3)
|
|
110
|
+
parallel (1.21.0)
|
|
111
|
+
parser (3.2.0.0)
|
|
112
|
+
ast (~> 2.4.1)
|
|
113
|
+
pry (0.13.1)
|
|
114
|
+
coderay (~> 1.1)
|
|
115
|
+
method_source (~> 1.0)
|
|
116
|
+
pry-byebug (3.9.0)
|
|
117
|
+
byebug (~> 11.0)
|
|
118
|
+
pry (~> 0.13.0)
|
|
119
|
+
public_suffix (4.0.6)
|
|
120
|
+
racc (1.6.2)
|
|
121
|
+
rack (2.2.3.1)
|
|
122
|
+
rainbow (3.1.1)
|
|
123
|
+
rake (13.0.6)
|
|
124
|
+
rb-fsevent (0.11.1)
|
|
125
|
+
rb-inotify (0.10.1)
|
|
126
|
+
ffi (~> 1.0)
|
|
127
|
+
regexp_parser (2.2.0)
|
|
128
|
+
rexml (3.2.5)
|
|
129
|
+
rubocop (1.25.1)
|
|
130
|
+
parallel (~> 1.10)
|
|
131
|
+
parser (>= 3.1.0.0)
|
|
132
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
133
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
134
|
+
rexml
|
|
135
|
+
rubocop-ast (>= 1.15.1, < 2.0)
|
|
136
|
+
ruby-progressbar (~> 1.7)
|
|
137
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
|
138
|
+
rubocop-ast (1.15.1)
|
|
139
|
+
parser (>= 3.0.1.1)
|
|
140
|
+
rubocop-minitest (0.10.1)
|
|
141
|
+
rubocop (>= 0.87)
|
|
142
|
+
rubocop-rake (0.5.1)
|
|
143
|
+
rubocop
|
|
144
|
+
rubocop-shopify (2.0.1)
|
|
145
|
+
rubocop (~> 1.11)
|
|
146
|
+
ruby-progressbar (1.11.0)
|
|
147
|
+
ruby2_keywords (0.0.5)
|
|
148
|
+
sawyer (0.8.2)
|
|
149
|
+
addressable (>= 2.3.5)
|
|
150
|
+
faraday (> 0.8, < 2.0)
|
|
151
|
+
sys-uname (1.2.2)
|
|
152
|
+
ffi (~> 1.1)
|
|
153
|
+
theme-check (1.14.0)
|
|
154
|
+
liquid (>= 5.4.0)
|
|
155
|
+
nokogiri (>= 1.12)
|
|
156
|
+
parser (~> 3)
|
|
157
|
+
timecop (0.9.4)
|
|
158
|
+
unicode-display_width (2.1.0)
|
|
159
|
+
webmock (3.9.3)
|
|
160
|
+
addressable (>= 2.3.6)
|
|
161
|
+
crack (>= 0.3.2)
|
|
162
|
+
hashdiff (>= 0.4.0, < 2.0.0)
|
|
163
|
+
|
|
164
|
+
PLATFORMS
|
|
165
|
+
ruby
|
|
166
|
+
|
|
167
|
+
DEPENDENCIES
|
|
168
|
+
bundler (~> 2.3.11)
|
|
169
|
+
byebug
|
|
170
|
+
colorize (~> 0.8.1)
|
|
171
|
+
cucumber (~> 7.0)
|
|
172
|
+
fakefs (>= 1.0)
|
|
173
|
+
iniparse (~> 1.5)
|
|
174
|
+
minitest (>= 5.0.0)
|
|
175
|
+
minitest-fail-fast
|
|
176
|
+
minitest-reporters
|
|
177
|
+
mocha
|
|
178
|
+
octokit (~> 4.0)
|
|
179
|
+
pry-byebug
|
|
180
|
+
rack
|
|
181
|
+
rake
|
|
182
|
+
rubocop-minitest
|
|
183
|
+
rubocop-rake
|
|
184
|
+
rubocop-shopify
|
|
185
|
+
shopify-cli!
|
|
186
|
+
timecop
|
|
187
|
+
webmock
|
|
188
|
+
|
|
189
|
+
BUNDLED WITH
|
|
190
|
+
2.3.20
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
Copyright 2019-present, Shopify Inc.
|
|
2
2
|
|
|
3
|
+
Contains code from rack, Copyright (C) 2007-2019 Leah Neukirchen <http://leahneukirchen.org/infopage.html>
|
|
4
|
+
Contains code from rack-proxy, Copyright (c) 2013 Jacek Becela jacek.becela@gmail.com
|
|
3
5
|
|
|
4
6
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
5
7
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Shopify CLI 2.0
|
|
2
|
+
|
|
3
|
+
<a href="https://github.com/Shopify/shopify-cli/actions/workflows/shopify.yml"><img src="https://github.com/shopify/shopify-cli/actions/workflows/shopify.yml/badge.svg" alt="Shopify"></a>
|
|
4
|
+
<img src="https://img.shields.io/github/v/release/shopify/shopify-cli?include_prereleases&style=flat-square" alt="Latest Version">
|
|
5
|
+
<img src="https://img.shields.io/github/forks/shopify/shopify-cli?style=flat-square" alt="GitHub forks">
|
|
6
|
+
<img src="https://img.shields.io/github/stars/shopify/shopify-cli?style=flat-square" alt="GitHub stars">
|
|
7
|
+
<img src="https://img.shields.io/github/commit-activity/w/shopify/shopify-cli?style=flat-square" alt="Commit Activity">
|
|
8
|
+
<img src="https://img.shields.io/github/contributors/shopify/shopify-cli?style=flat-square" alt="Contributors">
|
|
9
|
+
<img src="https://img.shields.io/github/commits-since/shopify/shopify-cli/latest?style=flat-square" alt="Latest Commits">
|
|
10
|
+
<a href="http://twitter.com/ShopifyDevs"><img src="https://img.shields.io/twitter/follow/ShopifyDevs?style=flat-square" alt="Twitter Followers"></a>
|
|
11
|
+
<img src="https://img.shields.io/badge/License-MIT-green.svg" alt="License">
|
|
12
|
+
<img src="https://img.shields.io/badge/Powered%20by-Ruby-red" alt="Powered by Ruby">
|
|
13
|
+
|
|
14
|
+
Shopify CLI 2.0 is a command line to help you build on Shopify. It's available as a Ruby gem and can be run and installed on Mac, Linux, and Windows systems.
|
|
15
|
+
|
|
16
|
+
## CLI Deprecation & Sunset
|
|
17
|
+
|
|
18
|
+
Note that Shopify 2.0 is deprecated and will be [sunset on May 31, 2023](https://shopify.dev/changelog/cli-2-0-to-be-sunset-on-may-31-2023). We encourage using [Shopify CLI 3.0](https://github.com/Shopify/cli) to develop apps, custom storefronts, and themes.
|
|
19
|
+
|
|
20
|
+
## Contributing 👩💻
|
|
21
|
+
|
|
22
|
+
Shopify CLI is an [open source tool](/LICENSE) and everyone is welcome to help the community by [contributing](/docs/README.md) to the project.
|
|
23
|
+
|
|
24
|
+
## Help 🖐
|
|
25
|
+
|
|
26
|
+
If you encounter issues using the CLI or have feedback you'd like to share with us, below are some options:
|
|
27
|
+
|
|
28
|
+
- [Open a GitHub issue](https://github.com/Shopify/shopify-cli/issues) - To report bugs or request new features, open an issue in the Shopify CLI repository.
|
|
29
|
+
|
|
30
|
+
- [Shopify Community Forums](https://community.shopify.com/) - Visit our forums to connect with the community and learn more about Shopify CLI development.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
## Releasing Shopify CLI
|
|
2
|
+
|
|
3
|
+
This page contains instructions for CLI 2.0. If you are looking for instructions for CLI 3.0, please visit the [CLI 3.0 documentation](https://github.com/Shopify/cli/blob/main/docs/release.md).
|
|
4
|
+
|
|
5
|
+
### Automated process
|
|
6
|
+
|
|
7
|
+
We release the CLI with a series of Rake tasks run locally, interspersed with PR-based checkpoints. The steps are:
|
|
8
|
+
|
|
9
|
+
1. `export GITHUB_ACCESS_TOKEN=$(dev github print-auth | grep Password | awk '{print $NF}')`
|
|
10
|
+
2. `rake "release:prepare[2.x.x]"` (where 2.x.x is the version being released)
|
|
11
|
+
3. PR to shopify-cli will open in your browser. Sanity-check and merge.
|
|
12
|
+
4. Trigger [Shipit](https://shipit.shopify.io/shopify/shopify-cli/rubygems) on your version commit to release on RubyGems
|
|
13
|
+
5. `rake release:package`
|
|
14
|
+
6. Homebrew PR will open in your browser. Sanity-check and merge.
|
|
15
|
+
7. Release will also be opened in your browser, check that it includes debian and rpm files.
|
|
16
|
+
8. Go through all the [PRs labeled with includes-post-release-steps](https://github.com/Shopify/shopify-cli/issues?q=label%3Aincludes-post-release-steps+is%3Aclosed) and follow the post-release steps described in those PRs. Delete the labels afterward.
|
|
17
|
+
|
|
18
|
+
In case the automation goes wrong, try with the manual instructions.
|
|
19
|
+
|
|
20
|
+
### Manual process
|
|
21
|
+
|
|
22
|
+
1. Check the Semantic Versioning page for info on how to version the new release: http://semver.org
|
|
23
|
+
2. Make sure you're on the most recent `main`
|
|
24
|
+
```
|
|
25
|
+
$ git checkout main
|
|
26
|
+
$ git pull
|
|
27
|
+
```
|
|
28
|
+
3. Create a branch named `release_X_Y_Z` (replacing `X_Y_Z` with the intended release version)
|
|
29
|
+
```
|
|
30
|
+
$ git checkout -b release_X_Y_Z
|
|
31
|
+
```
|
|
32
|
+
4. Update the version of Shopify CLI in `lib/shopify_cli/version.rb`
|
|
33
|
+
5. Update the version of Shopify CLI at the top of `Gemfile.lock` (failing to do so causes the CI build to fail)
|
|
34
|
+
6. Add an entry for the new release to `CHANGELOG.md`
|
|
35
|
+
7. Commit the changes with a commit message like "Packaging for release X.Y.Z"
|
|
36
|
+
```
|
|
37
|
+
$ git commit -am "Packaging for release vX.Y.Z"
|
|
38
|
+
```
|
|
39
|
+
8. Push out the changes
|
|
40
|
+
```
|
|
41
|
+
$ git push -u origin release_X_Y_Z
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
9. Open a PR for the branch, get necessary approvals from code owners and merge into main branch. Note that the PR title will be the release note in Shipit, so make sure it mentions the release
|
|
45
|
+
10. Deploy to RubyGems using [Shipit](https://shipit.shopify.io/shopify/shopify-cli/rubygems)
|
|
46
|
+
11. Update your `main` branch to the latest version
|
|
47
|
+
```
|
|
48
|
+
$ git checkout main
|
|
49
|
+
$ git pull
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
12. On local machine and _AFTER_ gem has been published to https://rubygems.org/gems/shopify-cli, run
|
|
53
|
+
```
|
|
54
|
+
$ rake package
|
|
55
|
+
```
|
|
56
|
+
This will generate the `.deb`, `.rpm` and brew formula files, which will be located in `packaging/builds/X.Y.Z/`.
|
|
57
|
+
|
|
58
|
+
13. Clone the `Shopify/homebrew-shopify` repository (if not already cloned), and then
|
|
59
|
+
* update your `master` branch to the latest version: `git checkout master && git pull`
|
|
60
|
+
* create a new branch: `git checkout -b release_X_Y_Z_of_shopify-cli`
|
|
61
|
+
* update the brew formula in `shopify-cli.rb` with the generated formula in `packaging/builds/X.Y.Z/` in the `Shopify/shopify-cli` repo (from the `rake package` step above)
|
|
62
|
+
* commit the change and create a PR on the [Shopify Homebrew repository](https://github.com/Shopify/homebrew-shopify)
|
|
63
|
+
* when PR is approved, merge into main branch
|
|
64
|
+
|
|
65
|
+
14. Go to [releases](https://github.com/Shopify/shopify-cli/releases) page of `Shopify/shopify-cli` repo and create a new release:
|
|
66
|
+
* use the tag created by Shipit (should be "vX.Y.Z")
|
|
67
|
+
* release title = "Version X.Y.Z"
|
|
68
|
+
* description should be the content of the section in the `CHANGELOG.md`
|
|
69
|
+
* upload the `.deb` and `.rpm` files from `packaging/builds/X.Y.Z/` (generated in step 9)
|
|
70
|
+
* if it's a pre-release version, select the "This is a pre-release" checkbox
|
|
71
|
+
* and click "Publish release".
|
|
72
|
+
15. Go through all the PR [labeled with `includes-post-release-steps`](https://github.com/Shopify/shopify-cli/labels/includes-post-release-steps) and follow the post-release steps described in those PRs. Delete the labels afterward.
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
ENV["SHOPIFY_CLI_TEST"] = "1"
|
|
2
|
+
|
|
3
|
+
require_relative "bin/load_shopify"
|
|
4
|
+
require_relative "utilities/utilities"
|
|
5
|
+
require_relative "lib/shopify_cli/constants"
|
|
6
|
+
require_relative "lib/shopify_cli/version"
|
|
7
|
+
require "rake/testtask"
|
|
8
|
+
require "rubocop/rake_task"
|
|
9
|
+
require "bundler/gem_tasks"
|
|
10
|
+
require "shellwords"
|
|
11
|
+
require "digest"
|
|
12
|
+
require "open3"
|
|
13
|
+
|
|
14
|
+
Rake::TestTask.new do |t|
|
|
15
|
+
t.libs += %w(test)
|
|
16
|
+
t.test_files = FileList["test/**/*_test.rb"]
|
|
17
|
+
t.verbose = false
|
|
18
|
+
t.warning = false
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
desc "A set of tasks that run in Linux environments"
|
|
22
|
+
namespace :linux do
|
|
23
|
+
desc "Runs the test suite in a Linux Docker environment"
|
|
24
|
+
task :test do
|
|
25
|
+
Utilities::Docker.run_and_rm_container("bundle", "exec", "rake", "test")
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
RuboCop::RakeTask.new
|
|
30
|
+
|
|
31
|
+
task(default: [:test, :rubocop])
|
|
32
|
+
|
|
33
|
+
desc("Start up irb with cli loaded")
|
|
34
|
+
task :console do
|
|
35
|
+
exec("irb", "-r", "./bin/load_shopify.rb", "-r", "byebug")
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
desc("Notifies a new version to Bugsnag")
|
|
39
|
+
task :notify_version_to_bugsnag do
|
|
40
|
+
# This task runs at deployment time to notify
|
|
41
|
+
# Bugsnag about new versions. Because the deployment
|
|
42
|
+
# environment has Node, we can run the Bugsnag CLI
|
|
43
|
+
# through npx.
|
|
44
|
+
system(
|
|
45
|
+
{ "npm_config_yes" => "true" },
|
|
46
|
+
"npx", "-q", "bugsnag-build-reporter",
|
|
47
|
+
"-k", ShopifyCLI::Constants::Bugsnag::API_KEY,
|
|
48
|
+
"-v", ShopifyCLI::VERSION
|
|
49
|
+
) || abort
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
namespace :rdoc do
|
|
53
|
+
repo = "https://github.com/Shopify/shopify-cli.wiki.git"
|
|
54
|
+
intermediate = "markdown_intermediate"
|
|
55
|
+
file_to_doc = [
|
|
56
|
+
"lib/shopify_cli/admin_api.rb",
|
|
57
|
+
"lib/shopify_cli/context.rb",
|
|
58
|
+
"lib/shopify_cli/db.rb",
|
|
59
|
+
"lib/shopify_cli/git.rb",
|
|
60
|
+
"lib/shopify_cli/heroku.rb",
|
|
61
|
+
"lib/shopify_cli/js_deps.rb",
|
|
62
|
+
"lib/shopify_cli/lazy_delegator.rb",
|
|
63
|
+
"lib/shopify_cli/method_object.rb",
|
|
64
|
+
"lib/shopify_cli/partners_api.rb",
|
|
65
|
+
"lib/shopify_cli/process_supervision.rb",
|
|
66
|
+
"lib/shopify_cli/project.rb",
|
|
67
|
+
"lib/shopify_cli/result.rb",
|
|
68
|
+
"lib/shopify_cli/transform_data_structure.rb",
|
|
69
|
+
"lib/shopify_cli/tunnel.rb",
|
|
70
|
+
]
|
|
71
|
+
|
|
72
|
+
task all: [:markdown, :wiki, :cleanup]
|
|
73
|
+
|
|
74
|
+
desc("Generate markdown files from rdoc comments")
|
|
75
|
+
task :markdown do
|
|
76
|
+
require "rdoc/rdoc"
|
|
77
|
+
require "docgen/markdown"
|
|
78
|
+
options = RDoc::Options.new
|
|
79
|
+
options.setup_generator("markdown")
|
|
80
|
+
options.op_dir = intermediate
|
|
81
|
+
options.files = file_to_doc
|
|
82
|
+
RDoc::RDoc.new.document(options)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
desc("Copy markdown documentation to the wiki and commit them")
|
|
86
|
+
task :wiki do
|
|
87
|
+
require "tmpdir"
|
|
88
|
+
Dir.mktmpdir do |temp_dir|
|
|
89
|
+
system("git clone --depth=1 #{repo} #{temp_dir}")
|
|
90
|
+
FileUtils.cp(Dir[File.join(intermediate, "*.md")], temp_dir)
|
|
91
|
+
Dir.chdir(temp_dir) do
|
|
92
|
+
system("git add --all")
|
|
93
|
+
system('git commit -am "auto doc update"')
|
|
94
|
+
system("git push")
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
desc("Clean up any documentation related files")
|
|
100
|
+
task :cleanup do
|
|
101
|
+
FileUtils.rm_r(intermediate)
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
desc("Generate markdown documentation and update the wiki")
|
|
106
|
+
task(rdoc: "rdoc:all")
|
|
107
|
+
|
|
108
|
+
namespace :package do
|
|
109
|
+
require "shopify_cli/packager"
|
|
110
|
+
|
|
111
|
+
task all: [:debian, :rpm, :homebrew]
|
|
112
|
+
|
|
113
|
+
desc("Builds a Debian package of the CLI")
|
|
114
|
+
task :debian do
|
|
115
|
+
ShopifyCLI::Packager.new.build_debian
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
desc("Builds an RPM package of the CLI")
|
|
119
|
+
task :rpm do
|
|
120
|
+
ShopifyCLI::Packager.new.build_rpm
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
desc("Builds a Homebrew package of the CLI")
|
|
124
|
+
task :homebrew do
|
|
125
|
+
ShopifyCLI::Packager.new.build_homebrew
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
desc("Builds all distribution packages of the CLI")
|
|
130
|
+
task(package: "package:all")
|
|
131
|
+
|
|
132
|
+
namespace :changelog do
|
|
133
|
+
require "shopify_cli/changelog"
|
|
134
|
+
|
|
135
|
+
task :update do
|
|
136
|
+
ShopifyCLI::Changelog.new.update!
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
namespace :release do
|
|
141
|
+
require "shopify_cli/release"
|
|
142
|
+
|
|
143
|
+
task :prepare, [:new_version] do |_t, args|
|
|
144
|
+
new_version = args[:new_version]
|
|
145
|
+
unless new_version
|
|
146
|
+
raise <<~NO_NEW_VERSION
|
|
147
|
+
New version must be provided, e.g.:
|
|
148
|
+
|
|
149
|
+
$ GITHUB_ACCESS_TOKEN=abcdef rake "release:prepare[1.2.3]"
|
|
150
|
+
|
|
151
|
+
NO_NEW_VERSION
|
|
152
|
+
end
|
|
153
|
+
github_access_token = ENV["GITHUB_ACCESS_TOKEN"]
|
|
154
|
+
unless github_access_token
|
|
155
|
+
raise <<~NO_GITHUB_ACCESS_TOKEN
|
|
156
|
+
GitHub access token must be provided, e.g.:
|
|
157
|
+
|
|
158
|
+
$ GITHUB_ACCESS_TOKEN=abcdef rake "release:prepare[1.2.3]"
|
|
159
|
+
NO_GITHUB_ACCESS_TOKEN
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
ShopifyCLI::Release.new(new_version, github_access_token).prepare!
|
|
163
|
+
puts "Completed!"
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
task :package do
|
|
167
|
+
github_access_token = ENV["GITHUB_ACCESS_TOKEN"]
|
|
168
|
+
unless github_access_token
|
|
169
|
+
raise <<~NO_GITHUB_ACCESS_TOKEN
|
|
170
|
+
GitHub access token must be provided, e.g.:
|
|
171
|
+
|
|
172
|
+
$ GITHUB_ACCESS_TOKEN=abcdef rake release:package
|
|
173
|
+
NO_GITHUB_ACCESS_TOKEN
|
|
174
|
+
end
|
|
175
|
+
ShopifyCLI::Release.new(ShopifyCLI::VERSION, github_access_token).package!
|
|
176
|
+
puts "Completed!"
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
namespace :extensions do
|
|
181
|
+
task :update do
|
|
182
|
+
version = ENV.fetch("VERSION").strip
|
|
183
|
+
error("Invalid version") unless /^v\d+\.\d+\.\d+/.match(version)
|
|
184
|
+
File.write(Paths.extension("version"), version)
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
task :symlink do
|
|
188
|
+
source = Paths.root("..", "shopify-cli-extensions", "shopify-extensions")
|
|
189
|
+
error("Unable to find shopify-extensions executable: #{executable}") unless File.executable?(source)
|
|
190
|
+
target = Paths.extension("shopify-extensions")
|
|
191
|
+
File.delete(target) if File.exist?(target)
|
|
192
|
+
File.symlink(source, target)
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
task :install do
|
|
196
|
+
target = Paths.extension("shopify-extensions")
|
|
197
|
+
require_relative Paths.extension("shopify_extensions.rb")
|
|
198
|
+
File.delete(target) if File.exist?(target)
|
|
199
|
+
ShopifyExtensions.install(target: target)
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
module Paths
|
|
203
|
+
def self.extension(*args)
|
|
204
|
+
root("ext", "shopify-extensions", *args)
|
|
205
|
+
end
|
|
206
|
+
|
|
207
|
+
def self.root(*args)
|
|
208
|
+
Pathname(File.dirname(__FILE__)).join(*args).to_s
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
|
|
213
|
+
namespace :scripts do
|
|
214
|
+
namespace :javy do
|
|
215
|
+
task :symlink do
|
|
216
|
+
source = Paths.root("..", "javy", "target", "release", "javy")
|
|
217
|
+
error("Unable to find javy executable: #{executable}") unless File.executable?(source)
|
|
218
|
+
target = Paths.javy("javy")
|
|
219
|
+
File.delete(target) if File.exist?(target)
|
|
220
|
+
File.symlink(source, target)
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
task :install do
|
|
224
|
+
require_relative Paths.javy("javy.rb")
|
|
225
|
+
Javy.install
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
module Paths
|
|
229
|
+
def self.javy(*args)
|
|
230
|
+
root("ext", "javy", *args)
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
def self.root(*args)
|
|
234
|
+
Pathname(File.dirname(__FILE__)).join(*args).to_s
|
|
235
|
+
end
|
|
236
|
+
end
|
|
237
|
+
end
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
def error(message, output: STDERR, code: 1)
|
|
241
|
+
output.puts(message)
|
|
242
|
+
exit(code)
|
|
243
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Supported versions
|
|
4
|
+
|
|
5
|
+
### New features
|
|
6
|
+
|
|
7
|
+
New features will only be added to the main branch and will not be made available in point releases.
|
|
8
|
+
|
|
9
|
+
### Bug fixes
|
|
10
|
+
|
|
11
|
+
Only the latest release series will receive bug fixes. When enough bugs are fixed and its deemed worthy to release a new gem, this is the branch it happens from.
|
|
12
|
+
|
|
13
|
+
### Security issues
|
|
14
|
+
|
|
15
|
+
Only the latest release series will receive patches and new versions in case of a security issue.
|
|
16
|
+
|
|
17
|
+
### Severe security issues
|
|
18
|
+
|
|
19
|
+
For severe security issues we will provide new versions as above, and also the last major release series will receive patches and new versions. The classification of the security issue is judged by the core team.
|
|
20
|
+
|
|
21
|
+
### Unsupported Release Series
|
|
22
|
+
|
|
23
|
+
When a release series is no longer supported, it's your own responsibility to deal with bugs and security issues. If you are not comfortable maintaining your own versions, you should upgrade to a supported version.
|
|
24
|
+
|
|
25
|
+
## Reporting a bug
|
|
26
|
+
|
|
27
|
+
All security bugs in shopify repositories should be reported to [our hackerone program](https://hackerone.com/shopify)
|
|
28
|
+
Shopify's whitehat program is our way to reward security researchers for finding serious security vulnerabilities in the In Scope properties listed at the bottom of this page, including our core application (all functionality associated with a Shopify store, particularly your-store.myshopify.com/admin) and certain ancillary applications.
|
|
29
|
+
|
|
30
|
+
## Disclosure Policy
|
|
31
|
+
|
|
32
|
+
We look forward to working with all security researchers and strive to be respectful, always assume the best and treat others as peers. We expect the same in return from all participants. To achieve this, our team strives to:
|
|
33
|
+
|
|
34
|
+
- Reply to all reports within one business day and triage within two business days (if applicable)
|
|
35
|
+
- Be as transparent as possible, answering all inquires about our report decisions and adding hackers to duplicate HackerOne reports
|
|
36
|
+
- Award bounties within a week of resolution (excluding extenuating circumstances)
|
|
37
|
+
- Only close reports as N/A when the issue reported is included in Known Issues, Ineligible Vulnerabilities Types or lacks evidence of a vulnerability
|
|
38
|
+
|
|
39
|
+
**The following rules must be followed in order for any rewards to be paid:**
|
|
40
|
+
|
|
41
|
+
- You may only test against shops you have created which include your HackerOne YOURHANDLE @ wearehackerone.com registered email address.
|
|
42
|
+
- You must not attempt to gain access to, or interact with, any shops other than those created by you.
|
|
43
|
+
- The use of commercial scanners is prohibited (e.g., Nessus).
|
|
44
|
+
- Rules for reporting must be followed.
|
|
45
|
+
- Do not disclose any issues publicly before they have been resolved.
|
|
46
|
+
- Shopify reserves the right to modify the rules for this program or deem any submissions invalid at any time. Shopify may cancel the whitehat program without notice at any time.
|
|
47
|
+
- Contacting Shopify Support over chat, email or phone about your HackerOne report is not allowed. We may disqualify you from receiving a reward, or from participating in the program altogether.
|
|
48
|
+
- You are not an employee of Shopify; employees should report bugs to the internal bug bounty program.
|
|
49
|
+
- You hereby represent, warrant and covenant that any content you submit to Shopify is an original work of authorship and that you are legally entitled to grant the rights and privileges conveyed by these terms. You further represent, warrant and covenant that the consent of no other person or entity is or will be necessary for Shopify to use the submitted content.
|
|
50
|
+
- By submitting content to Shopify, you irrevocably waive all moral rights which you may have in the content.
|
|
51
|
+
- All content submitted by you to Shopify under this program is licensed under the MIT License.
|
|
52
|
+
- You must report any discovered vulnerability to Shopify as soon as you have validated the vulnerability.
|
|
53
|
+
- Failure to follow any of the foregoing rules will disqualify you from participating in this program.
|
|
54
|
+
|
|
55
|
+
** Please see our [Hackerone Profile](https://hackerone.com/shopify) for full details
|
|
56
|
+
|
|
57
|
+
## Receiving Security Updates
|
|
58
|
+
|
|
59
|
+
To recieve all general updates to vulnerabilities, please subscribe to our hackerone [Hacktivity](https://hackerone.com/shopify/hacktivity)
|