2013-03-06 11:55:11 -05:00
|
|
|
source "https://rubygems.org"
|
2011-10-08 17:36:38 -04:00
|
|
|
|
2015-11-19 04:47:12 -05:00
|
|
|
gem 'rails', '4.1.14'
|
2013-12-05 09:26:11 -05:00
|
|
|
|
2015-06-30 21:38:26 -04:00
|
|
|
# Specify a sprockets version due to security issue
|
|
|
|
# See https://groups.google.com/forum/#!topic/rubyonrails-security/doAVp0YaTqY
|
|
|
|
gem 'sprockets', '~> 2.12.3'
|
|
|
|
|
2014-02-26 03:41:44 -05:00
|
|
|
# Default values for AR models
|
|
|
|
gem "default_value_for", "~> 3.0.0"
|
|
|
|
|
2012-06-20 06:45:26 -04:00
|
|
|
# Supported DBs
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "mysql2", '~> 0.3.16', group: :mysql
|
|
|
|
gem "pg", '~> 0.18.2', group: :postgres
|
2012-06-20 06:45:26 -04:00
|
|
|
|
2015-06-30 15:25:36 -04:00
|
|
|
# Authentication libraries
|
2015-10-06 21:42:32 -04:00
|
|
|
gem 'devise', '~> 3.5.2'
|
|
|
|
gem 'devise-async', '~> 0.9.0'
|
2015-11-25 17:01:02 -05:00
|
|
|
gem 'doorkeeper', '~> 2.2.0'
|
2015-10-06 21:42:32 -04:00
|
|
|
gem 'omniauth', '~> 1.2.2'
|
|
|
|
gem 'omniauth-bitbucket', '~> 0.0.2'
|
2015-11-03 11:58:12 -05:00
|
|
|
gem 'omniauth-facebook', '~> 3.0.0'
|
2015-10-06 21:42:32 -04:00
|
|
|
gem 'omniauth-github', '~> 1.1.1'
|
|
|
|
gem 'omniauth-gitlab', '~> 1.0.0'
|
2015-10-06 21:57:10 -04:00
|
|
|
gem 'omniauth-google-oauth2', '~> 0.2.0'
|
2015-10-06 21:48:19 -04:00
|
|
|
gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
|
2015-10-06 21:42:32 -04:00
|
|
|
gem 'omniauth-saml', '~> 1.4.0'
|
2015-10-06 22:03:42 -04:00
|
|
|
gem 'omniauth-shibboleth', '~> 1.2.0'
|
2015-10-06 21:42:32 -04:00
|
|
|
gem 'omniauth-twitter', '~> 1.2.0'
|
2015-08-31 06:59:52 -04:00
|
|
|
gem 'omniauth_crowd'
|
2015-11-24 15:48:49 -05:00
|
|
|
gem 'rack-oauth2', '~> 1.2.1'
|
2012-06-20 06:45:26 -04:00
|
|
|
|
2015-03-27 18:35:26 -04:00
|
|
|
# Two-factor authentication
|
2015-09-19 21:16:18 -04:00
|
|
|
gem 'devise-two-factor', '~> 2.0.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'rqrcode-rails3', '~> 0.1.7'
|
|
|
|
gem 'attr_encrypted', '~> 1.3.4'
|
2015-03-27 18:35:26 -04:00
|
|
|
|
2014-12-15 05:11:38 -05:00
|
|
|
# Browser detection
|
2015-08-23 19:52:29 -04:00
|
|
|
gem "browser", '~> 1.0.0'
|
2014-12-15 05:11:38 -05:00
|
|
|
|
2013-03-03 15:08:04 -05:00
|
|
|
# Extracting information from a git repository
|
2013-05-14 06:07:39 -04:00
|
|
|
# Provide access to Gitlab::Git library
|
2015-11-09 07:40:29 -05:00
|
|
|
gem "gitlab_git", '~> 7.2.20'
|
2013-04-27 16:50:17 -04:00
|
|
|
|
2012-12-30 08:15:56 -05:00
|
|
|
# LDAP Auth
|
2015-07-12 16:46:51 -04:00
|
|
|
# GitLab fork with several improvements to original library. For full list of changes
|
2015-06-01 06:59:02 -04:00
|
|
|
# see https://github.com/intridea/omniauth-ldap/compare/master...gitlabhq:master
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'gitlab_omniauth-ldap', '~> 1.2.1', require: "omniauth-ldap"
|
2012-12-30 08:15:56 -05:00
|
|
|
|
2013-05-13 15:54:23 -04:00
|
|
|
# Git Wiki
|
2015-03-20 09:15:56 -04:00
|
|
|
gem 'gollum-lib', '~> 4.0.2'
|
2013-05-13 15:54:23 -04:00
|
|
|
|
2012-10-02 09:29:03 -04:00
|
|
|
# Language detection
|
2015-11-09 07:40:29 -05:00
|
|
|
gem "github-linguist", "~> 4.7.0", require: "linguist"
|
2012-10-02 09:29:03 -04:00
|
|
|
|
2012-08-11 15:59:56 -04:00
|
|
|
# API
|
2015-10-12 17:47:32 -04:00
|
|
|
gem 'grape', '~> 0.13.0'
|
2015-10-07 22:08:30 -04:00
|
|
|
gem 'grape-entity', '~> 0.4.2'
|
|
|
|
gem 'rack-cors', '~> 0.4.0', require: 'rack/cors'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Format dates and times
|
|
|
|
# based on human-friendly examples
|
2015-11-02 15:33:56 -05:00
|
|
|
gem "stamp", '~> 0.6.0'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Pagination
|
2015-09-17 14:24:47 -04:00
|
|
|
gem "kaminari", "~> 0.16.3"
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# HAML
|
2015-10-07 21:59:16 -04:00
|
|
|
gem "haml-rails", '~> 0.9.0'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Files attachments
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "carrierwave", '~> 0.9.0'
|
2013-07-08 02:47:31 -04:00
|
|
|
|
2014-05-23 04:22:00 -04:00
|
|
|
# Drag and Drop UI
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'dropzonejs-rails', '~> 0.7.1'
|
2014-05-23 04:22:00 -04:00
|
|
|
|
2013-05-01 05:41:37 -04:00
|
|
|
# for aws storage
|
2015-06-09 11:56:37 -04:00
|
|
|
gem "fog", "~> 1.25.0"
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "unf", '~> 0.1.4'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Authorization
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "six", '~> 0.2.0'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Seed data
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "seed-fu", '~> 2.3.5'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
2015-04-29 15:02:41 -04:00
|
|
|
# Markdown and HTML processing
|
2015-04-16 16:41:51 -04:00
|
|
|
gem 'html-pipeline', '~> 1.11.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'task_list', '~> 1.0.2', require: 'task_list/railtie'
|
|
|
|
gem 'github-markup', '~> 1.3.1'
|
2015-10-15 12:01:24 -04:00
|
|
|
gem 'redcarpet', '~> 3.3.3'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'RedCloth', '~> 4.2.9'
|
2015-04-29 15:02:41 -04:00
|
|
|
gem 'rdoc', '~>3.6'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'org-ruby', '~> 0.9.12'
|
2015-11-24 15:42:42 -05:00
|
|
|
gem 'creole', '~> 0.5.0'
|
2015-09-09 04:06:35 -04:00
|
|
|
gem 'wikicloth', '0.8.1'
|
2015-05-12 18:54:13 -04:00
|
|
|
gem 'asciidoctor', '~> 1.5.2'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
2014-04-15 11:02:02 -04:00
|
|
|
# Diffs
|
|
|
|
gem 'diffy', '~> 3.0.3'
|
|
|
|
|
2013-08-19 15:54:12 -04:00
|
|
|
# Application server
|
2013-12-18 11:06:49 -05:00
|
|
|
group :unicorn do
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "unicorn", '~> 4.8.2'
|
|
|
|
gem 'unicorn-worker-killer', '~> 0.4.2'
|
2013-12-18 11:06:49 -05:00
|
|
|
end
|
2012-08-11 15:59:56 -04:00
|
|
|
|
2013-02-14 10:33:20 -05:00
|
|
|
# State machine
|
2015-11-08 12:15:58 -05:00
|
|
|
gem "state_machines-activerecord", '~> 0.3.0'
|
2015-09-25 04:46:13 -04:00
|
|
|
# Run events after state machine commits
|
|
|
|
gem 'after_commit_queue'
|
2013-02-14 10:33:20 -05:00
|
|
|
|
2012-08-11 15:59:56 -04:00
|
|
|
# Issue tags
|
2015-03-28 19:39:32 -04:00
|
|
|
gem 'acts-as-taggable-on', '~> 3.4'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Background jobs
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'sinatra', '~> 1.4.4', require: nil
|
2015-09-15 17:18:52 -04:00
|
|
|
gem 'sidekiq', '3.3.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'sidetiq', '~> 0.6.3'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# HTTP requests
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "httparty", '~> 0.13.3'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
|
|
|
# Colored output to console
|
2015-11-24 16:29:21 -05:00
|
|
|
gem "colorize", '~> 0.7.0'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
2012-11-18 15:51:49 -05:00
|
|
|
# GitLab settings
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'settingslogic', '~> 2.0.9'
|
2011-11-04 03:42:36 -04:00
|
|
|
|
2012-08-11 15:59:56 -04:00
|
|
|
# Misc
|
2015-08-25 21:42:46 -04:00
|
|
|
|
|
|
|
gem 'version_sorter', '~> 2.0.0'
|
2012-08-11 15:59:56 -04:00
|
|
|
|
2013-03-06 10:30:48 -05:00
|
|
|
# Cache
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "redis-rails", '~> 4.0.0'
|
2013-03-06 10:30:48 -05:00
|
|
|
|
2013-05-22 10:59:15 -04:00
|
|
|
# Campfire integration
|
2015-10-07 21:54:15 -04:00
|
|
|
gem 'tinder', '~> 1.10.0'
|
2013-05-22 10:59:15 -04:00
|
|
|
|
2013-05-23 14:10:32 -04:00
|
|
|
# HipChat integration
|
2015-03-30 18:53:24 -04:00
|
|
|
gem 'hipchat', '~> 1.5.0'
|
2013-05-23 14:10:32 -04:00
|
|
|
|
2013-08-19 05:11:36 -04:00
|
|
|
# Flowdock integration
|
2015-08-14 09:31:11 -04:00
|
|
|
gem "gitlab-flowdock-git-hook", "~> 1.0.1"
|
2013-08-19 05:11:36 -04:00
|
|
|
|
2014-02-18 18:09:16 -05:00
|
|
|
# Gemnasium integration
|
|
|
|
gem "gemnasium-gitlab-service", "~> 0.2"
|
|
|
|
|
2014-03-18 13:27:03 -04:00
|
|
|
# Slack integration
|
2015-10-07 21:51:05 -04:00
|
|
|
gem "slack-notifier", "~> 1.2.0"
|
2014-03-18 13:27:03 -04:00
|
|
|
|
2014-07-29 11:41:55 -04:00
|
|
|
# Asana integration
|
2015-11-25 17:03:30 -05:00
|
|
|
gem 'asana', '~> 0.4.0'
|
2014-07-29 11:41:55 -04:00
|
|
|
|
2015-08-04 18:21:12 -04:00
|
|
|
# FogBugz integration
|
2015-09-15 16:09:32 -04:00
|
|
|
gem 'ruby-fogbugz', '~> 0.2.1'
|
2015-08-04 18:21:12 -04:00
|
|
|
|
2013-05-09 01:00:56 -04:00
|
|
|
# d3
|
2015-04-19 15:43:46 -04:00
|
|
|
gem 'd3_rails', '~> 3.5.5'
|
2013-05-09 01:00:56 -04:00
|
|
|
|
2015-01-28 16:18:22 -05:00
|
|
|
#cal-heatmap
|
|
|
|
gem "cal-heatmap-rails", "~> 0.0.1"
|
|
|
|
|
2013-05-09 01:00:56 -04:00
|
|
|
# underscore-rails
|
|
|
|
gem "underscore-rails", "~> 1.4.4"
|
|
|
|
|
2013-07-10 06:48:03 -04:00
|
|
|
# Sanitize user input
|
2014-04-08 04:20:39 -04:00
|
|
|
gem "sanitize", '~> 2.0'
|
2013-07-10 06:48:03 -04:00
|
|
|
|
2013-09-24 14:13:25 -04:00
|
|
|
# Protect against bruteforcing
|
2015-05-22 16:25:03 -04:00
|
|
|
gem "rack-attack", '~> 4.3.0'
|
2013-09-24 14:13:25 -04:00
|
|
|
|
2014-02-10 09:18:46 -05:00
|
|
|
# Ace editor
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'ace-rails-ap', '~> 2.0.1'
|
2014-02-10 09:18:46 -05:00
|
|
|
|
2014-09-24 06:26:53 -04:00
|
|
|
# Keyboard shortcuts
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'mousetrap-rails', '~> 1.4.6'
|
2014-08-21 04:14:31 -04:00
|
|
|
|
2015-03-15 10:42:31 -04:00
|
|
|
# Detect and convert string character encoding
|
2015-11-09 07:40:29 -05:00
|
|
|
gem 'charlock_holmes', '~> 0.7.3'
|
2015-03-15 10:42:31 -04:00
|
|
|
|
2015-06-30 21:38:26 -04:00
|
|
|
gem "sass-rails", '~> 4.0.5'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "coffee-rails", '~> 4.1.0'
|
2015-10-14 02:39:59 -04:00
|
|
|
gem "uglifier", '~> 2.7.2'
|
2015-05-29 00:05:14 -04:00
|
|
|
gem 'turbolinks', '~> 2.5.0'
|
2015-11-27 16:34:59 -05:00
|
|
|
gem 'jquery-turbolinks', '~> 2.1.0'
|
2013-12-06 10:04:50 -05:00
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'addressable', '~> 2.3.8'
|
2015-05-23 00:33:46 -04:00
|
|
|
gem 'bootstrap-sass', '~> 3.0'
|
|
|
|
gem 'font-awesome-rails', '~> 4.2'
|
|
|
|
gem 'gitlab_emoji', '~> 0.1'
|
2015-11-24 15:36:36 -05:00
|
|
|
gem 'gon', '~> 6.0.1'
|
2015-10-26 05:39:33 -04:00
|
|
|
gem 'jquery-atwho-rails', '~> 1.3.2'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'jquery-rails', '~> 3.1.3'
|
|
|
|
gem 'jquery-scrollto-rails', '~> 1.4.3'
|
|
|
|
gem 'jquery-ui-rails', '~> 4.2.1'
|
2015-10-26 05:14:35 -04:00
|
|
|
gem 'nprogress-rails', '~> 0.1.6.7'
|
2015-05-23 00:33:46 -04:00
|
|
|
gem 'raphael-rails', '~> 2.1.2'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'request_store', '~> 1.2.0'
|
2015-06-24 17:13:21 -04:00
|
|
|
gem 'select2-rails', '~> 3.5.9'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'virtus', '~> 1.0.1'
|
2011-10-08 17:36:38 -04:00
|
|
|
|
2011-10-27 15:37:17 -04:00
|
|
|
group :development do
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "foreman"
|
2015-09-09 09:41:21 -04:00
|
|
|
gem 'brakeman', '3.0.1', require: false
|
2015-08-25 21:42:46 -04:00
|
|
|
|
|
|
|
gem "annotate", "~> 2.6.0"
|
|
|
|
gem "letter_opener", '~> 1.1.2'
|
|
|
|
gem 'quiet_assets', '~> 1.0.2'
|
2015-01-29 06:37:17 -05:00
|
|
|
gem 'rerun', '~> 0.10.0'
|
2015-10-13 05:54:06 -04:00
|
|
|
gem 'bullet', require: false
|
2015-11-04 13:13:19 -05:00
|
|
|
gem 'rblineprof', platform: :mri, require: false
|
2013-10-01 08:15:14 -04:00
|
|
|
|
2012-12-25 17:42:53 -05:00
|
|
|
# Better errors handler
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'better_errors', '~> 1.0.1'
|
|
|
|
gem 'binding_of_caller', '~> 0.7.2'
|
2012-12-30 07:43:00 -05:00
|
|
|
|
|
|
|
# Docs generator
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "sdoc", '~> 0.3.20'
|
2013-01-19 06:56:55 -05:00
|
|
|
|
|
|
|
# thin instead webrick
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'thin', '~> 1.6.1'
|
2011-10-08 17:36:38 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
group :development, :test do
|
2015-07-12 16:46:51 -04:00
|
|
|
gem 'byebug', platform: :mri
|
2015-06-17 18:05:48 -04:00
|
|
|
gem 'pry-rails'
|
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'awesome_print', '~> 1.2.0'
|
|
|
|
gem 'fuubar', '~> 2.0.0'
|
|
|
|
|
2015-06-17 21:15:23 -04:00
|
|
|
gem 'database_cleaner', '~> 1.4.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'factory_girl_rails', '~> 4.3.0'
|
2015-07-09 18:35:40 -04:00
|
|
|
gem 'rspec-rails', '~> 3.3.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'spinach-rails', '~> 0.2.1'
|
2012-09-10 02:26:35 -04:00
|
|
|
|
2013-05-06 12:53:19 -04:00
|
|
|
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'minitest', '~> 5.7.0'
|
2013-05-09 04:02:48 -04:00
|
|
|
|
2013-04-04 03:55:43 -04:00
|
|
|
# Generate Fake data
|
2015-05-20 19:22:00 -04:00
|
|
|
gem 'ffaker', '~> 2.0.0'
|
2013-04-04 03:55:43 -04:00
|
|
|
|
2015-07-06 19:50:36 -04:00
|
|
|
gem 'capybara', '~> 2.4.0'
|
2015-06-17 18:05:48 -04:00
|
|
|
gem 'capybara-screenshot', '~> 1.0.0'
|
|
|
|
gem 'poltergeist', '~> 1.6.0'
|
2013-03-26 05:13:30 -04:00
|
|
|
|
2015-05-06 16:50:47 -04:00
|
|
|
gem 'teaspoon', '~> 1.0.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'teaspoon-jasmine', '~> 2.2.0'
|
2014-02-15 14:46:15 -05:00
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'spring', '~> 1.3.6'
|
|
|
|
gem 'spring-commands-rspec', '~> 1.0.4'
|
2015-05-06 16:50:47 -04:00
|
|
|
gem 'spring-commands-spinach', '~> 1.0.0'
|
|
|
|
gem 'spring-commands-teaspoon', '~> 0.0.2'
|
2015-08-25 21:42:46 -04:00
|
|
|
|
|
|
|
gem 'rubocop', '~> 0.28.0', require: false
|
|
|
|
gem 'coveralls', '~> 0.8.2', require: false
|
|
|
|
gem 'simplecov', '~> 0.10.0', require: false
|
2015-11-10 12:34:05 -05:00
|
|
|
gem 'flog', require: false
|
2015-11-11 10:29:00 -05:00
|
|
|
gem 'flay', require: false
|
2015-11-23 08:57:41 -05:00
|
|
|
gem 'bundler-audit', require: false
|
2015-10-02 05:29:46 -04:00
|
|
|
|
|
|
|
gem 'benchmark-ips', require: false
|
2011-10-08 17:36:38 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
group :test do
|
2015-06-10 01:38:36 -04:00
|
|
|
gem 'shoulda-matchers', '~> 2.8.0', require: false
|
2015-05-21 18:41:31 -04:00
|
|
|
gem 'email_spec', '~> 1.6.0'
|
2015-05-18 16:39:15 -04:00
|
|
|
gem 'webmock', '~> 1.21.0'
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'test_after_commit', '~> 0.2.2'
|
2015-08-04 18:21:12 -04:00
|
|
|
gem 'sham_rack'
|
2011-10-08 17:36:38 -04:00
|
|
|
end
|
2012-08-23 19:21:20 -04:00
|
|
|
|
|
|
|
group :production do
|
2014-06-16 10:25:45 -04:00
|
|
|
gem "gitlab_meta", '7.0'
|
2014-04-24 07:23:17 -04:00
|
|
|
end
|
2014-09-12 12:46:20 -04:00
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem "newrelic_rpm", '~> 3.9.4.245'
|
2015-09-24 06:08:03 -04:00
|
|
|
gem 'newrelic-grape'
|
2014-12-31 08:07:48 -05:00
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'octokit', '~> 3.7.0'
|
2015-08-18 18:46:36 -04:00
|
|
|
|
2015-10-13 07:07:59 -04:00
|
|
|
gem "mail_room", "~> 0.6.1"
|
2015-08-18 20:02:26 -04:00
|
|
|
|
2015-08-25 21:42:46 -04:00
|
|
|
gem 'email_reply_parser', '~> 0.5.8'
|
|
|
|
|
|
|
|
## CI
|
|
|
|
gem 'activerecord-deprecated_finders', '~> 1.0.3'
|
|
|
|
gem 'activerecord-session_store', '~> 0.1.0'
|
|
|
|
gem "nested_form", '~> 0.3.2'
|
|
|
|
|
|
|
|
# OAuth
|
|
|
|
gem 'oauth2', '~> 1.0.0'
|
|
|
|
|
|
|
|
# Soft deletion
|
|
|
|
gem "paranoia", "~> 2.0"
|