Skip to content

Commit b680433

Browse files
authored
Refactor/cucumber rails 3 1 1 (#592)
* Update changelog; * Remove contributing from default files Update some minimum dev deps * Remove ancient ref to finding out if a file exists - use modern way * Add note about ruby 3.1 EOL date * Update changelog * Updated gems for unsupported rails versions * Amend helper install for feature tests;
1 parent 7077deb commit b680433

10 files changed

+18
-6
lines changed

.github/workflows/test.yml

+1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ jobs:
2626
# 2.6 -> EOL Mar '22 -> Only test Rails versions initially released before Sep '22
2727
# 2.7 -> EOL Mar '23 -> Only test Rails versions initially released before Sep '23
2828
# 3.0 -> EOL Mar '24 -> Only test Rails versions initially released before Sep '24
29+
# 3.1 -> EOL Mar '25 -> Only test Rails versions initially released before Sep '25
2930
include:
3031
- { ruby: '2.6', gemfile: 'rails_5_2' }
3132
- { ruby: '2.7', gemfile: 'rails_6_0' }

Appraisals

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
appraise 'rails_5_2' do
44
gem 'activerecord'
55
gem 'capybara', '< 3.33'
6+
gem 'concurrent-ruby', '< 1.3.5'
67
gem 'cucumber', '< 6'
78
gem 'factory_bot', '< 6.4'
89
gem 'psych', '< 4'
@@ -14,6 +15,7 @@ end
1415
appraise 'rails_6_0' do
1516
gem 'activerecord'
1617
gem 'capybara', '< 3.35'
18+
gem 'concurrent-ruby', '< 1.3.5'
1719
gem 'cucumber', '< 6'
1820
gem 'factory_bot', '< 6.4'
1921
gem 'matrix'
@@ -26,6 +28,7 @@ end
2628
appraise 'rails_6_1' do
2729
gem 'activerecord'
2830
gem 'capybara', '< 3.38'
31+
gem 'concurrent-ruby', '< 1.3.5'
2932
gem 'factory_bot', '< 6.4'
3033
gem 'psych', '< 4'
3134
gem 'railties', '~> 6.1.7'
@@ -34,6 +37,7 @@ end
3437

3538
appraise 'rails_7_0' do
3639
gem 'activerecord'
40+
gem 'concurrent-ruby', '< 1.3.5'
3741
gem 'cucumber', '< 10'
3842
gem 'factory_bot', '< 6.6'
3943
gem 'railties', '~> 7.0.8'

CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
This file is intended to be modified using the [`changelog`](https://github.com/cucumber/changelog) command-line tool.
99

1010
## [Unreleased]
11+
### Changed
12+
- Updated some dev dependencies and improved some dev rake tasks to make testing leaner
1113

1214
## [3.1.0] - 2024-11-25
15+
- Add support for Rails 8.0 (No code changes required) [#590](https://github.com/cucumber/cucumber-rails/pull/590)
1316

1417
## [3.0.1] - 2024-11-05
1518
### Changed

Rakefile

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# frozen_string_literal: true
22

33
require 'appraisal'
4-
require 'pathname'
54
require 'cucumber/rake/task'
65
require 'rspec/core/rake_task'
76

@@ -21,7 +20,7 @@ namespace :test do
2120

2221
desc 'Run tests against specified gemfile, e.g. rake test:gemfile[rails_6_0]'
2322
task :gemfile, :name do |_task, args|
24-
unless args.name && Pathname.new("gemfiles/#{args.name}.gemfile").exist?
23+
unless args.name && File.exist?("gemfiles/#{args.name}.gemfile")
2524
raise ArgumentError, "You must provide the name of an existing Appraisal gemfile,
2625
e.g. 'rake test:gemfile[rails_6_0]'"
2726
end

cucumber-rails.gemspec

+4-4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ Gem::Specification.new do |s|
3232
s.add_development_dependency('ammeter', '>= 1.1.5')
3333
s.add_development_dependency('appraisal', '>= 2.4.1', '< 3')
3434
s.add_development_dependency('aruba', '>= 1.1.2', '< 3')
35-
s.add_development_dependency('database_cleaner', '>= 1.8', '< 3.0')
35+
s.add_development_dependency('database_cleaner', '~> 2.0')
3636
s.add_development_dependency('rails', '>= 5.2', '< 9')
37-
s.add_development_dependency('rake', '>= 13.0')
38-
s.add_development_dependency('rspec', '~> 3.12')
37+
s.add_development_dependency('rake', '~> 13.2')
38+
s.add_development_dependency('rspec', '~> 3.13')
3939
s.add_development_dependency('rubocop', '~> 1.45.0')
4040
s.add_development_dependency('rubocop-packaging', '~> 0.5.2')
4141
s.add_development_dependency('rubocop-performance', '~> 1.17.1')
@@ -47,5 +47,5 @@ Gem::Specification.new do |s|
4747
s.add_development_dependency('yard', '~> 0.9.10')
4848

4949
s.require_path = 'lib'
50-
s.files = Dir['lib/**/*', 'CHANGELOG.md', 'CONTRIBUTING.md', 'LICENSE', 'README.md']
50+
s.files = Dir['lib/**/*', 'CHANGELOG.md', 'LICENSE', 'README.md']
5151
end

features/support/cucumber_rails_gem_helper.rb

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ def install_cucumber_rails(*options)
2020
def configure_rails_gems
2121
%w[bootsnap byebug jbuilder listen rails sass-rails turbolinks webpacker].each { |gem| remove_gem(gem) }
2222
%w[railties activerecord actionpack].each { |rails_gem| add_gem(rails_gem, Rails.version) }
23+
add_gem 'concurrent-ruby', '< 1.3.5' unless rails_equal_or_higher_than?('7.1')
2324
end
2425

2526
def add_cucumber_rails(options)

gemfiles/rails_5_2.gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ source "https://rubygems.org"
44

55
gem "activerecord"
66
gem "capybara", "< 3.33"
7+
gem "concurrent-ruby", "< 1.3.5"
78
gem "cucumber", "< 6"
89
gem "factory_bot", "< 6.4"
910
gem "psych", "< 4"

gemfiles/rails_6_0.gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ source "https://rubygems.org"
44

55
gem "activerecord"
66
gem "capybara", "< 3.35"
7+
gem "concurrent-ruby", "< 1.3.5"
78
gem "cucumber", "< 6"
89
gem "factory_bot", "< 6.4"
910
gem "matrix"

gemfiles/rails_6_1.gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ source "https://rubygems.org"
44

55
gem "activerecord"
66
gem "capybara", "< 3.38"
7+
gem "concurrent-ruby", "< 1.3.5"
78
gem "factory_bot", "< 6.4"
89
gem "psych", "< 4"
910
gem "railties", "~> 6.1.7"

gemfiles/rails_7_0.gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
source "https://rubygems.org"
44

55
gem "activerecord"
6+
gem "concurrent-ruby", "< 1.3.5"
67
gem "cucumber", "< 10"
78
gem "factory_bot", "< 6.6"
89
gem "railties", "~> 7.0.8"

0 commit comments

Comments
 (0)