Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
174 changes: 85 additions & 89 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,110 +5,106 @@ source "https://rubygems.org"
ruby "3.3.8"
gem "rails", "~> 7.2"

gem "after_party" # post-deployment tasks
gem "amazing_print" # easier console reading
gem "after_party" # Post-deployment tasks
gem "amazing_print" # Easier console reading
gem "authtrail" # Track Devise login activity
gem "azure-storage-blob", require: false
gem "blueprinter" # for JSON serialization
gem "bugsnag" # tracking errors in prod
gem "caxlsx", "~> 4.2" # excel spreadsheets - TODO can we remove this version restriction?
gem "caxlsx_rails", "~> 0.6.4" # excel spreadsheets - TODO can we remove this version restriction?
gem "cssbundling-rails", "~> 1.4" # compiles css
gem "delayed_job_active_record"
gem "devise" # for authentication
gem "devise_invitable"
gem "draper" # adds decorators for cleaner presentation logic
gem "faker" # creates realistic seed data, valuable for staging and demos
gem "filterrific" # filtering and sorting of models
gem "friendly_id", "~> 5.5.1" # allows us to use a slug instead of casa case ids in their URLs
gem "groupdate" # Group Data
gem "httparty" # for making HTTP network requests 🥳
gem "image_processing", "~> 1.14" # Set of higher-level helper methods for image processing.
gem "jbuilder" # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem "jsbundling-rails"
gem "lograge" # log less so heroku papertrail quits rate limiting our logs
gem "net-imap" # needed for ruby upgrade to 3.1.0 https://www.ruby-lang.org/en/news/2021/12/25/ruby-3-1-0-released/
gem "net-pop" # needed for ruby upgrade to 3.1.0 https://www.ruby-lang.org/en/news/2021/12/25/ruby-3-1-0-released/
gem "net-smtp", require: false # needed for ruby upgrade to 3.1.0 for some dang reason
gem "blueprinter" # JSON serialization
gem "bugsnag" # Error tracking in production
gem "caxlsx", "~> 4.2" # Excel spreadsheets - TODO can we remove this version restriction?
gem "caxlsx_rails", "~> 0.6.4" # Excel spreadsheets - TODO can we remove this version restriction?
gem "cssbundling-rails", "~> 1.4" # CSS compilation
gem "delayed_job_active_record" # Background job processing
gem "devise" # Authentication
gem "devise_invitable" # User invitation system for Devise
gem "draper" # Decorators for cleaner presentation logic
gem "filterrific" # Filtering and sorting of models
gem "flipper" # Feature flag management
gem "flipper-active_record" # Active Record adapter for Flipper
gem "flipper-ui" # Web UI for managing feature flags
gem "friendly_id", "~> 5.5.1" # Allows us to use a slug instead of CASA case IDs in their URLs
gem "groupdate" # Group data by time periods
gem "httparty" # HTTP network requests
gem "image_processing", "~> 1.14" # Image processing helpers
gem "jbuilder" # JSON API builder
gem "jsbundling-rails" # JavaScript bundling
gem "lograge" # Log less so Heroku Papertrail quits rate limiting our logs
gem "net-imap" # Ruby 3.1+ requires explicit inclusion of standard library gems
gem "net-pop" # Ruby 3.1+ requires explicit inclusion of standard library gems
gem "net-smtp", require: false # Ruby 3.1+ requires explicit inclusion of standard library gems
gem "noticed" # Notifications
gem "oj" # faster JSON parsing 🍊
gem "pagy" # pagination
gem "paranoia" # For soft-deleting database objects
gem "pdf-forms" # filling in fund request PDFs with user input
gem "pg" # Use postgresql as the database for Active Record
gem "pretender"
gem "puma", "7.0.4" # 6.2.2 fails to install on m1 # Use Puma as the app server
gem "pundit" # for authorization management - based on user.role field
gem "rack-attack" # for blocking & throttling abusive requests
gem "rack-cors" # for allowing cross-origin resource sharing
gem "request_store"
gem "rexml" # pdf-forms needs this to deploy to heroku apparently
gem "rswag-api"
gem "rswag-ui"
gem "oj" # Faster JSON parsing
gem "pagy" # Fast and lightweight pagination
gem "paranoia" # Soft-delete support for Active Record models
gem "pdf-forms" # Filling in fund request PDFs with user input
gem "pg" # Use PostgreSQL as the database for Active Record
gem "pghero" # PostgreSQL performance monitoring and query insights
gem "pg_query" # PostgreSQL query parser
gem "pretender" # Allows admins to impersonate users
gem "puma", "~> 7.0" # Use Puma as the app server
gem "pundit" # Authorization management based on user.role field
gem "rack-attack" # Blocking & throttling abusive requests
gem "rack-cors" # Cross-origin resource sharing
gem "request_store" # Per-request global storage for thread-safe data
gem "rexml" # PDF-forms needs this to deploy to Heroku
gem "rswag-api" # Swagger API documentation
gem "rswag-ui" # Swagger UI
gem "sablon" # Word document templating tool for Case Court Reports
gem "scout_apm"
gem "sprockets-rails" # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails]
gem "stimulus-rails"
gem "strong_migrations"
gem "turbo-rails", "~> 2.0"
gem "twilio-ruby" # twilio helper functions
gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw jruby] # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem "scout_apm" # Application performance monitoring
gem "scout_apm_logging", "~> 2.1" # Scout APM logging integration
gem "sprockets-rails" # Asset pipeline for Rails
gem "stimulus-rails" # Stimulus JavaScript framework
gem "strong_migrations" # Catch unsafe database migrations
gem "turbo-rails", "~> 2.0" # Turbo framework for Rails
gem "twilio-ruby" # Twilio helper functions
gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw jruby] # Windows does not include zoneinfo files
gem "view_component" # View components for reusability
gem "wicked"
gem "wicked" # Multi-step form wizard for Rails

