shopify_app 12.0.0 → 17.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/CODEOWNERS +1 -0
- data/.github/ISSUE_TEMPLATE/bug-report.md +63 -0
- data/.github/ISSUE_TEMPLATE/config.yml +1 -0
- data/.github/ISSUE_TEMPLATE/feature-request.md +33 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +22 -0
- data/.github/workflows/build.yml +41 -0
- data/.github/workflows/release.yml +24 -0
- data/.github/workflows/rubocop.yml +22 -0
- data/.gitignore +0 -2
- data/.rubocop.yml +14 -6
- data/CHANGELOG.md +180 -0
- data/CONTRIBUTING.md +76 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +257 -0
- data/README.md +72 -487
- data/Rakefile +1 -0
- data/SECURITY.md +59 -0
- data/app/assets/images/storage_access.svg +1 -2
- data/app/assets/javascripts/shopify_app/itp_helper.js +6 -6
- data/app/assets/javascripts/shopify_app/storage_access.js +37 -7
- data/app/assets/javascripts/shopify_app/top_level_interaction.js +1 -1
- data/app/controllers/concerns/shopify_app/authenticated.rb +2 -1
- data/app/controllers/concerns/shopify_app/ensure_authenticated_links.rb +26 -0
- data/app/controllers/concerns/shopify_app/require_known_shop.rb +39 -0
- data/app/controllers/concerns/shopify_app/shop_access_scopes_verification.rb +32 -0
- data/app/controllers/shopify_app/authenticated_controller.rb +1 -0
- data/app/controllers/shopify_app/callback_controller.rb +113 -23
- data/app/controllers/shopify_app/extension_verification_controller.rb +2 -7
- data/app/controllers/shopify_app/sessions_controller.rb +62 -14
- data/app/controllers/shopify_app/webhooks_controller.rb +6 -5
- data/app/views/shopify_app/partials/_button_styles.html.erb +41 -36
- data/app/views/shopify_app/partials/_card_styles.html.erb +3 -3
- data/app/views/shopify_app/partials/_empty_state_styles.html.erb +28 -59
- data/app/views/shopify_app/partials/_form_styles.html.erb +56 -0
- data/app/views/shopify_app/partials/_layout_styles.html.erb +16 -1
- data/app/views/shopify_app/partials/_typography_styles.html.erb +6 -6
- data/app/views/shopify_app/sessions/enable_cookies.html.erb +3 -8
- data/app/views/shopify_app/sessions/new.html.erb +38 -110
- data/app/views/shopify_app/sessions/request_storage_access.html.erb +2 -2
- data/app/views/shopify_app/sessions/top_level_interaction.html.erb +21 -22
- data/config/locales/de.yml +11 -11
- data/config/locales/fi.yml +1 -1
- data/config/locales/nl.yml +8 -8
- data/config/locales/pt-BR.yml +1 -1
- data/config/locales/th.yml +4 -4
- data/config/locales/vi.yml +22 -0
- data/config/locales/zh-CN.yml +1 -1
- data/config/routes.rb +1 -0
- data/docs/Quickstart.md +15 -87
- data/docs/Releasing.md +18 -14
- data/docs/Troubleshooting.md +129 -4
- data/docs/Upgrading.md +126 -0
- data/docs/shopify_app/authentication.md +124 -0
- data/docs/shopify_app/engine.md +82 -0
- data/docs/shopify_app/generators.md +127 -0
- data/docs/shopify_app/handling-access-scopes-changes.md +14 -0
- data/docs/shopify_app/script-tags.md +28 -0
- data/docs/shopify_app/session-repository.md +88 -0
- data/docs/shopify_app/testing.md +38 -0
- data/docs/shopify_app/webhooks.md +72 -0
- data/karma.conf.js +1 -1
- data/lib/generators/shopify_app/add_after_authenticate_job/add_after_authenticate_job_generator.rb +5 -3
- data/lib/generators/shopify_app/add_after_authenticate_job/templates/after_authenticate_job.rb +1 -0
- data/lib/generators/shopify_app/add_marketing_activity_extension/add_marketing_activity_extension_generator.rb +2 -1
- data/lib/generators/shopify_app/add_marketing_activity_extension/templates/marketing_activities_controller.rb +4 -8
- data/lib/generators/shopify_app/add_webhook/add_webhook_generator.rb +5 -4
- data/lib/generators/shopify_app/add_webhook/templates/{webhook_job.rb → webhook_job.rb.tt} +5 -0
- data/lib/generators/shopify_app/app_proxy_controller/app_proxy_controller_generator.rb +4 -3
- data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_controller.rb +3 -3
- data/lib/generators/shopify_app/app_proxy_controller/templates/app_proxy_route.rb +10 -9
- data/lib/generators/shopify_app/authenticated_controller/authenticated_controller_generator.rb +1 -1
- data/lib/generators/shopify_app/controllers/controllers_generator.rb +2 -1
- data/lib/generators/shopify_app/home_controller/home_controller_generator.rb +31 -3
- data/lib/generators/shopify_app/home_controller/templates/home_controller.rb +2 -0
- data/lib/generators/shopify_app/home_controller/templates/index.html.erb +66 -16
- data/lib/generators/shopify_app/home_controller/templates/unauthenticated_home_controller.rb +11 -0
- data/lib/generators/shopify_app/install/install_generator.rb +46 -11
- data/lib/generators/shopify_app/install/templates/embedded_app.html.erb +1 -1
- data/lib/generators/shopify_app/install/templates/flash_messages.js +0 -2
- data/lib/generators/shopify_app/install/templates/omniauth.rb +3 -1
- data/lib/generators/shopify_app/install/templates/shopify_app.rb.tt +25 -0
- data/lib/generators/shopify_app/install/templates/shopify_provider.rb.tt +8 -0
- data/lib/generators/shopify_app/install/templates/user_agent.rb +2 -1
- data/lib/generators/shopify_app/products_controller/products_controller_generator.rb +19 -0
- data/lib/generators/shopify_app/products_controller/templates/products_controller.rb +8 -0
- data/lib/generators/shopify_app/routes/routes_generator.rb +1 -0
- data/lib/generators/shopify_app/routes/templates/routes.rb +10 -9
- data/lib/generators/shopify_app/shop_model/shop_model_generator.rb +39 -7
- data/lib/generators/shopify_app/shop_model/templates/db/migrate/add_shop_access_scopes_column.erb +5 -0
- data/lib/generators/shopify_app/shop_model/templates/shop.rb +2 -1
- data/lib/generators/shopify_app/shopify_app_generator.rb +4 -3
- data/lib/generators/shopify_app/user_model/templates/db/migrate/add_user_access_scopes_column.erb +5 -0
- data/lib/generators/shopify_app/user_model/templates/user.rb +2 -1
- data/lib/generators/shopify_app/user_model/user_model_generator.rb +39 -7
- data/lib/generators/shopify_app/views/views_generator.rb +2 -1
- data/lib/shopify_app/access_scopes/noop_strategy.rb +13 -0
- data/lib/shopify_app/access_scopes/shop_strategy.rb +24 -0
- data/lib/shopify_app/access_scopes/user_strategy.rb +41 -0
- data/lib/shopify_app/configuration.rb +46 -11
- data/lib/shopify_app/controller_concerns/app_proxy_verification.rb +3 -3
- data/lib/shopify_app/controller_concerns/csrf_protection.rb +15 -0
- data/lib/shopify_app/controller_concerns/embedded_app.rb +3 -2
- data/lib/shopify_app/controller_concerns/localization.rb +1 -0
- data/lib/shopify_app/controller_concerns/login_protection.rb +105 -30
- data/lib/shopify_app/controller_concerns/payload_verification.rb +24 -0
- data/lib/shopify_app/controller_concerns/webhook_verification.rb +3 -18
- data/lib/shopify_app/engine.rb +27 -1
- data/lib/shopify_app/jobs/scripttags_manager_job.rb +1 -1
- data/lib/shopify_app/jobs/webhooks_manager_job.rb +1 -1
- data/lib/shopify_app/managers/scripttags_manager.rb +4 -3
- data/lib/shopify_app/managers/webhooks_manager.rb +4 -3
- data/lib/shopify_app/middleware/jwt_middleware.rb +42 -0
- data/lib/shopify_app/middleware/same_site_cookie_middleware.rb +19 -45
- data/lib/shopify_app/omniauth/omniauth_configuration.rb +64 -0
- data/lib/shopify_app/session/in_memory_session_store.rb +7 -3
- data/lib/shopify_app/session/in_memory_shop_session_store.rb +16 -0
- data/lib/shopify_app/session/in_memory_user_session_store.rb +16 -0
- data/lib/shopify_app/session/jwt.rb +63 -0
- data/lib/shopify_app/session/null_user_session_store.rb +22 -0
- data/lib/shopify_app/session/session_repository.rb +36 -14
- data/lib/shopify_app/session/session_storage.rb +1 -10
- data/lib/shopify_app/session/shop_session_storage.rb +42 -0
- data/lib/shopify_app/session/shop_session_storage_with_scopes.rb +58 -0
- data/lib/shopify_app/session/user_session_storage.rb +42 -0
- data/lib/shopify_app/session/user_session_storage_with_scopes.rb +58 -0
- data/lib/shopify_app/test_helpers/all.rb +2 -0
- data/lib/shopify_app/test_helpers/webhook_verification_helper.rb +17 -0
- data/lib/shopify_app/utils.rb +18 -5
- data/lib/shopify_app/version.rb +2 -1
- data/lib/shopify_app.rb +24 -5
- data/package.json +8 -9
- data/shopify_app.gemspec +15 -10
- data/translation.yml +1 -1
- data/yarn.lock +2120 -2168
- metadata +94 -20
- data/.github/ISSUE_TEMPLATE.md +0 -14
- data/.travis.yml +0 -27
- data/docs/install-on-dev-shop.png +0 -0
- data/docs/test-your-app.png +0 -0
- data/lib/generators/shopify_app/install/templates/shopify_app.rb +0 -15
- data/lib/generators/shopify_app/install/templates/shopify_provider.rb +0 -20
- data/lib/shopify_app/session/storage_strategies/shop_storage_strategy.rb +0 -23
- data/lib/shopify_app/session/storage_strategies/user_storage_strategy.rb +0 -24
- data/package-lock.json +0 -7224
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88d5209cb72a9fd96ac20c09e3a253625e1b4bb0d3984ec3d492e14a9752cb06
|
4
|
+
data.tar.gz: 6b322c48546fcf069a949f44acf1e39649948233ed1f06076037883d2037a0e5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 03c81a3c3bb325970ffeea7dcf1d238b3558260dfd48f8a1fb30bd75328444a19d6493847c83c8314f596e66881129a5965d10c74612eb9fa0703ab0b86c0c42
|
7
|
+
data.tar.gz: 55e7b76c79faa4599c9b6b35392ebe9be03c9300401655aa92443c43f4c7ba9cd8fca2f896a153852e4ef0a9de28e764f9d001a729d93408b17f3898de0ea17a
|
data/.github/CODEOWNERS
CHANGED
@@ -0,0 +1,63 @@
|
|
1
|
+
---
|
2
|
+
name: Bug report
|
3
|
+
about: Report a technical issue with the Shopify App gem.
|
4
|
+
labels: bug
|
5
|
+
---
|
6
|
+
|
7
|
+
<!--
|
8
|
+
|
9
|
+
Do you want to ask a question? Are you looking for support? The Shopify Community forum is the best place for getting support: https://community.shopify.com
|
10
|
+
|
11
|
+
You can also join the Partners Slack Community group: https://www.shopify.com/partners/community#conversation
|
12
|
+
|
13
|
+
Authentication Issues: A great deal of the issues surrounding this repo are around authenticating (installing) the generated app with Shopify.
|
14
|
+
|
15
|
+
If you are experiencing issues with your app authenticating/installing the best way to get help fast is to create a repo with the minimal amount of code to demonstrate the issue and a clearly documented set of steps you took to arrive there. This will help us solve your problem quicker since we won't need to spend any time figuring out how to reproduce the bug. Please also include your operating system and browser.
|
16
|
+
|
17
|
+
-->
|
18
|
+
|
19
|
+
### Description
|
20
|
+
|
21
|
+
<!-- Description of the issue -->
|
22
|
+
|
23
|
+
### Steps to Reproduce
|
24
|
+
|
25
|
+
1. <!-- First Step -->
|
26
|
+
2. <!-- Second Step -->
|
27
|
+
3. <!-- and so on… -->
|
28
|
+
|
29
|
+
**Expected behavior:**
|
30
|
+
|
31
|
+
<!-- What you expect to happen -->
|
32
|
+
|
33
|
+
**Actual behavior:**
|
34
|
+
|
35
|
+
<!-- What actually happens -->
|
36
|
+
|
37
|
+
**Reproduces how often:**
|
38
|
+
|
39
|
+
<!-- What percentage of the time does it reproduce? -->
|
40
|
+
|
41
|
+
### Browsers
|
42
|
+
|
43
|
+
<!-- Please specify the browser(s) you have tested that exhibit this behaviour. -->
|
44
|
+
|
45
|
+
### Gem versions
|
46
|
+
|
47
|
+
<!-- Please specify which version(s) of the gem exhibit this behaviour. -->
|
48
|
+
|
49
|
+
### Additional Information
|
50
|
+
|
51
|
+
<!-- Any additional information, configuration or data that might be necessary to reproduce the issue. See common examples of important information below. -->
|
52
|
+
|
53
|
+
<!-- - [x] My app relies on third-party cookies -->
|
54
|
+
<!-- - [x] My app is intended to be a non-embedded app -->
|
55
|
+
<!-- - [x] My app uses session tokens -->
|
56
|
+
|
57
|
+
|
58
|
+
### Security
|
59
|
+
|
60
|
+
<!-- Please be certain to redact any private information from your logs or code snippets such as Api Keys, Api Secrets, and any authentication tokens such as shop_tokens. -->
|
61
|
+
|
62
|
+
- [ ] I have redacted any private information from my logs or code snippets.
|
63
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
blank_issues_enabled: false
|
@@ -0,0 +1,33 @@
|
|
1
|
+
---
|
2
|
+
name: Feature request
|
3
|
+
about: Request new functionality for the Shopify App gem.
|
4
|
+
labels: feature request
|
5
|
+
---
|
6
|
+
|
7
|
+
<!--
|
8
|
+
|
9
|
+
Do you want to ask a question? Are you looking for support? The Shopify Community forum is the best place for getting support: https://community.shopify.com
|
10
|
+
|
11
|
+
You can also join the Partners Slack Community group: https://www.shopify.com/partners/community#conversation
|
12
|
+
|
13
|
+
---
|
14
|
+
|
15
|
+
Please note that the team that maintains this gem has finite resources so it's unlikely that we'll work on feature requests. If we're interested in a particular feature however, we'll follow up and ask for more detail.
|
16
|
+
|
17
|
+
-->
|
18
|
+
|
19
|
+
### Summary
|
20
|
+
|
21
|
+
<!-- One paragraph explanation of the feature or suggestions. -->
|
22
|
+
|
23
|
+
### Motivation
|
24
|
+
|
25
|
+
<!-- Why is this feature or suggestion needed? What is the expected outcome? -->
|
26
|
+
|
27
|
+
### Describe alternatives you've considered
|
28
|
+
|
29
|
+
<!-- A clear and concise description of the alternative solutions you've considered. -->
|
30
|
+
|
31
|
+
### Additional context
|
32
|
+
|
33
|
+
<!-- Add any other context or screenshots about the feature request here. -->
|
@@ -0,0 +1,22 @@
|
|
1
|
+
### What this PR does
|
2
|
+
|
3
|
+
<!-- Please describe what changes this PR introduces and why they're needed. -->
|
4
|
+
|
5
|
+
### Reviewer's guide to testing
|
6
|
+
|
7
|
+
<!-- If this PR changes functionality, please list out steps to test your changes. This helps reviewers verify your changes are correct. -->
|
8
|
+
|
9
|
+
### Things to focus on
|
10
|
+
|
11
|
+
1. <!-- Focus on a particular file -->
|
12
|
+
2. <!-- Is the test case correct? -->
|
13
|
+
3. <!-- Etc. -->
|
14
|
+
|
15
|
+
### Checklist
|
16
|
+
|
17
|
+
Before submitting the PR, please consider if any of the following are needed:
|
18
|
+
|
19
|
+
- [ ] Update `CHANGELOG.md` if the changes would impact users
|
20
|
+
- [ ] Update `README.md`, if appropriate.
|
21
|
+
- [ ] Update any relevant pages in `/docs`, if necessary
|
22
|
+
- [ ] For security fixes, the [Disclosure Policy](https://github.com/Shopify/shopify_app/blob/master/SECURITY.md#disclosure-policy) must be followed.
|
@@ -0,0 +1,41 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
build:
|
11
|
+
runs-on: macos-latest # prevents intermittent Chrome Headless error unlike ubuntu
|
12
|
+
name: Ruby ${{ matrix.version }}
|
13
|
+
strategy:
|
14
|
+
matrix:
|
15
|
+
version: [2.5, 2.6, 2.7]
|
16
|
+
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v2
|
19
|
+
- name: Cache node modules
|
20
|
+
uses: actions/cache@v2
|
21
|
+
with:
|
22
|
+
# npm cache files are stored in `~/.npm` on Linux/macOS
|
23
|
+
path: ~/.npm
|
24
|
+
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
|
25
|
+
- name: Set up Ruby ${{ matrix.version }}
|
26
|
+
uses: ruby/setup-ruby@v1
|
27
|
+
with:
|
28
|
+
ruby-version: ${{ matrix.version }}
|
29
|
+
bundler-cache: true
|
30
|
+
- name: Set up Node
|
31
|
+
uses: actions/setup-node@v2-beta
|
32
|
+
with:
|
33
|
+
node-version: '12'
|
34
|
+
- name: Install Dependencies
|
35
|
+
run: |
|
36
|
+
yarn
|
37
|
+
- name: Run Tests
|
38
|
+
run: |
|
39
|
+
yarn test
|
40
|
+
bundle exec rake test
|
41
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
name: Create Release
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags:
|
6
|
+
- 'v*'
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
create-release:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
steps:
|
12
|
+
- name: Extract tag name
|
13
|
+
id: tag
|
14
|
+
run: echo "::set-output name=value::${GITHUB_REF##*/}"
|
15
|
+
- uses: actions/checkout@v2
|
16
|
+
|
17
|
+
- name: Create Release
|
18
|
+
id: create_release
|
19
|
+
uses: actions/create-release@v1
|
20
|
+
env:
|
21
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
22
|
+
with:
|
23
|
+
tag_name: ${{ steps.tag.outputs.value }}
|
24
|
+
release_name: ${{ steps.tag.outputs.value }}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
name: RuboCop
|
2
|
+
|
3
|
+
on: [push, pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
|
9
|
+
steps:
|
10
|
+
- uses: actions/checkout@v2
|
11
|
+
- name: Set up Ruby 2.7
|
12
|
+
uses: ruby/setup-ruby@v1
|
13
|
+
with:
|
14
|
+
ruby-version: 2.7
|
15
|
+
bundler-cache: true
|
16
|
+
- name: Install gems
|
17
|
+
run: |
|
18
|
+
bundle config path vendor/bundle
|
19
|
+
bundle config set without 'default development test'
|
20
|
+
bundle install --jobs 4 --retry 3
|
21
|
+
- name: Run RuboCop
|
22
|
+
run: bundle exec rubocop --parallel
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
@@ -1,10 +1,18 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
inherit_gem:
|
2
|
+
rubocop-shopify: rubocop.yml
|
3
3
|
|
4
|
-
|
4
|
+
AllCops:
|
5
|
+
TargetRubyVersion: 2.7
|
5
6
|
Exclude:
|
6
|
-
- test/**/*
|
7
|
+
- 'test/tmp/**/*'
|
8
|
+
- 'vendor/bundle/**/*'
|
7
9
|
|
8
|
-
|
10
|
+
Style/MethodCallWithArgsParentheses:
|
9
11
|
Exclude:
|
10
|
-
-
|
12
|
+
- '**/Gemfile'
|
13
|
+
- 'test/**/*'
|
14
|
+
|
15
|
+
Style/ClassAndModuleChildren:
|
16
|
+
Exclude:
|
17
|
+
- 'test/**/*'
|
18
|
+
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,182 @@
|
|
1
|
+
Unreleased
|
2
|
+
----------
|
3
|
+
|
4
|
+
17.2.0 (April 1, 2021)
|
5
|
+
----------
|
6
|
+
* Support Rails `v6.1` [#1221](https://github.com/Shopify/shopify_app/pull/1221)
|
7
|
+
* Check out [Upgrading to `v17.2.0`](/docs/Upgrading.md#upgrading-to-v1720) in the Upgrading.md guide for the changes needed to support Rails `v6.1`
|
8
|
+
|
9
|
+
17.1.1 (March 12, 2021)
|
10
|
+
----------
|
11
|
+
* Fix issues with mocking OmniAuth callback controller tests [#1210](https://github.com/Shopify/shopify_app/pull/1210)
|
12
|
+
|
13
|
+
17.1.0 (March 5, 2021)
|
14
|
+
----------
|
15
|
+
* Create OmniAuthConfiguration object to build future OmniAuth strategies [#1190](https://github.com/Shopify/shopify_app/pull/1190)
|
16
|
+
* Added access scopes to Shop and User models, added checks to handle scope changes [#1192](https://github.com/Shopify/shopify_app/pull/1192) [#1197](https://github.com/Shopify/shopify_app/pull/1197)
|
17
|
+
|
18
|
+
17.0.5 (January 27, 2021)
|
19
|
+
----------
|
20
|
+
* Fix omniauth strategy not being set correctly for apps using session tokens [#1164](https://github.com/Shopify/shopify_app/pull/1164)
|
21
|
+
|
22
|
+
17.0.4 (January 25, 2021)
|
23
|
+
----------
|
24
|
+
* Redirect user to login page if shopify domain is not found in the `EnsureAuthenticatedLinks` concern [#1158](https://github.com/Shopify/shopify_app/pull/1158)
|
25
|
+
|
26
|
+
17.0.3 (January 22, 2021)
|
27
|
+
----------
|
28
|
+
* Amend fix for #1144 to raise on missing API keys only when running the server [#1155](https://github.com/Shopify/shopify_app/pull/1155)
|
29
|
+
|
30
|
+
17.0.2 (January 20, 2021)
|
31
|
+
------
|
32
|
+
* Fix failing script tags and webhooks installs after completing OAuth [#1151](https://github.com/Shopify/shopify_app/pull/1151)
|
33
|
+
|
34
|
+
17.0.1 (January 18, 2021)
|
35
|
+
------
|
36
|
+
* Don't attempt to read Shopify environment variables when the generators are running, since they may not be present yet [#1144](https://github.com/Shopify/shopify_app/pull/1144)
|
37
|
+
|
38
|
+
17.0.0 (January 13, 2021)
|
39
|
+
------
|
40
|
+
* Rails 6.1 is not yet supported [#1134](https://github.com/Shopify/shopify_app/pull/1134)
|
41
|
+
|
42
|
+
16.1.0
|
43
|
+
------
|
44
|
+
* Use Session Token auth strategy by default for new embedded apps [#1111](https://github.com/Shopify/shopify_app/pull/1111)
|
45
|
+
* Create optional `EnsureAuthenticatedLinks` concern to authenticate deep links using Turbolinks [#1118](https://github.com/Shopify/shopify_app/pull/1118)
|
46
|
+
|
47
|
+
16.0.0
|
48
|
+
------
|
49
|
+
* Update all `html.erb` and `css` files to correspond with updated store admin design language [#1102](https://github.com/Shopify/shopify_app/pull/1102)
|
50
|
+
|
51
|
+
15.0.1
|
52
|
+
------
|
53
|
+
* Allow JWT session token `sub` field to be parsed as a string [#1103](https://github.com/Shopify/shopify_app/pull/1103)
|
54
|
+
|
55
|
+
15.0.0
|
56
|
+
------
|
57
|
+
* Change `X-Shopify-API-Request-Failure-Unauthorized` HTTP header value from boolean to string
|
58
|
+
|
59
|
+
14.4.4
|
60
|
+
------
|
61
|
+
* Patch to not log params in ShopifyApp jobs [#1086](https://github.com/Shopify/shopify_app/pull/1086)
|
62
|
+
|
63
|
+
14.4.3
|
64
|
+
------
|
65
|
+
* Fix to ensure post authenticate jobs are run after callback requests [#1079](https://github.com/Shopify/shopify_app/pull/1079)
|
66
|
+
|
67
|
+
14.4.2
|
68
|
+
------
|
69
|
+
* Add debug logs in sessions controller
|
70
|
+
|
71
|
+
14.4.1
|
72
|
+
------
|
73
|
+
* Add debug logs for investigating authentication issues
|
74
|
+
|
75
|
+
14.4.0
|
76
|
+
------
|
77
|
+
* Replace script tags for ITP screens with data attributes
|
78
|
+
|
79
|
+
14.3.0
|
80
|
+
------
|
81
|
+
* Create user session if one does not exist but was expected
|
82
|
+
|
83
|
+
14.2.0
|
84
|
+
------
|
85
|
+
* Revert "Replace redirect calls to use App Bridge redirect functionality"
|
86
|
+
|
87
|
+
14.1.0
|
88
|
+
------
|
89
|
+
* Replace redirect calls to use App Bridge redirect functionality
|
90
|
+
|
91
|
+
14.0.0
|
92
|
+
------
|
93
|
+
* Ruby 2.4 is no longer supported by this gem
|
94
|
+
* Bump gemspec ruby dependency to 2.5
|
95
|
+
* (Beta) Add `--with-session-token` flag to the Shopify App generator to create an app that is compatible with App Bridge Authentication
|
96
|
+
|
97
|
+
13.5.0
|
98
|
+
------
|
99
|
+
* Add `signal_access_token_required` helper method for apps to indicate access token has expired and that a new one is required
|
100
|
+
|
101
|
+
13.4.1
|
102
|
+
------
|
103
|
+
* Fix the version checks for the dependency on `shopify_api` to allow all of v9.X
|
104
|
+
|
105
|
+
13.4.0
|
106
|
+
------
|
107
|
+
* Skip CSRF protection if a valid signed JWT token is present as we trust Shopify to be the only source that can sign it securely. [#994](https://github.com/Shopify/shopify_app/pull/994)
|
108
|
+
|
109
|
+
13.3.0
|
110
|
+
------
|
111
|
+
* Added Payload Verification module [#992](https://github.com/Shopify/shopify_app/pull/992)
|
112
|
+
* Add concern to check for valid shop domains in the unauthenticated controller
|
113
|
+
|
114
|
+
13.2.0
|
115
|
+
------
|
116
|
+
* Get current shop domain from JWT header
|
117
|
+
* Validate that the omniauth data matches the JWT data
|
118
|
+
* Persist the token information to the session store
|
119
|
+
|
120
|
+
13.1.1
|
121
|
+
------
|
122
|
+
* Update browser_sniffer to 1.2.2
|
123
|
+
|
124
|
+
13.1.0
|
125
|
+
------
|
126
|
+
* Adds the shop URL as a parameter when redirecting after the callback
|
127
|
+
* Bump minimum Ruby version to 2.4
|
128
|
+
* Bug fixes
|
129
|
+
|
130
|
+
13.0.1
|
131
|
+
------
|
132
|
+
* Small addition to WebhookJob to return if the shop is nil #952
|
133
|
+
* Added Rubocop to the Repo #948
|
134
|
+
* Added a WebhookVerification test helper #950
|
135
|
+
* Fix for deprecation warning while loading session storage at startup
|
136
|
+
* Changes that will allow future JWT authentication
|
137
|
+
|
138
|
+
13.0.1
|
139
|
+
------
|
140
|
+
* fix for deprecation warning while loading session storage at startup
|
141
|
+
|
142
|
+
13.0.0
|
143
|
+
------
|
144
|
+
+ #887 Added concurrent user and shop session support (online/offline)
|
145
|
+
BREAKING, please see README for migration notes.
|
146
|
+
|
147
|
+
12.0.7
|
148
|
+
------
|
149
|
+
* Remove check for API_KEY in config that was throwing errors during install #919
|
150
|
+
|
151
|
+
12.0.6
|
152
|
+
------
|
153
|
+
* Adds changelog information and README updates for 8.4.0 #916
|
154
|
+
|
155
|
+
12.0.5
|
156
|
+
------
|
157
|
+
* Updating shopify_api gem to 9.0.1
|
158
|
+
|
159
|
+
12.0.4
|
160
|
+
------
|
161
|
+
* Reverts reverted PR (#895) #897
|
162
|
+
|
163
|
+
12.0.3
|
164
|
+
------
|
165
|
+
* Moves samesite middleware higher in the stack #898
|
166
|
+
* Fix issue where not redirecting user to granted storage page casues infinite loop #900
|
167
|
+
|
168
|
+
12.0.2
|
169
|
+
------
|
170
|
+
* Reverts "Fix for return_to in safari after enable_cookies/granted_storage_access" introduced in 12.0.1
|
171
|
+
|
172
|
+
12.0.1
|
173
|
+
------
|
174
|
+
* disable samesite cookie middleware in tests
|
175
|
+
* middleware compatibility for ruby 2.3
|
176
|
+
* samesite cookie fixes for javascript libraries
|
177
|
+
* change generators to add AppBridge instead of EASDK
|
178
|
+
* Fix for return_to in safari after enable_cookies/granted_storage_access
|
179
|
+
|
1
180
|
12.0.0
|
2
181
|
-----
|
3
182
|
* Updating shopify_api gem to 9.0.0
|
@@ -166,6 +345,7 @@ Added support for rotating Shopify access tokens:
|
|
166
345
|
8.4.0
|
167
346
|
----
|
168
347
|
* Fix embedded app session management in Safari 12.1
|
348
|
+
* Note that with this change we have extracted the callback action in its own controller. If you are relying on it, see the README for more details: https://github.com/Shopify/shopify_app#callback
|
169
349
|
* Shop names passed to OAuth are no longer case sensitive
|
170
350
|
|
171
351
|
8.3.2
|