shopify_app 18.1.0 → 19.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +2 -2
  3. data/.gitignore +1 -0
  4. data/CHANGELOG.md +13 -0
  5. data/Gemfile +3 -2
  6. data/Gemfile.lock +124 -158
  7. data/README.md +1 -0
  8. data/Rakefile +4 -3
  9. data/app/assets/javascripts/shopify_app/app_bridge_2.0.12.js +10 -0
  10. data/app/assets/javascripts/shopify_app/app_bridge_redirect.js +3 -4
  11. data/app/assets/javascripts/shopify_app/storage_access.js +1 -1
  12. data/app/controllers/concerns/shopify_app/ensure_authenticated_links.rb +1 -1
  13. data/app/controllers/concerns/shopify_app/require_known_shop.rb +1 -0
  14. data/app/controllers/concerns/shopify_app/shop_access_scopes_verification.rb +1 -1
  15. data/app/controllers/shopify_app/authenticated_controller.rb +1 -0
  16. data/app/controllers/shopify_app/callback_controller.rb +35 -147
  17. data/app/controllers/shopify_app/sessions_controller.rb +25 -132
  18. data/app/controllers/shopify_app/webhooks_controller.rb +5 -23
  19. data/app/views/shopify_app/sessions/enable_cookies.html.erb +1 -8
  20. data/app/views/shopify_app/sessions/request_storage_access.html.erb +1 -8
  21. data/app/views/shopify_app/sessions/top_level_interaction.html.erb +1 -1
  22. data/app/views/shopify_app/shared/redirect.html.erb +1 -7
  23. data/config/routes.rb +6 -12
  24. data/docs/Troubleshooting.md +0 -3
  25. data/docs/Upgrading.md +92 -3
  26. data/docs/shopify_app/webhooks.md +1 -1
  27. data/lib/generators/shopify_app/add_after_authenticate_job/add_after_authenticate_job_generator.rb +10 -9
  28. data/lib/generators/shopify_app/add_after_authenticate_job/templates/after_authenticate_job.rb +1 -0
  29. data/lib/generators/shopify_app/add_marketing_activity_extension/add_marketing_activity_extension_generator.rb +4 -3
  30. data/lib/generators/shopify_app/add_webhook/add_webhook_generator.rb +13 -12
  31. data/lib/generators/shopify_app/add_webhook/templates/webhook_job.rb.tt +9 -1
  32. data/lib/generators/shopify_app/app_proxy_controller/app_proxy_controller_generator.rb +7 -6
  33. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_controller.rb +2 -1
  34. data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_route.rb +1 -1
  35. data/lib/generators/shopify_app/authenticated_controller/authenticated_controller_generator.rb +3 -3
  36. data/lib/generators/shopify_app/controllers/controllers_generator.rb +4 -3
  37. data/lib/generators/shopify_app/home_controller/home_controller_generator.rb +11 -15
  38. data/lib/generators/shopify_app/home_controller/templates/home_controller.rb +2 -2
  39. data/lib/generators/shopify_app/home_controller/templates/index.html.erb +3 -3
  40. data/lib/generators/shopify_app/install/install_generator.rb +25 -74
  41. data/lib/generators/shopify_app/install/templates/embedded_app.html.erb +1 -1
  42. data/lib/generators/shopify_app/install/templates/session_store.rb +2 -1
  43. data/lib/generators/shopify_app/install/templates/shopify_app.rb.tt +20 -5
  44. data/lib/generators/shopify_app/products_controller/products_controller_generator.rb +3 -3
  45. data/lib/generators/shopify_app/products_controller/templates/products_controller.rb +1 -1
  46. data/lib/generators/shopify_app/rotate_shopify_token_job/rotate_shopify_token_job_generator.rb +4 -4
  47. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token.rake +1 -0
  48. data/lib/generators/shopify_app/rotate_shopify_token_job/templates/rotate_shopify_token_job.rb +1 -1
  49. data/lib/generators/shopify_app/routes/routes_generator.rb +6 -5
  50. data/lib/generators/shopify_app/routes/templates/routes.rb +5 -5
  51. data/lib/generators/shopify_app/shop_model/shop_model_generator.rb +11 -10
  52. data/lib/generators/shopify_app/shop_model/templates/shop.rb +1 -0
  53. data/lib/generators/shopify_app/shopify_app_generator.rb +4 -3
  54. data/lib/generators/shopify_app/user_model/templates/user.rb +1 -0
  55. data/lib/generators/shopify_app/user_model/user_model_generator.rb +11 -10
  56. data/lib/generators/shopify_app/views/views_generator.rb +4 -3
  57. data/lib/shopify_app/access_scopes/shop_strategy.rb +2 -2
  58. data/lib/shopify_app/access_scopes/user_strategy.rb +4 -4
  59. data/lib/shopify_app/configuration.rb +5 -17
  60. data/lib/shopify_app/controller_concerns/app_proxy_verification.rb +4 -3
  61. data/lib/shopify_app/controller_concerns/csrf_protection.rb +2 -1
  62. data/lib/shopify_app/controller_concerns/embedded_app.rb +4 -3
  63. data/lib/shopify_app/controller_concerns/itp.rb +3 -3
  64. data/lib/shopify_app/controller_concerns/localization.rb +1 -0
  65. data/lib/shopify_app/controller_concerns/login_protection.rb +55 -73
  66. data/lib/shopify_app/controller_concerns/payload_verification.rb +3 -2
  67. data/lib/shopify_app/controller_concerns/webhook_verification.rb +2 -1
  68. data/lib/shopify_app/engine.rb +7 -15
  69. data/lib/shopify_app/jobs/scripttags_manager_job.rb +2 -2
  70. data/lib/shopify_app/jobs/webhooks_manager_job.rb +4 -5
  71. data/lib/shopify_app/managers/scripttags_manager.rb +11 -4
  72. data/lib/shopify_app/managers/webhooks_manager.rb +42 -44
  73. data/lib/shopify_app/middleware/jwt_middleware.rb +5 -4
  74. data/lib/shopify_app/session/in_memory_session_store.rb +1 -0
  75. data/lib/shopify_app/session/in_memory_shop_session_store.rb +2 -1
  76. data/lib/shopify_app/session/in_memory_user_session_store.rb +1 -0
  77. data/lib/shopify_app/session/jwt.rb +9 -8
  78. data/lib/shopify_app/session/null_user_session_store.rb +2 -1
  79. data/lib/shopify_app/session/session_repository.rb +37 -0
  80. data/lib/shopify_app/session/session_storage.rb +4 -6
  81. data/lib/shopify_app/session/shop_session_storage.rb +6 -6
  82. data/lib/shopify_app/session/shop_session_storage_with_scopes.rb +7 -8
  83. data/lib/shopify_app/session/user_session_storage.rb +19 -6
  84. data/lib/shopify_app/session/user_session_storage_with_scopes.rb +21 -8
  85. data/lib/shopify_app/test_helpers/all.rb +2 -1
  86. data/lib/shopify_app/test_helpers/webhook_verification_helper.rb +4 -3
  87. data/lib/shopify_app/utils.rb +4 -10
  88. data/lib/shopify_app/version.rb +2 -1
  89. data/lib/shopify_app.rb +35 -40
  90. data/package.json +1 -1
  91. data/shopify_app.gemspec +21 -20
  92. data/yarn.lock +6 -6
  93. metadata +44 -49
  94. data/app/assets/javascripts/shopify_app/app_bridge_1.30.0.js +0 -1
  95. data/lib/generators/shopify_app/install/templates/omniauth.rb +0 -4
  96. data/lib/generators/shopify_app/install/templates/shopify_provider.rb.tt +0 -8
  97. data/lib/generators/shopify_app/install/templates/user_agent.rb +0 -6
  98. data/lib/shopify_app/middleware/same_site_cookie_middleware.rb +0 -34
  99. data/lib/shopify_app/omniauth/omniauth_configuration.rb +0 -64
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 85eb4cdd7fac0b5aef1c84b39cbf85d96d068e04ee6a9de66870000e7ab5c30b
4
- data.tar.gz: a6958a471887ebd1e3b45732eab2f210db0e5788b309d5f8678a1d8138eabcf8
3
+ metadata.gz: 68bc78da7e88e7482f179b4d8ce4cf6734f3595631007e047c59a3a31cfcc7f3
4
+ data.tar.gz: 84e0a185dfc9e34e80749db04c1b1a218fb0aed3499379e532c9a5903da3706a
5
5
  SHA512:
