Gemfile 4.66 KB
Newer Older
Sytse Sijbrandij's avatar
Sytse Sijbrandij committed
1
source "https://rubygems.org"
gitlabhq's avatar
gitlabhq committed
2

3 4 5 6 7 8 9 10
def darwin_only(require_as)
  RUBY_PLATFORM.include?('darwin') && require_as
end

def linux_only(require_as)
  RUBY_PLATFORM.include?('linux') && require_as
end

11 12 13 14 15 16
gem "rails", "~> 4.0.0"

gem "protected_attributes"
gem 'rails-observers'
gem 'actionpack-page_caching'
gem 'actionpack-action_caching'
gitlabhq's avatar
gitlabhq committed
17

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
18 19 20
# Default values for AR models
gem "default_value_for", "~> 3.0.0"

21
# Supported DBs
22 23
gem "mysql2", group: :mysql
gem "pg", group: :postgres
24 25

# Auth
26 27
gem "devise", '3.0.4'
gem "devise-async", '0.8.0'
28
gem 'omniauth', "~> 1.1.3"
Florian Unglaub's avatar
Florian Unglaub committed
29 30 31
gem 'omniauth-google-oauth2'
gem 'omniauth-twitter'
gem 'omniauth-github'
32

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
33
# Extracting information from a git repository
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
34
# Provide access to Gitlab::Git library
35
gem "gitlab_git", '~> 5.7.1'
36

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
37
# Ruby/Rack Git Smart-HTTP Server Handler
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
38
gem 'gitlab-grack', '~> 2.0.0.pre', require: 'grack'
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
39

40
# LDAP Auth
41
gem 'gitlab_omniauth-ldap', '1.0.4', require: "omniauth-ldap"
42

43
# Git Wiki
44
gem "gitlab-gollum-lib", "~> 1.1.0", require: 'gollum-lib'
45

46
# Language detection
47
gem "gitlab-linguist", "~> 3.0.0", require: "linguist"
48

randx's avatar
randx committed
49
# API
Jeroen van Baarsen's avatar
Jeroen van Baarsen committed
50
gem "grape", "~> 0.6.1"
51 52
# Replace with rubygems when nesteted entities get released
gem "grape-entity", "~> 0.4.1", ref: 'd904381c951e86250c3f44213b349a3dd8e83fb1', git: 'https://github.com/intridea/grape-entity.git' 
53
gem 'rack-cors', require: 'rack/cors'
randx's avatar
randx committed
54

55 56 57
# Email validation
gem "email_validator", "~> 1.4.0", :require => 'email_validator/strict'

randx's avatar
randx committed
58 59
# Format dates and times
# based on human-friendly examples
60
gem "stamp"
randx's avatar
randx committed
61

Andrew8xx8's avatar
Andrew8xx8 committed
62 63 64
# Enumeration fields
gem 'enumerize'

randx's avatar
randx committed
65
# Pagination
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
66
gem "kaminari", "~> 0.15.1"
randx's avatar
randx committed
67 68

# HAML
69
gem "haml-rails"
randx's avatar
randx committed
70 71

# Files attachments
72
gem "carrierwave"
73

74
# for aws storage
75
gem "fog", "~> 1.3.1", group: :aws
randx's avatar
randx committed
76 77

# Authorization
78
gem "six"
randx's avatar
randx committed
79 80

# Seed data
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
81
gem "seed-fu"
randx's avatar
randx committed
82 83

# Markdown to HTML
Riyad Preukschas's avatar
Riyad Preukschas committed
84
gem "redcarpet",     "~> 2.2.2"
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
85
gem "github-markup", "~> 0.7.4", require: 'github/markup', git: 'https://github.com/gitlabhq/markup.git', ref: '61ade389c1e1c159359338f570d18464a44ddbc4' 
randx's avatar
randx committed
86

Manuel Mendez's avatar
Manuel Mendez committed
87 88 89
# Asciidoc to HTML
gem  "asciidoctor"

90
# Application server
91 92 93 94
group :unicorn do
  gem "unicorn", '~> 4.6.3'
  gem 'unicorn-worker-killer'
end
randx's avatar
randx committed
95

Andrew8xx8's avatar
Andrew8xx8 committed
96 97 98
# State machine
gem "state_machine"

randx's avatar
randx committed
99
# Issue tags
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
100
gem "acts-as-taggable-on"
randx's avatar
randx committed
101 102

# Background jobs
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
103
gem 'slim'
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
104
gem 'sinatra', require: nil
105
gem 'sidekiq'
randx's avatar
randx committed
106 107

# HTTP requests
108
gem "httparty"
randx's avatar
randx committed
109 110

# Colored output to console
111
gem "colored"
randx's avatar
randx committed
112

