auth0 6.0.0.beta.5 → 6.0.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 +4 -4
- data/.version +1 -1
- data/CHANGELOG.md +51 -0
- data/README.md +4 -1
- data/custom.gemspec.rb +1 -1
- data/examples/ruby-api/Gemfile.lock +3 -3
- data/lib/auth0/mixins/token_management.rb +15 -11
- data/lib/auth0/version.rb +1 -1
- data/v6_MIGRATION_GUIDE.md +1 -1
- metadata +10 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: df791871e5e429a838ffc5bd466babec6f9c998b8890eabdf82896a8b206907d
|
|
4
|
+
data.tar.gz: 34922d0bb83c686b5df110b27b0ceebfaf05c2ffa6bcd5ab82fa17cb1d9c7aca
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 74257b18bceea1194961364c4a094e08e131b0b848054dcaf1d341208a123f8aaca9f087898094713da48461567c7dbe80567cb6621fd230b20908509b2fcbe3
|
|
7
|
+
data.tar.gz: ad85519634ab16fcb8e3757689cf454a003b9a6c1c6319cdeabc21e4f46de77435714b0fe67499cd328da2e2504f04b7e5326991d5ac8bd711fbb7b101b8295b
|
data/.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
v6.0.0
|
|
1
|
+
v6.0.0
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## [v6.0.0](https://github.com/auth0/ruby-auth0/tree/v6.0.0) (2026-08-13)
|
|
4
|
+
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.20.0...v6.0.0)
|
|
5
|
+
|
|
6
|
+
Note: As this is a major release it is recommended to understand the **Breaking Changes** section before upgrading. The [v6 Migration Guide](v6_MIGRATION_GUIDE.md) contains detailed upgrade instructions.
|
|
7
|
+
|
|
8
|
+
v6.0.0 is the first stable release of the v6 line. The Management API client is now generated from Auth0's OpenAPI specification via [Fern](https://buildwithfern.com/), with strongly-typed requests and responses, built-in pagination, and automatic token management through the unified `Auth0::Client`. The Authentication API is ported from v5 and maintains full feature parity.
|
|
9
|
+
|
|
10
|
+
**Breaking Changes**
|
|
11
|
+
- Management API client rewritten using Fern code generation
|
|
12
|
+
- `Auth0Client` replaced by `Auth0::Client` (unified client for Authentication + Management APIs; `Auth0Client` remains as a backward-compatible alias)
|
|
13
|
+
- Management API methods accessed via namespaced sub-clients (`client.users.list` instead of `client.users`)
|
|
14
|
+
- Method names follow a consistent pattern (`list`, `create`, `get`, `update`, `delete`), and sub-resource operations moved to dedicated sub-clients
|
|
15
|
+
- All Management API methods use keyword arguments instead of positional parameters
|
|
16
|
+
- API methods return strongly-typed response objects instead of raw hashes
|
|
17
|
+
- List methods return paginated iterators instead of arrays
|
|
18
|
+
- Non-2xx responses raise typed exceptions (`Auth0::Errors::NotFoundError`, etc.) instead of returning error hashes
|
|
19
|
+
- The `api_version` parameter has been removed (v6 supports Management API v2 only)
|
|
20
|
+
- `rest-client` dependency removed; uses `net/http` internally
|
|
21
|
+
- Minimum Ruby version raised to 3.3
|
|
22
|
+
|
|
23
|
+
**Added**
|
|
24
|
+
- Auto-generated Management API with complete endpoint coverage from Auth0's OpenAPI spec
|
|
25
|
+
- Automatic OAuth 2.0 client credentials token management, with a new `token_provider` option for supplying tokens from an external source
|
|
26
|
+
- Built-in retry with exponential backoff for transient failures (408, 429, 5xx)
|
|
27
|
+
- Automatic pagination through iterator objects for all list endpoints
|
|
28
|
+
- `v6_MIGRATION_GUIDE.md` for upgrading from v5
|
|
29
|
+
|
|
30
|
+
**Unchanged**
|
|
31
|
+
- Authentication API (login, signup, token exchange, passwordless, MFA)
|
|
32
|
+
|
|
3
33
|
## [v6.0.0.beta.5](https://github.com/auth0/ruby-auth0/tree/v6.0.0.beta.5) (2026-08-05)
|
|
4
34
|
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v6.0.0.beta.4...v6.0.0.beta.5)
|
|
5
35
|
|
|
@@ -32,6 +62,18 @@
|
|
|
32
62
|
**Added**
|
|
33
63
|
- feat: add Tenant Security Headers and Connection Session Expiry; remove Branding Phone Display [\#751](https://github.com/auth0/ruby-auth0/pull/751) ([fern-api[bot]](https://github.com/apps/fern-api))
|
|
34
64
|
|
|
65
|
+
## [v5.20.0](https://github.com/auth0/ruby-auth0/tree/v5.20.0) (2026-05-29)
|
|
66
|
+
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.19.0...v5.20.0)
|
|
67
|
+
|
|
68
|
+
**Changed**
|
|
69
|
+
- Support jwt gem 3.x alongside 2.x [\#726](https://github.com/auth0/ruby-auth0/pull/726) ([dan98765](https://github.com/dan98765))
|
|
70
|
+
|
|
71
|
+
**Fixed**
|
|
72
|
+
- Fix YARD comment with extra space [\#637](https://github.com/auth0/ruby-auth0/pull/637) ([qtro](https://github.com/qtro))
|
|
73
|
+
|
|
74
|
+
**Security**
|
|
75
|
+
- chore(deps): bump jwt from 3.1.2 to 3.2.0 [\#745](https://github.com/auth0/ruby-auth0/pull/745) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
76
|
+
|
|
35
77
|
## [v6.0.0.beta.1](https://github.com/auth0/ruby-auth0/tree/v6.0.0.beta.1) (2026-05-28)
|
|
36
78
|
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v6.0.0.beta.0...v6.0.0.beta.1)
|
|
37
79
|
|
|
@@ -39,6 +81,15 @@
|
|
|
39
81
|
- feat: Events API, Rate Limit Policies, refresh token revocation, FedCM, DPoP GA [\#732](https://github.com/auth0/ruby-auth0/pull/732) ([fern-api[bot]](https://github.com/apps/fern-api))
|
|
40
82
|
- feat: add SCIM Groups RBAC, User Effective Permissions/Roles, and Tenant Country Codes [\#742](https://github.com/auth0/ruby-auth0/pull/742) ([fern-api[bot]](https://github.com/apps/fern-api))
|
|
41
83
|
|
|
84
|
+
## [v5.19.0](https://github.com/auth0/ruby-auth0/tree/v5.19.0) (2026-05-08)
|
|
85
|
+
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.18.1...v5.19.0)
|
|
86
|
+
|
|
87
|
+
**Added**
|
|
88
|
+
- Make Auth0::Client#get_token public [\#725](https://github.com/auth0/ruby-auth0/pull/725) ([ttstarck](https://github.com/ttstarck))
|
|
89
|
+
|
|
90
|
+
**Fixed**
|
|
91
|
+
- Ship only runtime files in packaged gem to eliminate scanner false positives [\#721](https://github.com/auth0/ruby-auth0/pull/721) ([tmertens](https://github.com/tmertens))
|
|
92
|
+
|
|
42
93
|
## 6.0.0-beta.0 (2026-04-30)
|
|
43
94
|
|
|
44
95
|
[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.18.1...v6.0.0.beta.0)
|
data/README.md
CHANGED
|
@@ -3,10 +3,13 @@
|
|
|
3
3
|
Ruby API client for the [Auth0](https://auth0.com) platform.
|
|
4
4
|
|
|
5
5
|
[](http://badge.fury.io/rb/auth0)
|
|
6
|
+
[](https://codecov.io/gh/auth0/ruby-auth0)
|
|
7
|
+
[](https://www.rubydoc.info/gems/auth0)
|
|
6
8
|
[](https://github.com/auth0/ruby-auth0/blob/master/LICENSE)
|
|
9
|
+
[](https://deepwiki.com/auth0/ruby-auth0)
|
|
7
10
|
|
|
8
11
|
<div>
|
|
9
|
-
|
|
12
|
+
📚 <a href="#documentation">Documentation</a> - 🚀 <a href="#getting-started">Getting started</a> - 💻 <a href="#api-reference">API reference</a> - 💬 <a href="#feedback">Feedback</a>
|
|
10
13
|
</div>
|
|
11
14
|
|
|
12
15
|
## Documentation
|
data/custom.gemspec.rb
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
def add_custom_gemspec_data(spec)
|
|
10
10
|
spec.add_dependency "rest-client", "~> 2.1"
|
|
11
|
-
spec.add_dependency "jwt", "
|
|
11
|
+
spec.add_dependency "jwt", ">= 2.7", "< 4.0"
|
|
12
12
|
spec.add_dependency "zache", "~> 0.12"
|
|
13
13
|
spec.add_dependency "addressable", "~> 2.8"
|
|
14
14
|
spec.add_dependency "retryable", "~> 3.0"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: ../..
|
|
3
3
|
specs:
|
|
4
|
-
auth0 (
|
|
4
|
+
auth0 (6.0.0)
|
|
5
5
|
addressable (~> 2.8)
|
|
6
|
-
jwt (
|
|
6
|
+
jwt (>= 2.7, < 4.0)
|
|
7
7
|
rest-client (~> 2.1)
|
|
8
8
|
retryable (~> 3.0)
|
|
9
9
|
zache (~> 0.12)
|
|
@@ -19,7 +19,7 @@ GEM
|
|
|
19
19
|
http-accept (1.7.0)
|
|
20
20
|
http-cookie (1.1.6)
|
|
21
21
|
domain_name (~> 0.5)
|
|
22
|
-
jwt (2.10.
|
|
22
|
+
jwt (2.10.3)
|
|
23
23
|
base64
|
|
24
24
|
logger (1.7.0)
|
|
25
25
|
mime-types (3.7.0)
|
|
@@ -2,17 +2,10 @@ module Auth0
|
|
|
2
2
|
module Mixins
|
|
3
3
|
module TokenManagement
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
# default expiry to an hour if a token was given but no expires_at
|
|
10
|
-
@token_expires_at = @token ? options[:token_expires_at] || Time.now.to_i + 3600 : nil
|
|
11
|
-
|
|
12
|
-
@audience = options[:api_identifier] || "https://#{@domain}/api/v2/"
|
|
13
|
-
get_token() if @token.nil?
|
|
14
|
-
end
|
|
15
|
-
|
|
5
|
+
# Get the Client's api token (or generate a new one if it has expired).
|
|
6
|
+
#
|
|
7
|
+
# @note This method may perform a network request to refresh an expired token. It is not thread-safe.
|
|
8
|
+
# @return [String] the api token
|
|
16
9
|
def get_token
|
|
17
10
|
has_expired = @token && @token_expires_at ? @token_expires_at < (Time.now.to_i + 10) : false
|
|
18
11
|
|
|
@@ -30,6 +23,17 @@ module Auth0
|
|
|
30
23
|
@token
|
|
31
24
|
end
|
|
32
25
|
end
|
|
26
|
+
|
|
27
|
+
private
|
|
28
|
+
|
|
29
|
+
def initialize_token(options)
|
|
30
|
+
@token = options[:access_token] || options[:token]
|
|
31
|
+
# default expiry to an hour if a token was given but no expires_at
|
|
32
|
+
@token_expires_at = @token ? options[:token_expires_at] || Time.now.to_i + 3600 : nil
|
|
33
|
+
|
|
34
|
+
@audience = options[:api_identifier] || "https://#{@domain}/api/v2/"
|
|
35
|
+
get_token() if @token.nil?
|
|
36
|
+
end
|
|
33
37
|
end
|
|
34
38
|
end
|
|
35
39
|
end
|
data/lib/auth0/version.rb
CHANGED
data/v6_MIGRATION_GUIDE.md
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: auth0
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.0.0
|
|
4
|
+
version: 6.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Auth0
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-08-
|
|
11
|
+
date: 2026-08-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rest-client
|
|
@@ -28,16 +28,22 @@ dependencies:
|
|
|
28
28
|
name: jwt
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
33
|
version: '2.7'
|
|
34
|
+
- - "<"
|
|
35
|
+
- !ruby/object:Gem::Version
|
|
36
|
+
version: '4.0'
|
|
34
37
|
type: :runtime
|
|
35
38
|
prerelease: false
|
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
40
|
requirements:
|
|
38
|
-
- - "
|
|
41
|
+
- - ">="
|
|
39
42
|
- !ruby/object:Gem::Version
|
|
40
43
|
version: '2.7'
|
|
44
|
+
- - "<"
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: '4.0'
|
|
41
47
|
- !ruby/object:Gem::Dependency
|
|
42
48
|
name: zache
|
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|