6
- metadata.gz: 35a3894f7588fb7eec5ecd0c093df12ef4fc5b5fe14a1d80d7d18f2bba8e6c48e9e1a3bbd8aeb6b0cbf31ff55b1401598a5d8660bf9a0a383b24bf6133641b67
7
- data.tar.gz: c20fb9f5e670060b3cf68132d6e4c8b5685323b98cf811de9a4828eceb4942edcd4c7a0dae0675c618d7af35a4ee3c3586f0dadd639eb0946fec8f529e2ffacf
6
+ metadata.gz: fe5829d4783dcee78ae5141f51b1e177f65fcae58407101b25af7a83b467c9d3586e58a58785d7fb1730e8c7be34861c6f2cfc62e1e36c4527486e529da74910
7
+ data.tar.gz: e125dd848ea4faf473ea39d38dd186114dad9bf7ce1ebe4083bbf121fec18ba165936e28f7be0ee485b92426ed4f0cb76743a7cb014de5edbfdc85a4d8511489
@@ -2,9 +2,9 @@ name: CI
2
2
 
3
3
  on:
4
4
  push:
5
- branches: [ master ]
5
+ branches: [ main ]
6
6
  pull_request:
7
- branches: [ master ]
7
+ branches: [ main ]
8
8
 
9
9
  jobs:
