shopify-cli 2.4.0 → 2.6.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (250) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/shopify.yml +0 -2
  3. data/.gitignore +1 -0
  4. data/.rubocop.yml +14 -14
  5. data/.rubocop_todo.yml +3 -3
  6. data/CHANGELOG.md +25 -0
  7. data/Dockerfile +1 -3
  8. data/Gemfile.lock +22 -16
  9. data/README.md +1 -1
  10. data/RELEASING.md +1 -1
  11. data/Rakefile +25 -34
  12. data/bin/console +11 -0
  13. data/bin/shopify +17 -4
  14. data/dev.yml +3 -0
  15. data/ext/shopify-cli/extconf.rb +1 -0
  16. data/lib/project_types/extension/cli.rb +5 -3
  17. data/lib/project_types/extension/commands/build.rb +4 -3
  18. data/lib/project_types/extension/commands/check.rb +2 -2
  19. data/lib/project_types/extension/commands/connect.rb +1 -1
  20. data/lib/project_types/extension/commands/create.rb +41 -23
  21. data/lib/project_types/extension/commands/extension_command.rb +1 -1
  22. data/lib/project_types/extension/commands/info.rb +1 -1
  23. data/lib/project_types/extension/commands/push.rb +1 -1
  24. data/lib/project_types/extension/commands/register.rb +2 -2
  25. data/lib/project_types/extension/commands/serve.rb +5 -5
  26. data/lib/project_types/extension/commands/tunnel.rb +6 -6
  27. data/lib/project_types/extension/extension_project.rb +4 -4
  28. data/lib/project_types/extension/features/argo.rb +3 -3
  29. data/lib/project_types/extension/features/argo_config.rb +5 -5
  30. data/lib/project_types/extension/features/argo_serve.rb +21 -6
  31. data/lib/project_types/extension/features/argo_setup.rb +1 -1
  32. data/lib/project_types/extension/features/argo_setup_step.rb +1 -1
  33. data/lib/project_types/extension/features/argo_setup_steps.rb +2 -2
  34. data/lib/project_types/extension/forms/connect.rb +2 -2
  35. data/lib/project_types/extension/forms/create.rb +2 -2
  36. data/lib/project_types/extension/forms/questions/ask_app.rb +2 -2
  37. data/lib/project_types/extension/forms/questions/ask_name.rb +1 -1
  38. data/lib/project_types/extension/forms/questions/ask_registration.rb +2 -2
  39. data/lib/project_types/extension/forms/questions/ask_template.rb +2 -2
  40. data/lib/project_types/extension/forms/questions/ask_type.rb +2 -2
  41. data/lib/project_types/extension/messages/message_loading.rb +2 -2
  42. data/lib/project_types/extension/models/development_server.rb +49 -6
  43. data/lib/project_types/extension/models/development_server_requirements.rb +21 -3
  44. data/lib/project_types/extension/models/lazy_specification_handler.rb +1 -1
  45. data/lib/project_types/extension/models/specification.rb +1 -1
  46. data/lib/project_types/extension/models/specification_handlers/default.rb +14 -2
  47. data/lib/project_types/extension/models/specification_handlers/theme_app_extension.rb +1 -1
  48. data/lib/project_types/extension/models/specifications.rb +4 -4
  49. data/lib/project_types/extension/tasks/choose_next_available_port.rb +1 -1
  50. data/lib/project_types/extension/tasks/configure_features.rb +1 -1
  51. data/lib/project_types/extension/tasks/configure_options.rb +1 -1
  52. data/lib/project_types/extension/tasks/converters/product_converter.rb +1 -1
  53. data/lib/project_types/extension/tasks/converters/server_config_converter.rb +31 -0
  54. data/lib/project_types/extension/tasks/create_extension.rb +2 -2
  55. data/lib/project_types/extension/tasks/fetch_specifications.rb +2 -2
  56. data/lib/project_types/extension/tasks/find_npm_packages.rb +5 -5
  57. data/lib/project_types/extension/tasks/get_app.rb +2 -2
  58. data/lib/project_types/extension/tasks/get_apps.rb +2 -2
  59. data/lib/project_types/extension/tasks/get_extensions.rb +2 -2
  60. data/lib/project_types/extension/tasks/get_product.rb +2 -2
  61. data/lib/project_types/extension/tasks/load_server_config.rb +23 -0
  62. data/lib/project_types/extension/tasks/run_extension_command.rb +34 -11
  63. data/lib/project_types/extension/tasks/update_draft.rb +2 -2
  64. data/lib/project_types/node/cli.rb +3 -3
  65. data/lib/project_types/node/commands/connect.rb +4 -4
  66. data/lib/project_types/node/commands/create.rb +10 -10
  67. data/lib/project_types/node/commands/deploy/heroku.rb +4 -4
  68. data/lib/project_types/node/commands/deploy.rb +3 -3
  69. data/lib/project_types/node/commands/generate.rb +2 -2
  70. data/lib/project_types/node/commands/open.rb +3 -3
  71. data/lib/project_types/node/commands/serve.rb +15 -7
  72. data/lib/project_types/node/commands/tunnel.rb +6 -6
  73. data/lib/project_types/node/forms/create.rb +3 -3
  74. data/lib/project_types/node/messages/messages.rb +3 -0
  75. data/lib/project_types/php/cli.rb +27 -0
  76. data/lib/project_types/php/commands/connect.rb +19 -0
  77. data/lib/project_types/php/commands/create.rb +143 -0
  78. data/lib/project_types/php/commands/deploy/heroku.rb +129 -0
  79. data/lib/project_types/php/commands/deploy.rb +32 -0
  80. data/lib/project_types/php/commands/open.rb +16 -0
  81. data/lib/project_types/php/commands/serve.rb +51 -0
  82. data/lib/project_types/php/commands/tunnel.rb +37 -0
  83. data/lib/project_types/php/forms/create.rb +45 -0
  84. data/lib/project_types/php/messages/messages.rb +191 -0
  85. data/lib/project_types/rails/cli.rb +3 -3
  86. data/lib/project_types/rails/commands/connect.rb +4 -4
  87. data/lib/project_types/rails/commands/create.rb +12 -12
  88. data/lib/project_types/rails/commands/deploy/heroku.rb +4 -4
  89. data/lib/project_types/rails/commands/deploy.rb +3 -3
  90. data/lib/project_types/rails/commands/generate/webhook.rb +3 -3
  91. data/lib/project_types/rails/commands/generate.rb +3 -3
  92. data/lib/project_types/rails/commands/open.rb +3 -3
  93. data/lib/project_types/rails/commands/serve.rb +8 -8
  94. data/lib/project_types/rails/commands/tunnel.rb +6 -6
  95. data/lib/project_types/rails/forms/create.rb +3 -3
  96. data/lib/project_types/rails/gem.rb +1 -1
  97. data/lib/project_types/rails/ruby.rb +1 -1
  98. data/lib/project_types/script/cli.rb +15 -7
  99. data/lib/project_types/script/commands/create.rb +4 -2
  100. data/lib/project_types/script/commands/push.rb +2 -2
  101. data/lib/project_types/script/config/extension_points.yml +30 -29
  102. data/lib/project_types/script/forms/create.rb +1 -1
  103. data/lib/project_types/script/layers/application/create_script.rb +32 -12
  104. data/lib/project_types/script/layers/application/extension_points.rb +4 -4
  105. data/lib/project_types/script/layers/application/push_script.rb +4 -1
  106. data/lib/project_types/script/layers/domain/extension_point.rb +13 -45
  107. data/lib/project_types/script/layers/domain/script_project.rb +2 -2
  108. data/lib/project_types/script/layers/infrastructure/api_clients/partners_proxy_api_client.rb +57 -0
  109. data/lib/project_types/script/layers/infrastructure/api_clients/script_service_api_client.rb +35 -0
  110. data/lib/project_types/script/layers/infrastructure/command_runner.rb +1 -1
  111. data/lib/project_types/script/layers/infrastructure/errors.rb +5 -0
  112. data/lib/project_types/script/layers/infrastructure/languages/assemblyscript_project_creator.rb +10 -90
  113. data/lib/project_types/script/layers/infrastructure/languages/project_creator.rb +76 -11
  114. data/lib/project_types/script/layers/infrastructure/languages/task_runner.rb +1 -1
  115. data/lib/project_types/script/layers/infrastructure/languages/typescript_project_creator.rb +33 -0
  116. data/lib/project_types/script/layers/infrastructure/languages/typescript_task_runner.rb +105 -0
  117. data/lib/project_types/script/layers/infrastructure/push_package_repository.rb +1 -1
  118. data/lib/project_types/script/layers/infrastructure/script_project_repository.rb +6 -6
  119. data/lib/project_types/script/layers/infrastructure/script_service.rb +4 -8
  120. data/lib/project_types/script/layers/infrastructure/service_locator.rb +20 -0
  121. data/lib/project_types/script/messages/messages.rb +4 -0
  122. data/lib/project_types/script/tasks/ensure_env.rb +6 -6
  123. data/lib/project_types/script/ui/error_handler.rb +83 -75
  124. data/lib/project_types/script/ui/printing_spinner.rb +1 -1
  125. data/lib/project_types/theme/cli.rb +3 -3
  126. data/lib/project_types/theme/commands/check.rb +3 -3
  127. data/lib/project_types/theme/commands/delete.rb +7 -7
  128. data/lib/project_types/theme/commands/init.rb +3 -3
  129. data/lib/project_types/theme/commands/language_server.rb +2 -2
  130. data/lib/project_types/theme/commands/package.rb +2 -2
  131. data/lib/project_types/theme/commands/publish.rb +5 -5
  132. data/lib/project_types/theme/commands/pull.rb +9 -9
  133. data/lib/project_types/theme/commands/push.rb +12 -12
  134. data/lib/project_types/theme/commands/serve.rb +4 -4
  135. data/lib/project_types/theme/forms/confirm_store.rb +1 -1
  136. data/lib/project_types/theme/forms/select.rb +2 -2
  137. data/lib/{shopify-cli → shopify_cli}/admin_api/populate_resource_command.rb +3 -3
  138. data/lib/{shopify-cli → shopify_cli}/admin_api/schema.rb +4 -4
  139. data/lib/{shopify-cli → shopify_cli}/admin_api.rb +27 -27
  140. data/lib/{shopify-cli → shopify_cli}/api.rb +12 -8
  141. data/lib/shopify_cli/command/app_sub_command.rb +16 -0
  142. data/lib/{shopify-cli → shopify_cli}/command.rb +3 -3
  143. data/lib/{shopify-cli → shopify_cli}/commands/config.rb +14 -14
  144. data/lib/{shopify-cli → shopify_cli}/commands/help.rb +4 -4
  145. data/lib/{shopify-cli → shopify_cli}/commands/login.rb +7 -7
  146. data/lib/shopify_cli/commands/logout.rb +39 -0
  147. data/lib/{shopify-cli → shopify_cli}/commands/populate/customer.rb +4 -4
  148. data/lib/{shopify-cli → shopify_cli}/commands/populate/draft_order.rb +4 -4
  149. data/lib/{shopify-cli → shopify_cli}/commands/populate/product.rb +4 -4
  150. data/lib/shopify_cli/commands/populate.rb +23 -0
  151. data/lib/shopify_cli/commands/store.rb +15 -0
  152. data/lib/{shopify-cli → shopify_cli}/commands/switch.rb +5 -5
  153. data/lib/{shopify-cli → shopify_cli}/commands/system.rb +10 -10
  154. data/lib/shopify_cli/commands/version.rb +15 -0
  155. data/lib/{shopify-cli → shopify_cli}/commands/whoami.rb +7 -7
  156. data/lib/shopify_cli/commands.rb +34 -0
  157. data/lib/{shopify-cli → shopify_cli}/connect.rb +3 -3
  158. data/lib/shopify_cli/constants.rb +54 -0
  159. data/lib/{shopify-cli → shopify_cli}/context.rb +6 -6
  160. data/lib/{shopify-cli → shopify_cli}/core/entry_point.rb +7 -7
  161. data/lib/{shopify-cli → shopify_cli}/core/executor.rb +8 -4
  162. data/lib/{shopify-cli → shopify_cli}/core/finalize.rb +1 -1
  163. data/lib/{shopify-cli → shopify_cli}/core/help_resolver.rb +2 -2
  164. data/lib/{shopify-cli → shopify_cli}/core/monorail.rb +8 -8
  165. data/lib/shopify_cli/core.rb +8 -0
  166. data/lib/{shopify-cli → shopify_cli}/db.rb +8 -8
  167. data/lib/{shopify-cli → shopify_cli}/environment.rb +36 -5
  168. data/lib/shopify_cli/exception_reporter/permission_controller.rb +54 -0
  169. data/lib/shopify_cli/exception_reporter.rb +55 -0
  170. data/lib/{shopify-cli → shopify_cli}/feature.rb +8 -8
  171. data/lib/{shopify-cli → shopify_cli}/form.rb +2 -2
  172. data/lib/{shopify-cli → shopify_cli}/git.rb +36 -6
  173. data/lib/{shopify-cli → shopify_cli}/helpers/haikunator.rb +1 -1
  174. data/lib/shopify_cli/helpers.rb +5 -0
  175. data/lib/{shopify-cli → shopify_cli}/heroku.rb +38 -13
  176. data/lib/{shopify-cli → shopify_cli}/http_request.rb +1 -1
  177. data/lib/{shopify-cli → shopify_cli}/identity_auth/servlet.rb +1 -1
  178. data/lib/{shopify-cli → shopify_cli}/identity_auth.rb +8 -8
  179. data/lib/{shopify-cli → shopify_cli}/js_deps.rb +7 -7
  180. data/lib/{shopify-cli → shopify_cli}/js_system.rb +10 -10
  181. data/lib/{shopify-cli → shopify_cli}/lazy_delegator.rb +2 -2
  182. data/lib/{shopify-cli → shopify_cli}/messages/messages.rb +44 -2
  183. data/lib/{shopify-cli → shopify_cli}/method_object.rb +15 -8
  184. data/lib/shopify_cli/migrator/migration.rb +27 -0
  185. data/lib/shopify_cli/migrator/migrations/1631709766_noop.rb +13 -0
  186. data/lib/shopify_cli/migrator.rb +48 -0
  187. data/lib/{shopify-cli → shopify_cli}/options.rb +1 -1
  188. data/lib/{shopify-cli → shopify_cli}/packager.rb +8 -8
  189. data/lib/{shopify-cli → shopify_cli}/partners_api/organizations.rb +1 -1
  190. data/lib/{shopify-cli → shopify_cli}/partners_api.rb +13 -13
  191. data/lib/shopify_cli/php_deps.rb +102 -0
  192. data/lib/{shopify-cli → shopify_cli}/process_supervision.rb +10 -8
  193. data/lib/{shopify-cli → shopify_cli}/project.rb +15 -15
  194. data/lib/{shopify-cli → shopify_cli}/project_commands.rb +3 -3
  195. data/lib/{shopify-cli → shopify_cli}/project_type.rb +5 -5
  196. data/lib/{shopify-cli → shopify_cli}/resolve_constant.rb +5 -5
  197. data/lib/{shopify-cli → shopify_cli}/resources/env_file.rb +1 -1
  198. data/lib/shopify_cli/resources.rb +5 -0
  199. data/lib/{shopify-cli → shopify_cli}/result.rb +11 -11
  200. data/lib/{shopify-cli → shopify_cli}/shopifolk.rb +6 -6
  201. data/lib/{shopify-cli → shopify_cli}/sub_command.rb +1 -1
  202. data/lib/{shopify-cli → shopify_cli}/task.rb +1 -1
  203. data/lib/{shopify-cli → shopify_cli}/tasks/confirm_store.rb +3 -3
  204. data/lib/{shopify-cli → shopify_cli}/tasks/create_api_client.rb +4 -4
  205. data/lib/shopify_cli/tasks/ensure_authenticated.rb +13 -0
  206. data/lib/{shopify-cli → shopify_cli}/tasks/ensure_dev_store.rb +5 -5
  207. data/lib/{shopify-cli → shopify_cli}/tasks/ensure_env.rb +3 -3
  208. data/lib/{shopify-cli → shopify_cli}/tasks/ensure_loopback_url.rb +4 -4
  209. data/lib/{shopify-cli → shopify_cli}/tasks/ensure_project_type.rb +3 -3
  210. data/lib/{shopify-cli → shopify_cli}/tasks/select_org_and_shop.rb +8 -8
  211. data/lib/{shopify-cli → shopify_cli}/tasks/update_dashboard_urls.rb +6 -6
  212. data/lib/{shopify-cli → shopify_cli}/tasks.rb +10 -10
  213. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/certificate_manager.rb +5 -5
  214. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/header_hash.rb +1 -1
  215. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/hot-reload.js +0 -0
  216. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/hot_reload.rb +1 -1
  217. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/local_assets.rb +1 -1
  218. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/proxy.rb +2 -2
  219. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/sse.rb +1 -1
  220. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/watcher.rb +1 -1
  221. data/lib/{shopify-cli → shopify_cli}/theme/dev_server/web_server.rb +1 -1
  222. data/lib/{shopify-cli → shopify_cli}/theme/dev_server.rb +3 -3
  223. data/lib/{shopify-cli → shopify_cli}/theme/development_theme.rb +9 -9
  224. data/lib/{shopify-cli → shopify_cli}/theme/file.rb +1 -1
  225. data/lib/{shopify-cli → shopify_cli}/theme/ignore_filter.rb +1 -1
  226. data/lib/{shopify-cli → shopify_cli}/theme/mime_type.rb +1 -1
  227. data/lib/{shopify-cli → shopify_cli}/theme/syncer.rb +6 -6
  228. data/lib/{shopify-cli → shopify_cli}/theme/theme.rb +4 -4
  229. data/lib/{shopify-cli → shopify_cli}/transform_data_structure.rb +4 -4
  230. data/lib/{shopify-cli → shopify_cli}/tunnel.rb +14 -14
  231. data/lib/shopify_cli/version.rb +3 -0
  232. data/lib/shopify_cli.rb +61 -52
  233. data/shopify-cli.gemspec +11 -3
  234. data/utilities/docker.rb +47 -0
  235. data/utilities/utilities.rb +5 -0
  236. metadata +133 -95
  237. data/lib/project_types/script/layers/infrastructure/api_clients.rb +0 -89
  238. data/lib/project_types/script/layers/infrastructure/languages/rust_project_creator.rb +0 -73
  239. data/lib/project_types/script/layers/infrastructure/languages/rust_task_runner.rb +0 -60
  240. data/lib/shopify-cli/commands/logout.rb +0 -39
  241. data/lib/shopify-cli/commands/populate.rb +0 -23
  242. data/lib/shopify-cli/commands/store.rb +0 -15
  243. data/lib/shopify-cli/commands/version.rb +0 -15
  244. data/lib/shopify-cli/commands.rb +0 -34
  245. data/lib/shopify-cli/constants.rb +0 -26
  246. data/lib/shopify-cli/core.rb +0 -8
  247. data/lib/shopify-cli/helpers.rb +0 -5
  248. data/lib/shopify-cli/resources.rb +0 -5
  249. data/lib/shopify-cli/tasks/ensure_authenticated.rb +0 -13
  250. data/lib/shopify-cli/version.rb +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d5e31b928a8c3d1e98c383786f85be502045be59731cef6adcd2fde4f337c4d7
