Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check lock files in and migrate to Appraisals #105

Merged
merged 14 commits into from
Feb 8, 2024
39 changes: 16 additions & 23 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,29 +8,27 @@ jobs:
fail-fast: false
matrix:
ruby:
- 2.7
- 3.0
- 3.1
- 3.2
- 3.3
rails:
- 6.0.0
- 6.1.0
- 7.0.1
- 7.1.2
exclude: # These Rails versions are too new for the respective Ruby versions, or vice-versa
- ruby: 3.0
rails: 6.0.0
- ruby: 3.1
rails: 6.0.0
- ruby: 3.2
rails: 6.0.0
- ruby: 3.3
rails: 6.0.0
gemfile:
- gemfiles/rails_6_1.gemfile
- gemfiles/rails_7_0.gemfile
- gemfiles/rails_7_1.gemfile
include:
- ruby: 2.7
gemfile: gemfiles/ruby_2.7_rails_6_0.gemfile
- ruby: 2.7
gemfile: gemfiles/ruby_2.7_rails_6_1.gemfile
- ruby: 2.7
gemfile: gemfiles/ruby_2.7_rails_7_0.gemfile
- ruby: 2.7
gemfile: gemfiles/ruby_2.7_rails_7_1.gemfile
env:
PERCONA_DB_USER: root
PERCONA_DB_PASSWORD: root
RAILS_VERSION: "~> ${{ matrix.rails }}"
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -51,20 +49,15 @@ jobs:
lint:
strategy:
fail-fast: false
matrix:
ruby:
- 2.7
rails:
- 6.1.0
env:
PERCONA_DB_USER: root
PERCONA_DB_PASSWORD: root
RAILS_VERSION: "~> ${{ matrix.rails }}"
BUNDLE_GEMFILE: gemfiles/ruby_2.7_rails_6_0.gemfile
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
ruby-version: 2.7
bundler-cache: true
- run: bundle exec rubocop --parallel
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
/.bundle/
/.yardoc
/Gemfile.lock
/_yardoc/
/coverage/
/doc/
Expand Down
35 changes: 35 additions & 0 deletions Appraisals
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
appraise 'rails-6-0' do
gem 'rails', '6.0.6.1'
end

appraise 'rails-6-1' do
gem 'rails', '6.1.7.6'
end

appraise 'rails-7-0' do
gem 'rails', '7.0.8'
end

appraise 'rails-7-1' do
gem 'rails', '7.1.3'
end

appraise 'ruby-2.7-rails-6-0' do
gem 'rails', '6.0.6.1'
gem 'nokogiri', '< 1.16'
end

appraise 'ruby-2.7-rails-6-1' do
gem 'rails', '6.1.7.6'
gem 'nokogiri', '< 1.16'
end

appraise 'ruby-2.7-rails-7-0' do
gem 'rails', '7.0.8'
gem 'nokogiri', '< 1.16'
end

appraise 'ruby-2.7-rails-7-1' do
gem 'rails', '7.1.3'
gem 'nokogiri', '< 1.16'
end
196 changes: 196 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
PATH
remote: .
specs:
departure (6.6.0)
activerecord (>= 6.0.0, < 7.2.0, != 7.0.0)
mysql2 (>= 0.4.0, <= 0.5.5)
railties (>= 6.0.0, < 7.2.0, != 7.0.0)

