Add cancancan and the first ability definitions for site_controller
[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 gem "cancancan"
58
59 # Native OSM extensions
60 gem "quad_tile", "~> 1.0.1"
61
62 # Sanitise URIs
63 gem "rack-uri_sanitizer"
64
65 # Omniauth for authentication
66 gem "omniauth"
67 gem "omniauth-facebook"
68 gem "omniauth-github"
69 gem "omniauth-google-oauth2", ">= 0.2.7"
70 gem "omniauth-mediawiki", ">= 0.0.3"
71 gem "omniauth-openid"
72 gem "omniauth-windowslive"
73
74 # Markdown formatting support
75 gem "redcarpet"
76
77 # For status transitions of Issues
78 gem "aasm"
79
80 # Load libxml support for XML parsing and generation
81 gem "libxml-ruby", ">= 2.0.5", :require => "libxml"
82
83 # Use for HTML sanitisation
84 gem "htmlentities"
85 gem "sanitize"
86
87 # Load SystemTimer for implementing request timeouts
88 gem "SystemTimer", ">= 1.1.3", :require => "system_timer", :platforms => :ruby_18
89
90 # Load faraday for mockable HTTP client
91 gem "faraday"
92
93 # Load geoip for querying Maxmind GeoIP database
94 gem "geoip"
95
96 # Load rotp to generate TOTP tokens
97 gem "rotp"
98
99 # Load memcache client in case we are using it
100 gem "dalli"
101 gem "kgio"
102
103 # Load secure_headers for Content-Security-Policy support
104 gem "secure_headers"
105
106 # Load canonical-rails to generate canonical URLs
107 gem "canonical-rails"
108
109 # Used to generate logstash friendly log files
110 gem "logstasher"
111
112 # Gems useful for development
113 group :development do
114   gem "annotate"
115   gem "better_errors"
116   gem "binding_of_caller"
117   gem "listen"
118   gem "vendorer"
119 end
120
121 # Gems needed for running tests
122 group :test do
123   gem "minitest", "~> 5.1", :platforms => [:ruby_19, :ruby_20]
124   gem "rails-controller-testing"
125   gem "rubocop"
126   gem "webmock"
127 end
128
129 # Needed in development as well so rake can see konacha tasks
130 group :development, :test do
131   gem "capybara", "~> 2.13"
132   gem "coveralls", :require => false
133   gem "factory_bot_rails"
134   gem "jshint"
135   gem "poltergeist"
136   gem "puma", "~> 3.7"
137 end