Merge remote-tracking branch 'upstream/pull/1576'
[rails.git] / Gemfile
1 source "https://rubygems.org"
2
3 # Require rails
4 gem "rails", "5.1.5"
5
6 # Require things which have moved to gems in ruby 1.9
7 gem "bigdecimal", "~> 1.1.0", :platforms => :ruby_19
8
9 # Require things which have moved to gems in ruby 2.0
10 gem "psych", :platforms => :ruby_20
11
12 # Require json for multi_json
13 gem "json"
14
15 # Use postgres as the database
16 gem "pg", "~> 0.18"
17
18 # Use SCSS for stylesheets
19 gem "sass-rails", "~> 5.0"
20
21 # Use Uglifier as compressor for JavaScript assets
22 gem "uglifier", ">= 1.3.0"
23
24 # Use CoffeeScript for .js.coffee assets and views
25 gem "coffee-rails", "~> 4.2"
26
27 # Use jquery as the JavaScript library
28 gem "jquery-rails"
29
30 # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
31 # gem 'jbuilder', '~> 2.0'
32 gem "jsonify-rails"
33
34 # Use R2 for RTL conversion
35 gem "r2", "~> 0.2.7"
36
37 # Use autoprefixer to generate CSS prefixes
38 gem "autoprefixer-rails"
39
40 # Use image_optim to optimise images
41 gem "image_optim_rails"
42
43 # Load rails plugins
44 gem "actionpack-page_caching"
45 gem "composite_primary_keys", "~> 10.0.0"
46 gem "dynamic_form"
47 gem "http_accept_language", "~> 2.0.0"
48 gem "i18n-js", ">= 3.0.0"
49 gem "oauth-plugin", ">= 0.5.1"
50 gem "openstreetmap-deadlock_retry", ">= 1.3.0", :require => "deadlock_retry"
51 gem "paperclip", "~> 5.2"
52 gem "rack-cors"
53 gem "rails-i18n", "~> 4.0.0"
54 gem "record_tag_helper"
55 gem "rinku", ">= 1.2.2", :require => "rails_rinku"
56 gem "validates_email_format_of", ">= 1.5.1"
57
58 # Native OSM extensions
59 gem "quad_tile", "~> 1.0.1"
60
61 # Sanitise URIs
62 gem "rack-uri_sanitizer"
63
64 # Omniauth for authentication
65 gem "omniauth"
66 gem "omniauth-facebook"
67 gem "omniauth-github"
68 gem "omniauth-google-oauth2", ">= 0.2.7"
69 gem "omniauth-mediawiki", ">= 0.0.3"
70 gem "omniauth-openid"
71 gem "omniauth-windowslive"
72
73 # Markdown formatting support
74 gem "redcarpet"
75
76 # For status transitions of Issues
77 gem "aasm"
78
79 # Load libxml support for XML parsing and generation
80 gem "libxml-ruby", ">= 2.0.5", :require => "libxml"
81
82 # Use for HTML sanitisation
83 gem "htmlentities"
84 gem "sanitize"
85
86 # Load SystemTimer for implementing request timeouts
87 gem "SystemTimer", ">= 1.1.3", :require => "system_timer", :platforms => :ruby_18
88
89 # Load faraday for mockable HTTP client
90 gem "faraday"
91
92 # Load geoip for querying Maxmind GeoIP database
93 gem "geoip"
94
95 # Load rotp to generate TOTP tokens
96 gem "rotp"
97
98 # Load memcache client in case we are using it
99 gem "dalli"
100 gem "kgio"
101
102 # Load secure_headers for Content-Security-Policy support
103 gem "secure_headers"
104
105 # Load canonical-rails to generate canonical URLs
106 gem "canonical-rails"
107
108 # Used to generate logstash friendly log files
109 gem "logstasher"
110
111 # Gems useful for development
112 group :development do
113   gem "annotate"
114   gem "better_errors"
115   gem "binding_of_caller"
116   gem "listen"
117   gem "vendorer"
118 end
119
120 # Gems needed for running tests
121 group :test do
122   gem "minitest", "~> 5.1", :platforms => [:ruby_19, :ruby_20]
123   gem "rails-controller-testing"
124   gem "rubocop"
125   gem "webmock"
126 end
127
128 # Needed in development as well so rake can see konacha tasks
129 group :development, :test do
130   gem "capybara", "~> 2.13"
131   gem "coveralls", :require => false
132   gem "factory_bot_rails"
133   gem "jshint"
134   gem "poltergeist"
135   gem "puma", "~> 3.7"
136 end