Riyad Preukschas's avatar
Riyad Preukschas committed
113
# GitLab settings
114
gem 'settingslogic'
Aleksei Kvitinskii's avatar
Aleksei Kvitinskii committed
115

randx's avatar
randx committed
116 117
# Misc
gem "foreman"
Robert Speicher's avatar
Robert Speicher committed
118
gem 'version_sorter'
randx's avatar
randx committed
119

120 121 122
# Cache
gem "redis-rails"

123 124 125
# Campfire integration
gem 'tinder', '~> 1.9.2'

126
# HipChat integration
127
gem "hipchat", "~> 0.14.0"
128

129
# Flowdock integration
130
gem "gitlab-flowdock-git-hook", "~> 0.4.2"
131

132 133 134
# Gemnasium integration
gem "gemnasium-gitlab-service", "~> 0.2"

135 136 137
# Slack integration
gem "slack-notifier", "~> 0.2.0"

138 139 140 141 142 143
# d3
gem "d3_rails", "~> 3.1.4"

# underscore-rails
gem "underscore-rails", "~> 1.4.4"

144 145 146
# Sanitize user input
gem "sanitize"

Marin Jankovski's avatar
Marin Jankovski committed
147 148 149
# Protect against bruteforcing
gem "rack-attack"

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
150 151 152
# Ace editor
gem 'ace-rails-ap'

153 154 155 156 157 158 159 160
gem "sass-rails"
gem "coffee-rails"
gem "uglifier"
gem "therubyracer"
gem 'turbolinks'
gem 'jquery-turbolinks'

gem 'select2-rails'
161
gem 'jquery-atwho-rails', "~> 0.3.3"
162 163 164 165
gem "jquery-rails",     "2.1.3"
gem "jquery-ui-rails",  "2.0.2"
gem "modernizr",        "2.6.2"
gem "raphael-rails", "~> 2.1.2"
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
166
gem 'bootstrap-sass', '~> 3.0'
167 168
gem "font-awesome-rails", '~> 3.2'
gem "gemoji", "~> 1.3.0"
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
169
gem "gon", '~> 5.0.0'
170
gem 'nprogress-rails'
gitlabhq's avatar
gitlabhq committed
171

Nihad Abbasov's avatar
Nihad Abbasov committed
172
group :development do
173
  gem "annotate", "~> 2.6.0.beta2"
174
  gem "letter_opener"
Riyad Preukschas's avatar
Riyad Preukschas committed
175
  gem 'quiet_assets', '~> 1.0.1'
176
  gem 'rack-mini-profiler', require: false
177

178 179 180
  # Better errors handler
  gem 'better_errors'
  gem 'binding_of_caller'
181

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
182 183
  gem 'rails_best_practices'

184 185
  # Docs generator
  gem "sdoc"
186 187 188

  # thin instead webrick
  gem 'thin'
gitlabhq's avatar
gitlabhq committed
189 190 191
end

group :development, :test do
192
  gem 'coveralls', require: false
193
  # gem 'rails-dev-tweaks'
194 195 196
  gem 'spinach-rails'
  gem "rspec-rails"
  gem "capybara"
Saito's avatar
Saito committed
197
  gem "pry"
198
  gem "awesome_print"
199
  gem "database_cleaner"
200
  gem "launchy"
Robert Speicher's avatar
Robert Speicher committed
201
  gem 'factory_girl_rails'
randx's avatar
randx committed
202

203
  # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
204
  gem 'minitest', '~> 4.7.0'
205

206 207 208
  # Generate Fake data
  gem "ffaker"

209
  # Guard
randx's avatar
randx committed
210
  gem 'guard-rspec'
Nihad Abbasov's avatar
Nihad Abbasov committed
211
  gem 'guard-spinach'
212 213

  # Notification
214 215 216
  gem 'rb-fsevent', require: darwin_only('rb-fsevent')
  gem 'growl',      require: darwin_only('growl')
  gem 'rb-inotify', require: linux_only('rb-inotify')
217 218

  # PhantomJS driver for Capybara
219
  gem 'poltergeist', '~> 1.4.1'
Andrew8xx8's avatar
Andrew8xx8 committed
220 221

  gem 'spork', '~> 1.0rc'
222
  gem 'jasmine', '2.0.0.rc5'
223 224 225 226

  gem "spring", '1.1.1'
  gem "spring-commands-rspec", '1.0.1'
  gem "spring-commands-spinach", '1.0.0'
gitlabhq's avatar
gitlabhq committed
227 228 229
end

group :test do
230
  gem "simplecov", require: false
231
  gem "shoulda-matchers", "~> 2.1.0"
232
  gem 'email_spec'
233
  gem "webmock"
Alex Denisov's avatar
Alex Denisov committed
234
  gem 'test_after_commit'
gitlabhq's avatar
gitlabhq committed
235
end
236 237

group :production do
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
238
  gem "gitlab_meta", '6.0'
239
end