10
10
  build:
data/.gitignore CHANGED
@@ -7,6 +7,7 @@ doc/
7
7
  *.log
8
8
  *.sqlite3
9
9
  test/tmp/*
10
+ test/.generated/*
10
11
  .idea
11
12
  # ignore sprockets cache
12
13
  /test/dummy/tmp/*
data/CHANGELOG.md CHANGED
@@ -1,3 +1,16 @@
1
+ 19.0.0 (April 6, 2022)
2
+ ----------
3
+ * Use v10 of the Shopify API (https://github.com/Shopify/shopify_api). This update requires changes to an app - please refer to the [migration guide](https://github.com/Shopify/shopify_app/blob/main/docs/Upgrading.md) for details.
4
+ BREAKING, please see migration notes.
5
+
6
+ 18.1.2 (Mar 3, 2022)
7
+ ----------
8
+ * Use the App Bridge 2.0 redirect when attempting to break out of an iframe. This happens when an app is installed, requires new access scopes, or re-authentication because the login session is expired. [#1376](https://github.com/Shopify/shopify_app/pull/1376)
9
+
10
+ 18.1.1 (Feb 2, 2022)
11
+ ----------
12
+ * Fix bug causing `unsafe-inline` CSP violation. [#1362](https://github.com/Shopify/shopify_app/pull/1362)
13
+
1
14
  18.1.0 (Jan 28, 2022)
2
15
  ----------
3
16
  * Support Rails 7 [#1354](https://github.com/Shopify/shopify_app/pull/1354)
data/Gemfile CHANGED
@@ -1,11 +1,12 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  source "https://rubygems.org"
3
4
 
4
5
  # Specify your gem's dependencies in shopify_app.gemspec
5
6
  gemspec
6
7
 
7
- gem 'rails-controller-testing', group: :test
8
+ gem "rails-controller-testing", group: :test
8
9
 
9
10
  group :rubocop do
10
- gem 'rubocop-shopify', require: false
11
+ gem "rubocop-shopify", require: false
11
12
  end
data/Gemfile.lock CHANGED
@@ -1,80 +1,80 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shopify_app (18.1.0)
4
+ shopify_app (19.0.0)
5
+ activeresource
5
6
  browser_sniffer (~> 1.4.0)
6
7
  jwt (>= 2.2.3)
7
- omniauth-rails_csrf_protection
8
- omniauth-shopify-oauth2 (~> 2.3)
9
8
  rails (> 5.2.1)
10
9
  redirect_safely (~> 1.0)
11
- shopify_api (~> 9.4)
10
+ shopify_api (~> 10.0)
11
+ sprockets-rails (>= 2.0.0)
12
12
 
13
13
  GEM
14
14
  remote: https://rubygems.org/
15
15
  specs:
16
- actioncable (6.1.4.4)
17
- actionpack (= 6.1.4.4)
18
- activesupport (= 6.1.4.4)
16
+ actioncable (6.1.5)
17
+ actionpack (= 6.1.5)
18
+ activesupport (= 6.1.5)
19
19
  nio4r (~> 2.0)
20
20
  websocket-driver (>= 0.6.1)
21
- actionmailbox (6.1.4.4)
22
- actionpack (= 6.1.4.4)
23
- activejob (= 6.1.4.4)
24
- activerecord (= 6.1.4.4)
25
- activestorage (= 6.1.4.4)
26
- activesupport (= 6.1.4.4)
21
+ actionmailbox (6.1.5)
22
+ actionpack (= 6.1.5)
23
+ activejob (= 6.1.5)
24
+ activerecord (= 6.1.5)
25
+ activestorage (= 6.1.5)
26
+ activesupport (= 6.1.5)
27
27
  mail (>= 2.7.1)
28
- actionmailer (6.1.4.4)
29
- actionpack (= 6.1.4.4)
30
- actionview (= 6.1.4.4)
31
- activejob (= 6.1.4.4)
32
- activesupport (= 6.1.4.4)
28
+ actionmailer (6.1.5)
29
+ actionpack (= 6.1.5)
30
+ actionview (= 6.1.5)
31
+ activejob (= 6.1.5)
32
+ activesupport (= 6.1.5)
33
33
  mail (~> 2.5, >= 2.5.4)
34
34
  rails-dom-testing (~> 2.0)
35
- actionpack (6.1.4.4)
36
- actionview (= 6.1.4.4)
37
- activesupport (= 6.1.4.4)
35
+ actionpack (6.1.5)
36
+ actionview (= 6.1.5)
37
+ activesupport (= 6.1.5)
38
38
  rack (~> 2.0, >= 2.0.9)
39
39
  rack-test (>= 0.6.3)
40
40
  rails-dom-testing (~> 2.0)
41
41
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
42
- actiontext (6.1.4.4)
43
- actionpack (= 6.1.4.4)
44
- activerecord (= 6.1.4.4)
45
- activestorage (= 6.1.4.4)
46
- activesupport (= 6.1.4.4)
42
+ actiontext (6.1.5)
43
+ actionpack (= 6.1.5)
44
+ activerecord (= 6.1.5)
45
+ activestorage (= 6.1.5)
46
+ activesupport (= 6.1.5)
47
47
  nokogiri (>= 1.8.5)
48
- actionview (6.1.4.4)
49
- activesupport (= 6.1.4.4)
48
+ actionview (6.1.5)
49
+ activesupport (= 6.1.5)
50
50
  builder (~> 3.1)
51
51
  erubi (~> 1.4)
52
52
  rails-dom-testing (~> 2.0)
53
53
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
54
- activejob (6.1.4.4)
55
- activesupport (= 6.1.4.4)
54
+ activejob (6.1.5)
55
+ activesupport (= 6.1.5)
56
56
  globalid (>= 0.3.6)
57
- activemodel (6.1.4.4)
58
- activesupport (= 6.1.4.4)
57
+ activemodel (6.1.5)
58
+ activesupport (= 6.1.5)
59
59
  activemodel-serializers-xml (1.0.2)
60
60
  activemodel (> 5.x)
61
61
  activesupport (> 5.x)
62
62
  builder (~> 3.1)
63
- activerecord (6.1.4.4)
64
- activemodel (= 6.1.4.4)
65
- activesupport (= 6.1.4.4)
66
- activeresource (5.1.1)
67
- activemodel (>= 5.0, < 7)
63
+ activerecord (6.1.5)
64
+ activemodel (= 6.1.5)
65
+ activesupport (= 6.1.5)
66
+ activeresource (6.0.0)
67
+ activemodel (>= 6.0)
68
68
  activemodel-serializers-xml (~> 1.0)
69
- activesupport (>= 5.0, < 7)
70
- activestorage (6.1.4.4)
71
- actionpack (= 6.1.4.4)
72
- activejob (= 6.1.4.4)
73
- activerecord (= 6.1.4.4)
74
- activesupport (= 6.1.4.4)
75
- marcel (~> 1.0.0)
69
+ activesupport (>= 6.0)
70
+ activestorage (6.1.5)
71
+ actionpack (= 6.1.5)
72
+ activejob (= 6.1.5)
73
+ activerecord (= 6.1.5)
74
+ activesupport (= 6.1.5)
75
+ marcel (~> 1.0)
76
76
  mini_mime (>= 1.1.0)
77
- activesupport (6.1.4.4)
77
+ activesupport (6.1.5)
78
78
  concurrent-ruby (~> 1.0, >= 1.0.2)
79
79
  i18n (>= 1.6, < 2)
80
80
  minitest (>= 5.1)
@@ -82,121 +82,80 @@ GEM
82
82
  zeitwerk (~> 2.3)
83
83
  addressable (2.8.0)
84
84
  public_suffix (>= 2.0.2, < 5.0)
85
- ast (2.4.1)
86
- binding_of_caller (0.8.0)
85
+ ast (2.4.2)
86
+ binding_of_caller (1.0.0)
87
87
  debug_inspector (>= 0.0.1)
88
88
  browser_sniffer (1.4.0)
89
89
  builder (3.2.4)
90
90
  byebug (11.1.3)
91
91
  coderay (1.1.3)
92
- concurrent-ruby (1.1.9)
93
- crack (0.4.4)
92
+ concurrent-ruby (1.1.10)
93
+ crack (0.4.5)
94
+ rexml
94
95
  crass (1.0.6)
95
- debug_inspector (0.0.3)
96
+ debug_inspector (1.1.0)
96
97
  erubi (1.10.0)
97
- faraday (1.9.3)
98
- faraday-em_http (~> 1.0)
99
- faraday-em_synchrony (~> 1.0)
100
- faraday-excon (~> 1.1)
101
- faraday-httpclient (~> 1.0)
102
- faraday-multipart (~> 1.0)
103
- faraday-net_http (~> 1.0)
104
- faraday-net_http_persistent (~> 1.0)
105
- faraday-patron (~> 1.0)
106
- faraday-rack (~> 1.0)
107
- faraday-retry (~> 1.0)
108
- ruby2_keywords (>= 0.0.4)
109
- faraday-em_http (1.0.0)
110
- faraday-em_synchrony (1.0.0)
111
- faraday-excon (1.1.0)
112
- faraday-httpclient (1.0.1)
113
- faraday-multipart (1.0.3)
114
- multipart-post (>= 1.2, < 3)
115
- faraday-net_http (1.0.1)
116
- faraday-net_http_persistent (1.2.0)
117
- faraday-patron (1.0.0)
118
- faraday-rack (1.0.0)
119
- faraday-retry (1.0.3)
120
98
  globalid (1.0.0)
121
99
  activesupport (>= 5.0)
122
- graphql (1.13.6)
123
- graphql-client (0.17.0)
124
- activesupport (>= 3.0)
125
- graphql (~> 1.10)
100
+ hash_diff (1.0.0)
126
101
  hashdiff (1.0.1)
127
- hashie (5.0.0)
128
- i18n (1.9.1)
102
+ httparty (0.20.0)
103
+ mime-types (~> 3.0)
104
+ multi_xml (>= 0.5.2)
105
+ i18n (1.10.0)
129
106
  concurrent-ruby (~> 1.0)
130
107
  jwt (2.3.0)
131
- loofah (2.13.0)
108
+ loofah (2.15.0)
132
109
  crass (~> 1.0.2)
133
110
  nokogiri (>= 1.5.9)
134
111
  mail (2.7.1)
135
112
  mini_mime (>= 0.1.1)
136
113
  marcel (1.0.2)
137
- method_source (0.9.2)
114
+ method_source (1.0.0)
115
+ mime-types (3.4.1)
116
+ mime-types-data (~> 3.2015)
117
+ mime-types-data (3.2022.0105)
138
118
  mini_mime (1.1.2)
139
- mini_portile2 (2.6.1)
140
- minitest (5.14.4)
141
- mocha (1.11.2)
142
- multi_json (1.15.0)
119
+ mini_portile2 (2.8.0)
120
+ minitest (5.15.0)
121
+ mocha (1.13.0)
143
122
  multi_xml (0.6.0)
144
- multipart-post (2.1.1)
145
123
  nio4r (2.5.8)
146
- nokogiri (1.12.5)
147
- mini_portile2 (~> 2.6.1)
124
+ nokogiri (1.13.3)
125
+ mini_portile2 (~> 2.8.0)
148
126
  racc (~> 1.4)
149
- oauth2 (1.4.7)
150
- faraday (>= 0.8, < 2.0)
151
- jwt (>= 1.0, < 3.0)
152
- multi_json (~> 1.3)
153
- multi_xml (~> 0.5)
154
- rack (>= 1.2, < 3)
155
- omniauth (2.0.4)
156
- hashie (>= 3.4.6)
157
- rack (>= 1.6.2, < 3)
158
- rack-protection
159
- omniauth-oauth2 (1.7.2)
160
- oauth2 (~> 1.4)
161
- omniauth (>= 1.9, < 3)
162
- omniauth-rails_csrf_protection (1.0.0)
163
- actionpack (>= 4.2)
164
- omniauth (~> 2.0)
165
- omniauth-shopify-oauth2 (2.3.2)
166
- activesupport
167
- omniauth-oauth2 (~> 1.5)
168
- parallel (1.20.1)
169
- parser (2.7.2.0)
127
+ oj (3.13.11)
128
+ openssl (3.0.0)
129
+ parallel (1.21.0)
130
+ parser (3.1.0.0)
170
131
  ast (~> 2.4.1)
171
- pry (0.12.2)
172
- coderay (~> 1.1.0)
173
- method_source (~> 0.9.0)
174
- pry-nav (0.3.0)
175
- pry (>= 0.9.10, < 0.13.0)
176
- pry-stack_explorer (0.4.9.3)
177
- binding_of_caller (>= 0.7)
178
- pry (>= 0.9.11)
132
+ pry (0.14.1)
133
+ coderay (~> 1.1)
134
+ method_source (~> 1.0)
135
+ pry-nav (1.0.0)
136
+ pry (>= 0.9.10, < 0.15)
137
+ pry-stack_explorer (0.6.1)
138
+ binding_of_caller (~> 1.0)
139
+ pry (~> 0.13)
179
140
  public_suffix (4.0.6)
180
141
  racc (1.6.0)
181
142
  rack (2.2.3)
182
- rack-protection (2.1.0)
183
- rack
184
143
  rack-test (1.1.0)
185
144
  rack (>= 1.0, < 3)
186
- rails (6.1.4.4)
187
- actioncable (= 6.1.4.4)
188
- actionmailbox (= 6.1.4.4)
189
- actionmailer (= 6.1.4.4)
190
- actionpack (= 6.1.4.4)
191
- actiontext (= 6.1.4.4)
192
- actionview (= 6.1.4.4)
193
- activejob (= 6.1.4.4)
194
- activemodel (= 6.1.4.4)
195
- activerecord (= 6.1.4.4)
196
- activestorage (= 6.1.4.4)
197
- activesupport (= 6.1.4.4)
145
+ rails (6.1.5)
146
+ actioncable (= 6.1.5)
147
+ actionmailbox (= 6.1.5)
148
+ actionmailer (= 6.1.5)
149
+ actionpack (= 6.1.5)
150
+ actiontext (= 6.1.5)
151
+ actionview (= 6.1.5)
152
+ activejob (= 6.1.5)
153
+ activemodel (= 6.1.5)
154
+ activerecord (= 6.1.5)
155
+ activestorage (= 6.1.5)
156
+ activesupport (= 6.1.5)
198
157
  bundler (>= 1.15.0)
199
- railties (= 6.1.4.4)
158
+ railties (= 6.1.5)
200
159
  sprockets-rails (>= 2.0.0)
201
160
  rails-controller-testing (1.0.5)
202
161
  actionpack (>= 5.0.1.rc1)
@@ -207,39 +166,46 @@ GEM
207
166
  nokogiri (>= 1.6)
208
167
  rails-html-sanitizer (1.4.2)
209
168
  loofah (~> 2.3)
210
- railties (6.1.4.4)
211
- actionpack (= 6.1.4.4)
212
- activesupport (= 6.1.4.4)
169
+ railties (6.1.5)
170
+ actionpack (= 6.1.5)
171
+ activesupport (= 6.1.5)
213
172
  method_source
214
- rake (>= 0.13)
173
+ rake (>= 12.2)
215
174
  thor (~> 1.0)
216
- rainbow (3.0.0)
217
- rake (13.0.3)
175
+ rainbow (3.1.1)
176
+ rake (13.0.6)
218
177
  rb-readline (0.5.5)
219
178
  redirect_safely (1.0.0)
220
179
  activemodel
221
- regexp_parser (2.0.0)
180
+ regexp_parser (2.2.0)
222
181
  rexml (3.2.5)
223
- rubocop (1.5.2)
182
+ rubocop (1.25.1)
224
183
  parallel (~> 1.10)
225
- parser (>= 2.7.1.5)
184
+ parser (>= 3.1.0.0)
226
185
  rainbow (>= 2.2.2, < 4.0)
227
186
  regexp_parser (>= 1.8, < 3.0)
228
187
  rexml
229
- rubocop-ast (>= 1.2.0, < 2.0)
188
+ rubocop-ast (>= 1.15.1, < 2.0)
230
189
  ruby-progressbar (~> 1.7)
231
- unicode-display_width (>= 1.4.0, < 2.0)
232
- rubocop-ast (1.3.0)
233
- parser (>= 2.7.1.5)
234
- rubocop-shopify (1.0.7)
235
- rubocop (~> 1.4)
236
- ruby-progressbar (1.10.1)
237
- ruby2_keywords (0.0.5)
238
- shopify_api (9.5.1)
239
- activeresource (>= 4.1.0)
240
- graphql-client
241
- rack
242
- sprockets (4.0.2)
190
+ unicode-display_width (>= 1.4.0, < 3.0)
191
+ rubocop-ast (1.15.1)
192
+ parser (>= 3.0.1.1)
193
+ rubocop-shopify (2.4.0)
194
+ rubocop (~> 1.24)
195
+ ruby-progressbar (1.11.0)
196
+ securerandom (0.2.0)
197
+ shopify_api (10.0.0)
198
+ concurrent-ruby
199
+ hash_diff
200
+ httparty
201
+ jwt
202
+ oj
203
+ openssl
204
+ securerandom
205
+ sorbet-runtime
206
+ zeitwerk (~> 2.5)
207
+ sorbet-runtime (0.5.9854)
208
+ sprockets (4.0.3)
243
209
  concurrent-ruby (~> 1.0)
244
210
  rack (> 1, < 3)
245
211
  sprockets-rails (3.4.2)
@@ -250,9 +216,9 @@ GEM
250
216
  thor (1.2.1)
251
217
  tzinfo (2.0.4)
252
218
  concurrent-ruby (~> 1.0)
253
- unicode-display_width (1.7.0)
254
- webmock (3.9.1)
255
- addressable (>= 2.3.6)
219
+ unicode-display_width (2.1.0)
220
+ webmock (3.14.0)
221
+ addressable (>= 2.8.0)
256
222
  crack (>= 0.3.2)
257
223
  hashdiff (>= 0.4.0, < 2.0.0)
258
224
  websocket-driver (0.7.5)
@@ -279,4 +245,4 @@ DEPENDENCIES
279
245
  webmock
280
246
 
281
247
  BUNDLED WITH
282
- 2.2.29
248
+ 2.3.5
data/README.md CHANGED
@@ -17,6 +17,7 @@ This gem builds Rails applications that can be embedded in the Shopify Admin.
17
17
  [Contributing](/CONTRIBUTING.md) |
18
18
  [License](/LICENSE)
19
19
 
20
+
20
21
  ## Introduction
21
22
 
22
23
  This gem includes a Rails engine, generators, modules, and mixins that help create Rails applications that work with Shopify APIs. The [Shopify App Rails engine](/docs/shopify_app/engine.md) provides all the code required to implement OAuth with Shopify. The [default Shopify App generator](/docs/shopify_app/generators.md#-environment-rails-generate-shopify_app) builds an app that can be embedded in the Shopify Admin and secures it with [session tokens](https://shopify.dev/concepts/apps/building-embedded-apps-using-session-tokens).
data/Rakefile CHANGED
@@ -1,7 +1,8 @@
1
1
  # frozen_string_literal: true
2
- require 'bundler/gem_tasks'
3
- require 'rake/testtask'
4
2
 
5
- require File.expand_path('../test/dummy/config/application', __FILE__)
3
+ require "bundler/gem_tasks"
4
+ require "rake/testtask"
5
+
6
+ require File.expand_path("../test/dummy/config/application", __FILE__)
6
7
 
7
8
  Rails.application.load_tasks