shopify_api 9.0.3 → 12.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (780) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CODEOWNERS +1 -1
  3. data/.github/ISSUE_TEMPLATE/BUG_REPORT.md +40 -0
  4. data/.github/ISSUE_TEMPLATE/ENHANCEMENT.md +9 -0
  5. data/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md +9 -0
  6. data/.github/api_update_reminder.md +25 -0
  7. data/.github/api_update_reminder_on_release.md +19 -0
  8. data/.github/dependabot.yml +20 -0
  9. data/.github/pull_request_template.md +20 -0
  10. data/.github/workflows/api_update_reminder.yml +16 -0
  11. data/.github/workflows/api_update_reminder_on_release.yml +16 -0
  12. data/.github/workflows/build.yml +39 -0
  13. data/.github/workflows/cla.yml +22 -0
  14. data/.github/workflows/close-waiting-for-response-issues.yml +20 -0
  15. data/.github/workflows/remove-labels-on-activity.yml +16 -0
  16. data/.github/workflows/stale.yml +43 -0
  17. data/.rubocop.yml +56 -5
  18. data/BREAKING_CHANGES_FOR_OLDER_VERSIONS.md +110 -0
  19. data/CHANGELOG.md +335 -197
  20. data/CONTRIBUTING.md +3 -2
  21. data/Gemfile +9 -1
  22. data/Gemfile.lock +159 -0
  23. data/LICENSE +2 -2
  24. data/README.md +82 -581
  25. data/RELEASING.md +19 -0
  26. data/Rakefile +15 -36
  27. data/SECURITY.md +59 -0
  28. data/bin/tapioca +29 -0
  29. data/dev.yml +32 -0
  30. data/docs/README.md +13 -0
  31. data/docs/getting_started.md +53 -0
  32. data/docs/issues.md +39 -0
  33. data/docs/usage/graphql.md +121 -0
  34. data/docs/usage/graphql_storefront.md +48 -0
  35. data/docs/usage/oauth.md +104 -0
  36. data/docs/usage/rest.md +144 -0
  37. data/docs/usage/session_storage.md +46 -0
  38. data/docs/usage/webhooks.md +98 -0
  39. data/lib/shopify_api/admin_versions.rb +21 -0
  40. data/lib/shopify_api/auth/associated_user.rb +36 -0
  41. data/lib/shopify_api/auth/auth_scopes.rb +75 -0
  42. data/lib/shopify_api/auth/file_session_storage.rb +72 -0
  43. data/lib/shopify_api/auth/jwt_payload.rb +83 -0
  44. data/lib/shopify_api/auth/oauth/auth_query.rb +47 -0
  45. data/lib/shopify_api/auth/oauth/session_cookie.rb +28 -0
  46. data/lib/shopify_api/auth/oauth.rb +135 -0
  47. data/lib/shopify_api/auth/session.rb +119 -0
  48. data/lib/shopify_api/auth/session_storage.rb +30 -0
  49. data/lib/shopify_api/auth.rb +26 -0
  50. data/lib/shopify_api/clients/graphql/admin.rb +15 -0
  51. data/lib/shopify_api/clients/graphql/client.rb +50 -0
  52. data/lib/shopify_api/clients/graphql/storefront.rb +35 -0
  53. data/lib/shopify_api/clients/http_client.rb +107 -0
  54. data/lib/shopify_api/clients/http_request.rb +35 -0
  55. data/lib/shopify_api/clients/http_response.rb +66 -0
  56. data/lib/shopify_api/clients/rest/admin.rb +129 -0
  57. data/lib/shopify_api/context.rb +196 -0
  58. data/lib/shopify_api/errors/context_not_setup_error.rb +9 -0
  59. data/lib/shopify_api/errors/cookie_not_found_error.rb +9 -0
  60. data/lib/shopify_api/errors/feature_deprecated_error.rb +9 -0
  61. data/lib/shopify_api/errors/http_response_error.rb +23 -0
  62. data/lib/shopify_api/errors/invalid_graphql_request_error.rb +9 -0
  63. data/lib/shopify_api/errors/invalid_http_request_error.rb +9 -0
  64. data/lib/shopify_api/errors/invalid_jwt_token_error.rb +9 -0
  65. data/lib/shopify_api/errors/invalid_oauth_error.rb +9 -0
  66. data/lib/shopify_api/errors/invalid_webhook_error.rb +9 -0
  67. data/lib/shopify_api/errors/invalid_webhook_registration_error.rb +9 -0
  68. data/lib/shopify_api/errors/log_level_not_found_error.rb +9 -0
  69. data/lib/shopify_api/errors/max_http_retries_exceeded_error.rb +9 -0
  70. data/lib/shopify_api/errors/missing_jwt_token_error.rb +9 -0
  71. data/lib/shopify_api/errors/missing_required_argument_error.rb +9 -0
  72. data/lib/shopify_api/errors/no_active_session_error.rb +9 -0
  73. data/lib/shopify_api/errors/no_session_cookie_error.rb +9 -0
  74. data/lib/shopify_api/errors/no_webhook_handler.rb +9 -0
  75. data/lib/shopify_api/errors/private_app_error.rb +9 -0
  76. data/lib/shopify_api/errors/request_access_token_error.rb +9 -0
  77. data/lib/shopify_api/errors/session_not_found_error.rb +9 -0
  78. data/lib/shopify_api/errors/session_storage_error.rb +9 -0
  79. data/lib/shopify_api/errors/unsupported_oauth_error.rb +9 -0
  80. data/lib/shopify_api/errors/unsupported_version_error.rb +9 -0
  81. data/lib/shopify_api/errors/webhook_registration_error.rb +9 -0
  82. data/lib/shopify_api/inflector.rb +17 -0
  83. data/lib/shopify_api/logger.rb +82 -0
  84. data/lib/shopify_api/rest/base.rb +396 -0
  85. data/lib/shopify_api/rest/base_errors.rb +32 -0
  86. data/lib/shopify_api/rest/resources/2022_07/abandoned_checkout.rb +190 -0
  87. data/lib/shopify_api/rest/resources/2022_07/access_scope.rb +58 -0
  88. data/lib/shopify_api/rest/resources/2022_07/android_pay_key.rb +77 -0
  89. data/lib/shopify_api/rest/resources/2022_07/apple_pay_certificate.rb +105 -0
  90. data/lib/shopify_api/rest/resources/2022_07/application_charge.rb +109 -0
  91. data/lib/shopify_api/rest/resources/2022_07/application_credit.rb +92 -0
  92. data/lib/shopify_api/rest/resources/2022_07/article.rb +265 -0
  93. data/lib/shopify_api/rest/resources/2022_07/asset.rb +118 -0
  94. data/lib/shopify_api/rest/resources/2022_07/assigned_fulfillment_order.rb +86 -0
  95. data/lib/shopify_api/rest/resources/2022_07/balance.rb +50 -0
  96. data/lib/shopify_api/rest/resources/2022_07/blog.rb +162 -0
  97. data/lib/shopify_api/rest/resources/2022_07/cancellation_request.rb +83 -0
  98. data/lib/shopify_api/rest/resources/2022_07/carrier_service.rb +113 -0
  99. data/lib/shopify_api/rest/resources/2022_07/checkout.rb +209 -0
  100. data/lib/shopify_api/rest/resources/2022_07/collect.rb +142 -0
  101. data/lib/shopify_api/rest/resources/2022_07/collection.rb +110 -0
  102. data/lib/shopify_api/rest/resources/2022_07/collection_listing.rb +155 -0
  103. data/lib/shopify_api/rest/resources/2022_07/comment.rb +283 -0
  104. data/lib/shopify_api/rest/resources/2022_07/country.rb +137 -0
  105. data/lib/shopify_api/rest/resources/2022_07/currency.rb +57 -0
  106. data/lib/shopify_api/rest/resources/2022_07/custom_collection.rb +187 -0
  107. data/lib/shopify_api/rest/resources/2022_07/customer.rb +329 -0
  108. data/lib/shopify_api/rest/resources/2022_07/customer_address.rb +201 -0
  109. data/lib/shopify_api/rest/resources/2022_07/customer_saved_search.rb +169 -0
  110. data/lib/shopify_api/rest/resources/2022_07/deprecated_api_call.rb +57 -0
  111. data/lib/shopify_api/rest/resources/2022_07/discount_code.rb +219 -0
  112. data/lib/shopify_api/rest/resources/2022_07/dispute.rb +111 -0
  113. data/lib/shopify_api/rest/resources/2022_07/dispute_evidence.rb +117 -0
  114. data/lib/shopify_api/rest/resources/2022_07/dispute_file_upload.rb +81 -0
  115. data/lib/shopify_api/rest/resources/2022_07/draft_order.rb +275 -0
  116. data/lib/shopify_api/rest/resources/2022_07/event.rb +148 -0
  117. data/lib/shopify_api/rest/resources/2022_07/fulfillment.rb +225 -0
  118. data/lib/shopify_api/rest/resources/2022_07/fulfillment_event.rb +166 -0
  119. data/lib/shopify_api/rest/resources/2022_07/fulfillment_order.rb +310 -0
  120. data/lib/shopify_api/rest/resources/2022_07/fulfillment_request.rb +87 -0
  121. data/lib/shopify_api/rest/resources/2022_07/fulfillment_service.rb +130 -0
  122. data/lib/shopify_api/rest/resources/2022_07/gift_card.rb +215 -0
  123. data/lib/shopify_api/rest/resources/2022_07/gift_card_adjustment.rb +118 -0
  124. data/lib/shopify_api/rest/resources/2022_07/image.rb +157 -0
  125. data/lib/shopify_api/rest/resources/2022_07/inventory_item.rb +108 -0
  126. data/lib/shopify_api/rest/resources/2022_07/inventory_level.rb +179 -0
  127. data/lib/shopify_api/rest/resources/2022_07/location.rb +167 -0
  128. data/lib/shopify_api/rest/resources/2022_07/locations_for_move.rb +56 -0
  129. data/lib/shopify_api/rest/resources/2022_07/marketing_event.rb +209 -0
  130. data/lib/shopify_api/rest/resources/2022_07/metafield.rb +344 -0
  131. data/lib/shopify_api/rest/resources/2022_07/mobile_platform_application.rb +110 -0
  132. data/lib/shopify_api/rest/resources/2022_07/order.rb +473 -0
  133. data/lib/shopify_api/rest/resources/2022_07/order_risk.rb +135 -0
  134. data/lib/shopify_api/rest/resources/2022_07/page.rb +194 -0
  135. data/lib/shopify_api/rest/resources/2022_07/payment.rb +140 -0
  136. data/lib/shopify_api/rest/resources/2022_07/payment_gateway.rb +143 -0
  137. data/lib/shopify_api/rest/resources/2022_07/payment_transaction.rb +107 -0
  138. data/lib/shopify_api/rest/resources/2022_07/payout.rb +97 -0
  139. data/lib/shopify_api/rest/resources/2022_07/policy.rb +69 -0
  140. data/lib/shopify_api/rest/resources/2022_07/price_rule.rb +223 -0
  141. data/lib/shopify_api/rest/resources/2022_07/product.rb +223 -0
  142. data/lib/shopify_api/rest/resources/2022_07/product_listing.rb +196 -0
  143. data/lib/shopify_api/rest/resources/2022_07/product_resource_feedback.rb +88 -0
  144. data/lib/shopify_api/rest/resources/2022_07/province.rb +132 -0
  145. data/lib/shopify_api/rest/resources/2022_07/recurring_application_charge.rb +172 -0
  146. data/lib/shopify_api/rest/resources/2022_07/redirect.rb +139 -0
  147. data/lib/shopify_api/rest/resources/2022_07/refund.rb +151 -0
  148. data/lib/shopify_api/rest/resources/2022_07/report.rb +121 -0
  149. data/lib/shopify_api/rest/resources/2022_07/resource_feedback.rb +73 -0
  150. data/lib/shopify_api/rest/resources/2022_07/script_tag.rb +155 -0
  151. data/lib/shopify_api/rest/resources/2022_07/shipping_zone.rb +83 -0
  152. data/lib/shopify_api/rest/resources/2022_07/shop.rb +218 -0
  153. data/lib/shopify_api/rest/resources/2022_07/smart_collection.rb +216 -0
  154. data/lib/shopify_api/rest/resources/2022_07/storefront_access_token.rb +87 -0
  155. data/lib/shopify_api/rest/resources/2022_07/tender_transaction.rb +93 -0
  156. data/lib/shopify_api/rest/resources/2022_07/theme.rb +120 -0
  157. data/lib/shopify_api/rest/resources/2022_07/transaction.rb +181 -0
  158. data/lib/shopify_api/rest/resources/2022_07/usage_charge.rb +102 -0
  159. data/lib/shopify_api/rest/resources/2022_07/user.rb +138 -0
  160. data/lib/shopify_api/rest/resources/2022_07/variant.rb +212 -0
  161. data/lib/shopify_api/rest/resources/2022_07/webhook.rb +168 -0
  162. data/lib/shopify_api/rest/resources/2022_10/abandoned_checkout.rb +190 -0
  163. data/lib/shopify_api/rest/resources/2022_10/access_scope.rb +58 -0
  164. data/lib/shopify_api/rest/resources/2022_10/android_pay_key.rb +77 -0
  165. data/lib/shopify_api/rest/resources/2022_10/apple_pay_certificate.rb +105 -0
  166. data/lib/shopify_api/rest/resources/2022_10/application_charge.rb +109 -0
  167. data/lib/shopify_api/rest/resources/2022_10/application_credit.rb +92 -0
  168. data/lib/shopify_api/rest/resources/2022_10/article.rb +265 -0
  169. data/lib/shopify_api/rest/resources/2022_10/asset.rb +118 -0
  170. data/lib/shopify_api/rest/resources/2022_10/assigned_fulfillment_order.rb +86 -0
  171. data/lib/shopify_api/rest/resources/2022_10/balance.rb +50 -0
  172. data/lib/shopify_api/rest/resources/2022_10/blog.rb +162 -0
  173. data/lib/shopify_api/rest/resources/2022_10/cancellation_request.rb +83 -0
  174. data/lib/shopify_api/rest/resources/2022_10/carrier_service.rb +113 -0
  175. data/lib/shopify_api/rest/resources/2022_10/checkout.rb +209 -0
  176. data/lib/shopify_api/rest/resources/2022_10/collect.rb +142 -0
  177. data/lib/shopify_api/rest/resources/2022_10/collection.rb +110 -0
  178. data/lib/shopify_api/rest/resources/2022_10/collection_listing.rb +155 -0
  179. data/lib/shopify_api/rest/resources/2022_10/comment.rb +283 -0
  180. data/lib/shopify_api/rest/resources/2022_10/country.rb +137 -0
  181. data/lib/shopify_api/rest/resources/2022_10/currency.rb +57 -0
  182. data/lib/shopify_api/rest/resources/2022_10/custom_collection.rb +187 -0
  183. data/lib/shopify_api/rest/resources/2022_10/customer.rb +329 -0
  184. data/lib/shopify_api/rest/resources/2022_10/customer_address.rb +201 -0
  185. data/lib/shopify_api/rest/resources/2022_10/customer_saved_search.rb +169 -0
  186. data/lib/shopify_api/rest/resources/2022_10/deprecated_api_call.rb +57 -0
  187. data/lib/shopify_api/rest/resources/2022_10/discount_code.rb +219 -0
  188. data/lib/shopify_api/rest/resources/2022_10/dispute.rb +111 -0
  189. data/lib/shopify_api/rest/resources/2022_10/dispute_evidence.rb +117 -0
  190. data/lib/shopify_api/rest/resources/2022_10/dispute_file_upload.rb +81 -0
  191. data/lib/shopify_api/rest/resources/2022_10/draft_order.rb +275 -0
  192. data/lib/shopify_api/rest/resources/2022_10/event.rb +148 -0
  193. data/lib/shopify_api/rest/resources/2022_10/fulfillment.rb +225 -0
  194. data/lib/shopify_api/rest/resources/2022_10/fulfillment_event.rb +166 -0
  195. data/lib/shopify_api/rest/resources/2022_10/fulfillment_order.rb +310 -0
  196. data/lib/shopify_api/rest/resources/2022_10/fulfillment_request.rb +87 -0
  197. data/lib/shopify_api/rest/resources/2022_10/fulfillment_service.rb +130 -0
  198. data/lib/shopify_api/rest/resources/2022_10/gift_card.rb +215 -0
  199. data/lib/shopify_api/rest/resources/2022_10/gift_card_adjustment.rb +118 -0
  200. data/lib/shopify_api/rest/resources/2022_10/image.rb +157 -0
  201. data/lib/shopify_api/rest/resources/2022_10/inventory_item.rb +108 -0
  202. data/lib/shopify_api/rest/resources/2022_10/inventory_level.rb +179 -0
  203. data/lib/shopify_api/rest/resources/2022_10/location.rb +167 -0
  204. data/lib/shopify_api/rest/resources/2022_10/locations_for_move.rb +56 -0
  205. data/lib/shopify_api/rest/resources/2022_10/marketing_event.rb +209 -0
  206. data/lib/shopify_api/rest/resources/2022_10/metafield.rb +344 -0
  207. data/lib/shopify_api/rest/resources/2022_10/mobile_platform_application.rb +110 -0
  208. data/lib/shopify_api/rest/resources/2022_10/order.rb +476 -0
  209. data/lib/shopify_api/rest/resources/2022_10/order_risk.rb +135 -0
  210. data/lib/shopify_api/rest/resources/2022_10/page.rb +194 -0
  211. data/lib/shopify_api/rest/resources/2022_10/payment.rb +140 -0
  212. data/lib/shopify_api/rest/resources/2022_10/payment_gateway.rb +143 -0
  213. data/lib/shopify_api/rest/resources/2022_10/payment_transaction.rb +107 -0
  214. data/lib/shopify_api/rest/resources/2022_10/payout.rb +97 -0
  215. data/lib/shopify_api/rest/resources/2022_10/policy.rb +69 -0
  216. data/lib/shopify_api/rest/resources/2022_10/price_rule.rb +223 -0
  217. data/lib/shopify_api/rest/resources/2022_10/product.rb +223 -0
  218. data/lib/shopify_api/rest/resources/2022_10/product_listing.rb +196 -0
  219. data/lib/shopify_api/rest/resources/2022_10/product_resource_feedback.rb +88 -0
  220. data/lib/shopify_api/rest/resources/2022_10/province.rb +132 -0
  221. data/lib/shopify_api/rest/resources/2022_10/recurring_application_charge.rb +172 -0
  222. data/lib/shopify_api/rest/resources/2022_10/redirect.rb +139 -0
  223. data/lib/shopify_api/rest/resources/2022_10/refund.rb +151 -0
  224. data/lib/shopify_api/rest/resources/2022_10/report.rb +121 -0
  225. data/lib/shopify_api/rest/resources/2022_10/resource_feedback.rb +73 -0
  226. data/lib/shopify_api/rest/resources/2022_10/script_tag.rb +155 -0
  227. data/lib/shopify_api/rest/resources/2022_10/shipping_zone.rb +83 -0
  228. data/lib/shopify_api/rest/resources/2022_10/shop.rb +221 -0
  229. data/lib/shopify_api/rest/resources/2022_10/smart_collection.rb +216 -0
  230. data/lib/shopify_api/rest/resources/2022_10/storefront_access_token.rb +87 -0
  231. data/lib/shopify_api/rest/resources/2022_10/tender_transaction.rb +93 -0
  232. data/lib/shopify_api/rest/resources/2022_10/theme.rb +120 -0
  233. data/lib/shopify_api/rest/resources/2022_10/transaction.rb +181 -0
  234. data/lib/shopify_api/rest/resources/2022_10/usage_charge.rb +102 -0
  235. data/lib/shopify_api/rest/resources/2022_10/user.rb +138 -0
  236. data/lib/shopify_api/rest/resources/2022_10/variant.rb +212 -0
  237. data/lib/shopify_api/rest/resources/2022_10/webhook.rb +168 -0
  238. data/lib/shopify_api/rest/resources/2023_01/abandoned_checkout.rb +190 -0
  239. data/lib/shopify_api/rest/resources/2023_01/access_scope.rb +58 -0
  240. data/lib/shopify_api/rest/resources/2023_01/apple_pay_certificate.rb +105 -0
  241. data/lib/shopify_api/rest/resources/2023_01/application_charge.rb +109 -0
  242. data/lib/shopify_api/rest/resources/2023_01/application_credit.rb +92 -0
  243. data/lib/shopify_api/rest/resources/2023_01/article.rb +265 -0
  244. data/lib/shopify_api/rest/resources/2023_01/asset.rb +118 -0
  245. data/lib/shopify_api/rest/resources/2023_01/assigned_fulfillment_order.rb +86 -0
  246. data/lib/shopify_api/rest/resources/2023_01/balance.rb +50 -0
  247. data/lib/shopify_api/rest/resources/2023_01/blog.rb +162 -0
  248. data/lib/shopify_api/rest/resources/2023_01/cancellation_request.rb +83 -0
  249. data/lib/shopify_api/rest/resources/2023_01/carrier_service.rb +113 -0
  250. data/lib/shopify_api/rest/resources/2023_01/checkout.rb +209 -0
  251. data/lib/shopify_api/rest/resources/2023_01/collect.rb +142 -0
  252. data/lib/shopify_api/rest/resources/2023_01/collection.rb +110 -0
  253. data/lib/shopify_api/rest/resources/2023_01/collection_listing.rb +155 -0
  254. data/lib/shopify_api/rest/resources/2023_01/comment.rb +283 -0
  255. data/lib/shopify_api/rest/resources/2023_01/country.rb +137 -0
  256. data/lib/shopify_api/rest/resources/2023_01/currency.rb +57 -0
  257. data/lib/shopify_api/rest/resources/2023_01/custom_collection.rb +187 -0
  258. data/lib/shopify_api/rest/resources/2023_01/customer.rb +329 -0
  259. data/lib/shopify_api/rest/resources/2023_01/customer_address.rb +201 -0
  260. data/lib/shopify_api/rest/resources/2023_01/customer_saved_search.rb +169 -0
  261. data/lib/shopify_api/rest/resources/2023_01/deprecated_api_call.rb +57 -0
  262. data/lib/shopify_api/rest/resources/2023_01/discount_code.rb +219 -0
  263. data/lib/shopify_api/rest/resources/2023_01/dispute.rb +111 -0
  264. data/lib/shopify_api/rest/resources/2023_01/dispute_evidence.rb +117 -0
  265. data/lib/shopify_api/rest/resources/2023_01/dispute_file_upload.rb +81 -0
  266. data/lib/shopify_api/rest/resources/2023_01/draft_order.rb +275 -0
  267. data/lib/shopify_api/rest/resources/2023_01/event.rb +148 -0
  268. data/lib/shopify_api/rest/resources/2023_01/fulfillment.rb +225 -0
  269. data/lib/shopify_api/rest/resources/2023_01/fulfillment_event.rb +166 -0
  270. data/lib/shopify_api/rest/resources/2023_01/fulfillment_order.rb +316 -0
  271. data/lib/shopify_api/rest/resources/2023_01/fulfillment_request.rb +87 -0
  272. data/lib/shopify_api/rest/resources/2023_01/fulfillment_service.rb +130 -0
  273. data/lib/shopify_api/rest/resources/2023_01/gift_card.rb +215 -0
  274. data/lib/shopify_api/rest/resources/2023_01/gift_card_adjustment.rb +118 -0
  275. data/lib/shopify_api/rest/resources/2023_01/image.rb +157 -0
  276. data/lib/shopify_api/rest/resources/2023_01/inventory_item.rb +108 -0
  277. data/lib/shopify_api/rest/resources/2023_01/inventory_level.rb +179 -0
  278. data/lib/shopify_api/rest/resources/2023_01/location.rb +167 -0
  279. data/lib/shopify_api/rest/resources/2023_01/locations_for_move.rb +56 -0
  280. data/lib/shopify_api/rest/resources/2023_01/marketing_event.rb +209 -0
  281. data/lib/shopify_api/rest/resources/2023_01/metafield.rb +344 -0
  282. data/lib/shopify_api/rest/resources/2023_01/mobile_platform_application.rb +110 -0
  283. data/lib/shopify_api/rest/resources/2023_01/order.rb +479 -0
  284. data/lib/shopify_api/rest/resources/2023_01/order_risk.rb +135 -0
  285. data/lib/shopify_api/rest/resources/2023_01/page.rb +194 -0
  286. data/lib/shopify_api/rest/resources/2023_01/payment.rb +140 -0
  287. data/lib/shopify_api/rest/resources/2023_01/payment_gateway.rb +143 -0
  288. data/lib/shopify_api/rest/resources/2023_01/payment_transaction.rb +107 -0
  289. data/lib/shopify_api/rest/resources/2023_01/payout.rb +97 -0
  290. data/lib/shopify_api/rest/resources/2023_01/policy.rb +69 -0
  291. data/lib/shopify_api/rest/resources/2023_01/price_rule.rb +223 -0
  292. data/lib/shopify_api/rest/resources/2023_01/product.rb +223 -0
  293. data/lib/shopify_api/rest/resources/2023_01/product_listing.rb +196 -0
  294. data/lib/shopify_api/rest/resources/2023_01/product_resource_feedback.rb +88 -0
  295. data/lib/shopify_api/rest/resources/2023_01/province.rb +132 -0
  296. data/lib/shopify_api/rest/resources/2023_01/recurring_application_charge.rb +172 -0
  297. data/lib/shopify_api/rest/resources/2023_01/redirect.rb +139 -0
  298. data/lib/shopify_api/rest/resources/2023_01/refund.rb +151 -0
  299. data/lib/shopify_api/rest/resources/2023_01/report.rb +121 -0
  300. data/lib/shopify_api/rest/resources/2023_01/resource_feedback.rb +73 -0
  301. data/lib/shopify_api/rest/resources/2023_01/script_tag.rb +155 -0
  302. data/lib/shopify_api/rest/resources/2023_01/shipping_zone.rb +83 -0
  303. data/lib/shopify_api/rest/resources/2023_01/shop.rb +221 -0
  304. data/lib/shopify_api/rest/resources/2023_01/smart_collection.rb +216 -0
  305. data/lib/shopify_api/rest/resources/2023_01/storefront_access_token.rb +87 -0
  306. data/lib/shopify_api/rest/resources/2023_01/tender_transaction.rb +93 -0
  307. data/lib/shopify_api/rest/resources/2023_01/theme.rb +120 -0
  308. data/lib/shopify_api/rest/resources/2023_01/transaction.rb +181 -0
  309. data/lib/shopify_api/rest/resources/2023_01/usage_charge.rb +102 -0
  310. data/lib/shopify_api/rest/resources/2023_01/user.rb +138 -0
  311. data/lib/shopify_api/rest/resources/2023_01/variant.rb +212 -0
  312. data/lib/shopify_api/rest/resources/2023_01/webhook.rb +168 -0
  313. data/lib/shopify_api/rest/resources/2023_04/abandoned_checkout.rb +190 -0
  314. data/lib/shopify_api/rest/resources/2023_04/access_scope.rb +58 -0
  315. data/lib/shopify_api/rest/resources/2023_04/apple_pay_certificate.rb +105 -0
  316. data/lib/shopify_api/rest/resources/2023_04/application_charge.rb +109 -0
  317. data/lib/shopify_api/rest/resources/2023_04/application_credit.rb +92 -0
  318. data/lib/shopify_api/rest/resources/2023_04/article.rb +265 -0
  319. data/lib/shopify_api/rest/resources/2023_04/asset.rb +118 -0
  320. data/lib/shopify_api/rest/resources/2023_04/assigned_fulfillment_order.rb +86 -0
  321. data/lib/shopify_api/rest/resources/2023_04/balance.rb +50 -0
  322. data/lib/shopify_api/rest/resources/2023_04/blog.rb +162 -0
  323. data/lib/shopify_api/rest/resources/2023_04/cancellation_request.rb +83 -0
  324. data/lib/shopify_api/rest/resources/2023_04/carrier_service.rb +113 -0
  325. data/lib/shopify_api/rest/resources/2023_04/checkout.rb +209 -0
  326. data/lib/shopify_api/rest/resources/2023_04/collect.rb +142 -0
  327. data/lib/shopify_api/rest/resources/2023_04/collection.rb +110 -0
  328. data/lib/shopify_api/rest/resources/2023_04/collection_listing.rb +155 -0
  329. data/lib/shopify_api/rest/resources/2023_04/comment.rb +283 -0
  330. data/lib/shopify_api/rest/resources/2023_04/country.rb +137 -0
  331. data/lib/shopify_api/rest/resources/2023_04/currency.rb +57 -0
  332. data/lib/shopify_api/rest/resources/2023_04/custom_collection.rb +187 -0
  333. data/lib/shopify_api/rest/resources/2023_04/customer.rb +329 -0
  334. data/lib/shopify_api/rest/resources/2023_04/customer_address.rb +201 -0
  335. data/lib/shopify_api/rest/resources/2023_04/customer_saved_search.rb +169 -0
  336. data/lib/shopify_api/rest/resources/2023_04/deprecated_api_call.rb +57 -0
  337. data/lib/shopify_api/rest/resources/2023_04/discount_code.rb +219 -0
  338. data/lib/shopify_api/rest/resources/2023_04/dispute.rb +111 -0
  339. data/lib/shopify_api/rest/resources/2023_04/dispute_evidence.rb +117 -0
  340. data/lib/shopify_api/rest/resources/2023_04/dispute_file_upload.rb +81 -0
  341. data/lib/shopify_api/rest/resources/2023_04/draft_order.rb +275 -0
  342. data/lib/shopify_api/rest/resources/2023_04/event.rb +148 -0
  343. data/lib/shopify_api/rest/resources/2023_04/fulfillment.rb +225 -0
  344. data/lib/shopify_api/rest/resources/2023_04/fulfillment_event.rb +166 -0
  345. data/lib/shopify_api/rest/resources/2023_04/fulfillment_order.rb +312 -0
  346. data/lib/shopify_api/rest/resources/2023_04/fulfillment_request.rb +87 -0
  347. data/lib/shopify_api/rest/resources/2023_04/fulfillment_service.rb +130 -0
  348. data/lib/shopify_api/rest/resources/2023_04/gift_card.rb +215 -0
  349. data/lib/shopify_api/rest/resources/2023_04/gift_card_adjustment.rb +118 -0
  350. data/lib/shopify_api/rest/resources/2023_04/image.rb +157 -0
  351. data/lib/shopify_api/rest/resources/2023_04/inventory_item.rb +108 -0
  352. data/lib/shopify_api/rest/resources/2023_04/inventory_level.rb +179 -0
  353. data/lib/shopify_api/rest/resources/2023_04/location.rb +167 -0
  354. data/lib/shopify_api/rest/resources/2023_04/locations_for_move.rb +56 -0
  355. data/lib/shopify_api/rest/resources/2023_04/marketing_event.rb +209 -0
  356. data/lib/shopify_api/rest/resources/2023_04/metafield.rb +344 -0
  357. data/lib/shopify_api/rest/resources/2023_04/mobile_platform_application.rb +110 -0
  358. data/lib/shopify_api/rest/resources/2023_04/order.rb +485 -0
  359. data/lib/shopify_api/rest/resources/2023_04/order_risk.rb +135 -0
  360. data/lib/shopify_api/rest/resources/2023_04/page.rb +194 -0
  361. data/lib/shopify_api/rest/resources/2023_04/payment.rb +140 -0
  362. data/lib/shopify_api/rest/resources/2023_04/payment_gateway.rb +143 -0
  363. data/lib/shopify_api/rest/resources/2023_04/payment_transaction.rb +107 -0
  364. data/lib/shopify_api/rest/resources/2023_04/payout.rb +97 -0
  365. data/lib/shopify_api/rest/resources/2023_04/policy.rb +69 -0
  366. data/lib/shopify_api/rest/resources/2023_04/price_rule.rb +223 -0
  367. data/lib/shopify_api/rest/resources/2023_04/product.rb +223 -0
  368. data/lib/shopify_api/rest/resources/2023_04/product_listing.rb +196 -0
  369. data/lib/shopify_api/rest/resources/2023_04/product_resource_feedback.rb +88 -0
  370. data/lib/shopify_api/rest/resources/2023_04/province.rb +132 -0
  371. data/lib/shopify_api/rest/resources/2023_04/recurring_application_charge.rb +172 -0
  372. data/lib/shopify_api/rest/resources/2023_04/redirect.rb +139 -0
  373. data/lib/shopify_api/rest/resources/2023_04/refund.rb +151 -0
  374. data/lib/shopify_api/rest/resources/2023_04/report.rb +121 -0
  375. data/lib/shopify_api/rest/resources/2023_04/resource_feedback.rb +73 -0
  376. data/lib/shopify_api/rest/resources/2023_04/script_tag.rb +155 -0
  377. data/lib/shopify_api/rest/resources/2023_04/shipping_zone.rb +83 -0
  378. data/lib/shopify_api/rest/resources/2023_04/shop.rb +221 -0
  379. data/lib/shopify_api/rest/resources/2023_04/smart_collection.rb +216 -0
  380. data/lib/shopify_api/rest/resources/2023_04/storefront_access_token.rb +87 -0
  381. data/lib/shopify_api/rest/resources/2023_04/tender_transaction.rb +93 -0
  382. data/lib/shopify_api/rest/resources/2023_04/theme.rb +120 -0
  383. data/lib/shopify_api/rest/resources/2023_04/transaction.rb +184 -0
  384. data/lib/shopify_api/rest/resources/2023_04/usage_charge.rb +102 -0
  385. data/lib/shopify_api/rest/resources/2023_04/user.rb +138 -0
  386. data/lib/shopify_api/rest/resources/2023_04/variant.rb +212 -0
  387. data/lib/shopify_api/rest/resources/2023_04/webhook.rb +168 -0
  388. data/lib/shopify_api/utils/graphql_proxy.rb +52 -0
  389. data/lib/shopify_api/utils/hmac_validator.rb +44 -0
  390. data/lib/shopify_api/utils/http_utils.rb +17 -0
  391. data/lib/shopify_api/utils/session_utils.rb +152 -0
  392. data/lib/shopify_api/utils/verifiable_query.rb +18 -0
  393. data/lib/shopify_api/version.rb +4 -1
  394. data/lib/shopify_api/webhooks/handler.rb +15 -0
  395. data/lib/shopify_api/webhooks/register_result.rb +14 -0
  396. data/lib/shopify_api/webhooks/registration.rb +73 -0
  397. data/lib/shopify_api/webhooks/registrations/event_bridge.rb +61 -0
  398. data/lib/shopify_api/webhooks/registrations/http.rb +72 -0
  399. data/lib/shopify_api/webhooks/registrations/pub_sub.rb +65 -0
  400. data/lib/shopify_api/webhooks/registry.rb +215 -0
  401. data/lib/shopify_api/webhooks/request.rb +56 -0
  402. data/lib/shopify_api.rb +20 -30
  403. data/service.yml +0 -7
  404. data/shipit.rubygems.yml +1 -1
  405. data/shopify_api.gemspec +34 -22
  406. data/sorbet/config +3 -0
  407. data/sorbet/rbi/gems/activesupport@7.0.1.rbi +654 -0
  408. data/sorbet/rbi/gems/addressable@2.8.0.rbi +290 -0
  409. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  410. data/sorbet/rbi/gems/coderay@1.1.3.rbi +8 -0
  411. data/sorbet/rbi/gems/concurrent-ruby@1.1.9.rbi +2401 -0
  412. data/sorbet/rbi/gems/crack@0.4.5.rbi +57 -0
  413. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +185 -0
  414. data/sorbet/rbi/gems/fakefs@1.4.1.rbi +571 -0
  415. data/sorbet/rbi/gems/hash_diff@1.0.0.rbi +47 -0
  416. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +82 -0
  417. data/sorbet/rbi/gems/httparty@0.20.0.rbi +573 -0
  418. data/sorbet/rbi/gems/i18n@1.8.11.rbi +25 -0
  419. data/sorbet/rbi/gems/jwt@2.3.0.rbi +437 -0
  420. data/sorbet/rbi/gems/method_source@1.0.0.rbi +8 -0
  421. data/sorbet/rbi/gems/mime-types-data@3.2022.0105.rbi +73 -0
  422. data/sorbet/rbi/gems/mime-types@3.4.1.rbi +295 -0
  423. data/sorbet/rbi/gems/minitest@5.15.0.rbi +541 -0
  424. data/sorbet/rbi/gems/mocha@1.13.0.rbi +986 -0
  425. data/sorbet/rbi/gems/multi_xml@0.6.0.rbi +36 -0
  426. data/sorbet/rbi/gems/oj@3.13.11.rbi +274 -0
  427. data/sorbet/rbi/gems/openssl@3.0.0.rbi +581 -0
  428. data/sorbet/rbi/gems/parallel@1.21.0.rbi +113 -0
  429. data/sorbet/rbi/gems/parser@3.1.0.0.rbi +1741 -0
  430. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  431. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +145 -0
  432. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +157 -0
  433. data/sorbet/rbi/gems/rake@13.0.6.rbi +814 -0
  434. data/sorbet/rbi/gems/rbi@0.0.11.rbi +1646 -0
  435. data/sorbet/rbi/gems/regexp_parser@2.2.0.rbi +1130 -0
  436. data/sorbet/rbi/gems/rexml@3.2.5.rbi +709 -0
  437. data/sorbet/rbi/gems/rubocop-ast@1.15.1.rbi +1921 -0
  438. data/sorbet/rbi/gems/rubocop-shopify@2.4.0.rbi +8 -0
  439. data/sorbet/rbi/gems/rubocop-sorbet@0.6.5.rbi +295 -0
  440. data/sorbet/rbi/gems/rubocop@1.25.1.rbi +13507 -0
  441. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  442. data/sorbet/rbi/gems/securerandom@0.1.1.rbi +10 -0
  443. data/sorbet/rbi/gems/spoom@1.1.8.rbi +1252 -0
  444. data/sorbet/rbi/gems/tapioca@0.6.3.rbi +1238 -0
  445. data/sorbet/rbi/gems/thor@1.2.1.rbi +844 -0
  446. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +858 -0
  447. data/sorbet/rbi/gems/unicode-display_width@2.1.0.rbi +26 -0
  448. data/sorbet/rbi/gems/unparser@0.6.3.rbi +1816 -0
  449. data/sorbet/rbi/gems/webmock@3.14.0.rbi +683 -0
  450. data/sorbet/rbi/gems/webrick@1.7.0.rbi +601 -0
  451. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +199 -0
  452. data/sorbet/rbi/gems/yard@0.9.27.rbi +4145 -0
  453. data/sorbet/rbi/gems/zeitwerk@2.5.4.rbi +200 -0
  454. data/sorbet/rbi/shims/fakefs.rbi +1 -0
  455. data/sorbet/rbi/shims/openssl.rb +3 -0
  456. data/sorbet/rbi/todo.rbi +8 -0
  457. data/sorbet/tapioca/config.yml +4 -0
  458. data/sorbet/tapioca/require.rb +20 -0
  459. metadata +574 -356
  460. data/.document +0 -5
  461. data/.github/probots.yml +0 -2
  462. data/.gitignore +0 -13
  463. data/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml +0 -1027
  464. data/.travis.yml +0 -23
  465. data/CONTRIBUTORS +0 -3
  466. data/Gemfile_ar41 +0 -5
  467. data/Gemfile_ar50 +0 -5
  468. data/Gemfile_ar51 +0 -5
  469. data/Gemfile_ar_master +0 -5
  470. data/RELEASING +0 -13
  471. data/bin/shopify +0 -3
  472. data/docker-compose.yml +0 -13
  473. data/docs/graphql.md +0 -196
  474. data/lib/active_resource/connection_ext.rb +0 -10
  475. data/lib/active_resource/detailed_log_subscriber.rb +0 -52
  476. data/lib/active_resource/json_errors.rb +0 -31
  477. data/lib/shopify_api/api_version.rb +0 -205
  478. data/lib/shopify_api/connection.rb +0 -35
  479. data/lib/shopify_api/countable.rb +0 -14
  480. data/lib/shopify_api/disable_prefix_check.rb +0 -31
  481. data/lib/shopify_api/events.rb +0 -7
  482. data/lib/shopify_api/graphql/http_client.rb +0 -22
  483. data/lib/shopify_api/graphql/railtie.rb +0 -17
  484. data/lib/shopify_api/graphql/task.rake +0 -100
  485. data/lib/shopify_api/graphql.rb +0 -83
  486. data/lib/shopify_api/limits.rb +0 -76
  487. data/lib/shopify_api/message_enricher.rb +0 -23
  488. data/lib/shopify_api/meta.rb +0 -15
  489. data/lib/shopify_api/metafields.rb +0 -20
  490. data/lib/shopify_api/paginated_collection.rb +0 -69
  491. data/lib/shopify_api/pagination_link_headers.rb +0 -33
  492. data/lib/shopify_api/resources/abandoned_checkout.rb +0 -7
  493. data/lib/shopify_api/resources/access_scope.rb +0 -10
  494. data/lib/shopify_api/resources/access_token.rb +0 -8
  495. data/lib/shopify_api/resources/address.rb +0 -4
  496. data/lib/shopify_api/resources/announcement.rb +0 -4
  497. data/lib/shopify_api/resources/api_permission.rb +0 -9
  498. data/lib/shopify_api/resources/application_charge.rb +0 -15
  499. data/lib/shopify_api/resources/application_credit.rb +0 -4
  500. data/lib/shopify_api/resources/array_base.rb +0 -13
  501. data/lib/shopify_api/resources/article.rb +0 -21
  502. data/lib/shopify_api/resources/asset.rb +0 -100
  503. data/lib/shopify_api/resources/assigned_fulfillment_order.rb +0 -16
  504. data/lib/shopify_api/resources/base.rb +0 -162
  505. data/lib/shopify_api/resources/billing_address.rb +0 -4
  506. data/lib/shopify_api/resources/blog.rb +0 -10
  507. data/lib/shopify_api/resources/carrier_service.rb +0 -4
  508. data/lib/shopify_api/resources/cart.rb +0 -4
  509. data/lib/shopify_api/resources/checkout.rb +0 -30
  510. data/lib/shopify_api/resources/collect.rb +0 -6
  511. data/lib/shopify_api/resources/collection.rb +0 -14
  512. data/lib/shopify_api/resources/collection_listing.rb +0 -18
  513. data/lib/shopify_api/resources/collection_publication.rb +0 -10
  514. data/lib/shopify_api/resources/comment.rb +0 -9
  515. data/lib/shopify_api/resources/country.rb +0 -4
  516. data/lib/shopify_api/resources/currency.rb +0 -6
  517. data/lib/shopify_api/resources/custom_collection.rb +0 -19
  518. data/lib/shopify_api/resources/customer.rb +0 -29
  519. data/lib/shopify_api/resources/customer_group.rb +0 -5
  520. data/lib/shopify_api/resources/customer_invite.rb +0 -4
  521. data/lib/shopify_api/resources/customer_saved_search.rb +0 -11
  522. data/lib/shopify_api/resources/discount_code.rb +0 -9
  523. data/lib/shopify_api/resources/discount_code_batch.rb +0 -32
  524. data/lib/shopify_api/resources/draft_order.rb +0 -14
  525. data/lib/shopify_api/resources/draft_order_invoice.rb +0 -4
  526. data/lib/shopify_api/resources/event.rb +0 -8
  527. data/lib/shopify_api/resources/fulfillment.rb +0 -47
  528. data/lib/shopify_api/resources/fulfillment_event.rb +0 -15
  529. data/lib/shopify_api/resources/fulfillment_order.rb +0 -137
  530. data/lib/shopify_api/resources/fulfillment_order_locations_for_move.rb +0 -4
  531. data/lib/shopify_api/resources/fulfillment_request.rb +0 -15
  532. data/lib/shopify_api/resources/fulfillment_service.rb +0 -4
  533. data/lib/shopify_api/resources/fulfillment_v2.rb +0 -20
  534. data/lib/shopify_api/resources/gift_card.rb +0 -7
  535. data/lib/shopify_api/resources/image.rb +0 -16
  536. data/lib/shopify_api/resources/inventory_item.rb +0 -6
  537. data/lib/shopify_api/resources/inventory_level.rb +0 -55
  538. data/lib/shopify_api/resources/line_item.rb +0 -14
  539. data/lib/shopify_api/resources/location.rb +0 -8
  540. data/lib/shopify_api/resources/marketing_event.rb +0 -10
  541. data/lib/shopify_api/resources/metafield.rb +0 -13
  542. data/lib/shopify_api/resources/note_attribute.rb +0 -4
  543. data/lib/shopify_api/resources/option.rb +0 -4
  544. data/lib/shopify_api/resources/order.rb +0 -43
  545. data/lib/shopify_api/resources/order_risk.rb +0 -8
  546. data/lib/shopify_api/resources/page.rb +0 -6
  547. data/lib/shopify_api/resources/payment.rb +0 -7
  548. data/lib/shopify_api/resources/payment_details.rb +0 -4
  549. data/lib/shopify_api/resources/ping.rb +0 -3
  550. data/lib/shopify_api/resources/policy.rb +0 -7
  551. data/lib/shopify_api/resources/price_rule.rb +0 -8
  552. data/lib/shopify_api/resources/product.rb +0 -56
  553. data/lib/shopify_api/resources/product_listing.rb +0 -16
  554. data/lib/shopify_api/resources/product_publication.rb +0 -10
  555. data/lib/shopify_api/resources/province.rb +0 -5
  556. data/lib/shopify_api/resources/publication.rb +0 -5
  557. data/lib/shopify_api/resources/receipt.rb +0 -4
  558. data/lib/shopify_api/resources/recurring_application_charge.rb +0 -31
  559. data/lib/shopify_api/resources/redirect.rb +0 -4
  560. data/lib/shopify_api/resources/refund.rb +0 -14
  561. data/lib/shopify_api/resources/report.rb +0 -4
  562. data/lib/shopify_api/resources/resource_feedback.rb +0 -19
  563. data/lib/shopify_api/resources/rule.rb +0 -4
  564. data/lib/shopify_api/resources/script_tag.rb +0 -4
  565. data/lib/shopify_api/resources/shipping_address.rb +0 -4
  566. data/lib/shopify_api/resources/shipping_line.rb +0 -4
  567. data/lib/shopify_api/resources/shipping_rate.rb +0 -7
  568. data/lib/shopify_api/resources/shipping_zone.rb +0 -4
  569. data/lib/shopify_api/resources/shop.rb +0 -25
  570. data/lib/shopify_api/resources/smart_collection.rb +0 -19
  571. data/lib/shopify_api/resources/storefront_access_token.rb +0 -4
  572. data/lib/shopify_api/resources/tax_line.rb +0 -4
  573. data/lib/shopify_api/resources/tax_service.rb +0 -4
  574. data/lib/shopify_api/resources/tender_transaction.rb +0 -6
  575. data/lib/shopify_api/resources/theme.rb +0 -4
  576. data/lib/shopify_api/resources/transaction.rb +0 -5
  577. data/lib/shopify_api/resources/usage_charge.rb +0 -5
  578. data/lib/shopify_api/resources/user.rb +0 -4
  579. data/lib/shopify_api/resources/variant.rb +0 -39
  580. data/lib/shopify_api/resources/webhook.rb +0 -4
  581. data/lib/shopify_api/resources.rb +0 -3
  582. data/lib/shopify_api/session.rb +0 -172
  583. data/test/abandoned_checkouts_test.rb +0 -29
  584. data/test/access_scope_test.rb +0 -23
  585. data/test/access_token_test.rb +0 -19
  586. data/test/active_resource/json_errors_test.rb +0 -19
  587. data/test/api_permission_test.rb +0 -9
  588. data/test/api_version_test.rb +0 -157
  589. data/test/application_charge_test.rb +0 -79
  590. data/test/application_credit_test.rb +0 -35
  591. data/test/article_test.rb +0 -73
  592. data/test/asset_test.rb +0 -18
  593. data/test/assigned_fulfillment_order_test.rb +0 -77
  594. data/test/base_test.rb +0 -198
  595. data/test/blog_test.rb +0 -8
  596. data/test/carrier_service_test.rb +0 -17
  597. data/test/cart_test.rb +0 -13
  598. data/test/checkouts_test.rb +0 -77
  599. data/test/collect_test.rb +0 -9
  600. data/test/collection_listing_test.rb +0 -79
  601. data/test/collection_publication_test.rb +0 -40
  602. data/test/collection_test.rb +0 -49
  603. data/test/countable_test.rb +0 -13
  604. data/test/currency_test.rb +0 -21
  605. data/test/custom_collection_test.rb +0 -9
  606. data/test/customer_saved_search_test.rb +0 -27
  607. data/test/customer_test.rb +0 -50
  608. data/test/detailed_log_subscriber_test.rb +0 -139
  609. data/test/discount_code_batch_test.rb +0 -40
  610. data/test/discount_code_test.rb +0 -53
  611. data/test/draft_order_test.rb +0 -151
  612. data/test/fixtures/abandoned_checkout.json +0 -184
  613. data/test/fixtures/abandoned_checkouts.json +0 -186
  614. data/test/fixtures/access_scopes.json +0 -10
  615. data/test/fixtures/access_token_delegate.json +0 -4
  616. data/test/fixtures/api_versions.json +0 -38
  617. data/test/fixtures/apis.json +0 -42
  618. data/test/fixtures/application_charge.json +0 -16
  619. data/test/fixtures/application_charges.json +0 -57
  620. data/test/fixtures/application_credit.json +0 -12
  621. data/test/fixtures/application_credits.json +0 -24
  622. data/test/fixtures/article.json +0 -15
  623. data/test/fixtures/articles.json +0 -39
  624. data/test/fixtures/asset.json +0 -9
  625. data/test/fixtures/assets.json +0 -136
  626. data/test/fixtures/assigned_fulfillment_orders.json +0 -78
  627. data/test/fixtures/authors.json +0 -1
  628. data/test/fixtures/blog.json +0 -13
  629. data/test/fixtures/blogs.json +0 -13
  630. data/test/fixtures/carrier_service.json +0 -9
  631. data/test/fixtures/carts.json +0 -43
  632. data/test/fixtures/checkout.json +0 -160
  633. data/test/fixtures/checkouts.json +0 -162
  634. data/test/fixtures/collect.json +0 -12
  635. data/test/fixtures/collection.json +0 -17
  636. data/test/fixtures/collection_listing.json +0 -11
  637. data/test/fixtures/collection_listing_product_ids.json +0 -1
  638. data/test/fixtures/collection_listing_product_ids2.json +0 -1
  639. data/test/fixtures/collection_listings.json +0 -13
  640. data/test/fixtures/collection_products.json +0 -47
  641. data/test/fixtures/collection_publication.json +0 -11
  642. data/test/fixtures/collection_publications.json +0 -13
  643. data/test/fixtures/currencies.json +0 -25
  644. data/test/fixtures/custom_collection.json +0 -17
  645. data/test/fixtures/customer_invite.json +0 -9
  646. data/test/fixtures/customer_saved_search.json +0 -9
  647. data/test/fixtures/customer_saved_search_customers.json +0 -60
  648. data/test/fixtures/customers.json +0 -59
  649. data/test/fixtures/customers_account_activation_url.json +0 -3
  650. data/test/fixtures/customers_search.json +0 -60
  651. data/test/fixtures/discount_code.json +0 -10
  652. data/test/fixtures/discount_code_batch.json +0 -14
  653. data/test/fixtures/discount_code_batch_discount_codes.json +0 -21
  654. data/test/fixtures/discount_codes.json +0 -12
  655. data/test/fixtures/draft_order.json +0 -159
  656. data/test/fixtures/draft_order_completed.json +0 -159
  657. data/test/fixtures/draft_order_invoice.json +0 -9
  658. data/test/fixtures/draft_orders.json +0 -161
  659. data/test/fixtures/engagement.json +0 -15
  660. data/test/fixtures/events.json +0 -31
  661. data/test/fixtures/fulfillment.json +0 -49
  662. data/test/fixtures/fulfillment_event.json +0 -12
  663. data/test/fixtures/fulfillment_order.json +0 -38
  664. data/test/fixtures/fulfillment_order_locations_for_move.json +0 -18
  665. data/test/fixtures/fulfillment_orders.json +0 -78
  666. data/test/fixtures/fulfillment_request.json +0 -28
  667. data/test/fixtures/fulfillment_service.json +0 -10
  668. data/test/fixtures/fulfillments.json +0 -53
  669. data/test/fixtures/gift_card.json +0 -20
  670. data/test/fixtures/gift_card_disabled.json +0 -20
  671. data/test/fixtures/graphql/2019-10.json +0 -1083
  672. data/test/fixtures/graphql/dummy_schema.rb +0 -16
  673. data/test/fixtures/graphql/unstable.json +0 -1083
  674. data/test/fixtures/image.json +0 -10
  675. data/test/fixtures/images.json +0 -20
  676. data/test/fixtures/inventory_level.json +0 -7
  677. data/test/fixtures/inventory_levels.json +0 -24
  678. data/test/fixtures/marketing_event.json +0 -28
  679. data/test/fixtures/marketing_events.json +0 -54
  680. data/test/fixtures/metafield.json +0 -12
  681. data/test/fixtures/metafields.json +0 -34
  682. data/test/fixtures/order.json +0 -297
  683. data/test/fixtures/order_risk.json +0 -14
  684. data/test/fixtures/order_risks.json +0 -28
  685. data/test/fixtures/order_with_properties.json +0 -373
  686. data/test/fixtures/orders.json +0 -299
  687. data/test/fixtures/payment.json +0 -7
  688. data/test/fixtures/payments.json +0 -9
  689. data/test/fixtures/ping/conversation.json +0 -1
  690. data/test/fixtures/ping/failed_delivery_confirmation.json +0 -1
  691. data/test/fixtures/ping/message.json +0 -1
  692. data/test/fixtures/ping/successful_delivery_confirmation.json +0 -1
  693. data/test/fixtures/policies.json +0 -8
  694. data/test/fixtures/price_rule.json +0 -27
  695. data/test/fixtures/price_rules.json +0 -28
  696. data/test/fixtures/product.json +0 -116
  697. data/test/fixtures/product_listing.json +0 -86
  698. data/test/fixtures/product_listing_product_ids.json +0 -1
  699. data/test/fixtures/product_listing_product_ids2.json +0 -1
  700. data/test/fixtures/product_listings.json +0 -174
  701. data/test/fixtures/product_publication.json +0 -11
  702. data/test/fixtures/product_publications.json +0 -13
  703. data/test/fixtures/publications.json +0 -9
  704. data/test/fixtures/recurring_application_charge.json +0 -22
  705. data/test/fixtures/recurring_application_charge_adjustment.json +0 -5
  706. data/test/fixtures/recurring_application_charges.json +0 -106
  707. data/test/fixtures/redirect.json +0 -7
  708. data/test/fixtures/refund.json +0 -112
  709. data/test/fixtures/report.json +0 -9
  710. data/test/fixtures/reports.json +0 -11
  711. data/test/fixtures/script_tag.json +0 -10
  712. data/test/fixtures/script_tags.json +0 -18
  713. data/test/fixtures/shipping_rates.json +0 -12
  714. data/test/fixtures/shipping_zones.json +0 -315
  715. data/test/fixtures/shop.json +0 -26
  716. data/test/fixtures/smart_collection.json +0 -21
  717. data/test/fixtures/smart_collection_products.json +0 -155
  718. data/test/fixtures/storefront_access_token.json +0 -9
  719. data/test/fixtures/storefront_access_tokens.json +0 -18
  720. data/test/fixtures/tags.json +0 -1
  721. data/test/fixtures/tax_service.json +0 -9
  722. data/test/fixtures/tender_transactions.json +0 -52
  723. data/test/fixtures/transaction.json +0 -29
  724. data/test/fixtures/usage_charge.json +0 -11
  725. data/test/fixtures/usage_charges.json +0 -23
  726. data/test/fixtures/user.json +0 -21
  727. data/test/fixtures/users.json +0 -42
  728. data/test/fixtures/variant.json +0 -23
  729. data/test/fixtures/variants.json +0 -88
  730. data/test/fixtures/webhook.json +0 -10
  731. data/test/fixtures/webhooks.json +0 -18
  732. data/test/fulfillment_event_test.rb +0 -69
  733. data/test/fulfillment_order_test.rb +0 -462
  734. data/test/fulfillment_order_test_helper.rb +0 -7
  735. data/test/fulfillment_request_test.rb +0 -33
  736. data/test/fulfillment_service_test.rb +0 -17
  737. data/test/fulfillment_test.rb +0 -224
  738. data/test/fulfillment_v2_test.rb +0 -62
  739. data/test/gift_card_test.rb +0 -22
  740. data/test/graphql/http_client_test.rb +0 -26
  741. data/test/graphql_test.rb +0 -158
  742. data/test/image_test.rb +0 -39
  743. data/test/inventory_level_test.rb +0 -59
  744. data/test/lib/webmock_extensions/last_request.rb +0 -16
  745. data/test/limits_test.rb +0 -38
  746. data/test/location_test.rb +0 -14
  747. data/test/marketing_event_test.rb +0 -68
  748. data/test/message_enricher_test.rb +0 -45
  749. data/test/meta_test.rb +0 -49
  750. data/test/metafield_test.rb +0 -46
  751. data/test/order_risk_test.rb +0 -46
  752. data/test/order_test.rb +0 -125
  753. data/test/pagination_test.rb +0 -257
  754. data/test/payment_test.rb +0 -19
  755. data/test/policy_test.rb +0 -19
  756. data/test/price_rule_test.rb +0 -65
  757. data/test/product_listing_test.rb +0 -97
  758. data/test/product_publication_test.rb +0 -40
  759. data/test/product_test.rb +0 -99
  760. data/test/publication_test.rb +0 -12
  761. data/test/recurring_application_charge_test.rb +0 -142
  762. data/test/redirect_test.rb +0 -9
  763. data/test/refund_test.rb +0 -32
  764. data/test/report_test.rb +0 -35
  765. data/test/resource_feedback_test.rb +0 -42
  766. data/test/script_tag_test.rb +0 -30
  767. data/test/session_test.rb +0 -366
  768. data/test/shipping_rate_test.rb +0 -17
  769. data/test/shipping_zone_test.rb +0 -10
  770. data/test/shop_test.rb +0 -68
  771. data/test/smart_collection_test.rb +0 -35
  772. data/test/storefront_access_token_test.rb +0 -32
  773. data/test/tax_service_test.rb +0 -9
  774. data/test/tender_transaction_test.rb +0 -18
  775. data/test/test_helper.rb +0 -124
  776. data/test/transaction_test.rb +0 -17
  777. data/test/usage_charge_test.rb +0 -21
  778. data/test/user_test.rb +0 -17
  779. data/test/variant_test.rb +0 -135
  780. data/test/webhook_test.rb +0 -21
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9f98c9f7ec2a7834c9b4f69c4dfa346e23b220173a03690cabc753e9d0b4318
4
- data.tar.gz: 5245b531946faf49fc3213e7faadc5b8372ba71ccfa8e26f14d8b2630bff0d36
3
+ metadata.gz: 7fee0ac74bfc70897541951eb87b46e750e0ed650c11b77d3a1c582451c3f4c0
4
+ data.tar.gz: 2e935108619f59022b9101a838582311bb5824a268fe2c1034b629339613dce3
5
5
  SHA512:
