auth0 5.16.0 → 5.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0978f1fb53fb4cf3047f12b60ae15d131a47e225f124bb74b26a508ba51c1548'
4
- data.tar.gz: 37dedc6fe3b8c9cf4a8fe795d0011a73c66a7c79f4485bb72c4f722772bf2644
3
+ metadata.gz: 001f09f32948583c13fb7a3bf421d34a469ba5cd4b0b8ce080a5febaf2e8369b
4
+ data.tar.gz: 671271047cdaa71aa6cbf6595d35623b9cfdc79e59aa2a5f9f6e8af59e1d6e52
5
5
  SHA512:
6
- metadata.gz: 1f5c2df075fd3dea61c55467c3818561f763d459aaeb66c9147849f46c0ed366777e59982438d9479f197f16770e4615bedb3872326775f0ba3782d312a5ad84
7
- data.tar.gz: d65412c6bc0a4a1806eb1ff08b92503ea3c60c3e44e359b4c45cde37c715109ced81bd2aa78f726784fc1c82c45a3482aacaacbdcdf3abf58ecf070b505d3de4
6
+ metadata.gz: 5d95a176bd531635ac2502eb147384da9ac0417020dc17e6e0592ba508ece19c70cd1e7037718ffcfdb4b1bcedb3dd6c2866746923328fe5777c075e542aabb0
7
+ data.tar.gz: 9e693a863adeabb6940f06832ecfd67c30fbcfb6106108f228c3e3959b1bb0892601cca649a5d3a009ec645b24750f5a467a3942be4202c9c30d353102fb4722
@@ -0,0 +1,30 @@
1
+ name: Return a boolean indicating if the version contains prerelease identifiers
2
+
3
+ #
4
+ # Returns a simple true/false boolean indicating whether the version indicates it's a prerelease or not.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ version:
11
+ required: true
12
+
13
+ outputs:
14
+ prerelease:
15
+ value: ${{ steps.get_prerelease.outputs.PRERELEASE }}
16
+
17
+ runs:
18
+ using: composite
19
+
20
+ steps:
21
+ - id: get_prerelease
22
+ shell: bash
23
+ run: |
24
+ if [[ "${VERSION}" == *"beta"* || "${VERSION}" == *"alpha"* ]]; then
25
+ echo "PRERELEASE=true" >> $GITHUB_OUTPUT
26
+ else
27
+ echo "PRERELEASE=false" >> $GITHUB_OUTPUT
28
+ fi
29
+ env:
30
+ VERSION: ${{ inputs.version }}
@@ -0,0 +1,42 @@
1
+ name: Return the release notes extracted from the PR body
2
+
3
+ #
4
+ # Returns the release notes from the content of a pull request linked to a release branch. It expects the branch name to be in the format release/vX.Y.Z, release/X.Y.Z, release/vX.Y.Z-beta.N. etc.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+ inputs:
9
+ version:
10
+ required: true
11
+ repo_name:
12
+ required: false
13
+ repo_owner:
14
+ required: true
15
+ token:
16
+ required: true
17
+
18
+ outputs:
19
+ release-notes:
20
+ value: ${{ steps.get_release_notes.outputs.RELEASE_NOTES }}
21
+
22
+ runs:
23
+ using: composite
24
+
25
+ steps:
26
+ - uses: actions/github-script@v7
27
+ id: get_release_notes
28
+ with:
29
+ result-encoding: string
30
+ script: |
31
+ const { data: pulls } = await github.rest.pulls.list({
32
+ owner: process.env.REPO_OWNER,
33
+ repo: process.env.REPO_NAME,
34
+ state: 'all',
35
+ head: `${process.env.REPO_OWNER}:release/${process.env.VERSION}`,
36
+ });
37
+ core.setOutput('RELEASE_NOTES', pulls[0].body);
38
+ env:
39
+ GITHUB_TOKEN: ${{ inputs.token }}
40
+ REPO_OWNER: ${{ inputs.repo_owner }}
41
+ REPO_NAME: ${{ inputs.repo_name }}
42
+ VERSION: ${{ inputs.version }}
@@ -0,0 +1,21 @@
1
+ name: Return the version extracted from the branch name
2
+
3
+ #
4
+ # Returns the version from the .version file.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ outputs:
10
+ version:
11
+ value: ${{ steps.get_version.outputs.VERSION }}
12
+
13
+ runs:
14
+ using: composite
15
+
16
+ steps:
17
+ - id: get_version
18
+ shell: bash
19
+ run: |
20
+ VERSION=$(head -1 .version)
21
+ echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
@@ -0,0 +1,47 @@
1
+ name: Create a GitHub release
2
+
3
+ #
4
+ # Creates a GitHub release with the given version.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ token:
11
+ required: true
12
+ files:
13
+ required: false
14
+ name:
15
+ required: true
16
+ body:
17
+ required: true
18
+ tag:
19
+ required: true
20
+ commit:
21
+ required: true
22
+ draft:
23
+ default: false
24
+ required: false
25
+ prerelease:
26
+ default: false
27
+ required: false
28
+ fail_on_unmatched_files:
29
+ default: true
30
+ required: false
31
+
32
+ runs:
33
+ using: composite
34
+
35
+ steps:
36
+ - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844
37
+ with:
38
+ body: ${{ inputs.body }}
39
+ name: ${{ inputs.name }}
40
+ tag_name: ${{ inputs.tag }}
41
+ target_commitish: ${{ inputs.commit }}
42
+ draft: ${{ inputs.draft }}
43
+ prerelease: ${{ inputs.prerelease }}
44
+ fail_on_unmatched_files: ${{ inputs.fail_on_unmatched_files }}
45
+ files: ${{ inputs.files }}
46
+ env:
47
+ GITHUB_TOKEN: ${{ inputs.token }}
@@ -0,0 +1,30 @@
1
+ name: Publishes to RubyGems
2
+
3
+ #
4
+ # Publishes to RubyGems
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ rubygems-token:
11
+ required: true
12
+ ruby-version:
13
+ required: true
14
+
15
+ runs:
16
+ using: composite
17
+
18
+ steps:
19
+ - name: Configure Ruby
20
+ uses: ./.github/actions/setup
21
+ with:
22
+ ruby: ${{ inputs.ruby-version }}
23
+
24
+ - name: Publish to RubyGems
25
+ shell: bash
26
+ run: |
27
+ gem build *.gemspec
28
+ gem push *.gem
29
+ env:
30
+ GEM_HOST_API_KEY: ${{ inputs.rubygems-token }}
@@ -0,0 +1,36 @@
1
+ name: Return a boolean indicating if a tag already exists for the repository
2
+
3
+ #
4
+ # Returns a simple true/false boolean indicating whether the tag exists or not.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ token:
11
+ required: true
12
+ tag:
13
+ required: true
14
+
15
+ outputs:
16
+ exists:
17
+ description: 'Whether the tag exists or not'
18
+ value: ${{ steps.tag-exists.outputs.EXISTS }}
19
+
20
+ runs:
21
+ using: composite
22
+
23
+ steps:
24
+ - id: tag-exists
25
+ shell: bash
26
+ run: |
27
+ GET_API_URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/git/ref/tags/${TAG_NAME}"
28
+ http_status_code=$(curl -LI $GET_API_URL -o /dev/null -w '%{http_code}\n' -s -H "Authorization: token ${GITHUB_TOKEN}")
29
+ if [ "$http_status_code" -ne "404" ] ; then
30
+ echo "EXISTS=true" >> $GITHUB_OUTPUT
31
+ else
32
+ echo "EXISTS=false" >> $GITHUB_OUTPUT
33
+ fi
34
+ env:
35
+ TAG_NAME: ${{ inputs.tag }}
36
+ GITHUB_TOKEN: ${{ inputs.token }}
@@ -39,15 +39,15 @@ jobs:
39
39
  uses: actions/checkout@v4