4
- data.tar.gz: c0f5fc0e586f2fef7a7e2a92d9357acf06547b53545bc1319e6bcf58f636fb1b
3
+ metadata.gz: 3be31c7b6aa8c0ba6b906a25a798413f9e1669352f1eaaefb89c92c5bc54ebb5
4
+ data.tar.gz: ba07be42290721bb6ae4f445dfeefe54397438f2d4e7d0d2d39e9e234c983657
5
5
  SHA512:
6
- metadata.gz: 9699459d8bf5a49683a00b8b166a7dc5b09be204b5d0bc0d73288508dc08eace03ddba62223f20001183931895434102f8d5cfd66f3494afc1f2fa5d1a4700c5
7
- data.tar.gz: e980565315b842028e05786f1acf63fae983d00ff28aa2db71d976d3b3b3615a530c47710727fe83c311a6bca8cec0995fc34cb5a288a7ff2d223510ddd0c79f
6
+ metadata.gz: c90a4f136eb65bbe022cd0de954e3cede6834409e11d5917ef56ce16a35c7eb734eae18cdebbb2944970a8aeff6e15a4f952146fc7a642f4aa49142bace794b3
7
+ data.tar.gz: 6676dc46d924956d47b31d34356190c64a9980d3561328ab84de90dadf559462fc3d4d626865fe9e7d88f8f4ace1432a11615bd81a4e412f7278b7aaa5305cca
@@ -25,7 +25,6 @@ jobs:
25
25
  - macos-11
