Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This file is based on https://github.com/rails/rails/blob/master/.rubocop.yml (MIT license)
# Automatically generated by OpenAPI Generator (https://openapi-generator.tech)
AllCops:
TargetRubyVersion: 2.4
TargetRubyVersion: 3.2
# RuboCop has a bunch of cops enabled by default. This setting tells RuboCop
# to ignore them, so only the ones explicitly set in this file are enabled.
DisabledByDefault: true
Expand Down
34 changes: 34 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Changelog

Notable changes to xero-ruby are recorded here.

## Unreleased

### Changed (breaking)

- Raised `required_ruby_version` in `xero-ruby.gemspec` from `>= 2.3` to `>= 3.2`.
Ruby 2.3 through 3.1 are no longer supported.

Applications still on those versions are left on 18.1.0. RubyGems resolves a
consumer to the newest release whose `required_ruby_version` they satisfy, so
`bundle update xero-ruby` quietly holds them at 18.1.0 rather than failing, and
they stop receiving fixes with no error to signal it. Upgrade to Ruby 3.2 or
later to keep receiving updates.

- Raised `TargetRubyVersion` in `.rubocop.yml` from 2.4 to 3.2 to match the new
floor. It previously contradicted the gemspec, so syntax that is valid on the
supported floor (endless method definitions, `...` argument forwarding) would
raise a `Lint/Syntax` offence in the CI lint step on correct code.

### Notes for maintainers

Dropping supported Ruby versions is a breaking change, so the next release must
be cut as **19.0.0**, not 18.2.0.

`lib/xero-ruby/version.rb` is deliberately left at 18.1.0 in this change. That
file is OpenAPI-Generator-owned and its version is stamped by the
`Releasing X.Y.Z (OAS: N.N.N)` commit produced by the codegen pipeline, not by
feature pull requests, and `.github/workflows/publish.yml` publishes whatever
version that file carries at release time. Bumping it here would collide with
that pipeline, so the major bump is recorded as a release requirement instead of
being applied in this change.
2 changes: 1 addition & 1 deletion xero-ruby.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Gem::Specification.new do |s|
s.summary = "Xero Accounting API Ruby Gem"
s.description = "Xero API OAuth2.0 SDK - Ruby Gem"
s.license = "Unlicense"
s.required_ruby_version = ">= 2.3"
s.required_ruby_version = ">= 3.2"

s.add_runtime_dependency 'faraday', '>= 2.0', '< 3.0'
s.add_runtime_dependency 'json', '~> 2.1', '>= 2.1.0'
Expand Down