Gemfile 4.12 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
17
gem "rails", "~> 4.0.0"

gem "protected_attributes"
gem 'rails-observers'
gem 'actionpack-page_caching'
gem 'actionpack-action_caching'
gem 'activerecord-deprecated_finders'
gitlabhq's avatar
gitlabhq committed
18

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
19
# Supported DBs
20
21
gem "mysql2", group: :mysql
gem "pg", group: :postgres
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
22
23

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

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
31
# Extracting information from a git repository
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
32
# Provide access to Gitlab::Git library
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
33
gem "gitlab_git", "~> 4.0.0.pre"
34

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

38
# LDAP Auth
39
gem 'gitlab_omniauth-ldap', '1.0.3', require: "omniauth-ldap"
40

41
# Syntax highlighter
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
42
gem "gitlab-pygments.rb", '~> 0.5.4', require: 'pygments.rb'
43

44
# Git Wiki
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
45
gem "gitlab-gollum-lib", "~> 1.0.2", require: 'gollum-lib'
46

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

randx's avatar
randx committed
50
# API
51
52
gem "grape", "~> 0.4.1"
gem "grape-entity", "~> 0.3.0"
53
gem 'rack-cors', require: 'rack/cors'
randx's avatar
randx committed
54
55
56

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

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

randx's avatar
randx committed
62
# Pagination
Riyad Preukschas's avatar
Riyad Preukschas committed
63
gem "kaminari", "~> 0.14.1"
randx's avatar
randx committed
64
65

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

# Files attachments
69
gem "carrierwave"
70

71
# for aws storage
72
gem "fog", "~> 1.3.1", group: :aws
randx's avatar
randx committed
73
74

# Authorization
75
gem "six"
randx's avatar
randx committed
76
77

# Seed data
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
78
gem "seed-fu"
randx's avatar
randx committed
79
80

# Markdown to HTML
Riyad Preukschas's avatar
Riyad Preukschas committed
81
gem "redcarpet",     "~> 2.2.2"
82
gem "github-markup", "~> 0.7.4", require: 'github/markup'
randx's avatar
randx committed
83

Manuel Mendez's avatar
Manuel Mendez committed
84
85
86
# Asciidoc to HTML
gem  "asciidoctor"

87
# Application server
88
gem "unicorn", '~> 4.6.3', group: :unicorn
randx's avatar
randx committed
89

Andrew8xx8's avatar
Andrew8xx8 committed
90
91
92
# State machine
gem "state_machine"

randx's avatar
randx committed
93
# Issue tags
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
94
gem "acts-as-taggable-on"
randx's avatar
randx committed
95
96

# Background jobs
Dmitriy Zaporozhets's avatar
sidekiq    
Dmitriy Zaporozhets committed
97
gem 'slim'
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
98
gem 'sinatra', require: nil
99
gem 'sidekiq'
randx's avatar
randx committed
100
101

# HTTP requests
102
gem "httparty"
randx's avatar
randx committed
103
104

# Colored output to console
105
gem "colored"
randx's avatar
randx committed
106

Riyad Preukschas's avatar
Riyad Preukschas committed
107
# GitLab settings
108
gem 'settingslogic'
Aleksei Kvitinskii's avatar
Aleksei Kvitinskii committed
109

randx's avatar
randx committed
110
111
112
# Misc
gem "foreman"

113
114
115
# Cache
gem "redis-rails"

116
117
118
# Campfire integration
gem 'tinder', '~> 1.9.2'

119
120
121
# HipChat integration
gem "hipchat", "~> 0.9.0"

122
# Flowdock integration
123
gem "gitlab-flowdock-git-hook", "~> 0.4.2"
124

125
126
127
128
129
130
# d3
gem "d3_rails", "~> 3.1.4"

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

131
132
133
# Sanitize user input
gem "sanitize"

Marin Jankovski's avatar
Marin Jankovski committed
134
135
136
# Protect against bruteforcing
gem "rack-attack"

137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
gem "sass-rails"
gem "coffee-rails"
gem "uglifier"
gem "therubyracer"
gem 'turbolinks'
gem 'jquery-turbolinks'

gem 'chosen-rails',     "1.0.1"
gem 'select2-rails'
gem 'jquery-atwho-rails', "~> 0.4.1"
gem "jquery-rails",     "2.1.3"
gem "jquery-ui-rails",  "2.0.2"
gem "modernizr",        "2.6.2"
gem "raphael-rails", "~> 2.1.2"
gem 'bootstrap-sass', '~> 2.3'
gem "font-awesome-rails", '~> 3.2'
gem "gemoji", "~> 1.3.0"
gem "gon", git: "https://github.com/gitlabhq/gon.git", ref: '58ca8e17273051cb370182cabd3602d1da6783ab'
gitlabhq's avatar
gitlabhq committed
155

Nihad Abbasov's avatar
Nihad Abbasov committed
156
group :development do
157
  gem "annotate", "~> 2.6.0.beta2"
158
  gem "letter_opener"
Riyad Preukschas's avatar
Riyad Preukschas committed
159
  gem 'quiet_assets', '~> 1.0.1'
randx's avatar
randx committed
160
  gem 'rack-mini-profiler'
161

162
163
164
  # Better errors handler
  gem 'better_errors'
  gem 'binding_of_caller'
165

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
166
167
  gem 'rails_best_practices'

168
169
  # Docs generator
  gem "sdoc"
170
171
172

  # thin instead webrick
  gem 'thin'
gitlabhq's avatar
gitlabhq committed
173
174
175
end

group :development, :test do
176
  gem 'coveralls', require: false
177
  # gem 'rails-dev-tweaks'
178
179
180
  gem 'spinach-rails'
  gem "rspec-rails"
  gem "capybara"
Saito's avatar
Saito committed
181
  gem "pry"
182
  gem "awesome_print"
183
  gem "database_cleaner"
184
  gem "launchy"
Robert Speicher's avatar
Robert Speicher committed
185
  gem 'factory_girl_rails'
randx's avatar
randx committed
186

187
  # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
188
  gem 'minitest', '~> 4.7.0'
189

190
191
192
  # Generate Fake data
  gem "ffaker"

193
  # Guard
randx's avatar
randx committed
194
  gem 'guard-rspec'
Nihad Abbasov's avatar
Nihad Abbasov committed
195
  gem 'guard-spinach'
196
197

  # Notification
198
199
200
  gem 'rb-fsevent', require: darwin_only('rb-fsevent')
  gem 'growl',      require: darwin_only('growl')
  gem 'rb-inotify', require: linux_only('rb-inotify')
201
202

  # PhantomJS driver for Capybara
203
  gem 'poltergeist', '~> 1.4.1'
Andrew8xx8's avatar
Andrew8xx8 committed
204
205

  gem 'spork', '~> 1.0rc'
206
  gem 'jasmine'
gitlabhq's avatar
gitlabhq committed
207
208
209
end

group :test do
210
  gem "simplecov", require: false
211
  gem "shoulda-matchers", "~> 2.1.0"
212
  gem 'email_spec'
213
  gem "webmock"
Alex Denisov's avatar
Alex Denisov committed
214
  gem 'test_after_commit'
gitlabhq's avatar
gitlabhq committed
215
end
216
217

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