Skip to content

Commit

Permalink
Use new minimum Ruby target: v3.1+
Browse files Browse the repository at this point in the history
Update gems and fix new Rubocop offenses after updating the Ruby Target
to 3.1.
- In particular, Gemwork update v0.7.1 changes my core defaults to use
  Ruby v3.1+.

Per https://endoflife.date/ruby
- Ruby 3.0 is unsupported since 4/23/24
- Ruby 2.7 is unsupported since 3/31/23
  • Loading branch information
pdobb committed Nov 21, 2024
1 parent fc85661 commit 0b46a11
Show file tree
Hide file tree
Showing 7 changed files with 55 additions and 45 deletions.
2 changes: 1 addition & 1 deletion .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ inherit_gem:
gemwork: lib/rubocop/.rubocop-gems.yml

AllCops:
TargetRubyVersion: 2.7
TargetRubyVersion: 3.1

Performance/OpenStruct:
Enabled: false # Reconsider later.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## [Unreleased]
- Update minimum Ruby version from 2.7 -> 3.1

### 0.7.0 - 2023-11-21
- Internal refactoring for more Object-Oriented goodness.
- Internal refactoring for less brittle tests.
Expand Down
82 changes: 42 additions & 40 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,28 @@ GEM
specs:
ansi (1.5.0)
ast (2.4.2)
benchmark-ips (2.13.0)
bigdecimal (3.1.7)
builder (3.2.4)
concurrent-ruby (1.2.3)
debug (1.9.1)
benchmark-ips (2.14.0)
bigdecimal (3.1.8)
builder (3.3.0)
concurrent-ruby (1.3.4)
debug (1.9.2)
irb (~> 1.10)
reline (>= 0.3.8)
docile (1.4.0)
dry-configurable (1.1.0)
docile (1.4.1)
dry-configurable (1.2.0)
dry-core (~> 1.0, < 2)
zeitwerk (~> 2.6)
dry-core (1.0.1)
dry-core (1.0.2)
concurrent-ruby (~> 1.0)
logger
zeitwerk (~> 2.6)
dry-inflector (1.0.0)
dry-inflector (1.1.0)
dry-initializer (3.1.1)
dry-logic (1.5.0)
concurrent-ruby (~> 1.0)
dry-core (~> 1.0, < 2)
zeitwerk (~> 2.6)
dry-schema (1.13.3)
dry-schema (1.13.4)
concurrent-ruby (~> 1.0)
dry-configurable (~> 1.0, >= 1.0.1)
dry-core (~> 1.0, < 2)
Expand All @@ -43,7 +44,7 @@ GEM
dry-inflector (~> 1.0)
dry-logic (~> 1.4)
zeitwerk (~> 2.6)
gemwork (0.5.0)
gemwork (0.7.1)
debug
irb
minitest
Expand All @@ -57,73 +58,74 @@ GEM
simplecov
yard
io-console (0.7.2)
irb (1.12.0)
rdoc
irb (1.14.1)
rdoc (>= 4.0.0)
reline (>= 0.4.2)
json (2.7.1)
json (2.8.2)
language_server-protocol (3.17.0.3)
minitest (5.22.3)
minitest-reporters (1.6.1)
logger (1.6.1)
minitest (5.25.2)
minitest-reporters (1.7.1)
ansi
builder
minitest (>= 5.0)
ruby-progressbar
much-stub (0.1.10)
parallel (1.24.0)
parser (3.3.0.5)
parallel (1.26.3)
parser (3.3.6.0)
ast (~> 2.4.1)
racc
psych (5.1.2)
psych (5.2.0)
stringio
racc (1.7.3)
racc (1.8.1)
rainbow (3.1.1)
rake (13.1.0)
rdoc (6.6.3.1)
rake (13.2.1)
rdoc (6.8.1)
psych (>= 4.0.0)
reek (6.3.0)
dry-schema (~> 1.13.0)
parser (~> 3.3.0)
rainbow (>= 2.0, < 4.0)
rexml (~> 3.1)
regexp_parser (2.9.0)
reline (0.4.3)
regexp_parser (2.9.2)
reline (0.5.11)
io-console (~> 0.5)
rexml (3.2.6)
rubocop (1.62.1)
rexml (3.3.9)
rubocop (1.68.0)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
parser (>= 3.3.0.2)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.31.1, < 2.0)
regexp_parser (>= 2.4, < 3.0)
rubocop-ast (>= 1.32.2, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.31.2)
parser (>= 3.3.0.4)
rubocop-minitest (0.35.0)
rubocop-ast (1.36.1)
parser (>= 3.3.1.0)
rubocop-minitest (0.36.0)
rubocop (>= 1.61, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0)
rubocop-performance (1.20.2)
rubocop-performance (1.23.0)
rubocop (>= 1.48.1, < 2.0)
rubocop-ast (>= 1.30.0, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0)
rubocop-rake (0.6.0)
rubocop (~> 1.0)
ruby-progressbar (1.13.0)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.12.3)
simplecov-html (0.13.1)
simplecov_json_formatter (0.1.4)
stringio (3.1.0)
unicode-display_width (2.5.0)
yard (0.9.36)
zeitwerk (2.6.13)
stringio (3.1.2)
unicode-display_width (2.6.0)
yard (0.9.37)
zeitwerk (2.6.18)

PLATFORMS
arm64-darwin-23
arm64-darwin-24
x86_64-linux

DEPENDENCIES
Expand All @@ -133,4 +135,4 @@ DEPENDENCIES
rake

BUNDLED WITH
2.5.6
2.3.27
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,16 @@ Or install it yourself as:
## Compatibility

Tested MRI Ruby Versions:
* 2.7
* 3.0
* 3.1
* 3.2
* 3.3

Note: For Ruby 2.7 or 3.1 support, install object_identifier gem version 0.7.0.

```ruby
gem "object_identifier", "0.7.0"
```

Object Identifier has no other dependencies.

## Configuration
Expand Down
2 changes: 1 addition & 1 deletion object_identifier.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
spec.description = "Object Identifier allows quick, easy, and uniform identification of an object by inspecting its class name and outputting any desirable attributes/methods. It is great for logging, sending descriptive notification messages, etc."
spec.homepage = "https://github.com/pdobb/object_identifier"
spec.license = "MIT"
spec.required_ruby_version = ">= 2.7"
spec.required_ruby_version = ">= 3.1"

spec.metadata = {
"bug_tracker_uri" => "https://github.com/pdobb/object_identifier/issues",
Expand Down
2 changes: 1 addition & 1 deletion rakelib/bump.rake
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ end
# -- which specifies the Ruby releases that will be listed on
# https://www.ruby-lang.org/en/downloads/
module RubyVersions
MINOR_VERSION_REGEX = /\d+\.\d+/.freeze
MINOR_VERSION_REGEX = /\d+\.\d+/
RUBY_VERSIONS_YAML_PATH =
"https://raw.githubusercontent.com/ruby/www.ruby-lang.org/HEAD/_data/downloads.yml"
VERSION_TYPES = %i[
Expand Down
1 change: 1 addition & 0 deletions test/object_identifier/formatters/string_formatter_test.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# frozen_string_literal: true

require "test_helper"
require "ostruct"

class ObjectIdentifier::StringFormatterTest < Minitest::Spec
# ObjectIdentifier::StringFormatterTest::TestStruct is a Test Dummy.
Expand Down

0 comments on commit 0b46a11

Please sign in to comment.