# flipper for feature flag management
gem "flipper"
gem "flipper-active_record"
gem "flipper-ui"
gem "pghero"
gem "pg_query"
group :development, :test do
gem "brakeman" # Security inspection
Copy link

Copilot AI Feb 13, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Brakeman is a static analysis security tool that should be in the :development or :test group only, not in both :development, :test. Moving it to the :test group (where it was originally) is more appropriate as it's typically run as part of CI/test pipelines.

Copilot uses AI. Check for mistakes.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

disagree

gem "bullet" # Detect and fix N+1 queries
gem "byebug", platforms: %i[mri mingw x64_mingw] # Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem "dotenv-rails"
gem "factory_bot_rails"
gem "parallel_tests"
gem "pry"
gem "pry-byebug"
gem "rspec_junit_formatter"
gem "rspec-rails"
gem "rswag-specs"
gem "shoulda-matchers"
# linters
gem "erb_lint", require: false
gem "rubocop-capybara", require: false
gem "rubocop-factory_bot", require: false
gem "rubocop-performance", require: false
gem "rubocop-rspec", require: false
gem "rubocop-rspec_rails", require: false
gem "standard", require: false
gem "standard-rails", require: false
gem "byebug", platforms: %i[mri mingw x64_mingw] # Debugger console
gem "dotenv-rails" # Environment variable management
gem "erb_lint", require: false # ERB linter
gem "factory_bot_rails" # Test data factories
gem "faker" # Creates realistic seed data, valuable for staging and demos
Copy link

Copilot AI Feb 13, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The faker gem should remain in the :test group only, not in :development, :test. Faker is primarily used for generating test data and should not be included in development environments to keep the dependency footprint minimal.

Copilot uses AI. Check for mistakes.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not currently true

gem "parallel_tests" # Run tests in parallel
gem "pry" # Enhanced Ruby console
gem "pry-byebug" # Pry debugger integration
gem "rspec_junit_formatter" # JUnit XML formatter for RSpec
gem "rspec-rails" # RSpec testing framework
gem "rubocop-capybara", require: false # Capybara linting rules
gem "rubocop-factory_bot", require: false # FactoryBot linting rules
gem "rubocop-performance", require: false # Performance linting rules
gem "rubocop-rspec", require: false # RSpec linting rules
gem "rubocop-rspec_rails", require: false # RSpec Rails linting rules
gem "rswag-specs" # Swagger spec generation
gem "shoulda-matchers" # RSpec matchers for common Rails functionality
gem "standard", require: false # Ruby style guide
gem "standard-rails", require: false # Rails-specific style guide
end

group :development do
gem "annotate" # for adding db field listings to models as comments
gem "bundler-audit" # for checking for security issues in gems
gem "annotate" # Adds database field listings to models as comments
gem "bundler-audit" # Checks for security issues in gems
gem "letter_opener" # Opens emails in new tab for easier testing
gem "simplecov-mcp" # SimpleCov MCP integration
gem "spring" # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem "spring-commands-rspec"
gem "traceroute" # for finding unused routes
gem "web-console", ">= 3.3.0" # Access an interactive console on exception pages or by calling 'console' anywhere in the code.
gem "spring" # Speeds up development by keeping your application running in the background
gem "spring-commands-rspec" # Spring integration for RSpec
gem "traceroute" # Finds unused routes
gem "web-console", "~> 4.0" # Interactive console on exception pages
end

group :test do
gem "brakeman" # security inspection
gem "capybara"
gem "rspec-retry" # for retrying flaky tests
gem "capybara-screenshot"
gem "database_cleaner-active_record"
gem "docx"
gem "email_spec"
gem "rails-controller-testing"
gem "rake"
gem "selenium-webdriver"
gem "simplecov", require: false
gem "capybara" # Integration testing framework
gem "capybara-screenshot" # Automatic screenshot on test failure
gem "database_cleaner-active_record" # Database cleaning strategies for tests
gem "docx" # For testing Word document generation
gem "email_spec" # Email testing helpers
gem "rails-controller-testing" # Controller testing helpers
gem "rspec-retry" # Retries flaky tests
gem "selenium-webdriver" # Browser automation for system tests
gem "simplecov", require: false # Code coverage analysis
gem "webmock" # HTTP request stubber
end

gem "scout_apm_logging", "~> 2.1"
5 changes: 2 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -755,13 +755,12 @@ DEPENDENCIES
pretender
pry
pry-byebug
puma (= 7.0.4)
puma (~> 7.0)
pundit
rack-attack
rack-cors
rails (~> 7.2)
rails-controller-testing
rake
request_store
rexml
rspec-rails
Expand Down Expand Up @@ -794,7 +793,7 @@ DEPENDENCIES
twilio-ruby
tzinfo-data
view_component
web-console (>= 3.3.0)
web-console (~> 4.0)
webmock
wicked

Expand Down
Loading