GEM
remote: https://rubygems.org/
specs:
actionpack (7.1.3)
actionview (= 7.1.3)
activesupport (= 7.1.3)
nokogiri (>= 1.8.5)
racc
rack (>= 2.2.4)
rack-session (>= 1.0.1)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
actionview (7.1.3)
activesupport (= 7.1.3)
builder (~> 3.1)
erubi (~> 1.11)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
activemodel (7.1.3)
activesupport (= 7.1.3)
activerecord (7.1.3)
activemodel (= 7.1.3)
activesupport (= 7.1.3)
timeout (>= 0.4.0)
activesupport (7.1.3)
base64
bigdecimal
concurrent-ruby (~> 1.0, >= 1.0.2)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
minitest (>= 5.1)
mutex_m
tzinfo (~> 2.0)
appraisal (2.4.1)
bundler
rake
thor (>= 0.14.0)
ast (2.4.2)
base64 (0.2.0)
bigdecimal (3.1.6)
builder (3.2.4)
byebug (11.1.3)
climate_control (0.0.4)
activesupport (>= 3.0)
codeclimate-test-reporter (1.0.9)
simplecov (<= 0.13)
coderay (1.1.3)
concurrent-ruby (1.2.3)
connection_pool (2.4.1)
crass (1.0.6)
diff-lcs (1.5.1)
docile (1.1.5)
drb (2.2.0)
ruby2_keywords
erubi (1.12.0)
i18n (1.14.1)
concurrent-ruby (~> 1.0)
io-console (0.7.2)
irb (1.11.2)
rdoc
reline (>= 0.4.2)
json (2.7.1)
language_server-protocol (3.17.0.3)
loofah (2.22.0)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
method_source (1.0.0)
minitest (5.22.2)
mutex_m (0.2.0)
mysql2 (0.5.5)
nokogiri (1.16.2-arm64-darwin)
racc (~> 1.4)
nokogiri (1.16.2-x86_64-linux)
racc (~> 1.4)
parallel (1.24.0)
parser (3.3.0.5)
ast (~> 2.4.1)
racc
pry (0.14.2)
coderay (~> 1.1)
method_source (~> 1.0)
pry-byebug (3.10.1)
byebug (~> 11.0)
pry (>= 0.13, < 0.15)
psych (5.1.2)
stringio
racc (1.7.3)
rack (3.0.9)
rack-session (2.0.0)
rack (>= 3.0.0)
rack-test (2.1.0)
rack (>= 1.3)
rackup (2.1.0)
rack (>= 3)
webrick (~> 1.8)
rails-dom-testing (2.2.0)
activesupport (>= 5.0.0)
minitest
nokogiri (>= 1.6)
rails-html-sanitizer (1.6.0)
loofah (~> 2.21)
nokogiri (~> 1.14)
railties (7.1.3)
actionpack (= 7.1.3)
activesupport (= 7.1.3)
irb
rackup (>= 1.0.0)
rake (>= 12.2)
thor (~> 1.0, >= 1.2.2)
zeitwerk (~> 2.6)
rainbow (3.1.1)
rake (13.1.0)
rdoc (6.6.2)
psych (>= 4.0.0)
regexp_parser (2.9.0)
reline (0.4.2)
io-console (~> 0.5)
rexml (3.2.6)
rspec (3.13.0)
rspec-core (~> 3.13.0)
rspec-expectations (~> 3.13.0)
rspec-mocks (~> 3.13.0)
rspec-core (3.13.0)
rspec-support (~> 3.13.0)
rspec-expectations (3.13.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.13.0)
rspec-its (1.3.0)
rspec-core (>= 3.0.0)
rspec-expectations (>= 3.0.0)
rspec-mocks (3.13.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.13.0)
rspec-support (3.13.0)
rubocop (1.60.2)
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.30.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.30.0)
parser (>= 3.2.1.0)
rubocop-performance (1.20.2)
rubocop (>= 1.48.1, < 2.0)
rubocop-ast (>= 1.30.0, < 2.0)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
simplecov (0.13.0)
docile (~> 1.1.0)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
stringio (3.1.0)
thor (1.3.0)
timeout (0.4.1)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (2.5.0)
webrick (1.8.1)
zeitwerk (2.6.13)

PLATFORMS
arm64-darwin-21
arm64-darwin-22
arm64-darwin-23
x86_64-linux

DEPENDENCIES
appraisal (~> 2.4.1)
climate_control (~> 0.0.3)
codeclimate-test-reporter (~> 1.0.3)
departure!
pry-byebug
rake (>= 10.0)
rspec (~> 3.4, >= 3.4.0)
rspec-its (~> 1.2)
rubocop (~> 1.60.2)
rubocop-performance (~> 1.20.2)

BUNDLED WITH
2.4.22
9 changes: 3 additions & 6 deletions departure.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,6 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)

require 'departure/version'

# This environment variable is set on CI to facilitate testing with multiple
# versions of Rails.
RAILS_DEPENDENCY_VERSION = ENV.fetch('RAILS_VERSION', ['>= 6.0.0', '!= 7.0.0', '< 7.2.0'])

Gem::Specification.new do |spec|
spec.name = 'departure'
spec.version = Departure::VERSION
Expand All @@ -25,10 +21,11 @@ Gem::Specification.new do |spec|

spec.required_ruby_version = '>= 2.7.0'

spec.add_runtime_dependency 'railties', *Array(RAILS_DEPENDENCY_VERSION)
spec.add_runtime_dependency 'activerecord', *Array(RAILS_DEPENDENCY_VERSION)
spec.add_runtime_dependency 'railties', '>= 6.0.0', '!= 7.0.0', '< 7.2.0'
spec.add_runtime_dependency 'activerecord', '>= 6.0.0', '!= 7.0.0', '< 7.2.0'
spec.add_runtime_dependency 'mysql2', '>= 0.4.0', '<= 0.5.5'

spec.add_development_dependency 'appraisal', '~> 2.4.1'
spec.add_development_dependency 'rake', '>= 10.0'
spec.add_development_dependency 'rspec', '~> 3.4', '>= 3.4.0'
spec.add_development_dependency 'rspec-its', '~> 1.2'
Expand Down
10 changes: 10 additions & 0 deletions gemfiles/rails_6_0.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file was generated by Appraisal

source 'https://rubygems.org'

gem 'codeclimate-test-reporter', '~> 1.0.3', group: :test, require: nil
gem 'rails', '6.0.6.1'
gem 'rubocop', '~> 1.60.2', require: false
gem 'rubocop-performance', '~> 1.20.2', require: false

gemspec path: '../'
Loading