mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Rails 4.1 added time helpers but we never bothered using them. But now I'm getting rid of the Timecop dependency and use standard helpers. Beware though that the new helpers always freeze time. When you travel to a certain date then the clock stops ticking while Timecop maintained the passing of time. The freezing of time could cause problems if you are trying to enforce a timeout. But all current specs don't seem affected. In most cases, the freezing will make it easier to avoid flaky specs.
202 lines
4.6 KiB
Ruby
202 lines
4.6 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
source 'https://rubygems.org'
|
|
git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
|
|
|
|
ruby File.read('.ruby-version').chomp
|
|
|
|
gem 'dotenv', require: 'dotenv/load' # Load ENV vars before other gems
|
|
|
|
gem 'rails'
|
|
|
|
# Active Storage
|
|
gem "active_storage_validations"
|
|
gem "aws-sdk-s3", require: false
|
|
gem "image_processing"
|
|
|
|
gem 'activemerchant', '>= 1.78.0'
|
|
gem 'angular-rails-templates', '>= 0.3.0'
|
|
gem 'ransack', '~> 4.1.0'
|
|
gem 'responders'
|
|
gem 'webpacker', '~> 5'
|
|
|
|
gem 'i18n'
|
|
gem 'i18n-js', '~> 3.9.0'
|
|
gem 'rails-i18n'
|
|
gem 'rails_safe_tasks', '~> 1.0'
|
|
|
|
gem "activerecord-import"
|
|
gem "db2fog", github: "openfoodfoundation/db2fog", branch: "rails-7"
|
|
gem "fog-aws", "~> 2.0" # db2fog does not support v3
|
|
gem "mime-types" # required by fog
|
|
|
|
gem "validates_lengths_from_database"
|
|
gem "valid_email2"
|
|
|
|
gem "catalog", path: "./engines/catalog"
|
|
gem 'dfc_provider', path: './engines/dfc_provider'
|
|
gem "order_management", path: "./engines/order_management"
|
|
gem 'web', path: './engines/web'
|
|
|
|
gem "activerecord-postgresql-adapter"
|
|
gem "arel-helpers", "~> 2.12"
|
|
gem "pg", "~> 1.2.3"
|
|
|
|
gem 'acts_as_list', '1.0.4'
|
|
gem 'cancancan', '~> 1.15.0'
|
|
gem 'digest'
|
|
gem 'ffaker'
|
|
gem 'highline', '2.0.3' # Necessary for the install generator
|
|
gem 'json'
|
|
gem 'monetize', '~> 1.11'
|
|
gem 'paranoia', '~> 2.4'
|
|
gem 'state_machines-activerecord'
|
|
gem 'stringex', '~> 2.8.5', require: false
|
|
|
|
gem 'paypal-sdk-merchant', '1.117.2'
|
|
gem 'stripe'
|
|
|
|
gem 'devise'
|
|
gem 'devise-encryptable'
|
|
gem 'devise-i18n'
|
|
gem 'devise-token_authenticatable'
|
|
gem 'jwt', '~> 2.3'
|
|
gem 'oauth2', '~> 1.4.7' # Used for Stripe Connect
|
|
|
|
gem 'datafoodconsortium-connector'
|
|
gem 'jsonapi-serializer'
|
|
gem 'pagy', '~> 9'
|
|
|
|
gem 'rswag-api'
|
|
gem 'rswag-ui'
|
|
|
|
gem 'omniauth_openid_connect'
|
|
gem 'omniauth-rails_csrf_protection'
|
|
gem 'openid_connect'
|
|
|
|
gem 'angularjs-rails', '1.8.0'
|
|
gem 'bugsnag'
|
|
gem 'haml'
|
|
gem 'redcarpet'
|
|
|
|
gem 'actionpack-action_caching'
|
|
# AMS 0.9.x and 0.10.x are very different from 0.8.4 and the upgrade is not straight forward
|
|
# AMS is deprecated, we will introduce an alternative at some point
|
|
gem "active_model_serializers", "0.8.4"
|
|
gem 'activerecord-session_store'
|
|
gem 'acts-as-taggable-on'
|
|
gem 'angularjs-file-upload-rails', '~> 2.4.1'
|
|
gem 'bigdecimal'
|
|
gem 'bootsnap', require: false
|
|
gem 'geocoder'
|
|
gem 'gmaps4rails'
|
|
gem 'mimemagic', '> 0.3.5'
|
|
gem 'paper_trail'
|
|
gem 'rack-rewrite'
|
|
gem 'rack-timeout'
|
|
gem 'roadie-rails'
|
|
|
|
gem 'puma'
|
|
gem 'redis'
|
|
gem 'sidekiq'
|
|
gem 'sidekiq-scheduler'
|
|
|
|
gem "cable_ready"
|
|
gem "stimulus_reflex"
|
|
|
|
gem "turbo_power"
|
|
gem "turbo-rails"
|
|
|
|
gem 'combine_pdf'
|
|
gem 'wicked_pdf'
|
|
gem 'wkhtmltopdf-binary'
|
|
|
|
gem 'immigrant'
|
|
gem 'roo' # read spreadsheets
|
|
gem 'spreadsheet_architect' # write spreadsheets
|
|
|
|
gem 'whenever', require: false
|
|
|
|
gem 'coffee-rails', '~> 5.0.0'
|
|
|
|
gem 'angular_rails_csrf'
|
|
|
|
gem 'jquery-rails', '4.4.0'
|
|
gem 'jquery-ui-rails', '~> 4.2'
|
|
gem "select2-rails", github: "openfoodfoundation/select2-rails", branch: "v349_with_thor_v1"
|
|
|
|
gem 'good_migrations'
|
|
|
|
gem 'flipper'
|
|
gem 'flipper-active_record'
|
|
gem 'flipper-ui'
|
|
|
|
gem "view_component"
|
|
gem 'view_component_reflex', '3.1.14.pre9'
|
|
|
|
# mini_portile2 is needed when installing with Vargant
|
|
# https://openfoodnetwork.slack.com/archives/CEBMTRCNS/p1668439152992899
|
|
gem 'mini_portile2', '~> 2.8'
|
|
|
|
gem "faraday"
|
|
gem "private_address_check"
|
|
|
|
gem 'newrelic_rpm'
|
|
|
|
gem 'invisible_captcha'
|
|
|
|
group :production, :staging do
|
|
gem 'sd_notify' # For better Systemd process management. Used by Puma.
|
|
end
|
|
|
|
group :test, :development do
|
|
gem 'bullet'
|
|
gem 'capybara'
|
|
gem 'capybara-shadowdom'
|
|
gem 'cuprite'
|
|
gem 'database_cleaner', require: false
|
|
gem 'debug', '>= 1.0.0'
|
|
gem "factory_bot_rails", '6.2.0', require: false
|
|
gem 'fuubar', '~> 2.5.1'
|
|
gem 'json_spec', '~> 1.1.4'
|
|
gem 'knapsack_pro'
|
|
gem 'letter_opener', '>= 1.4.1'
|
|
gem 'rspec-rails', ">= 3.5.2"
|
|
gem 'rspec-retry', require: false
|
|
gem 'rspec-sql'
|
|
gem 'rswag'
|
|
gem 'shoulda-matchers'
|
|
gem 'stimulus_reflex_testing', github: "podia/stimulus_reflex_testing", branch: :main
|
|
end
|
|
|
|
group :test do
|
|
gem 'pdf-reader'
|
|
gem 'puffing-billy'
|
|
gem 'rails-controller-testing'
|
|
gem 'simplecov', require: false
|
|
gem 'undercover', require: false
|
|
gem 'vcr', require: false
|
|
gem 'webmock', require: false
|
|
# See spec/spec_helper.rb for instructions
|
|
# gem 'perftools.rb'
|
|
end
|
|
|
|
group :development do
|
|
gem 'debugger-linecache'
|
|
gem 'foreman'
|
|
gem 'i18n-tasks'
|
|
gem 'listen'
|
|
gem 'pry', '~> 0.13.0'
|
|
gem 'query_count'
|
|
gem 'rails-erd'
|
|
gem 'rubocop'
|
|
gem 'rubocop-rails'
|
|
gem 'rubocop-rspec'
|
|
gem 'spring'
|
|
gem 'spring-commands-rspec'
|
|
gem 'spring-commands-rubocop'
|
|
gem 'web-console'
|
|
|
|
gem 'rack-mini-profiler', '< 3.0.0'
|
|
end
|