40
40
 
41
41
  - name: Initialize CodeQL
42
- uses: github/codeql-action/init@v2
42
+ uses: github/codeql-action/init@v3
43
43
  with:
44
44
  languages: ${{ matrix.language }}
45
45
  queries: +security-and-quality
46
46
 
47
47
  - name: Autobuild
48
- uses: github/codeql-action/autobuild@v2
48
+ uses: github/codeql-action/autobuild@v3
49
49
 
50
50
  - name: Perform CodeQL Analysis
51
- uses: github/codeql-action/analyze@v2
51
+ uses: github/codeql-action/analyze@v3
52
52
  with:
53
53
  category: "/language:${{ matrix.language }}"
@@ -1,7 +1,3 @@
1
1
  {
2
- "include": [
3
- { "ruby": "3.0" },
4
- { "ruby": "3.1" },
5
- { "ruby": "3.2" }
6
- ]
2
+ "include": [{ "ruby": "3.1" }, { "ruby": "3.2" }, { "ruby": "3.3" }]
7
3
  }
@@ -0,0 +1,22 @@
1
+ name: Create Release
2
+
3
+ on:
4
+ pull_request:
5
+ types:
6
+ - closed
7
+ workflow_dispatch:
8
+
9
+ permissions:
10
+ contents: write
11
+
12
+ ### TODO: Replace instances of './.github/workflow/' w/ `auth0/dx-sdk-actions/` and append `@latest` after the common `dx-sdk-actions` repo is made public.
13
+ ### TODO: Also remove `get-prerelease`, `get-version`, `rubygems-publish`, `release-create`, `tag-create` and `tag-exists` actions from this repo's .github/actions folder and `ruby-release` from `./github/workflows` once the repo is public.
14
+
15
+ jobs:
16
+ release:
17
+ uses: ./.github/workflows/ruby-release.yml
18
+ with:
19
+ ruby-version: 3.2
20
+ secrets:
21
+ github-token: ${{ secrets.GITHUB_TOKEN }}
22
+ rubygems-token: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
@@ -0,0 +1,72 @@
1
+ name: Create Release
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ ruby-version:
7
+ required: true
8
+ type: string
9
+ secrets:
10
+ github-token:
11
+ required: true
12
+ rubygems-token:
13
+ required: true
14
+
15
+ jobs:
16
+ release:
17
+ if: github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
18
+ runs-on: ubuntu-latest
19
+ environment: release
20
+
21
+ steps:
22
+ # Checkout the code
23
+ - uses: actions/checkout@v4
24
+ with:
25
+ fetch-depth: 0
26
+
27
+ # Get the version from the branch name
28
+ - id: get_version
29
+ uses: ./.github/actions/get-version
30
+
31
+ # Get the prerelease flag from the branch name
32
+ - id: get_prerelease
33
+ uses: ./.github/actions/get-prerelease
34
+ with:
35
+ version: ${{ steps.get_version.outputs.version }}
36
+
37
+ # Get the release notes
38
+ # This will expose the release notes as env.RELEASE_NOTES
39
+ - id: get_release_notes
40
+ uses: ./.github/actions/get-release-notes
41
+ with:
42
+ token: ${{ secrets.github-token }}
43
+ version: ${{ steps.get_version.outputs.version }}
44
+ repo_owner: ${{ github.repository_owner }}
45
+ repo_name: ${{ github.event.repository.name }}
46
+
47
+ # Check if the tag already exists
48
+ - id: tag_exists
49
+ uses: ./.github/actions/tag-exists
50
+ with:
51
+ tag: ${{ steps.get_version.outputs.version }}
52
+ token: ${{ secrets.github-token }}
53
+
54
+ # If the tag already exists, exit with an error
55
+ - if: steps.tag_exists.outputs.exists == 'true'
56
+ run: exit 1
57
+
58
+ # Publish the release to our package manager
59
+ - uses: ./.github/actions/rubygems-publish
60
+ with:
61
+ ruby-version: ${{ inputs.ruby-version }}
62
+ rubygems-token: ${{ secrets.rubygems-token }}
63
+
64
+ # Create a release for the tag
65
+ - uses: ./.github/actions/release-create
66
+ with:
67
+ token: ${{ secrets.github-token }}
68
+ name: ${{ steps.get_version.outputs.version }}
69
+ body: ${{ steps.get_release_notes.outputs.release-notes }}
70
+ tag: ${{ steps.get_version.outputs.version }}
71
+ commit: ${{ github.sha }}
72
+ prerelease: ${{ steps.get_prerelease.outputs.prerelease }}
@@ -65,5 +65,5 @@ jobs:
65
65
  run: bundle exec rake test