26
26
  - ubuntu-20.04
27
27
  - ubuntu-18.04
28
- - ubuntu-16.04
29
28
  steps:
30
29
  - uses: actions/checkout@v2
31
30
  - name: Set Git configuration
@@ -58,7 +57,6 @@ jobs:
58
57
  - macos-11
59
58
  - ubuntu-20.04
60
59
  - ubuntu-18.04
61
- - ubuntu-16.04
62
60
  steps:
63
61
  - uses: actions/checkout@v2
64
62
  - name: Set Git configuration
data/.gitignore CHANGED
@@ -21,3 +21,4 @@ packaging/rpm/build
21
21
  packaging/rpm/shopify-cli.spec
22
22
  .byebug_history
23
23
  ext/shopify-extensions/shopify-extensions
24
+ .console_history
data/.rubocop.yml CHANGED
@@ -11,8 +11,8 @@ inherit_gem:
11
11
  Minitest:
12
12
  Enabled: true
13
13
  Include:
14
- - '**/test/**/*'
15
- - '**/*_test.rb'
14
+ - "**/test/**/*"
15
+ - "**/*_test.rb"
16
16
 
17
17
  Minitest/AssertInDelta: # (new in 0.10)
18
18
  Enabled: true
@@ -43,15 +43,15 @@ Minitest/UnspecifiedException: # (new in 0.10)
43
43
 
