Skip to content

Release 1.8.0 - #124

Merged
Subterrane merged 1 commit into
mainfrom
000-release-1-8-0
Aug 4, 2026
Merged

Release 1.8.0#124
Subterrane merged 1 commit into
mainfrom
000-release-1-8-0

Conversation

@Subterrane

Copy link
Copy Markdown
Contributor

Bumps lib/onelogin/version.rb to 1.8.0 so everything on main since 1.7.0 can be published.

Fixed

  • Non-200 responses on paginated endpoints (How detect HTTP RESPONSES different than 200 on paginated objects? #4, open since 2017). A proxy or gateway error page arrives as text/html, so parsed_response returned a String and Cursor raised NoMethodError: undefined method 'has_key?' instead of ApiException. Also reports the real HTTP status rather than a hardcoded 500.
  • Symbol keys in parameter hashes (ruby symbols are not properly converted to strings in the post #59, open since 2020). The README documents symbol keys, but the required-parameter guards looked them up as strings, so the documented call to create_session_login_token always failed. to_json already serialized both forms identically — only the validation disagreed, so the wire format is unchanged.
  • create_app validation never fired. The guard read unless has_key? || value.empty?, which is true in every case. create_app({}) silently POSTed an empty body.

Added

Changed — read this one

  • required_ruby_version raised from >= 1.9.3 to >= 3.2 (gemspec advertises required_ruby_version >= 1.9.3, which the runtime dependency graph cannot honour #116).

    The old floor was unachievable: the unbounded nokogiri >= 1.6.3.1 runtime dependency resolves to a version requiring Ruby >= 3.2. More importantly, 3.2 is the lowest Ruby on which a consumer gets a nokogiri with no known advisories — below it the newest installable release still carries a critical one.

    Existing users on older Rubies are not broken. RubyGems' resolver filters by compatibility, so bundle install on Ruby 3.0 resolves to 1.7.0 rather than failing. Only an explicit pin to 1.8.0 errors, and the message says why.

    Minor rather than major follows nokogiri's own precedent (it raised 3.0 → 3.1 in 1.17 → 1.18).

Documentation

Housekeeping

  • Removed the Rails 5.1.5 example app (EOL 2019) — took Dependabot alerts from 180 to 0 and cut the published package from 164 files to 58
  • CI matrix now 3.2/3.3/3.4; rake dev dependency to ~> 13.0 (GHSA-jppv-gw3r-w3q8)
  • Deleted dead .travis.yml; regenerated examples/Gemfile.lock

Verification

  • 48 examples, 0 failures on Ruby 3.2; CI green on 3.2/3.3/3.4
  • Ruby 3.0 correctly refuses to resolve: Ruby (>= 3.2) ... is not available in the local ruby installation
  • Package builds clean at 58 files, no vendor/ or Rails example

Publishing (manual — no release automation on this repo)

gem build onelogin.gemspec
gem push onelogin-1.8.0.gem --otp <code>
git tag -a v1.8.0 -m "Release 1.8.0" && git push origin v1.8.0

Four user-facing fixes plus a Ruby floor raise since 1.7.0.

Minor rather than patch: ApiException#code is new public API, and the
required_ruby_version raise drops support for Ruby < 3.2.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request updates the gem’s version constant to 1.8.0 in preparation for a release.

Changes:

  • Bump OneLogin::VERSION from 1.7.0 to 1.8.0.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread lib/onelogin/version.rb
@@ -1,3 +1,3 @@
module OneLogin
VERSION = "1.7.0"
VERSION = "1.8.0"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a mismatch — this is a release PR, so the one-line diff and the description are describing different things by design.

Everything listed is already merged on main. The version bump is the only thing left to do before those changes can be published, because RubyGems keys releases off OneLogin::VERSION. Verified against main's tree just now:

description item on main
Cursor non-JSON guard is_a?(Hash) in cursor.rb
ApiException#code attr_reader :code present
Symbol-key params stringify_param_keys, 4 references
create_app guard if !app_params.has_key?('connector_id')
Ruby floor required_ruby_version = '>= 3.2'
CI matrix ruby: ['3.2', '3.3', '3.4']
Sorting docs 2 sort: examples in README
Specs 48 examples, 0 failures on Ruby 3.2

They landed via #98, #107, #111, #112, #113, #115, #118, #119, #120, #121, #122 and #123.

The description is the changelog for 1.8.0, not for this diff — it's what becomes the GitHub release notes and what a consumer reads to decide whether to upgrade. Trimming it to "bump VERSION to 1.8.0" would leave the release undocumented, which is the opposite of accurate.

This matches how 1.7.0 was cut in #110, and keeps release PRs trivially reviewable: the diff is one line, so the only question is whether the version number is right.

On that: 1.8.0 rather than 1.7.1 because ApiException#code is new public API, and rather than 2.0.0 because the required_ruby_version raise doesn't break existing builds — RubyGems' resolver filters by compatibility, so Ruby 3.0 users resolve to 1.7.0 instead of failing.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

@Subterrane
Subterrane merged commit a0d9189 into main Aug 4, 2026
11 checks passed
@Subterrane
Subterrane deleted the 000-release-1-8-0 branch August 4, 2026 19:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants