Gemfile 4.43 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

Marin Jankovski's avatar
Marin Jankovski committed
11
gem "rails", "~> 4.1.0"
12 13 14

gem "protected_attributes"
gem 'rails-observers'
gitlabhq's avatar
gitlabhq committed
15

16 17 18
# Make links from text
gem 'rails_autolink', '~> 1.1'

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

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

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

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

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

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

44
# Git Wiki
45
gem 'gollum-lib', '~> 3.0.0'
46

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

randx's avatar
randx committed
50
# API
Jeroen van Baarsen's avatar
Jeroen van Baarsen committed
51
gem "grape", "~> 0.6.1"
52
# Replace with rubygems when nesteted entities get released
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
53
gem "grape-entity", "~> 0.4.2"
54
gem 'rack-cors', require: 'rack/cors'
randx's avatar
randx committed
55 56 57

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

Andrew8xx8's avatar
Andrew8xx8 committed
60 61 62
# Enumeration fields
gem 'enumerize'

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

# HAML
67
gem "haml-rails"
randx's avatar
randx committed
68 69

# Files attachments
70
gem "carrierwave"
71

72 73 74
# Drag and Drop UI
gem 'dropzonejs-rails'

75
# for aws storage
76
gem "fog", "~> 1.14", group: :aws
77
gem "unf", group: :aws
randx's avatar
randx committed
78 79

# Authorization
80
gem "six"
randx's avatar
randx committed
81 82

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

# Markdown to HTML
Riyad Preukschas's avatar
Riyad Preukschas committed
86
gem "redcarpet",     "~> 2.2.2"
87
gem "github-markup"
88
gem "org-ruby" # For rendering .org files
randx's avatar
randx committed
89

skv-headless's avatar
skv-headless committed
90 91 92
# Diffs
gem 'diffy', '~> 3.0.3'

Manuel Mendez's avatar
Manuel Mendez committed
93 94 95
# Asciidoc to HTML
gem  "asciidoctor"

96
# Application server
97 98 99 100
group :unicorn do
  gem "unicorn", '~> 4.6.3'
  gem 'unicorn-worker-killer'
end
randx's avatar
randx committed
101

Andrew8xx8's avatar
Andrew8xx8 committed
102 103 104
# State machine
gem "state_machine"

randx's avatar
randx committed
105
# Issue tags
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
106
gem "acts-as-taggable-on"
randx's avatar
randx committed
107 108

# Background jobs
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
109
gem 'slim'
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
110
gem 'sinatra', require: nil
111
gem 'sidekiq', '2.17.0'
randx's avatar
randx committed
112 113

# HTTP requests
114
gem "httparty"
randx's avatar
randx committed
115 116

# Colored output to console
117
gem "colored"
randx's avatar
randx committed
118

Riyad Preukschas's avatar
Riyad Preukschas committed
119
# GitLab settings
120
gem 'settingslogic'
Aleksei Kvitinskii's avatar
Aleksei Kvitinskii committed
121

randx's avatar
randx committed
122 123
# Misc
gem "foreman"
Robert Speicher's avatar
Robert Speicher committed
124
gem 'version_sorter'
randx's avatar
randx committed
125

126 127 128
# Cache
gem "redis-rails"

129 130 131
# Campfire integration
gem 'tinder', '~> 1.9.2'

132
# HipChat integration
133
gem "hipchat", "~> 0.14.0"
134

135
# Flowdock integration
136
gem "gitlab-flowdock-git-hook", "~> 0.4.2"
137

138 139 140
# Gemnasium integration
gem "gemnasium-gitlab-service", "~> 0.2"

141
# Slack integration
142
gem "slack-notifier", "~> 0.3.2"
143

144 145 146 147 148 149
# d3
gem "d3_rails", "~> 3.1.4"

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

150
# Sanitize user input
151
gem "sanitize", '~> 2.0'
152

Marin Jankovski's avatar
Marin Jankovski committed
153 154 155
# Protect against bruteforcing
gem "rack-attack"

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
156 157 158
# Ace editor
gem 'ace-rails-ap'

159
gem "sass-rails", '~> 4.0.2'
160 161 162 163 164 165 166
gem "coffee-rails"
gem "uglifier"
gem "therubyracer"
gem 'turbolinks'
gem 'jquery-turbolinks'

gem 'select2-rails'
167
gem 'jquery-atwho-rails', "~> 0.3.3"
168 169
gem "jquery-rails"
gem "jquery-ui-rails"
170
gem "jquery-scrollto-rails"
171
gem "raphael-rails", "~> 2.1.2"
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
172
gem 'bootstrap-sass', '~> 3.0'
173
gem "font-awesome-rails", '~> 3.2'
Marin Jankovski's avatar
Marin Jankovski committed
174
gem "gitlab_emoji", "~> 0.0.1.1"
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
175
gem "gon", '~> 5.0.0'
176
gem 'nprogress-rails'
gitlabhq's avatar
gitlabhq committed
177

Nihad Abbasov's avatar
Nihad Abbasov committed
178
group :development do
179
  gem "annotate", "~> 2.6.0.beta2"
180
  gem "letter_opener"
Riyad Preukschas's avatar
Riyad Preukschas committed
181
  gem 'quiet_assets', '~> 1.0.1'
182
  gem 'rack-mini-profiler', require: false
183

184 185 186
  # Better errors handler
  gem 'better_errors'
  gem 'binding_of_caller'
187

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
188 189
  gem 'rails_best_practices'

190 191
  # Docs generator
  gem "sdoc"
192 193 194

  # thin instead webrick
  gem 'thin'
gitlabhq's avatar
gitlabhq committed
195 196 197
end

group :development, :test do
198
  gem 'coveralls', require: false
199
  # gem 'rails-dev-tweaks'
200 201
  gem 'spinach-rails'
  gem "rspec-rails"
202
  gem "capybara", '~> 2.2.1'
Saito's avatar
Saito committed
203
  gem "pry"
204
  gem "awesome_print"
205
  gem "database_cleaner"
206
  gem "launchy"
Robert Speicher's avatar
Robert Speicher committed
207
  gem 'factory_girl_rails'
randx's avatar
randx committed
208

209
  # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
Marin Jankovski's avatar
Marin Jankovski committed
210
  gem 'minitest', '~> 5.3.0'
211

212 213 214
  # Generate Fake data
  gem "ffaker"

215
  # Guard
randx's avatar
randx committed
216
  gem 'guard-rspec'
Nihad Abbasov's avatar
Nihad Abbasov committed
217
  gem 'guard-spinach'
218 219

  # Notification
220 221 222
  gem 'rb-fsevent', require: darwin_only('rb-fsevent')
  gem 'growl',      require: darwin_only('growl')
  gem 'rb-inotify', require: linux_only('rb-inotify')
223 224

  # PhantomJS driver for Capybara
225
  gem 'poltergeist', '~> 1.5.1'
Andrew8xx8's avatar
Andrew8xx8 committed
226

Marin Jankovski's avatar
Marin Jankovski committed
227
  gem 'jasmine', '2.0.2'
228 229 230 231

  gem "spring", '1.1.1'
  gem "spring-commands-rspec", '1.0.1'
  gem "spring-commands-spinach", '1.0.0'
gitlabhq's avatar
gitlabhq committed
232 233 234
end

group :test do
235
  gem "simplecov", require: false
236
  gem "shoulda-matchers", "~> 2.1.0"
237
  gem 'email_spec'
238
  gem "webmock"
Alex Denisov's avatar
Alex Denisov committed
239
  gem 'test_after_commit'
gitlabhq's avatar
gitlabhq committed
240
end
241 242

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