From d6d48d9b58a478fb82e63bddca258d12db8c9c78 Mon Sep 17 00:00:00 2001 From: Will Leonard Date: Sat, 5 Apr 2025 13:08:41 -0400 Subject: [PATCH 1/3] Add rails 8.0 support and drop rails < 7.2 support --- .github/workflows/ruby_ci.yml | 10 ++++------ Appraisals | 17 +++++++---------- CHANGELOG.md | 4 ++++ activerecord-type-symbol.gemspec | 10 +++++----- gemfiles/rails_6.0.gemfile | 10 ---------- gemfiles/rails_6.1.gemfile | 10 ---------- gemfiles/rails_7.0.gemfile | 10 ---------- gemfiles/rails_7.1.gemfile | 10 ---------- gemfiles/rails_7.2.gemfile | 11 +++++------ gemfiles/rails_8.0.gemfile | 9 +++++++++ lib/active_record/type/symbol.rb | 2 +- 11 files changed, 35 insertions(+), 68 deletions(-) delete mode 100644 gemfiles/rails_6.0.gemfile delete mode 100644 gemfiles/rails_6.1.gemfile delete mode 100644 gemfiles/rails_7.0.gemfile delete mode 100644 gemfiles/rails_7.1.gemfile create mode 100644 gemfiles/rails_8.0.gemfile diff --git a/.github/workflows/ruby_ci.yml b/.github/workflows/ruby_ci.yml index bc1162f..a036bee 100644 --- a/.github/workflows/ruby_ci.yml +++ b/.github/workflows/ruby_ci.yml @@ -13,13 +13,11 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ruby-version: ['2.7.8', '3.0.7', '3.1.7'] - gemfile: ['gemfiles/rails_7.0.gemfile', 'gemfiles/rails_7.1.gemfile', 'gemfiles/rails_7.2.gemfile'] + ruby-version: ['3.1.7', '3.2.8', '3.3.7', '3.4.2'] + gemfile: ['gemfiles/rails_7.2.gemfile', 'gemfiles/rails_8.0.gemfile'] exclude: - - ruby-version: '2.7.8' - gemfile: 'gemfiles/rails_7.2.gemfile' - - ruby-version: '3.0.7' - gemfile: 'gemfiles/rails_7.2.gemfile' + - ruby-version: '3.1.7' + gemfile: 'gemfiles/rails_8.0.gemfile' steps: - name: Checkout code diff --git a/Appraisals b/Appraisals index 2818706..b0cad45 100644 --- a/Appraisals +++ b/Appraisals @@ -1,16 +1,13 @@ # frozen_string_literal: true -appraise 'rails-7.0' do - gem 'activemodel', '~> 7.0.8' - gem 'activerecord', '~> 7.0.8' -end - -appraise 'rails-7.1' do - gem 'activemodel', '~> 7.1.5' - gem 'activerecord', '~> 7.1.5' -end - appraise 'rails-7.2' do gem 'activemodel', '~> 7.2.2' gem 'activerecord', '~> 7.2.2' + gem 'sqlite' +end + +appraise 'rails-8.0' do + gem 'activemodel', '~> 8.0.2' + gem 'activerecord', '~> 8.0.2' + gem 'sqlite' end diff --git a/CHANGELOG.md b/CHANGELOG.md index f6f4da5..b6dda25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 0.7.0 +- Support 8.0 +- Drop support rails < 7.2 + ## 0.6.0 - Support rails 7.1 and 7.2 - Drop support rails < 7.0 diff --git a/activerecord-type-symbol.gemspec b/activerecord-type-symbol.gemspec index a8d5042..33be16d 100644 --- a/activerecord-type-symbol.gemspec +++ b/activerecord-type-symbol.gemspec @@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) Gem::Specification.new do |spec| spec.name = 'activerecord-type-symbol' - spec.version = '0.6.0' + spec.version = '0.7.0' spec.authors = ['Will Leonard'] spec.email = ['will.leonard89@gmail.com'] @@ -27,10 +27,10 @@ Gem::Specification.new do |spec| spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } spec.require_paths = ['lib'] - spec.required_ruby_version = '>= 2.7' + spec.required_ruby_version = '>= 3.1' - spec.add_dependency 'activemodel', '>= 7.0', '< 8.0' - spec.add_dependency 'activerecord', '>= 7.0', '< 8.0' + spec.add_dependency 'activemodel', '>= 7.0', '< 8.1' + spec.add_dependency 'activerecord', '>= 7.0', '< 8.1' spec.add_development_dependency 'appraisal' spec.add_development_dependency 'bundler', '>= 1.3.0' @@ -38,6 +38,6 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'rake', '>= 12.3.3' spec.add_development_dependency 'rspec', '~> 3.0' spec.add_development_dependency 'rubocop' - spec.add_development_dependency 'sqlite3', '~> 1.3' + spec.add_development_dependency 'sqlite3' spec.add_development_dependency 'with_model' end diff --git a/gemfiles/rails_6.0.gemfile b/gemfiles/rails_6.0.gemfile deleted file mode 100644 index b9e95e9..0000000 --- a/gemfiles/rails_6.0.gemfile +++ /dev/null @@ -1,10 +0,0 @@ -# frozen_string_literal: true - -# This file was generated by Appraisal - -source 'https://rubygems.org' - -gem 'activemodel', '6.0.3.3' -gem 'activerecord', '6.0.3.3' - -gemspec path: '../' diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile deleted file mode 100644 index 0939384..0000000 --- a/gemfiles/rails_6.1.gemfile +++ /dev/null @@ -1,10 +0,0 @@ -# frozen_string_literal: true - -# This file was generated by Appraisal - -source 'https://rubygems.org' - -gem 'activemodel', '6.1.0' -gem 'activerecord', '6.1.0' - -gemspec path: '../' diff --git a/gemfiles/rails_7.0.gemfile b/gemfiles/rails_7.0.gemfile deleted file mode 100644 index a2e8a4e..0000000 --- a/gemfiles/rails_7.0.gemfile +++ /dev/null @@ -1,10 +0,0 @@ -# frozen_string_literal: true - -# This file was generated by Appraisal - -source 'https://rubygems.org' - -gem 'activemodel', '~> 7.0.8' -gem 'activerecord', '~> 7.0.8' - -gemspec path: '../' diff --git a/gemfiles/rails_7.1.gemfile b/gemfiles/rails_7.1.gemfile deleted file mode 100644 index f7ae473..0000000 --- a/gemfiles/rails_7.1.gemfile +++ /dev/null @@ -1,10 +0,0 @@ -# frozen_string_literal: true - -# This file was generated by Appraisal - -source 'https://rubygems.org' - -gem 'activemodel', '~> 7.1.5' -gem 'activerecord', '~> 7.1.5' - -gemspec path: '../' diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index 3425e1d..e0b862c 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -1,10 +1,9 @@ -# frozen_string_literal: true - # This file was generated by Appraisal -source 'https://rubygems.org' +source "https://rubygems.org" -gem 'activemodel', '~> 7.2.2' -gem 'activerecord', '~> 7.2.2' +gem "activemodel", "~> 7.2.2" +gem "activerecord", "~> 7.2.2" +gem "sqlite" -gemspec path: '../' +gemspec path: "../" diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile new file mode 100644 index 0000000..3ac78da --- /dev/null +++ b/gemfiles/rails_8.0.gemfile @@ -0,0 +1,9 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "activemodel", "~> 8.0.2" +gem "activerecord", "~> 8.0.2" +gem "sqlite" + +gemspec path: "../" diff --git a/lib/active_record/type/symbol.rb b/lib/active_record/type/symbol.rb index e6c2954..a59b2f5 100644 --- a/lib/active_record/type/symbol.rb +++ b/lib/active_record/type/symbol.rb @@ -3,7 +3,7 @@ module ActiveRecord module Type class Symbol < ActiveModel::Type::Value - VERSION = '0.6.0' + VERSION = '0.7.0' def type :symbol From 5c3f8a9b1437939dc078c5ca5644b44263965539 Mon Sep 17 00:00:00 2001 From: Will Leonard Date: Sat, 5 Apr 2025 13:10:35 -0400 Subject: [PATCH 2/3] Fix rubocop and update Target ruby version in rubocop --- .rubocop.yml | 2 +- gemfiles/rails_7.2.gemfile | 12 +++++++----- gemfiles/rails_8.0.gemfile | 12 +++++++----- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index e5ca953..012eb89 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,5 +1,5 @@ AllCops: - TargetRubyVersion: 2.7 + TargetRubyVersion: 3.1 Style/WordArray: EnforcedStyle: brackets diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index e0b862c..1b7b1e6 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -1,9 +1,11 @@ +# frozen_string_literal: true + # This file was generated by Appraisal -source "https://rubygems.org" +source 'https://rubygems.org' -gem "activemodel", "~> 7.2.2" -gem "activerecord", "~> 7.2.2" -gem "sqlite" +gem 'activemodel', '~> 7.2.2' +gem 'activerecord', '~> 7.2.2' +gem 'sqlite' -gemspec path: "../" +gemspec path: '../' diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile index 3ac78da..b0bb1e4 100644 --- a/gemfiles/rails_8.0.gemfile +++ b/gemfiles/rails_8.0.gemfile @@ -1,9 +1,11 @@ +# frozen_string_literal: true + # This file was generated by Appraisal -source "https://rubygems.org" +source 'https://rubygems.org' -gem "activemodel", "~> 8.0.2" -gem "activerecord", "~> 8.0.2" -gem "sqlite" +gem 'activemodel', '~> 8.0.2' +gem 'activerecord', '~> 8.0.2' +gem 'sqlite' -gemspec path: "../" +gemspec path: '../' From c78557c5d8312340988ce71e8a5c98e015ef71bb Mon Sep 17 00:00:00 2001 From: Will Leonard Date: Sat, 5 Apr 2025 13:15:57 -0400 Subject: [PATCH 3/3] Fix rubocop in ci --- .github/workflows/ruby_ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruby_ci.yml b/.github/workflows/ruby_ci.yml index a036bee..30f6c78 100644 --- a/.github/workflows/ruby_ci.yml +++ b/.github/workflows/ruby_ci.yml @@ -45,7 +45,7 @@ jobs: - name: Set up Ruby uses: ruby/setup-ruby@v1 with: - ruby-version: '2.7.5' # Or any version you want to use for RuboCop + ruby-version: '3.1.7' # Or any version you want to use for RuboCop bundler-cache: true - name: Install dependencies