66
66
 
67
67
  - name: Upload coverage
68
- if: matrix.ruby == '3.2'
69
- uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@3.1.4
68
+ if: matrix.ruby == '3.2' || matrix.ruby == '3.3'
69
+ uses: codecov/codecov-action@4fe8c5f003fae66aa5ebb77cfd3e7bfbbda0b6b0 # pin@3.1.5
data/.shiprc CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "files": {
3
- "lib/auth0/version.rb": []
3
+ "lib/auth0/version.rb": [],
4
+ ".version": []
4
5
  },
5
6
  "prebump": "bundle install && bundle exec rake test",
6
7
  "postbump": "bundle update"
data/.version ADDED
@@ -0,0 +1 @@
1
+ v5.17.0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Change Log
2
2
 
3
+ ## [v5.17.0](https://github.com/auth0/ruby-auth0/tree/v5.17.0) (2024-05-24)
4
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.16.0...v5.17.0)
5
+
6
+ **Added**
7
+ - Add user session management API calls [\#588](https://github.com/auth0/ruby-auth0/pull/588) ([wjohnstondrip](https://github.com/wjohnstondrip))
8
+
3
9
  ## [v5.16.0](https://github.com/auth0/ruby-auth0/tree/v5.16.0) (2023-11-13)
4
10
  [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.15.0...v5.16.0)
5
11
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- auth0 (5.16.0)
4
+ auth0 (5.17.0)
5
5
  addressable (~> 2.8)
6
6
  jwt (~> 2.7)
7
7
  rest-client (~> 2.1)
@@ -11,9 +11,9 @@ PATH
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- actionpack (7.1.2)
15
- actionview (= 7.1.2)
16
- activesupport (= 7.1.2)
14
+ actionpack (7.1.3.3)
15
+ actionview (= 7.1.3.3)
16
+ activesupport (= 7.1.3.3)
17
17
  nokogiri (>= 1.8.5)
18
18
  racc
19
19
  rack (>= 2.2.4)
@@ -21,13 +21,13 @@ GEM
21
21
  rack-test (>= 0.6.3)
22
22
  rails-dom-testing (~> 2.2)
23
23
  rails-html-sanitizer (~> 1.6)
24
- actionview (7.1.2)
25
- activesupport (= 7.1.2)
24
+ actionview (7.1.3.3)
25
+ activesupport (= 7.1.3.3)
26
26
  builder (~> 3.1)
27
27
  erubi (~> 1.11)
28
28
  rails-dom-testing (~> 2.2)
29
29
  rails-html-sanitizer (~> 1.6)
30
- activesupport (7.1.2)
30
+ activesupport (7.1.3.3)
31
31
  base64
32
32
  bigdecimal
33
33
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -37,14 +37,14 @@ GEM
37
37
  minitest (>= 5.1)
38
38
  mutex_m
39
39
  tzinfo (~> 2.0)
40
- addressable (2.8.5)
40
+ addressable (2.8.6)
41
41
  public_suffix (>= 2.0.2, < 6.0)
42
42
  ast (2.4.2)
43
43
  base64 (0.2.0)
44
- bigdecimal (3.1.4)
44
+ bigdecimal (3.1.8)
45
45
  builder (3.2.4)
46
46
  coderay (1.1.3)
47
- concurrent-ruby (1.2.2)
47
+ concurrent-ruby (1.2.3)
48
48
  connection_pool (2.4.1)
49
49
  coveralls (0.7.1)
50
50
  multi_json (~> 1.3)
@@ -52,19 +52,18 @@ GEM
52
52
  simplecov (>= 0.7)
53
53
  term-ansicolor
54
54
  thor
55
- crack (0.4.5)
55
+ crack (1.0.0)
56
+ bigdecimal
56
57
  rexml
57
58
  crass (1.0.6)
58
- diff-lcs (1.5.0)
59
+ diff-lcs (1.5.1)
59
60
  docile (1.4.0)
60
- domain_name (0.5.20190701)
61
- unf (>= 0.0.5, < 1.0.0)
61
+ domain_name (0.6.20240107)
62
62
  dotenv (2.8.1)
63
63
  dotenv-rails (2.8.1)
64
64
  dotenv (= 2.8.1)
65
65
  railties (>= 3.2)
66
- drb (2.2.0)
67
- ruby2_keywords
66
+ drb (2.2.1)
68
67
  erubi (1.12.0)
69
68
  faker (2.23.0)
70
69
  i18n (>= 1.8.11, < 2)
@@ -87,48 +86,49 @@ GEM
87
86
  guard (~> 2.1)
88
87
  guard-compat (~> 1.1)
89
88
  rspec (>= 2.99.0, < 4.0)
90
- hashdiff (1.0.1)
89
+ hashdiff (1.1.0)
91
90
  http-accept (1.7.0)
92
91
  http-cookie (1.0.5)
93
92
  domain_name (~> 0.5)
94
- i18n (1.14.1)
93
+ i18n (1.14.5)
95
94
  concurrent-ruby (~> 1.0)
96
- io-console (0.6.0)
97
- irb (1.9.0)
98
- rdoc
99
- reline (>= 0.3.8)
100
- json (2.6.3)
101
- jwt (2.7.1)
95
+ io-console (0.7.2)
96
+ irb (1.13.1)
97
+ rdoc (>= 4.0.0)
98
+ reline (>= 0.4.2)
99
+ json (2.7.2)
100
+ jwt (2.8.1)
101
+ base64
102
102
  language_server-protocol (3.17.0.3)
103
- listen (3.8.0)
103
+ listen (3.9.0)
104
104
  rb-fsevent (~> 0.10, >= 0.10.3)
105
105
  rb-inotify (~> 0.9, >= 0.9.10)
106
- loofah (2.21.4)
106
+ loofah (2.22.0)
107
107
  crass (~> 1.0.2)
108
108
  nokogiri (>= 1.12.0)
109
- lumberjack (1.2.9)
110
- method_source (1.0.0)
111
- mime-types (3.5.1)
109
+ lumberjack (1.2.10)
110
+ method_source (1.1.0)
111
+ mime-types (3.5.2)
112
112
  mime-types-data (~> 3.2015)
113
- mime-types-data (3.2023.1003)
114
- minitest (5.20.0)
113
+ mime-types-data (3.2024.0507)
114
+ minitest (5.23.1)
115
115
  multi_json (1.15.0)
116
116
  mutex_m (0.2.0)
117
117
  nenv (0.3.0)
118
118
  netrc (0.11.0)
119
- nokogiri (1.15.4-aarch64-linux)
119
+ nokogiri (1.16.5-aarch64-linux)
120
120
  racc (~> 1.4)
121
- nokogiri (1.15.4-arm64-darwin)
121
+ nokogiri (1.16.5-arm64-darwin)
122
122
  racc (~> 1.4)
123
- nokogiri (1.15.4-x86_64-darwin)
123
+ nokogiri (1.16.5-x86_64-darwin)
124
124
  racc (~> 1.4)
125
- nokogiri (1.15.4-x86_64-linux)
125
+ nokogiri (1.16.5-x86_64-linux)
126
126
  racc (~> 1.4)
127
127
  notiffany (0.1.3)
128
128
  nenv (~> 0.1)
129
129
  shellany (~> 0.0)
130
- parallel (1.23.0)
131
- parser (3.2.2.4)
130
+ parallel (1.24.0)
131
+ parser (3.3.1.0)
132
132
  ast (~> 2.4.1)
133
133
  racc
134
134
  pp (0.5.0)
@@ -137,11 +137,11 @@ GEM
137
137
  pry (0.14.2)
138
138
  coderay (~> 1.1)
139
139
  method_source (~> 1.0)
140
- psych (5.1.1.1)
140
+ psych (5.1.2)
141
141
  stringio
142
- public_suffix (5.0.3)
143
- racc (1.7.3)
144
- rack (3.0.8)
142
+ public_suffix (5.0.5)
143
+ racc (1.8.0)
144
+ rack (3.0.11)
145
145
  rack-session (2.0.0)
146
146
  rack (>= 3.0.0)
147
147
  rack-test (2.1.0)
@@ -156,23 +156,23 @@ GEM
156
156
  rails-html-sanitizer (1.6.0)
157
157
  loofah (~> 2.21)
158
158
  nokogiri (~> 1.14)
159
- railties (7.1.2)
160
- actionpack (= 7.1.2)
161
- activesupport (= 7.1.2)
159
+ railties (7.1.3.3)
160
+ actionpack (= 7.1.3.3)
161
+ activesupport (= 7.1.3.3)
162
162
  irb
163
163
  rackup (>= 1.0.0)
164
164
  rake (>= 12.2)
165
165
  thor (~> 1.0, >= 1.2.2)
166
166
  zeitwerk (~> 2.6)
167
167
  rainbow (3.1.1)
168
- rake (13.1.0)
168
+ rake (13.2.1)
169
169
  rb-fsevent (0.11.2)
170
- rb-inotify (0.10.1)
170
+ rb-inotify (0.11.1)
171
171
  ffi (~> 1.0)
172
- rdoc (6.6.0)
172
+ rdoc (6.7.0)
173
173
  psych (>= 4.0.0)
174
- regexp_parser (2.8.2)
175
- reline (0.4.0)
174
+ regexp_parser (2.9.2)
175
+ reline (0.5.7)
176
176
  io-console (~> 0.5)
177
177
  rest-client (2.1.0)
178
178
  http-accept (>= 1.7.0, < 2.0)
@@ -180,39 +180,40 @@ GEM
180
180
  mime-types (>= 1.16, < 4.0)
181
181
  netrc (~> 0.8)
182
182
  retryable (3.0.5)
183
- rexml (3.2.6)
184
- rspec (3.12.0)
185
- rspec-core (~> 3.12.0)
186
- rspec-expectations (~> 3.12.0)
187
- rspec-mocks (~> 3.12.0)
188
- rspec-core (3.12.2)
189
- rspec-support (~> 3.12.0)
190
- rspec-expectations (3.12.3)
183
+ rexml (3.2.8)
184
+ strscan (>= 3.0.9)
185
+ rspec (3.13.0)
186
+ rspec-core (~> 3.13.0)
187
+ rspec-expectations (~> 3.13.0)
188
+ rspec-mocks (~> 3.13.0)
189
+ rspec-core (3.13.0)
190
+ rspec-support (~> 3.13.0)
191
+ rspec-expectations (3.13.0)
191
192
  diff-lcs (>= 1.2.0, < 2.0)
192
- rspec-support (~> 3.12.0)
193
- rspec-mocks (3.12.6)
193
+ rspec-support (~> 3.13.0)
194
+ rspec-mocks (3.13.1)
194
195
  diff-lcs (>= 1.2.0, < 2.0)
195
- rspec-support (~> 3.12.0)
196
- rspec-support (3.12.1)
197
- rubocop (1.57.2)
196
+ rspec-support (~> 3.13.0)
197
+ rspec-support (3.13.1)
198
+ rubocop (1.64.0)
198
199
  json (~> 2.3)
199
200
  language_server-protocol (>= 3.17.0)
200
201
  parallel (~> 1.10)
201
- parser (>= 3.2.2.4)
202
+ parser (>= 3.3.0.2)
202
203
  rainbow (>= 2.2.2, < 4.0)
203
204
  regexp_parser (>= 1.8, < 3.0)
204
205
  rexml (>= 3.2.5, < 4.0)
205
- rubocop-ast (>= 1.28.1, < 2.0)
206
+ rubocop-ast (>= 1.31.1, < 2.0)
206
207
  ruby-progressbar (~> 1.7)
207
208
  unicode-display_width (>= 2.4.0, < 3.0)
208
- rubocop-ast (1.30.0)
209
- parser (>= 3.2.1.0)
210
- rubocop-rails (2.22.1)
209
+ rubocop-ast (1.31.3)
210
+ parser (>= 3.3.1.0)
211
+ rubocop-rails (2.25.0)
211
212
  activesupport (>= 4.2.0)
212
213
  rack (>= 1.1)
213
214
  rubocop (>= 1.33.0, < 2.0)
215
+ rubocop-ast (>= 1.31.1, < 2.0)
214
216
  ruby-progressbar (1.13.0)
215
- ruby2_keywords (0.0.5)
216
217
  shellany (0.0.1)
217
218
  simplecov (0.22.0)
218
219
  docile (~> 1.1)
@@ -223,29 +224,28 @@ GEM
223
224
  simplecov (~> 0.19)
224
225
  simplecov-html (0.12.3)
225
226
  simplecov_json_formatter (0.1.4)
226
- stringio (3.0.9)
227
+ stringio (3.1.0)
228
+ strscan (3.1.0)
227
229
  sync (0.5.0)
228
- term-ansicolor (1.7.1)
230
+ term-ansicolor (1.8.0)
229
231
  tins (~> 1.0)
230
232
  terminal-notifier-guard (1.7.0)
231
- thor (1.3.0)
233
+ thor (1.3.1)
232
234
  timecop (0.9.8)
233
- tins (1.32.1)
235
+ tins (1.33.0)
236
+ bigdecimal
234
237
  sync
235
238
  tzinfo (2.0.6)
236
239
  concurrent-ruby (~> 1.0)
237
- unf (0.1.4)
238
- unf_ext
239
- unf_ext (0.0.9)
240
240
  unicode-display_width (2.5.0)
241
241
  vcr (6.2.0)
242
- webmock (3.19.1)
242
+ webmock (3.23.1)
243
243
  addressable (>= 2.8.0)
244
244
  crack (>= 0.3.2)
245
245
  hashdiff (>= 0.4.0, < 2.0.0)
246
246
  webrick (1.8.1)
247
247
  zache (0.13.1)
248
- zeitwerk (2.6.12)
248
+ zeitwerk (2.6.14)
249
249
 
250
250
  PLATFORMS
251
251
  aarch64-linux
@@ -5,8 +5,8 @@ GEM
5
5
  jwt (2.5.0)
6
6
  mustermann (2.0.2)
7
7
  ruby2_keywords (~> 0.0.1)
8
- nio4r (2.5.9)
9
- puma (5.6.7)
8
+ nio4r (2.7.0)
9
+ puma (5.6.8)
10
10
  nio4r (~> 2.0)
11
11
  rack (2.2.6.4)
12
12
  rack-protection (2.2.3)
@@ -445,6 +445,26 @@ module Auth0
445
445
  delete "#{users_path}/#{user_id}/authentication-methods/#{authentication_method_id}"
446
446
  end
447
447
 
448
+ # Delete all sessions for a user.
449
+ #
450
+ # @param user_id [string] The user ID
451
+ # @see https://auth0.com/docs/api/management/v2/users/delete-sessions-for-user
452
+ def delete_user_sessions(user_id)
453
+ raise Auth0::MissingUserId, 'Must supply a valid user_id' if user_id.to_s.empty?
454
+
455
+ delete "#{users_path}/#{user_id}/sessions"
456
+ end
457
+
458
+ # Retrieve details for a user's sessions.
459
+ #
460
+ # @param user_id [string] The user ID
461
+ # @see https://auth0.com/docs/api/management/v2/users/get-sessions-for-user
462
+ def user_sessions(user_id)
463
+ raise Auth0::MissingUserId, 'Must supply a valid user_id' if user_id.to_s.empty?
464
+
465
+ get "#{users_path}/#{user_id}/sessions"
466
+ end
467
+
448
468
  private
449
469
 
450
470
  # Users API path
data/lib/auth0/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  # current version of gem
2
2
  module Auth0
3
- VERSION = '5.16.0'.freeze
3
+ VERSION = '5.17.0'.freeze
4
4
  end
@@ -801,4 +801,49 @@ describe Auth0::Api::V2::Users do
801
801
  end.to_not raise_error
802
802
  end
803
803
  end
804
+
805
+ context '.delete_user_sessions' do
806
+ it 'is expected to respond to delete_user_sessions' do
807
+ expect(@instance).to respond_to(:delete_user_sessions)
808
+ end
809
+
810
+ it 'is expected to raise an exception for a missing user ID' do
811
+ expect { @instance.delete_user_sessions(nil) }.to raise_exception(Auth0::MissingUserId)
812
+ end
813
+
814
+ it 'is expected to call the endpoint' do
815
+ expect(@instance).to receive(:delete).with(
816
+ '/api/v2/users/USER_ID/sessions'
817
+ )
818
+
819
+ expect do
820
+ @instance.delete_user_sessions 'USER_ID'
821
+ end.to_not raise_error
822
+ end
823
+ end
824
+
825
+ context '.user_sessions' do
826
+ it 'is expected to respond to user_sessions' do
827
+ expect(@instance).to respond_to :user_authentication_method
828
+ end
829
+
830
+ it 'is expected to respond to user_sessions' do
831
+ expect(@instance).to respond_to :user_sessions
832
+ end
833
+
834
+ it 'is expected to raise an exception for a missing user ID' do
835
+ expect { @instance.user_sessions(nil) }.to raise_exception(Auth0::MissingUserId)
836
+ end
837
+
838
+ it 'is expected to GET a user authentication method' do
839
+ expect(@instance).to receive(:get).with(
840
+ '/api/v2/users/USER_ID/sessions'
841
+ )
842
+
843
+ expect do
844
+ @instance.user_sessions('USER_ID')
845
+ end.not_to raise_error
846
+
847
+ end
848
+ end
804
849
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auth0
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.16.0
4
+ version: 5.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Auth0
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2023-11-13 00:00:00.000000000 Z
14
+ date: 2024-05-28 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rest-client
@@ -211,12 +211,19 @@ files:
211
211
  - ".github/ISSUE_TEMPLATE/Feature Request.yml"
212
212
  - ".github/ISSUE_TEMPLATE/config.yml"
213
213
  - ".github/PULL_REQUEST_TEMPLATE.md"
214
+ - ".github/actions/get-prerelease/action.yml"
215
+ - ".github/actions/get-release-notes/action.yml"
216
+ - ".github/actions/get-version/action.yml"
217
+ - ".github/actions/release-create/action.yml"
218
+ - ".github/actions/rubygems-publish/action.yml"
214
219
  - ".github/actions/setup/action.yml"
220
+ - ".github/actions/tag-exists/action.yml"
215
221
  - ".github/dependabot.yml"
216
222
  - ".github/stale.yml"
217
223
  - ".github/workflows/codeql.yml"
218
224
  - ".github/workflows/matrix.json"
219
- - ".github/workflows/publish.yml"
225
+ - ".github/workflows/release.yml"
226
+ - ".github/workflows/ruby-release.yml"
220
227
  - ".github/workflows/semgrep.yml"
221
228
  - ".github/workflows/snyk.yml"
222
229
  - ".github/workflows/test.yml"
@@ -227,6 +234,7 @@ files:
227
234
  - ".semgrepignore"
228
235
  - ".shiprc"
229
236
  - ".snyk"
237
+ - ".version"
230
238
  - CHANGELOG.md
231
239
  - CODE_OF_CONDUCT.md
232
240
  - DEPLOYMENT.md
@@ -592,7 +600,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
592
600
  - !ruby/object:Gem::Version
593
601
  version: '0'
594
602
  requirements: []
595
- rubygems_version: 3.4.10
603
+ rubygems_version: 3.4.19
596
604
  signing_key:
597
605
  specification_version: 4
598
606
  summary: Auth0 API Client
@@ -1,37 +0,0 @@
1
- name: Publish Release
2
-
3
- on:
4
- workflow_dispatch:
5
- inputs:
6
- branch:
7
- description: The branch to release from.
8
- required: true
9
- default: master
10
-
11
- permissions:
12
- contents: read
13
-
14
- jobs:
15
- publish:
16
- name: Publish to RubyGems
17
- runs-on: ubuntu-latest
18
- environment: release
19
-
20
- steps:
21
- - name: Checkout code
22
- uses: actions/checkout@v4
23
- with:
24
- fetch-depth: 0
25
- ref: ${{ github.event.inputs.branch }}
26
-
27
- - name: Configure Ruby
28
- uses: ./.github/actions/setup
29
- with:
30
- ruby: 3.2
31
-
32
- - name: Publish to RubyGems
33
- run: |
34
- gem build *.gemspec
35
- gem push *.gem
36
- env:
37
- GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_AUTH_TOKEN}}