You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Gemfile 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. source 'https://rubygems.org'
  2. ruby '>= 2.4.0', '< 2.8.0'
  3. gem 'bundler', '>= 1.12.0'
  4. gem 'rails', '5.2.8.1'
  5. gem 'sprockets', '~> 3.7.2' if RUBY_VERSION < '2.5'
  6. gem 'globalid', '~> 0.4.2' if Gem.ruby_version < Gem::Version.new('2.6.0')
  7. gem 'rouge', '~> 3.26.0'
  8. gem 'request_store', '~> 1.5.0'
  9. gem "mini_mime", "~> 1.0.1"
  10. gem "actionpack-xml_parser"
  11. gem 'roadie-rails', (RUBY_VERSION < '2.5' ? '~> 1.3.0' : '~> 2.2.0')
  12. gem 'marcel'
  13. gem "mail", "~> 2.7.1"
  14. gem 'csv', (RUBY_VERSION < '2.5' ? ['>= 3.1.1', '<= 3.1.5'] : '~> 3.1.1')
  15. gem 'nokogiri', (if Gem.ruby_version < Gem::Version.new('2.5.0')
  16. '~> 1.10.10'
  17. elsif Gem.ruby_version < Gem::Version.new('2.6.0')
  18. '~> 1.12.5'
  19. else
  20. '~> 1.13.6'
  21. end)
  22. gem 'i18n', '~> 1.8.2'
  23. gem "rbpdf", "~> 1.20.0"
  24. gem 'addressable'
  25. gem 'rubyzip', '~> 2.3.0'
  26. gem 'psych', '~> 3.1' if Gem.ruby_version < Gem::Version.new('2.6.0')
  27. # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
  28. gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin]
  29. # TOTP-based 2-factor authentication
  30. gem 'rotp', '>= 5.0.0'
  31. gem 'rqrcode'
  32. # Optional gem for LDAP authentication
  33. group :ldap do
  34. gem 'net-ldap', '~> 0.17.0'
  35. end
  36. # Optional gem for OpenID authentication
  37. group :openid do
  38. gem "ruby-openid", "~> 2.9.2", :require => "openid"
  39. gem "rack-openid"
  40. end
  41. # Optional gem for exporting the gantt to a PNG file
  42. group :minimagick do
  43. gem 'mini_magick', '~> 4.11.0'
  44. end
  45. # Optional Markdown support, not for JRuby
  46. group :markdown do
  47. gem 'redcarpet', '~> 3.5.1'
  48. end
  49. # Include database gems for the adapters found in the database
  50. # configuration file
  51. require 'erb'
  52. require 'yaml'
  53. database_file = File.join(File.dirname(__FILE__), "config/database.yml")
  54. if File.exist?(database_file)
  55. yaml_config = ERB.new(IO.read(database_file)).result
  56. database_config = YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(yaml_config) : YAML.load(yaml_config)
  57. adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
  58. if adapters.any?
  59. adapters.each do |adapter|
  60. case adapter
  61. when 'mysql2'
  62. gem "mysql2", "~> 0.5.0", :platforms => [:mri, :mingw, :x64_mingw]
  63. when /postgresql/
  64. gem "pg", "~> 1.2.2", :platforms => [:mri, :mingw, :x64_mingw]
  65. when /sqlite3/
  66. gem "sqlite3", "~> 1.4.0", :platforms => [:mri, :mingw, :x64_mingw]
  67. when /sqlserver/
  68. gem "tiny_tds", "~> 2.1.2", :platforms => [:mri, :mingw, :x64_mingw]
  69. gem "activerecord-sqlserver-adapter", "~> 5.2.1", :platforms => [:mri, :mingw, :x64_mingw]
  70. else
  71. warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems")
  72. end
  73. end
  74. else
  75. warn("No adapter found in config/database.yml, please configure it first")
  76. end
  77. else
  78. warn("Please configure your config/database.yml first")
  79. end
  80. group :development do
  81. gem "yard"
  82. end
  83. group :test do
  84. gem "rails-dom-testing"
  85. gem 'mocha', (Gem.ruby_version < Gem::Version.new('2.7.0') ? ['>= 1.4.0', '< 2.0.0'] : '>= 1.4.0')
  86. gem 'simplecov', '~> 0.18.5', :require => false
  87. gem "ffi", platforms: [:mingw, :x64_mingw, :mswin]
  88. # For running system tests
  89. # TODO: Remove version specification once Capybara supports Puma 6
  90. gem 'puma', '< 6.0.0'
  91. gem 'capybara', '~> 3.31.0'
  92. gem "selenium-webdriver", "~> 3.142.7"
  93. gem 'webdrivers', '~> 4.4', require: false
  94. # RuboCop
  95. gem 'rubocop', '~> 1.12.0'
  96. gem 'rubocop-performance', '~> 1.10.1'
  97. gem 'rubocop-rails', '~> 2.9.0'
  98. end
  99. local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local")
  100. if File.exists?(local_gemfile)
  101. eval_gemfile local_gemfile
  102. end
  103. # Load plugins' Gemfiles
  104. Dir.glob File.expand_path("../plugins/*/{Gemfile,PluginGemfile}", __FILE__) do |file|
  105. eval_gemfile file
  106. end