44
44
  AllCops:
45
45
  Exclude:
46
- - 'vendor/**/*'
47
- - 'docs/**/*'
48
- - 'packaging/**/*'
46
+ - "vendor/**/*"
47
+ - "docs/**/*"
48
+ - "packaging/**/*"
49
49
  TargetRubyVersion: 2.4
50
50
 
51
51
  Layout/EmptyLines:
52
52
  Exclude:
53
53
  # Need extra line so comment at top isnt registered to the Dev namespace
54
- - 'lib/dev/helpers/chruby_reset.rb'
54
+ - "lib/dev/helpers/chruby_reset.rb"
55
55
 
56
56
  Layout/EmptyLineBetweenDefs:
57
57
  AllowAdjacentOneLineDefs: true
@@ -59,10 +59,10 @@ Layout/EmptyLineBetweenDefs:
59
59
  # Changing this could effect the way the content is rendered.
60
60
  Layout/HeredocIndentation:
61
61
  Exclude:
62
- - 'lib/project_types/node/messages/messages.rb'
63
- - 'lib/project_types/rails/messages/messages.rb'
64
- - 'lib/project_types/script/messages/messages.rb'
65
- - 'lib/shopify-cli/messages/messages.rb'
62
+ - "lib/project_types/node/messages/messages.rb"
63
+ - "lib/project_types/rails/messages/messages.rb"
64
+ - "lib/project_types/script/messages/messages.rb"
65
+ - "lib/shopify_cli/messages/messages.rb"
66
66
 
67
67
  # allow String.new to create mutable strings
68
68
  Style/EmptyLiteral:
@@ -71,7 +71,7 @@ Style/EmptyLiteral:
71
71
  # allow String.new to create mutable strings
72
72
  Style/HashSyntax:
73
73
  Exclude:
74
- - 'Rakefile'
74
+ - "Rakefile"
75
75
 
76
76
  # allow using %r{} for regexes
77
77
  Style/RegexpLiteral:
@@ -97,6 +97,6 @@ Style/MethodCallWithArgsParentheses:
97
97
 
98
98
  Layout/TrailingWhitespace:
99
99
  Exclude:
100
- - 'ext/shopify-cli/extconf.rb' # unsure if safe to remove
101
- - 'lib/project_types/extension/messages/messages.rb' # unsure if safe to remove
102
- - 'test/project_types/extension/extension_test_helpers/stubs/argo_script.rb' # unsure if save to remove
100
+ - "ext/shopify-cli/extconf.rb" # unsure if safe to remove
101
+ - "lib/project_types/extension/messages/messages.rb" # unsure if safe to remove
102
+ - "test/project_types/extension/extension_test_helpers/stubs/argo_script.rb" # unsure if save to remove
data/.rubocop_todo.yml CHANGED
@@ -14,11 +14,11 @@ Minitest/MultipleAssertions:
14
14
  # Cop supports --auto-correct.
