source 'http://rubygems.org'
-gem 'rails', '3.0.10'
+# Require rails
+gem 'rails', '4.0.0'
+# Require things which have moved to gems in ruby 1.9
+gem 'bigdecimal', "~> 1.1.0", :platforms => :ruby_19
+
+# Require things which have moved to gems in ruby 2.0
+gem 'psych', :platforms => :ruby_20
+
+# Require json for multi_json
+gem 'json'
+
+# Use postgres as the database
gem 'pg'
-gem 'arel', '>= 2.0.9'
+
+# Use SCSS for stylesheets
+gem 'sass-rails', '~> 4.0.0'
+
+# Use Uglifier as compressor for JavaScript assets
+gem 'uglifier', '>= 1.3.0'
+
+# Use CoffeeScript for .js.coffee assets and views
+gem 'coffee-rails', '~> 4.0.0'
+
+# Use jquery as the JavaScript library
+gem 'jquery-rails'
+
+# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
+# gem 'jbuilder', '~> 1.2'
+gem 'jsonify-rails'
+
+# Use R2 for RTL conversion
+gem 'r2'
+
+# Use ejs for javascript templates
+gem 'ejs'
+
+# Load rails plugins
+gem 'rails-i18n', ">= 0.6.3"
+gem 'dynamic_form'
+gem 'rinku', '>= 1.2.2', :require => 'rails_rinku'
+gem 'openstreetmap-oauth-plugin', '>= 0.4.1.1', :require => 'oauth-plugin'
+gem 'open_id_authentication', '>= 1.1.0'
+gem 'validates_email_format_of', '>= 1.5.1'
+gem 'composite_primary_keys', '>= 6.0.0'
+gem 'http_accept_language', '~> 1.0.2'
+gem 'paperclip', '~> 2.0'
+gem 'deadlock_retry', '>= 1.2.0'
+gem 'openstreetmap-i18n-js', '>= 3.0.0.rc5.2', :require => 'i18n-js'
+gem 'rack-cors'
+gem 'actionpack-page_caching'
+
+# We need ruby-openid 2.2.0 or later for ruby 1.9 support
+gem 'ruby-openid', '>= 2.2.0'
+
+# Markdown formatting support
+gem 'redcarpet'
+
+# Character conversion support for ruby 1.8
+gem 'iconv', '= 0.1', :platforms => :ruby_18
+
+# Load libxml support for XML parsing and generation
gem 'libxml-ruby', '>= 2.0.5', :require => 'libxml'
-gem 'rmagick', :require => 'RMagick'
-gem 'oauth', '>= 0.4.4'
-gem 'oauth-plugin', '>= 0.4.0.pre4'
-gem 'httpclient'
-gem 'SystemTimer', '>= 1.1.3', :require => 'system_timer'
+
+# Use for HTML sanitisation
gem 'sanitize'
-gem 'rails-i18n-updater'
-gem 'validates_email_format_of', '>= 1.5.1'
-gem 'open_id_authentication', '>= 1.0.0'
+gem 'htmlentities'
+
+# Load SystemTimer for implementing request timeouts
+gem 'SystemTimer', '>= 1.1.3', :require => 'system_timer', :platforms => :ruby_18
-# Should only load if memcache is in use
-#gem 'memcached'
+# Load httpclient for SOAP support for Quova GeoIP queries
+gem 'httpclient'
-# Should only load if we're not in database offline mode
-gem 'composite_primary_keys', '= 3.1.10'
+# Load memcache client in case we are using it
+gem 'dalli'
+gem 'kgio'
+
+# Gems useful for development
+group :development do
+ gem 'vendorer'
+end
-# Bundle gems for the local environment. Make sure to
-# put test-only gems in this group so their generators
-# and rake tasks are available in development mode:
-group :development, :test do
+# Gems needed for running tests
+group :test do
gem 'timecop'
+ gem 'minitest', '~> 4.7.0', :platforms => [:ruby_19, :ruby_20]
end