6
- metadata.gz: a8b09cb70ebd5ff98dfe08bb4adfb6f25cfa2a2f5023b7e9d703a6e97d33dd6beaac6dfbae29780cf6cab8f9de87718c1e3c5e6cdc8fe2b85b1258a9315c1fa9
7
- data.tar.gz: f17ae5b2022d64fe91391dda645e9684b57449dd274f3de0ebbf8c8117072c67d78849646ba914c1432f60b4cfce46ed4b62432e7ecdb00651e1f59210d26c2a
6
+ metadata.gz: f5830157e403f197fedd154dbd5b69653026fc8ec9cce3d4427764b8e1e189ff303e1104b82faf124e7093f92979003b33be5061db81d825e2219fd7a70e8bef
7
+ data.tar.gz: e8fac7416a292ade97b591fa86e91034ae04a50e1d0f870b1f5289dcf40df0b1ccada6210b4255aae8c4e1d57e263bd38a8d0b990da0fa3e3383ef83a1333c60
data/.github/CODEOWNERS CHANGED
@@ -1 +1 @@
1
- * @shopify/platform-dev-tools-education
1
+ * @shopify/learn-libs-superteam
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: "🐛 Bug Report"
3
+ about: Something isn't working
4
+ labels: "Type: Bug 🐛"
5
+ ---
6
+
7
+ # Issue summary
8
+
9
+ <!--
10
+
11
+ Write a short description of the issue here. Please provide any details or logs that
12
+ can help us debug it.
13
+
14
+ Increase the logs as described in the README by setting log_level to :debug, and paste the relevant portion here.
15
+
16
+ Learn more: https://github.com/Shopify/shopify-api-ruby#setup-shopify-context
17
+
18
+ -->
19
+
20
+ - `shopify_api` version:
21
+ - Ruby version:
22
+ - Operating system:
23
+
24
+ ```
25
+ // Paste any relevant logs here
26
+ ```
27
+
28
+ ## Expected behavior
29
+
30
+ <!-- What do you think should happen? -->
31
+
32
+ ## Actual behavior
33
+
34
+ <!-- What actually happens? -->
35
+
36
+ ## Steps to reproduce the problem
37
+
38
+ 1.
39
+ 1.
40
+ 1.
@@ -0,0 +1,9 @@
1
+ ---
2
+ name: '📈 Enhancement'
3
+ about: Enhancement to our codebase that isn't a adding or changing a feature
4
+ labels: 'Type: Enhancement 📈'
5
+ ---
6
+
7
+ ## Overview/summary
8
+
9
+ <!-- Write a short description of the enhancement here ↓ -->
@@ -0,0 +1,9 @@
1
+ ---
2
+ name: "🙌 Feature Request"
3
+ about: Suggest a new feature, or changes to an existing one
4
+ labels: "Type: Feature Request :raised_hands:"
5
+ ---
6
+
7
+ ## Overview
8
+
9
+ <!-- Write a short description of the request here ↓ -->
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: A new release of the Shopify API is due soon
3
+ labels: automated
4
+ ---
5
+
6
+ This is an automated reminder for the maintainers that a new Stable release of the Shopify API is due soon, so the library needs to be updated.
7
+
8
+ A new library release should be prepared to:
9
+ * add the upcoming Stable release
10
+ * remove the oldest Stable release which will no longer be supported.
11
+
12
+ The PR should be created as a **draft** but not yet be merged.
13
+
14
+ The release schedule can be found at https://shopify.dev/concepts/about-apis/versioning
15
+
16
+ Review the changelog and consider if anything in the library needs to change:
17
+
18
+ https://shopify.dev/changelog
19
+
20
+ Test against the upcoming release by using the Release Candidate.
21
+
22
+ Another reminder issue will be created on the date of the next release.
23
+ When that happens, test again using the now Stable API version, and aim to release an update of the library within one week.
24
+
25
+ Thank you!
@@ -0,0 +1,19 @@
1
+ ---
2
+ title: A new release of the Shopify API occurred
3
+ labels: automated
4
+ ---
5
+
6
+ This is an automated reminder for the maintainers that a new Stable release of the Shopify API is scheduled for today
7
+ at 12pm Eastern Time, so a new release of the library is now due.
8
+
9
+ A draft PR should already exist for this.
10
+
11
+ Review the changelog again and consider if anything in the library needs to change:
12
+
13
+ https://shopify.dev/changelog
14
+
15
+ Test against the new release by using the Stable version just released.
16
+
17
+ Aim to release an update of the library within one week.
18
+
19
+ Thank you!
@@ -0,0 +1,20 @@
1
+ version: 2
2
+ registries:
3
+ rubygems-server-pkgs-shopify-io:
4
+ type: rubygems-server
5
+ url: https://pkgs.shopify.io
6
+ username: ${{secrets.RUBYGEMS_SERVER_PKGS_SHOPIFY_IO_USERNAME}}
7
+ password: ${{secrets.RUBYGEMS_SERVER_PKGS_SHOPIFY_IO_PASSWORD}}
8
+ github-com:
9
+ type: git
10
+ url: https://github.com
11
+ username: ${{secrets.DEPENDENCIES_GITHUB_USER}}
12
+ password: ${{secrets.DEPENDENCIES_GITHUB_TOKEN}}
13
+ updates:
14
+ - package-ecosystem: bundler
15
+ directory: "/"
16
+ schedule:
17
+ interval: weekly
18
+ open-pull-requests-limit: 100
19
+ insecure-external-code-execution: allow
20
+ registries: '*'
@@ -0,0 +1,20 @@
1
+ ## Description
2
+
3
+ Fixes #<issue-number>
4
+
5
+ Please, include a summary of what the PR is for:
6
+ - What is the problem it is solving?
7
+ - What is the context of these changes?
8
+ - What is the impact of this PR?
9
+
10
+ ## How has this been tested?
11
+
12
+ Please, describe the tests that you ran to verify your changes.
13
+
14
+ ## Checklist:
15
+
16
+ - [ ] My commit message follow the pattern described in [here](https://chris.beams.io/posts/git-commit/)
17
+ - [ ] I have performed a self-review of my own code.
18
+ - [ ] I have added tests that prove my fix is effective or that my feature works.
19
+ - [ ] I have updated the project documentation.
20
+ - [ ] I have added a changelog line.
@@ -0,0 +1,16 @@
1
+ on:
2
+ workflow_dispatch: ~
3
+ schedule:
4
+ - cron: "0 0 1 3,6,9,12 *" # At 00:00 on 1st of March, June, September, and December
5
+
6
+ name: API update reminder
7
+ jobs:
8
+ reminder:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v2
12
+ - uses: JasonEtco/create-an-issue@v2.4.0
13
+ env:
14
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15
+ with:
16
+ filename: .github/api_update_reminder.md
@@ -0,0 +1,16 @@
1
+ on:
2
+ workflow_dispatch: ~
3
+ schedule:
4
+ - cron: "0 0 1 1,4,7,10 *" # At 00:00 on 1st of January, April, July, and October
5
+
6
+ name: API update reminder on release
7
+ jobs:
8
+ reminder:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v2
12
+ - uses: JasonEtco/create-an-issue@v2.4.0
13
+ env:
14
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15
+ with:
16
+ filename: .github/api_update_reminder_on_release.md
@@ -0,0 +1,39 @@
1
+ name: CI
2
+
3
+ on:
4
+ - push
5
+ - pull_request
6
+
7
+ jobs:
8
+ build:
9
+ name: Ruby ${{ matrix.version }}
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ matrix:
13
+ version:
14
+ - 2.7
15
+ - 3.0
16
+ - 3.1
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Set up Ruby ${{ matrix.version }}
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ ruby-version: ${{ matrix.version }}
23
+ - name: Run Bundle Commands
24
+ run: |
25
+ bundle config set --with docs
26
+ bundle config set ignore_messages true
27
+ bundle
28
+ - name: Run RuboCop
29
+ run: |
30
+ bundle exec rubocop
31
+ - name: Run Typecheck
32
+ run: |
33
+ bundle exec srb tc
34
+ - name: Run tests
35
+ run: |
36
+ bundle exec rake test:library
37
+ - name: Run REST wrapper tests
38
+ run: |
39
+ bundle exec rake test:rest_wrappers
@@ -0,0 +1,22 @@
1
+ name: Contributor License Agreement (CLA)
2
+
3
+ on:
4
+ pull_request_target:
5
+ types: [opened, synchronize]
6
+ issue_comment:
7
+ types: [created]
8
+
9
+ jobs:
10
+ cla:
11
+ runs-on: ubuntu-latest
12
+ if: |
13
+ (github.event.issue.pull_request
14
+ && !github.event.issue.pull_request.merged_at
15
+ && contains(github.event.comment.body, 'signed')
16
+ )
17
+ || (github.event.pull_request && !github.event.pull_request.merged)
18
+ steps:
19
+ - uses: Shopify/shopify-cla-action@v1
20
+ with:
21
+ github-token: ${{ secrets.GITHUB_TOKEN }}
22
+ cla-token: ${{ secrets.CLA_TOKEN }}
@@ -0,0 +1,20 @@
1
+ name: Close Waiting for Response Issues
2
+ on:
3
+ schedule:
4
+ - cron: "30 1 * * *"
5
+ workflow_dispatch:
6
+ jobs:
7
+ check-need-info:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - name: close-issues
11
+ uses: actions-cool/issues-helper@v3
12
+ with:
13
+ actions: 'close-issues'
14
+ token: ${{ secrets.GITHUB_TOKEN }}
15
+ labels: 'Waiting for Response'
16
+ inactive-day: 7
17
+ body: |
18
+ We are closing this issue because we did not hear back regarding additional details we needed to resolve this issue. If the issue persists and you are able to provide the missing clarification we need, feel free to respond and reopen this issue.
19
+
20
+ We appreciate your understanding as we try to manage our number of open issues.
@@ -0,0 +1,16 @@
1
+ name: Remove Stale or Waiting Labels
2
+ on:
3
+ issue_comment:
4
+ types: [created]
5
+ workflow_dispatch:
6
+ jobs:
7
+ remove-labels-on-activity:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - uses: actions/checkout@v2
11
+ - uses: actions-ecosystem/action-remove-labels@v1
12
+ if: contains(github.event.issue.labels.*.name, 'Waiting for Response')
13
+ with:
14
+ labels: |
15
+ Waiting for Response
16
+
@@ -0,0 +1,43 @@
1
+ name: Close inactive issues / prs
2
+ on:
3
+ schedule:
4
+ - cron: "30 1 * * *"
5
+
6
+ jobs:
7
+ stale:
8
+ runs-on: ubuntu-latest
9
+ permissions:
10
+ issues: write
11
+ pull-requests: write
12
+ steps:
13
+ - uses: actions/stale@v7
14
+ with:
15
+ days-before-issue-stale: 60
16
+ days-before-issue-close: 14
17
+ days-before-pr-stale: 60
18
+ days-before-pr-close: 14
19
+ operations-per-run: 1000
20
+ stale-issue-label: "Stale"
21
+ stale-pr-label: "Stale"
22
+ stale-issue-message: >
23
+ This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
24
+ close-issue-message: |
25
+ We are closing this issue because it has been inactive for a few months.
26
+ This probably means that it is not reproducible or it has been fixed in a newer version.
27
+ If it’s an enhancement and hasn’t been taken on since it was submitted, then it seems other issues have taken priority.
28
+
29
+ If you still encounter this issue with the latest stable version, please reopen using the issue template. You can also contribute directly by submitting a pull request– see the [CONTRIBUTING.md](https://github.com/Shopify/shopify-api-ruby/blob/main/CONTRIBUTING.md) file for guidelines
30
+
31
+ Thank you!
32
+ stale-pr-message: >
33
+ This pull request is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
34
+ close-pr-message: |
35
+ We are closing this pull request because it has been inactive for a few months.
36
+ This probably means that it is not reproducible or it has been fixed in a newer version.
37
+ If it’s an enhancement and hasn’t been taken on since it was submitted, then it seems other issues have taken priority.
38
+
39
+ If you still encounter this pull request with the latest stable version, please reopen using the pull request template. You can also contribute directly by submitting a pull request– see the [CONTRIBUTING.md](https://github.com/Shopify/shopify-api-ruby/blob/main/CONTRIBUTING.md) file for guidelines
40
+
41
+ Thank you!
42
+ repo-token: ${{ github.token }}
43
+ close-issue-reason: "not_planned"
data/.rubocop.yml CHANGED
@@ -1,8 +1,59 @@
1
- inherit_from:
2
- - https://shopify.github.io/ruby-style-guide/rubocop.yml
1
+ inherit_gem:
2
+ rubocop-shopify: rubocop.yml
3
+
4
+ require:
5
+ - rubocop-sorbet
3
6
 
4
7
  AllCops:
5
- TargetRubyVersion: 2.4
8
+ TargetRubyVersion: 2.7
9
+ NewCops: enable
10
+ Exclude:
11
+ - "sorbet/**/*"
12
+ - "bin/**/*"
13
+ - "lib/shopify_api/rest/resources/**/*"
14
+ - "test/rest/**/*"
15
+
16
+ Sorbet:
17
+ Enabled: true
18
+ Sorbet/HasSigil:
19
+ Enabled: true
20
+ Exclude:
21
+ - Gemfile*
22
+ Sorbet/StrictSigil:
23
+ Enabled: true
24
+ Exclude:
25
+ - Gemfile*
26
+ - "lib/shopify_api/auth/session.rb"
27
+ - Rakefile
28
+ - "test/**/*"
29
+ Sorbet/TrueSigil:
30
+ Enabled: true
31
+ Exclude:
32
+ - Gemfile*
33
+ - Rakefile
34
+ - "test/**/*"
35
+ Sorbet/ValidSigil:
36
+ Enabled: true
37
+ Sorbet/EnforceSigilOrder:
38
+ Enabled: true
39
+ Sorbet/AllowIncompatibleOverride:
40
+ Enabled: true
41
+ Sorbet/CheckedTrueInSignature:
42
+ Enabled: true
43
+ Sorbet/KeywordArgumentOrdering:
44
+ Enabled: true
45
+ Sorbet/SignatureBuildOrder:
46
+ Enabled: true
47
+ Sorbet/BindingConstantWithoutTypeAlias:
48
+ Enabled: true
49
+ Sorbet/ConstantsFromStrings:
50
+ Enabled: true
51
+ Sorbet/ForbidIncludeConstLiteral:
52
+ Enabled: true
53
+ Sorbet/ForbidSuperclassConstLiteral:
54
+ Enabled: true
6
55
 
7
- Rails:
8
- Enabled: false
56
+ Layout/EmptyLineAfterGuardClause:
57
+ Enabled: true
58
+ Style/GlobalStdStream:
59
+ Enabled: true
@@ -0,0 +1,110 @@
1
+ # Breaking changes for older versions
2
+
3
+ The breaking changes for the previous major release are listed in the main [README](README.md).
4
+ The breaking changes for older major releases are listed below.
5
+
6
+ ### Breaking change notice for version 8.0.0
7
+
8
+ Version 7.0.0 introduced ApiVersion, and known versions were hardcoded into the gem. Manually defining API versions is no longer required for versions not listed in the gem. Version 8.0.0 removes the following:
9
+ * `ShopifyAPI::ApiVersion::Unstable`
10
+ * `ShopifyAPI::ApiVersion::Release`
11
+ * `ShopifyAPI::ApiVersion.define_version`
12
+
13
+ The following methods on `ApiVersion` have been deprecated:
14
+ - `.coerce_to_version` deprecated. use `.find_version`
15
+ - `.define_known_versions` deprecated. Use `.fetch_known_versions`
16
+ - `.clear_defined_versions` deprecated. Use. `.clear_known_versions`
17
+ - `.latest_stable_version` deprecated. Use `ShopifyAPI::Meta.admin_versions.find(&:latest_supported)` (this fetches info from Shopify servers. No authentication required.)
18
+ - `#name` deprecated. Use `#handle`
19
+ - `#stable?` deprecated. Use `#supported?`
20
+
21
+ Version 8.0.0 introduces a _version lookup mode_. By default, `ShopifyAPI::ApiVersion.version_lookup_mode` is `:define_on_unknown`. When setting the api_version on `Session` or `Base`, the `api_version` attribute takes a version handle (i.e. `'2019-07'` or `:unstable`) and sets an instance of `ShopifyAPI::ApiVersion` matching the handle. When the version_lookup_mode is set to `:define_on_unknown`, any handle will naïvely create a new `ApiVersion` if the version is not in the known versions returned by `ShopifyAPI::ApiVersion.versions`.
22
+
23
+ To ensure you're setting only known and active versions, call :
24
+
25
+ ```ruby
26
+ ShopifyAPI::ApiVersion.version_lookup_mode = :raise_on_unknown
27
+ ShopifyAPI::ApiVersion.fetch_known_versions
28
+ ```
29
+
30
+ Known and active versions are fetched from https://app.shopify.com/services/apis.json and cached. Trying to use a version outside this cached set will raise an error. To switch back to naïve lookup and create a version if one is not found, call `ShopifyAPI::ApiVersion.version_lookup_mode = :define_on_unknown`.
31
+
32
+ ### Breaking change notice for version 7.0.0
33
+
34
+ #### Changes to ShopifyAPI::Session
35
+ When creating sessions, `api_version`is now required and uses keyword arguments.
36
+
37
+ To upgrade your use of ShopifyAPI you will need to make the following changes.
38
+
39
+ ```ruby
40
+ ShopifyAPI::Session.new(domain, token, extras)
41
+ ```
42
+ is now
43
+ ```ruby
44
+ ShopifyAPI::Session.new(domain: domain, token: token, api_version: api_version, extras: extras)
45
+ ```
46
+ Note `extras` is still optional. The other arguments are required.
47
+
48
+ ```ruby
49
+ ShopifyAPI::Session.temp(domain, token, extras) do
50
+ ...
51
+ end
52
+ ```
53
+ is now
54
+ ```ruby
55
+ ShopifyAPI::Session.temp(domain: domain, token: token, api_version: api_version) do
56
+ ...
57
+ end
58
+ ```
59
+
60
+ For example, if you want to use the `2019-04` version, you will create a session like this:
61
+ ```ruby
62
+ session = ShopifyAPI::Session.new(domain: domain, token: token, api_version: '2019-04')
63
+ ```
64
+ if you want to use the `unstable` version, you will create a session like this:
65
+ ```ruby
66
+ session = ShopifyAPI::Session.new(domain: domain, token: token, api_version: :unstable)
67
+ ```
68
+
69
+ #### Changes to how to define resources
70
+
71
+ If you have defined or customized Resources, classes that extend `ShopifyAPI::Base`:
72
+ The use of `self.prefix =` has been deprecated; you should now use `self.resource =` and not include `/admin`.
73
+ For example, if you specified a prefix like this before:
74
+ ```ruby
75
+ class MyResource < ShopifyAPI::Base
76
+ self.prefix = '/admin/shop/'
77
+ end
78
+ ```
79
+ You will update this to:
80
+ ```ruby
81
+ class MyResource < ShopifyAPI::Base
82
+ self.resource_prefix = 'shop/'
83
+ end
84
+ ```
85
+
86
+ #### URL construction
87
+
88
+ If you have specified any full paths for API calls in find
89
+ ```ruby
90
+ def self.current(options={})
91
+ find(:one, options.merge(from: "/admin/shop.#{format.extension}"))
92
+ end
93
+ ```
94
+ would be changed to
95
+
96
+ ```ruby
97
+ def self.current(options = {})
98
+ find(:one, options.merge(
99
+ from: api_version.construct_api_path("shop.#{format.extension}")
100
+ ))
101
+ end
102
+ ```
103
+
104
+ #### URLs that have not changed
105
+
106
+ - OAuth URLs for `authorize`, getting the `access_token` from a code, `access_scopes`, and using a `refresh_token` have _not_ changed.
107
+ - get: `/admin/oauth/authorize`
108
+ - post: `/admin/oauth/access_token`
109
+ - get: `/admin/oauth/access_scopes`
110
+ - URLs for the merchant’s web admin have _not_ changed. For example: to send the merchant to the product page the url is still `/admin/product/<id>`