Skip to content

Commit 2b71cd9

Browse files
committed
(CONT-237) Bump minimum Ruby version requirement
Primarily, this commit bumps the minimum required ruby version to 2.7. Along with this change a number of dependencies have also been bumped so that they are inline with other gems.
1 parent a28e6e9 commit 2b71cd9

File tree

2 files changed

+42
-44
lines changed

2 files changed

+42
-44
lines changed

Gemfile

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,41 +2,41 @@
22

33
source ENV['GEM_SOURCE'] || 'https://rubygems.org'
44

5-
def location_for(place_or_version, fake_version = nil)
6-
git_url_regex = %r{\A(?<url>(?:https?|git)[:@][^#]*)(?:#(?<branch>.*))?}
7-
file_url_regex = %r{\Afile://(?<path>.*)}
8-
9-
if place_or_version && (git_url = place_or_version.match(git_url_regex))
10-
[fake_version, { git: git_url[:url], branch: git_url[:branch], require: false }].compact
11-
elsif place_or_version && (file_url = place_or_version.match(file_url_regex))
12-
['>= 0', { path: File.expand_path(file_url[:path]), require: false }]
13-
else
14-
[place_or_version, { require: false }]
15-
end
16-
end
17-
18-
# Specify the global dependencies in puppetlabs_spec_helper.gemspec
19-
# Note that only ruby 1.9 compatible dependencies may go there, everything else needs to be documented and pulled in manually, and optionally by everyone who wants to use the extended features.
205
gemspec
216

22-
def infer_puppet_version
23-
# Infer the Puppet Gem version based on the Ruby Version
24-
ruby_ver = Gem::Version.new(RUBY_VERSION.dup)
25-
return '~> 7.0' if ruby_ver >= Gem::Version.new('2.7.0')
26-
return '~> 6.0' if ruby_ver >= Gem::Version.new('2.5.0')
27-
'~> 5.0'
7+
if ENV['PUPPET_GEM_VERSION']
8+
gem 'puppet', ENV['PUPPET_GEM_VERSION'], :require => false
9+
else
10+
gem 'puppet', :require => false
2811
end
2912

3013
group :development do
3114
gem 'codecov'
32-
gem 'github_changelog_generator' if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.2.0')
33-
gem 'puppet', *location_for(ENV['PUPPET_GEM_VERSION'] || ENV['PUPPET_VERSION'] || infer_puppet_version)
34-
gem 'simplecov', '~> 0'
15+
gem 'simplecov'
3516
gem 'simplecov-console'
36-
if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.4')
37-
gem 'rubocop', '0.57.2'
38-
gem 'rubocop-rspec'
39-
end
17+
18+
gem 'pry', require: false
19+
gem 'pry-byebug', require: false
20+
gem 'pry-stack_explorer', require: false
21+
22+
gem 'rake'
23+
gem 'rspec', '~> 3.1'
24+
gem 'rspec-its', '~> 1.0'
25+
gem 'rubocop', '~> 1.6.1', require: false
26+
gem 'rubocop-rspec', '~> 2.0.1', require: false
27+
gem 'rubocop-performance', '~> 1.9.1', require: false
28+
29+
gem 'fakefs'
30+
gem 'yard'
4031
end
4132

42-
# vim:filetype=ruby
33+
34+
# Evaluate Gemfile.local if it exists
35+
if File.exists? "#{__FILE__}.local"
36+
eval(File.read("#{__FILE__}.local"), binding)
37+
end
38+
39+
# Evaluate ~/.gemfile if it exists
40+
if File.exists?(File.join(Dir.home, '.gemfile'))
41+
eval(File.read(File.join(Dir.home, '.gemfile')), binding)
42+
end

puppetlabs_spec_helper.gemspec

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,24 +15,22 @@ Gem::Specification.new do |spec|
1515
spec.homepage = 'http://github.com/puppetlabs/puppetlabs_spec_helper'
1616
spec.license = 'Apache-2.0'
1717

18-
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19-
spec.bindir = 'exe'
20-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
18+
spec.files = Dir[
19+
'README.md',
20+
'LICENSE',
21+
'.rubocop.yml',
22+
'lib/**/*',
23+
'bin/**/*',
24+
'spec/**/*',
25+
]
26+
spec.executables = Dir['bin/**/*'].map { |f| File.basename(f) }
2127
spec.require_paths = ['lib']
2228

23-
spec.required_ruby_version = Gem::Requirement.new('>= 2.4')
29+
spec.required_ruby_version = Gem::Requirement.new('>= 2.7'.freeze)
2430

2531
spec.add_runtime_dependency 'mocha', '~> 1.0'
26-
spec.add_runtime_dependency 'pathspec', '>= 0.2.1', '< 1.1.0'
27-
spec.add_runtime_dependency 'puppet-lint', '~> 2.0'
28-
spec.add_runtime_dependency 'puppet-syntax', ['>= 2.0', '< 4']
32+
spec.add_runtime_dependency 'pathspec', '~> 1.0'
33+
spec.add_runtime_dependency 'puppet-lint', '~> 3.0'
34+
spec.add_runtime_dependency 'puppet-syntax', '~> 3.0'
2935
spec.add_runtime_dependency 'rspec-puppet', '~> 2.0'
30-
31-
spec.add_development_dependency 'bundler'
32-
spec.add_development_dependency 'fakefs', ['>= 0.13.3', '< 2']
33-
spec.add_development_dependency 'pry'
34-
spec.add_development_dependency 'puppet'
35-
spec.add_development_dependency 'rake', ['>= 10.0', '< 14']
36-
spec.add_development_dependency 'rspec', '~> 3.0'
37-
spec.add_development_dependency 'yard'
3836
end

0 commit comments

Comments
 (0)