auth0 5.16.0 → 5.17.0

Sign up to get free protection for your applications and to get access to all the features.
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}}