# Copyright (C) The Arvados Authors. All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0

source 'https://rubygems.org'

gem 'rails', '~> 5.0.0'
gem 'arvados', '>= 0.1.20150511150219'

gem 'activerecord-nulldb-adapter', git: 'https://github.com/curoverse/nulldb'
gem 'multi_json'
gem 'oj'
gem 'sass'
gem 'mime-types'
gem 'responders', '~> 2.0'

# Note: keeping this out of the "group :assets" section "may" allow us
# to use Coffescript for UJS responses. It also prevents a
# warning/problem when running tests: "WARN: tilt autoloading
# 'coffee_script' in a non thread-safe way; explicit require
# 'coffee_script' suggested."
gem 'coffee-rails'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sassc-rails'
  gem 'uglifier', '~> 2.0'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyracer', :platforms => :ruby
end

group :development do
  gem 'byebug'
  gem 'ruby-debug-passenger'
  gem 'rack-mini-profiler', require: false
  gem 'flamegraph', require: false
  #gem 'web-console', '~> 2.0'
end

group :test, :diagnostics, :performance do
  gem 'minitest', '~> 5.10.3'
  gem 'selenium-webdriver', '~> 3'
  gem 'capybara', '~> 2.5.0'
  gem 'poltergeist', '~> 1.5.1'
  gem 'headless', '~> 1.0.2'
end

group :test, :performance do
  gem 'byebug'
  gem 'rails-perftest'
  gem 'ruby-prof'
  gem 'rvm-capistrano'
  # Note: "require: false" here tells bunder not to automatically
  # 'require' the packages during application startup. Installation is
  # still mandatory.
  gem 'simplecov', '~> 0.7', require: false
  gem 'simplecov-rcov', require: false
  gem 'mocha', require: false
  gem 'rails-controller-testing'
end

gem 'jquery-rails'
gem 'bootstrap-sass', '~> 3.4.1'
gem 'bootstrap-x-editable-rails'
gem 'bootstrap-tab-history-rails'

gem 'angularjs-rails', '~> 1.3.8'

gem 'less'
gem 'less-rails'

# Wiselinks hasn't been updated for many years and it's using deprecated methods
# Use our own Wiselinks fork until this PR is accepted:
# https://github.com/igor-alexandrov/wiselinks/pull/116
# gem 'wiselinks', git: 'https://github.com/curoverse/wiselinks.git', branch: 'rails-5.1-compatibility'

gem 'sshkey'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

gem 'passenger', :group => :production
gem 'andand'
gem 'RedCloth'

gem 'piwik_analytics'
gem 'httpclient', '~> 2.5'

# This fork has Rails 4 compatible routes
gem 'themes_for_rails', git: 'https://github.com/curoverse/themes_for_rails'

gem "deep_merge", :require => 'deep_merge/rails_compat'

gem 'morrisjs-rails'
gem 'raphael-rails'

gem 'lograge'
gem 'logstash-event'

gem 'safe_yaml'

gem 'npm-rails'