15
15
  Style/PerlBackrefs:
16
16
  Exclude:
17
- - 'lib/docgen/markdown.rb'
17
+ - "lib/docgen/markdown.rb"
18
18
 
19
19
  # Offense count: 2
20
20
  # Cop supports --auto-correct.
21
21
  Style/RedundantBegin:
22
22
  Exclude:
23
- - 'lib/shopify-cli/shopifolk.rb'
24
- - 'test/shopify-cli/tunnel_test.rb'
23
+ - "lib/shopify_cli/shopifolk.rb"
24
+ - "test/shopify_cli/tunnel_test.rb"
data/CHANGELOG.md CHANGED
@@ -1,5 +1,30 @@
1
1
  Unreleased
2
2
  ------
3
+ Version 2.6.2
4
+ ------
5
+
6
+ * Fix broken installation due to a missing variable in `extconf.rb`
7
+
8
+ Version 2.6.1
9
+ ------
10
+
11
+ * [#1608](https://github.com/Shopify/shopify-cli/pull/1608): Fix errors not being reported.
12
+
13
+ Version 2.6.0
14
+ ------
15
+
16
+ * [#1574](https://github.com/Shopify/shopify-cli/pull/1574): Hide LoadError for ${RUBY_MAJOR}/ffi_c.
17
+ * [#1567](https://github.com/Shopify/shopify-cli/pull/1567): Add ability to set custom port for ngrok tunnel in node serve.
18
+ * [#1584](https://github.com/Shopify/shopify-cli/issues/1584): Fixed extended help message not showing.
19
+ * [#1566](https://github.com/Shopify/shopify-cli/pull/1566): Fix bug when running `npm | yarn list` for extension package resolution.
20
+ * [#1524](https://github.com/Shopify/shopify-cli/pull/1524): Add automatic error-reporting.
21
+ * [#1528](https://github.com/Shopify/shopify-cli/pull/1528): Bump theme-check version to 1.7
22
+ * [#1566](https://github.com/Shopify/shopify-cli/pull/1566): Fix bug when running `npm | yarn list` for extension package resolution
23
+
24
+ Version 2.5.0
25
+ ------
26
+
27
+ * [#1553](https://github.com/Shopify/shopify-cli/pull/1553): Add support for PHP app projects
3
28
 
4
29
  Version 2.4.0
5
30
  ------
data/Dockerfile CHANGED
@@ -13,7 +13,5 @@ WORKDIR /usr/src/app
13
13
 
14
14
  COPY Gemfile Gemfile.lock ./
15
15
  COPY shopify-cli.gemspec shopify-cli.gemspec
16
- COPY lib/shopify-cli/version.rb lib/shopify-cli/version.rb
17
- COPY . .
18
-
16
+ COPY lib/shopify_cli/version.rb lib/shopify_cli/version.rb
19
17
  RUN bundle install
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shopify-cli (2.4.0)
4
+ shopify-cli (2.6.2)
5
+ bugsnag (~> 6.22)
5
6
  listen (~> 3.7.0)
6
- theme-check (~> 1.4.0)
7
+ theme-check (~> 1.7)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
@@ -12,10 +13,14 @@ GEM
12
13
  public_suffix (>= 2.0.2, < 5.0)
13
14
  ansi (1.5.0)
14
15
  ast (2.4.2)
16
+ bugsnag (6.23.0)
17
+ concurrent-ruby (~> 1.0)
15
18
  builder (3.2.4)
16
19
  byebug (11.1.3)
17
20
  coderay (1.1.3)
18
- crack (0.4.4)
21
+ concurrent-ruby (1.1.9)
22
+ crack (0.4.5)
23
+ rexml
19
24
  cucumber (7.0.0)
20
25
  builder (~> 3.2, >= 3.2.4)
21
26
  cucumber-core (~> 10.0, >= 10.0.1)
@@ -41,17 +46,17 @@ GEM
41
46
  cucumber-messages (~> 17.0, >= 17.0.1)
42
47
  cucumber-html-formatter (16.0.1)
43
48
  cucumber-messages (~> 17.0, >= 17.0.1)
44
- cucumber-messages (17.1.0)
49
+ cucumber-messages (17.1.1)
45
50
  cucumber-tag-expressions (3.0.1)
46
51
  cucumber-wire (6.1.1)
47
52
  cucumber-core (~> 10.0, >= 10.0.1)
48
53
  cucumber-cucumber-expressions (~> 12.1, >= 12.1.2)
49
54
  cucumber-messages (~> 17.0, >= 17.0.1)
50
55
  diff-lcs (1.4.4)
51
- fakefs (1.2.2)
52
- ffi (1.15.3)
56
+ fakefs (1.3.2)
57
+ ffi (1.15.4)
53
58
  hashdiff (1.0.1)
54
- liquid (5.0.1)
59
+ liquid (5.1.0)
55
60
  listen (3.7.0)
56
61
  rb-fsevent (~> 0.10, >= 0.10.3)
57
62
  rb-inotify (~> 0.9, >= 0.9.10)
@@ -60,21 +65,21 @@ GEM
60
65
  mime-types-data (~> 3.2015)
61
66
  mime-types-data (3.2021.0901)
62
67
  mini_portile2 (2.6.1)
63
- minitest (5.14.2)
68
+ minitest (5.14.4)
64
69
  minitest-fail-fast (0.1.0)
65
70
  minitest (~> 5)
66
- minitest-reporters (1.4.2)
71
+ minitest-reporters (1.4.3)
67
72
  ansi
68
73
  builder
69
74
  minitest (>= 5.0)
70
75
  ruby-progressbar
71
- mocha (1.11.2)
76
+ mocha (1.13.0)
72
77
  multi_test (0.1.2)
73
- nokogiri (1.12.4)
78
+ nokogiri (1.12.5)
74
79
  mini_portile2 (~> 2.6.1)
75
80
  racc (~> 1.4)
76
- parallel (1.20.1)
77
- parser (3.0.1.0)
81
+ parallel (1.21.0)
82
+ parser (3.0.2.0)
78
83
  ast (~> 2.4.1)
79
84
  pry (0.13.1)
80
85
  coderay (~> 1.1)
@@ -86,7 +91,7 @@ GEM
86
91
  racc (1.5.2)
87
92
  rack (2.2.3)
88
93
  rainbow (3.0.0)
89
- rake (13.0.1)
94
+ rake (13.0.6)
90
95
  rb-fsevent (0.11.0)
91
96
  rb-inotify (0.10.1)
92
97
  ffi (~> 1.0)
@@ -112,9 +117,10 @@ GEM
112
117
  ruby-progressbar (1.11.0)
113
118
  sys-uname (1.2.2)
114
119
  ffi (~> 1.1)
115
- theme-check (1.4.0)
116
- liquid (>= 5.0.1)
120
+ theme-check (1.7.2)
121
+ liquid (>= 5.1.0)
117
122
  nokogiri (>= 1.12)
123
+ parser (~> 3)
118
124
  timecop (0.9.2)
119
125
  unicode-display_width (2.0.0)
120
126
  webmock (3.9.3)
data/README.md CHANGED
@@ -85,7 +85,7 @@ When prompted, open the provided accounts.shopify.com URL in a browser. In your
85
85
 
86
86
  Run:
87
87
 
88
- `shopify theme create`
88
+ `shopify theme init`
89
89
 
90
90
  To initialize a theme on your current working directory. This will actually clone Shopify's starter theme which you should use as a reference when building themes for Shopify.
91
91
 
data/RELEASING.md CHANGED
@@ -13,7 +13,7 @@
13
13
  $ git checkout -b release_X_Y_Z
14
14
  ```
15
15
 
16
- 1. Update the version of Shopify CLI in `lib/shopify-cli/version.rb`
16
+ 1. Update the version of Shopify CLI in `lib/shopify_cli/version.rb`
17
17
 
18
18
  1. Update the version of Shopify CLI at the top of `Gemfile.lock` (failing to do so causes the CI build to fail)
19
19
 
data/Rakefile CHANGED
@@ -1,8 +1,13 @@
1
+ ENV["SHOPIFY_CLI_TEST"] = "1"
2
+
1
3
  require_relative "bin/load_shopify"
4
+ require_relative "utilities/utilities"
2
5
  require "rake/testtask"
3
6
  require "rubocop/rake_task"
4
7
  require "bundler/gem_tasks"
5
8
  require "shellwords"
9
+ require "digest"
10
+ require "open3"
6
11
 
7
12
  Rake::TestTask.new do |t|
8
13
  t.libs += %w(test)
@@ -15,26 +20,12 @@ desc "A set of tasks that run in Linux environments"
15
20
  namespace :linux do
16
21
  desc "Runs the test suite in a Linux Docker environment"
17
22
  task :test do
18
- system("docker", "build", __dir__, "-t", "shopify-cli") || abort
19
- system(
20
- "docker", "run",
21
- "-t", "--rm",
22
- "--volume", "#{Shellwords.escape(__dir__)}:/usr/src/app",
23
- "shopify-cli",
24
- "bundle", "exec", "rake", "test"
25
- ) || abort
23
+ Utilities::Docker.run_and_rm_container("bundle", "exec", "rake", "test")
26
24
  end
27
25
 
28
26
  desc "Runs the acceptance tests suite in a Linux Docker environment"
29
27
  task :features do
30
- system("docker", "build", __dir__, "-t", "shopify-cli") || abort
31
- system(
32
- "docker", "run",
33
- "-t", "--rm",
34
- "--volume", "#{Shellwords.escape(__dir__)}:/usr/src/app",
35
- "shopify-cli",
36
- "bundle", "exec", "cucumber"
37
- ) || abort
28
+ Utilities::Docker.run_and_rm_container("bundle", "exec", "cucumber")
38
29
  end
39
30
  end
40
31
 
@@ -51,20 +42,20 @@ namespace :rdoc do
51
42
  repo = "https://github.com/Shopify/shopify-cli.wiki.git"
52
43
  intermediate = "markdown_intermediate"
53
44
  file_to_doc = [
54
- "lib/shopify-cli/admin_api.rb",
55
- "lib/shopify-cli/context.rb",
56
- "lib/shopify-cli/db.rb",
57
- "lib/shopify-cli/git.rb",
58
- "lib/shopify-cli/heroku.rb",
59
- "lib/shopify-cli/js_deps.rb",
60
- "lib/shopify-cli/lazy_delegator.rb",
61
- "lib/shopify-cli/method_object.rb",
62
- "lib/shopify-cli/partners_api.rb",
63
- "lib/shopify-cli/process_supervision.rb",
64
- "lib/shopify-cli/project.rb",
65
- "lib/shopify-cli/result.rb",
66
- "lib/shopify-cli/transform_data_structure.rb",
67
- "lib/shopify-cli/tunnel.rb",
45
+ "lib/shopify_cli/admin_api.rb",
46
+ "lib/shopify_cli/context.rb",
47
+ "lib/shopify_cli/db.rb",
48
+ "lib/shopify_cli/git.rb",
49
+ "lib/shopify_cli/heroku.rb",
50
+ "lib/shopify_cli/js_deps.rb",
51
+ "lib/shopify_cli/lazy_delegator.rb",
52
+ "lib/shopify_cli/method_object.rb",
53
+ "lib/shopify_cli/partners_api.rb",
54
+ "lib/shopify_cli/process_supervision.rb",
55
+ "lib/shopify_cli/project.rb",
56
+ "lib/shopify_cli/result.rb",
57
+ "lib/shopify_cli/transform_data_structure.rb",
58
+ "lib/shopify_cli/tunnel.rb",
68
59
  ]
69
60
 
70
61
  task all: [:markdown, :wiki, :cleanup]
@@ -104,23 +95,23 @@ desc("Generate markdown documentation and update the wiki")
104
95
  task(rdoc: "rdoc:all")
105
96
 
106
97
  namespace :package do
107
- require "shopify-cli/packager"
98
+ require "shopify_cli/packager"
108
99
 
109
100
  task all: [:debian, :rpm, :homebrew]
110
101
 
111
102
  desc("Builds a Debian package of the CLI")
112
103
  task :debian do
113
- ShopifyCli::Packager.new.build_debian
104
+ ShopifyCLI::Packager.new.build_debian
114
105
  end
115
106
 
116
107
  desc("Builds an RPM package of the CLI")
117
108
  task :rpm do
118
- ShopifyCli::Packager.new.build_rpm
109
+ ShopifyCLI::Packager.new.build_rpm
119
110
  end
120
111
 
121
112
  desc("Builds a Homebrew package of the CLI")
122
113
  task :homebrew do
123
- ShopifyCli::Packager.new.build_homebrew
114
+ ShopifyCLI::Packager.new.build_homebrew
124
115
  end
125
116
  end
126
117
 
data/bin/console ADDED
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require_relative "load_shopify"
5
+ require "irb"
6
+ require "irb/completion"
7
+ require "irb/ext/save-history"
8
+
9
+ IRB.conf[:SAVE_HISTORY] = 100
10
+ IRB.conf[:HISTORY_FILE] = File.expand_path("../../.console_history", __FILE__)
11
+ IRB.start
data/bin/shopify CHANGED
@@ -9,9 +9,11 @@ module Kernel
9
9
  original_require(name)
10
10
  rescue LoadError => e
11
11
  # Special case for readline.so, which fails harmlessly on Windows
12
- raise if (name == "readline.so") && ShopifyCli::Context.new.windows?
12
+ raise if (name == "readline.so") && ShopifyCLI::Context.new.windows?
13
13
  # Special case for psych (yaml), which rescues this itself
14
14
  raise if name == "#{RUBY_VERSION[/\d+\.\d+/]}/psych.so"
15
+ # Special case for ffi, which rescues this itself
16
+ raise if name == "#{RUBY_VERSION.split(".")[0, 2].join(".")}/ffi_c"
15
17
  STDERR.puts "[Note] You cannot use gems with Shopify CLI."
16
18
  STDERR.puts "[LoadError] #{e.message}"
17
19
  if ENV["DEBUG"]
@@ -29,6 +31,17 @@ end
29
31
 
30
32
  require_relative "./load_shopify"
31
33
 
32
- exit(ShopifyCli::ErrorHandler.call do
33
- ShopifyCli::Core::EntryPoint.call(ARGV.dup)
34
- end)
34
+ exit(proc do
35
+ begin
36
+ ShopifyCLI::ErrorHandler.call do
37
+ ShopifyCLI::Core::EntryPoint.call(ARGV.dup)
38
+ end
39
+ rescue StandardError => error
40
+ ShopifyCLI::ErrorHandler.exception = error
41
+ if ShopifyCLI::Environment.print_stacktrace?
42
+ raise error
43
+ else
44
+ 1
45
+ end
46
+ end
47
+ end.call)
data/dev.yml CHANGED
@@ -2,6 +2,9 @@ name: dev
2
2
  type:
3
3
  - ruby
4
4
 
5
+ env:
6
+ SHOPIFY_CLI_DEVELOPMENT: "1"
7
+
5
8
  up:
6
9
  - ruby: 2.7.1
7
10
  - homebrew:
@@ -1,5 +1,6 @@
1
1
  require "rbconfig"
2
2
  require "fileutils"
3
+ require "date"
3
4
 
4
5
  gem = File.expand_path("../../../", __FILE__)
5
6
  exe = File.join(gem, "bin", "shopify")
@@ -3,7 +3,7 @@
3
3
  module Extension
4
4
  class PackageResolutionFailed < RuntimeError; end
5
5
 
6
- class Project < ShopifyCli::ProjectType
6
+ class Project < ShopifyCLI::ProjectType
7
7
  hidden_feature
8
8
 
9
9
  require Project.project_filepath("messages/messages")
@@ -12,7 +12,7 @@ module Extension
12
12
  register_messages(Extension::Messages::MessageLoading.load)
13
13
  end
14
14
 
15
- class Command < ShopifyCli::ProjectCommands
15
+ class Command < ShopifyCLI::ProjectCommands
16
16
  hidden_feature
17
17
  autoload :ExtensionCommand, Project.project_filepath("commands/extension_command")
18
18
 
@@ -26,7 +26,7 @@ module Extension
26
26
  subcommand :Tunnel, "tunnel", Project.project_filepath("commands/tunnel")
27
27
  subcommand :Check, "check", Project.project_filepath("commands/check")
28
28
  end
29
- ShopifyCli::Commands.register("Extension::Command", "extension")
29
+ ShopifyCLI::Commands.register("Extension::Command", "extension")
30
30
 
31
31
  module Tasks
32
32
  autoload :UserErrors, Project.project_filepath("tasks/user_errors")
@@ -42,6 +42,7 @@ module Extension
42
42
  autoload :GetExtensions, Project.project_filepath("tasks/get_extensions")
43
43
  autoload :GetProduct, Project.project_filepath("tasks/get_product")
44
44
  autoload :RunExtensionCommand, Project.project_filepath("tasks/run_extension_command")
45
+ autoload :LoadServerConfig, Project.project_filepath("tasks/load_server_config")
45
46
 
46
47
  module Converters
47
48
  autoload :RegistrationConverter, Project.project_filepath("tasks/converters/registration_converter")
@@ -49,6 +50,7 @@ module Extension
49
50
  autoload :ValidationErrorConverter, Project.project_filepath("tasks/converters/validation_error_converter")
50
51
  autoload :AppConverter, Project.project_filepath("tasks/converters/app_converter")
51
52
  autoload :ProductConverter, Project.project_filepath("tasks/converters/product_converter")
53
+ autoload :ServerConfigConverter, Project.project_filepath("tasks/converters/server_config_converter")
52
54
  end
53
55
  end
54
56
 
@@ -18,7 +18,7 @@ module Extension
18
18
  end
19
19
 
20
20
  def self.help
21
- ShopifyCli::Context.new.message("build.help", ShopifyCli::TOOL_NAME)
21
+ ShopifyCLI::Context.new.message("build.help", ShopifyCLI::TOOL_NAME)
22
22
  end
23
23
 
24
24
  private
@@ -26,7 +26,8 @@ module Extension
26
26
  def run_new_flow(project)
27
27
  Tasks::RunExtensionCommand.new(
28
28
  type: project.specification_identifier.downcase,
29
- command: "build"
29
+ command: "build",
30
+ config_file_name: specification_handler.server_config_file,
30
31
  ).call
31
32
 
32
33
  @ctx.puts(@ctx.message("build.build_success_message"))
@@ -40,7 +41,7 @@ module Extension
40
41
  end
41
42
 
42
43
  def run_legacy_flow
43
- system = ShopifyCli::JsSystem.new(ctx: @ctx)
44
+ system = ShopifyCLI::JsSystem.new(ctx: @ctx)
44
45
 
45
46
  CLI::UI::Frame.open(@ctx.message("build.frame_title", system.package_manager)) do
46
47
  success = system.call(yarn: YARN_BUILD_COMMAND, npm: NPM_BUILD_COMMAND)
@@ -4,7 +4,7 @@ require "theme_check"
4
4
  module Extension
5
5
  class Command
6
6
  class Check < ExtensionCommand
7
- class CheckOptions < ShopifyCli::Options
7
+ class CheckOptions < ShopifyCLI::Options
8
8
  def initialize(ctx, theme_check)
9
9
  super()
10
10
  @theme_check = theme_check
@@ -37,7 +37,7 @@ module Extension
37
37
  end
38
38
 
39
39
  def self.help
40
- ShopifyCli::Context.message("check.help", ShopifyCli::TOOL_NAME)
40
+ ShopifyCLI::Context.message("check.help", ShopifyCLI::TOOL_NAME)
41
41
  end
42
42
  end
43
43
  end
@@ -19,7 +19,7 @@ module Extension
19
19
  end
20
20
 
21
21
  def self.help
22
- ShopifyCli::Context.new.message("connect.help", ShopifyCli::TOOL_NAME, ShopifyCli::TOOL_NAME)
22
+ ShopifyCLI::Context.new.message("connect.help", ShopifyCLI::TOOL_NAME, ShopifyCLI::TOOL_NAME)
23
23
  end
24
24
 
25
25
  private
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Extension
4
4
  class Command
5
- class Create < ShopifyCli::SubCommand
5
+ class Create < ShopifyCLI::SubCommand
6
6
  DEVELOPMENT_SERVER_SUPPORTED_TYPES = [
7
7
  "checkout_ui_extension",
8
8
  ]
@@ -22,27 +22,15 @@ module Extension
22
22
  @ctx.abort(message_for_extension["create.errors.directory_exists", form.directory_name])
23
23
  end
24
24
 
25
- return use_new_create_flow(form, message_for_extension) if supports_development_server?(form.type)
26
-
27
- if form.type.create(form.directory_name, @ctx, getting_started: options.flags[:getting_started])
28
- ExtensionProject.write_cli_file(context: @ctx, type: form.type.identifier)
29
- ExtensionProject.write_env_file(
30
- context: @ctx,
31
- title: form.name,
32
- api_key: form.app.api_key,
33
- api_secret: form.app.secret
34
- )
35
-
36
- @ctx.puts(message_for_extension["create.ready_to_start", form.directory_name, form.name])
37
- @ctx.puts(message_for_extension["create.learn_more", form.type.name])
38
- else
39
- @ctx.puts(message_for_extension["create.try_again"])
40
- end
25
+ ShopifyCLI::Result.success(supports_development_server?(form.type.identifier))
26
+ .then { |supported| create_extension(supported, form) }
27
+ .then { notify_success(form, message_for_extension) }
28
+ .unwrap { |err| @ctx.puts(message_for_extension["create.try_again"]) unless err.nil? }
41
29
  end
42
30
  end
43
31
 
44
32
  def self.help
45
- @ctx.message("create.help", ShopifyCli::TOOL_NAME)
33
+ @ctx.message("create.help", ShopifyCLI::TOOL_NAME)
46
34
  end
47
35
 
48
36
  private
@@ -55,22 +43,52 @@ module Extension
55
43
  end
56
44
 
57
45
  def supports_development_server?(type)
58
- Models::DevelopmentServerRequirements.supported?(type.identifier)
46
+ Models::DevelopmentServerRequirements.supported?(type)
59
47
  end
60
48
 
61
- def use_new_create_flow(form, msg)
49
+ def create_extension(supported, form)
50
+ if supported
51
+ use_new_create_flow(form)
52
+ else
53
+ use_legacy_flow(form)
54
+ end
55
+ ShopifyCLI::Result.success(nil)
56
+ end
57
+
58
+ def use_new_create_flow(form)
62
59
  Tasks::RunExtensionCommand.new(
63
60
  root_dir: form.directory_name,
64
61
  template: form.template,
65
62
  type: form.type.identifier.downcase,
66
63
  command: "create"
67
64
  ).call
65
+ @ctx.chdir(form.directory_name)
66
+ write_env_file(form)
67
+ rescue => error
68
+ raise error
69
+ end
70
+
71
+ def use_legacy_flow(form)
72
+ if form.type.create(form.directory_name, @ctx, getting_started: options.flags[:getting_started])
73
+ write_env_file(form)
74
+ else
75
+ raise StandardError
76
+ end
77
+ end
68
78
 
79
+ def write_env_file(form)
80
+ ExtensionProject.write_cli_file(context: @ctx, type: form.type.identifier)
81
+ ExtensionProject.write_env_file(
82
+ context: @ctx,
83
+ title: form.name,
84
+ api_key: form.app.api_key,
85
+ api_secret: form.app.secret
86
+ )
87
+ end
88
+
89
+ def notify_success(form, msg)
69
90
  @ctx.puts(msg["create.ready_to_start", form.directory_name, form.name])
70
91
  @ctx.puts(msg["create.learn_more", form.type.name])
71
- rescue => error
72
- @ctx.debug(error)
73
- @ctx.puts(msg["create.try_again"])
74
92
  end
75
93
  end
76
94
  end
@@ -3,7 +3,7 @@ require "shopify_cli"
3
3
 
4
4
  module Extension
5
5
  class Command
6
- class ExtensionCommand < ShopifyCli::SubCommand
6
+ class ExtensionCommand < ShopifyCLI::SubCommand
7
7
  def project
8
8
  @project ||= ExtensionProject.current
9
9
  end
@@ -14,7 +14,7 @@ module Extension
14
14
  end
15
15
 
16
16
  def self.help
17
- ShopifyCli::Context.new.message("info.help", ShopifyCli::TOOL_NAME)
17
+ ShopifyCLI::Context.new.message("info.help", ShopifyCLI::TOOL_NAME)
18
18
  end
19
19
 
20
20
  private