1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
source "https://rubygems.org"
gemspec
branch = File.read(File.expand_path("../maintenance-branch", __FILE__)).chomp
%w[rspec rspec-core rspec-mocks rspec-support].each do |lib|
library_path = File.expand_path("../../#{lib}", __FILE__)
if File.exist?(library_path) && !ENV['USE_GIT_REPOS']
gem lib, :path => library_path
else
gem lib, :git => "https://github.com/rspec/#{lib}.git", :branch => branch
end
end
if RUBY_VERSION < '1.9.3'
gem 'rake', '< 11.0.0' # rake 11 requires Ruby 1.9.3 or later
elsif RUBY_VERSION < '2.0.0'
gem 'rake', '< 12.0.0' # rake 12 requires Ruby 2.0.0 or later
elsif RUBY_VERSION < '2.2.0'
gem 'rake', '12.3.2'
else
gem 'rake', '>= 12.3.3'
end
if ENV['DIFF_LCS_VERSION']
gem 'diff-lcs', ENV['DIFF_LCS_VERSION']
else
gem 'diff-lcs', '~> 1.4', '>= 1.4.3'
end
gem 'coderay' # for syntax highlighting
gem 'yard', '~> 0.9.24', :require => false
### deps for rdoc.info
group :documentation do
gem 'redcarpet', :platform => :mri
gem 'github-markup', :platform => :mri
end
group :coverage do
gem 'simplecov'
end
if RUBY_VERSION < '2.0.0' || RUBY_ENGINE == 'java'
gem 'json', '< 2.0.0' # is a dependency of simplecov
else
gem 'json', '> 2.3.0'
end
# allow gems to be installed on older rubies and/or windows
if RUBY_VERSION < '2.2.0' && !!(RbConfig::CONFIG['host_os'] =~ /cygwin|mswin|mingw|bccwin|wince|emx/)
gem 'ffi', '< 1.10'
elsif RUBY_VERSION < '2.4.0' && !!(RbConfig::CONFIG['host_os'] =~ /cygwin|mswin|mingw|bccwin|wince|emx/)
gem 'ffi', '< 1.15'
elsif RUBY_VERSION < '1.9'
gem 'ffi', '< 1.9.19' # ffi dropped Ruby 1.8 support in 1.9.19
elsif RUBY_VERSION < '2.0'
gem 'ffi', '< 1.11.0' # ffi dropped Ruby 1.9 support in 1.11.0
else
gem 'ffi', '> 1.9.24' # prevent Github security vulnerability warning
end
if RUBY_VERSION <= '2.3.0' && !!(RbConfig::CONFIG['host_os'] =~ /cygwin|mswin|mingw|bccwin|wince|emx/)
gem "childprocess", "< 1.0.0"
elsif RUBY_VERSION < '2.0.0'
gem "childprocess", "< 1.0.0"
else
gem "childprocess", "> 1.0.0"
end
if RUBY_VERSION < '2.0.0'
gem 'thor', '< 1.0.0'
else
gem 'thor', '> 1.0.0'
end
if RUBY_VERSION < '1.9.2'
gem 'contracts', '~> 0.15.0' # is a dependency of aruba
end
# Version 5.12 of minitest requires Ruby 2.4
if RUBY_VERSION < '2.4.0'
gem 'minitest', '< 5.12.0'
end
platforms :jruby do
if RUBY_VERSION < '1.9.0'
# Pin jruby-openssl on older J Ruby
gem "jruby-openssl", "< 0.10.0"
else
gem "jruby-openssl"
end
end
if RUBY_VERSION >= '2.4' && RUBY_ENGINE == 'ruby'
gem 'rubocop', "~> 1.0", "< 1.12"
end
if RUBY_VERSION < '2.0.0'
gem 'cucumber', "<= 1.3.22"
elsif !ENV['DIFF_LCS_VERSION'].to_s.empty? && ENV['DIFF_LCS_VERSION'].scan(/\d\.\d/).first.to_f < 1.5
# Older version of diff-lcs cause a downstream error with cucumber and modern rails
gem "activesupport", "< 7"
end
eval File.read('Gemfile-custom') if File.exist?('Gemfile-custom')
|