From b08b98facc4557754a6abbd006a5c34d0da22907 Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Wed, 11 Feb 2026 12:09:05 -0500 Subject: [PATCH 1/8] 884: Ruby upgrade --- .ruby-version | 2 +- CHANGELOG.md | 13 +++++++++++++ action_network_rest.gemspec | 8 +++++--- lib/action_network_rest.rb | 1 + lib/action_network_rest/version.rb | 2 +- 5 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 CHANGELOG.md diff --git a/.ruby-version b/.ruby-version index be94e6f..1454f6e 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.2.2 +4.0.1 diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..17f7bef --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,13 @@ +# Changelog + +## [1.1.0] - 2026-02-11 + +### Added +- Added `faraday ~> 2.0` as explicit runtime dependency +- Added `faraday-mashify ~> 1.0` as explicit runtime dependency +- Added `require 'faraday/mashify'` to main library file + +### Upgrades +- Upgraded from Ruby 3.2.2 to Ruby 4.0.1 +- Updated vertebrae dependency to >= 1.0.5 +- Updated bundler development dependency to >= 2.1 (from ~> 2.1) \ No newline at end of file diff --git a/action_network_rest.gemspec b/action_network_rest.gemspec index e11399d..5e51f35 100644 --- a/action_network_rest.gemspec +++ b/action_network_rest.gemspec @@ -21,11 +21,13 @@ Gem::Specification.new do |spec| end spec.require_paths = ['lib'] - spec.required_ruby_version = '>= 2.6' + spec.required_ruby_version = '>= 3.0.0' - spec.add_runtime_dependency 'vertebrae', '>= 1.0.0' + spec.add_runtime_dependency 'vertebrae', '>= 1.0.5' + spec.add_runtime_dependency 'faraday', '~> 2.0' + spec.add_runtime_dependency 'faraday-mashify', '~> 1.0' - spec.add_development_dependency 'bundler', '~> 2.1' + spec.add_development_dependency 'bundler', '>= 2.1' spec.add_development_dependency 'debug', '> 0' spec.add_development_dependency 'dotenv', '~> 2.7' spec.add_development_dependency 'rake', '~> 13.0' diff --git a/lib/action_network_rest.rb b/lib/action_network_rest.rb index 309c8c9..34f508d 100644 --- a/lib/action_network_rest.rb +++ b/lib/action_network_rest.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true require 'vertebrae' +require 'faraday/mashify' module ActionNetworkRest extend Vertebrae::Base diff --git a/lib/action_network_rest/version.rb b/lib/action_network_rest/version.rb index b0c4dfb..f51ed95 100644 --- a/lib/action_network_rest/version.rb +++ b/lib/action_network_rest/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module ActionNetworkRest - VERSION = '1.0.1' + VERSION = '1.1.0' end From 68acb1c3bf3c7ad9a370244870fae7d5bc08f6f1 Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Fri, 13 Feb 2026 14:47:08 -0500 Subject: [PATCH 2/8] 884: Fix rubocop issues --- .rubocop.yml | 9 +++++---- Gemfile | 11 +++++++++++ action_network_rest.gemspec | 14 +++----------- lib/action_network_rest/advocacy_campaigns.rb | 4 ---- lib/action_network_rest/campaigns.rb | 4 ---- lib/action_network_rest/client.rb | 2 +- lib/action_network_rest/forms.rb | 4 ---- spec/spec_helper.rb | 2 +- 8 files changed, 21 insertions(+), 29 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index bcfe7df..75681da 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,9 +1,10 @@ -require: - - rubocop-performance - AllCops: NewCops: enable - TargetRubyVersion: 2.6 + TargetRubyVersion: 3.0 + SuggestExtensions: false + +plugins: + - rubocop-performance Metrics/AbcSize: Enabled: false Metrics/BlockLength: diff --git a/Gemfile b/Gemfile index 6d0d94f..5b7b722 100644 --- a/Gemfile +++ b/Gemfile @@ -6,3 +6,14 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" } # Specify your gem's dependencies in action_network_rest.gemspec gemspec + +group :development do + gem 'bundler', '>= 2.1' + gem 'debug', '> 0' + gem 'dotenv', '~> 2.7' + gem 'rake', '~> 13.0' + gem 'rspec', '~> 3.0' + gem 'rubocop', '> 0' + gem 'rubocop-performance', '> 0' + gem 'webmock', '~> 3.8.3' +end diff --git a/action_network_rest.gemspec b/action_network_rest.gemspec index 5e51f35..0e0d0fc 100644 --- a/action_network_rest.gemspec +++ b/action_network_rest.gemspec @@ -23,17 +23,9 @@ Gem::Specification.new do |spec| spec.required_ruby_version = '>= 3.0.0' - spec.add_runtime_dependency 'vertebrae', '>= 1.0.5' - spec.add_runtime_dependency 'faraday', '~> 2.0' - spec.add_runtime_dependency 'faraday-mashify', '~> 1.0' + spec.add_dependency 'faraday', '~> 2.0' + spec.add_dependency 'faraday-mashify', '~> 1.0' + spec.add_dependency 'vertebrae', '>= 1.0.5' - spec.add_development_dependency 'bundler', '>= 2.1' - spec.add_development_dependency 'debug', '> 0' - spec.add_development_dependency 'dotenv', '~> 2.7' - spec.add_development_dependency 'rake', '~> 13.0' - spec.add_development_dependency 'rspec', '~> 3.0' - spec.add_development_dependency 'rubocop', '> 0' - spec.add_development_dependency 'rubocop-performance', '> 0' - spec.add_development_dependency 'webmock', '~> 3.8.3' spec.metadata['rubygems_mfa_required'] = 'true' end diff --git a/lib/action_network_rest/advocacy_campaigns.rb b/lib/action_network_rest/advocacy_campaigns.rb index 34d4aec..2f3ae6c 100644 --- a/lib/action_network_rest/advocacy_campaigns.rb +++ b/lib/action_network_rest/advocacy_campaigns.rb @@ -2,10 +2,6 @@ module ActionNetworkRest class AdvocacyCampaigns < Base - def initialize(client:) - super(client: client) - end - def base_path 'advocacy_campaigns/' end diff --git a/lib/action_network_rest/campaigns.rb b/lib/action_network_rest/campaigns.rb index 1bd36d7..20dc28c 100644 --- a/lib/action_network_rest/campaigns.rb +++ b/lib/action_network_rest/campaigns.rb @@ -4,10 +4,6 @@ module ActionNetworkRest class Campaigns < Base attr_accessor :campaign_id - def initialize(client:) - super(client: client) - end - def base_path 'campaigns/' end diff --git a/lib/action_network_rest/client.rb b/lib/action_network_rest/client.rb index b243e89..0613b1b 100644 --- a/lib/action_network_rest/client.rb +++ b/lib/action_network_rest/client.rb @@ -6,7 +6,7 @@ class Client < API def initialize(options = {}, &block) self.api_key = options[:api_key] - super(options, &block) + super end def default_options diff --git a/lib/action_network_rest/forms.rb b/lib/action_network_rest/forms.rb index 0a1de37..80de9e5 100644 --- a/lib/action_network_rest/forms.rb +++ b/lib/action_network_rest/forms.rb @@ -2,10 +2,6 @@ module ActionNetworkRest class Forms < Base - def initialize(client:) - super(client: client) - end - def base_path 'forms/' end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 102adb9..158d6ef 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -5,7 +5,7 @@ require 'webmock/rspec' # Require everything in the `support` directory -Dir[File.join(File.dirname(__FILE__), 'support', '**', '*.rb')].sort.each { |f| require f } +Dir[File.join(File.dirname(__FILE__), 'support', '**', '*.rb')].each { |f| require f } RSpec.configure do |config| # Enable flags like --only-failures and --next-failure From d6f1ce0b02764e89914b825cda9a8c961dbdb215 Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:33:46 -0500 Subject: [PATCH 3/8] 884: Rubocop 4.0 --- .rubocop.yml | 2 +- action_network_rest.gemspec | 2 +- bin/rake | 1 - bin/rspec | 1 - lib/action_network_rest/client.rb | 2 +- 5 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 75681da..cdc079c 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,6 +1,6 @@ AllCops: NewCops: enable - TargetRubyVersion: 3.0 + TargetRubyVersion: 4.0 SuggestExtensions: false plugins: diff --git a/action_network_rest.gemspec b/action_network_rest.gemspec index 0e0d0fc..b42fb80 100644 --- a/action_network_rest.gemspec +++ b/action_network_rest.gemspec @@ -21,7 +21,7 @@ Gem::Specification.new do |spec| end spec.require_paths = ['lib'] - spec.required_ruby_version = '>= 3.0.0' + spec.required_ruby_version = '>= 4.0.0' spec.add_dependency 'faraday', '~> 2.0' spec.add_dependency 'faraday-mashify', '~> 1.0' diff --git a/bin/rake b/bin/rake index 9c4fca6..ed705ab 100755 --- a/bin/rake +++ b/bin/rake @@ -8,7 +8,6 @@ # this file is here to facilitate running it. # -require 'pathname' ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', Pathname.new(__FILE__).realpath) diff --git a/bin/rspec b/bin/rspec index e6dd588..956b1d8 100755 --- a/bin/rspec +++ b/bin/rspec @@ -8,7 +8,6 @@ # this file is here to facilitate running it. # -require 'pathname' ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', Pathname.new(__FILE__).realpath) diff --git a/lib/action_network_rest/client.rb b/lib/action_network_rest/client.rb index 0613b1b..265c082 100644 --- a/lib/action_network_rest/client.rb +++ b/lib/action_network_rest/client.rb @@ -4,7 +4,7 @@ module ActionNetworkRest class Client < API attr_accessor :api_key - def initialize(options = {}, &block) + def initialize(options = {}, &) self.api_key = options[:api_key] super end From 4004bf167e57f7d320859b58b0a8030a86a4bec3 Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:37:30 -0500 Subject: [PATCH 4/8] 884: Use Ruby 3.0.0 in gempsec --- action_network_rest.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action_network_rest.gemspec b/action_network_rest.gemspec index b42fb80..0e0d0fc 100644 --- a/action_network_rest.gemspec +++ b/action_network_rest.gemspec @@ -21,7 +21,7 @@ Gem::Specification.new do |spec| end spec.require_paths = ['lib'] - spec.required_ruby_version = '>= 4.0.0' + spec.required_ruby_version = '>= 3.0.0' spec.add_dependency 'faraday', '~> 2.0' spec.add_dependency 'faraday-mashify', '~> 1.0' From 73d32881f741f6dd2c708193109de00a462b0b9f Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:38:36 -0500 Subject: [PATCH 5/8] 884: Use Ruby 4.0 in CI --- .github/workflows/ci.yml | 4 ++-- action_network_rest.gemspec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 89d3af6..78319ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,7 +8,7 @@ jobs: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: - ruby-version: 3.1 + ruby-version: 4.0 bundler-cache: true - run: bundle install - run: bundle exec rspec @@ -18,7 +18,7 @@ jobs: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: - ruby-version: 3.1 + ruby-version: 4.0 bundler-cache: true - run: bundle install - run: bundle exec rubocop diff --git a/action_network_rest.gemspec b/action_network_rest.gemspec index 0e0d0fc..b42fb80 100644 --- a/action_network_rest.gemspec +++ b/action_network_rest.gemspec @@ -21,7 +21,7 @@ Gem::Specification.new do |spec| end spec.require_paths = ['lib'] - spec.required_ruby_version = '>= 3.0.0' + spec.required_ruby_version = '>= 4.0.0' spec.add_dependency 'faraday', '~> 2.0' spec.add_dependency 'faraday-mashify', '~> 1.0' From b6e54c9e094b09cd3c50c1f3ee77af5b992f24af Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:48:02 -0500 Subject: [PATCH 6/8] 884: Don't use bundler cache --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 78319ea..e51f291 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,7 @@ jobs: - uses: ruby/setup-ruby@v1 with: ruby-version: 4.0 - bundler-cache: true + bundler-cache: false - run: bundle install - run: bundle exec rspec rubocop: @@ -19,6 +19,6 @@ jobs: - uses: ruby/setup-ruby@v1 with: ruby-version: 4.0 - bundler-cache: true + bundler-cache: false - run: bundle install - run: bundle exec rubocop From a3bf75d46575e8397041eb0e9eac26bda09c60a4 Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:48:59 -0500 Subject: [PATCH 7/8] 884: Revert --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e51f291..78319ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,7 @@ jobs: - uses: ruby/setup-ruby@v1 with: ruby-version: 4.0 - bundler-cache: false + bundler-cache: true - run: bundle install - run: bundle exec rspec rubocop: @@ -19,6 +19,6 @@ jobs: - uses: ruby/setup-ruby@v1 with: ruby-version: 4.0 - bundler-cache: false + bundler-cache: true - run: bundle install - run: bundle exec rubocop From 0dc828a2fe7ca63caa170d83a8a300570d28055c Mon Sep 17 00:00:00 2001 From: Owens Ehimen Date: Tue, 17 Feb 2026 10:55:42 -0500 Subject: [PATCH 8/8] 884: Fix rubocop in CI --- .rubocop.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.rubocop.yml b/.rubocop.yml index cdc079c..099c0e3 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -17,3 +17,5 @@ Naming/MemoizedInstanceVariableName: Enabled: false Style/Documentation: Enabled: false +Style/HashAsLastArrayItem: + Enabled: false