From 348e9395e356391c56a3a2735b6018b46b0140ad Mon Sep 17 00:00:00 2001 From: Snehil Kishore Date: Thu, 30 Apr 2026 09:33:53 +0530 Subject: [PATCH 1/2] Release v6.0.0.beta.0 --- .github/workflows/release.yml | 2 +- .version | 2 +- CHANGELOG.md | 30 ++++++++++++++++++++++++++++++ lib/auth0/version.rb | 2 +- 4 files changed, 33 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d36e47c2..1c73b95f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,7 +31,7 @@ jobs: uses: ./.github/workflows/ruby-release.yml # needs: rl-scanner with: - ruby-version: 3.2 + ruby-version: 3.3 secrets: github-token: ${{ secrets.GITHUB_TOKEN }} rubygems-token: ${{ secrets.RUBYGEMS_AUTH_TOKEN }} diff --git a/.version b/.version index 634150fd..4732fad1 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -v5.18.1 +v6.0.0.beta.0 diff --git a/CHANGELOG.md b/CHANGELOG.md index 30d4eedb..bf840003 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 6.0.0-beta.0 (2026-04-30) + +[Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.18.1...v6.0.0.beta.0) + +This beta release completely rewrites the Management API client using [Fern](https://buildwithfern.com/) code generation from the Auth0 OpenAPI specification. The Authentication API is ported from v5 and maintains full feature parity. + +**Breaking Changes** +- Management API client rewritten using Fern code generation +- `Auth0Client` replaced by `Auth0::Client` (unified client for Auth + Management APIs) +- Management API methods accessed via namespaced sub-clients (`client.users.list` instead of `client.users`) +- API methods return strongly-typed response objects instead of raw hashes +- List methods return paginated iterators instead of arrays +- Non-2xx responses raise typed exceptions (`Auth0::Errors::NotFoundError`, etc.) instead of returning error hashes +- `rest-client` dependency removed; uses `net/http` internally +- Minimum Ruby version raised to 3.3 + +**Added** +- Auto-generated Management API with complete endpoint coverage from Auth0 OpenAPI spec +- Automatic OAuth 2.0 client credentials token management +- Built-in retry with exponential backoff for rate-limited (429) responses +- Configurable timeouts per request via `request_options` +- Offset-based pagination with `each` iterators for all list endpoints +- Telemetry headers on Management API requests +- Wire tests (WireMock-based) for all Management API endpoints +- New examples (Sinatra API and Rails 7 API) +- `v6_MIGRATION_GUIDE.md` for upgrading from v5 + +**Unchanged** +- Authentication API (login, signup, token exchange, passwordless, MFA) — ported from v5 with identical interface + ## [v5.18.1](https://github.com/auth0/ruby-auth0/tree/v5.18.1) (2026-03-13) [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.18.0...v5.18.1) diff --git a/lib/auth0/version.rb b/lib/auth0/version.rb index f373f492..c46cf54e 100644 --- a/lib/auth0/version.rb +++ b/lib/auth0/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Auth0 - VERSION = "0.0.0" + VERSION = "6.0.0.beta.0" end From bb1052c0abef2628ebbdbd7dda10b67ea1a9b297 Mon Sep 17 00:00:00 2001 From: Snehil Kishore Date: Thu, 30 Apr 2026 09:34:05 +0530 Subject: [PATCH 2/2] fix: align telemetry name to ruby-auth0 and regenerate lockfile --- Gemfile.lock | 2 +- lib/auth0/internal/http/raw_client.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 5bdfe089..05ed9ab1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - auth0 (0.0.0) + auth0 (6.0.0.beta.0) addressable (~> 2.8) jwt (~> 2.7) rest-client (~> 2.1) diff --git a/lib/auth0/internal/http/raw_client.rb b/lib/auth0/internal/http/raw_client.rb index f668ea43..0de6d27c 100644 --- a/lib/auth0/internal/http/raw_client.rb +++ b/lib/auth0/internal/http/raw_client.rb @@ -29,9 +29,9 @@ def initialize(base_url:, max_retries: 2, timeout: 60.0, headers: {}) @max_retries = max_retries @timeout = timeout - # Auth0 telemetry in standard format (matches auth0-python pattern) + # Auth0 telemetry in standard format telemetry = { - name: "auth0-ruby", + name: "ruby-auth0", version: Auth0::VERSION, env: { ruby: RUBY_VERSION } }