Skip to content

Bundler loads unnecessary environments within Overmind. #9206

@shetty-tejas

Description

@shetty-tejas

Problem Description and Reproduction Steps

This is a part of my Gemfile. Some of the gems like VCR, WebMock and Mocha are specifically meant to be running while the 'test' environment is loaded.

Image

While running something like rails c, I can see that WebMock or any gems specifically meant to be running for 'test' environment are not present.

Image

However, If I run the same command while using Overmind or Foreman, the gems meant for 'test' environment are loaded as well.

Image

A workaround that I could find to avoid this is running bundle lock before specifically running any command that uses bundle.

Image

Did you try upgrading rubygems & bundler?

Yes.

Setup Details

  1. Mise (ruby version management): 2025.12.1 macos-arm64 (2025-12-08)
  2. Shell: zsh
  3. Overmind: 2.5.1
  4. Bundler Version: 4.0.1
  5. Ruby Version: 3.4.7

bundle env

Environment

Bundler       4.0.1
  Platforms   ruby, arm64-darwin-24
Ruby          3.4.7p58 (2025-10-08 revision 7a5688e2a27668e48f8d6ff4af5b2208b98a2f5e) [arm64-darwin-24]
  Full Path   /Users/lockstep/.local/share/mise/installs/ruby/3.4.7/bin/ruby
  Config Dir  /Users/lockstep/.local/share/mise/installs/ruby/3.4.7/etc
RubyGems      4.0.2
  Gem Home    /Users/lockstep/.local/share/mise/installs/ruby/3.4.7/lib/ruby/gems/3.4.0
  Gem Path    /Users/lockstep/.local/share/gem/ruby/3.4.0:/Users/lockstep/.local/share/mise/installs/ruby/3.4.7/lib/ruby/gems/3.4.0
  User Home   /Users/lockstep
  User Path   /Users/lockstep/.local/share/gem/ruby/3.4.0
  Bin Dir     /Users/lockstep/.local/share/mise/installs/ruby/3.4.7/bin
Tools         
  Git         2.52.0
  RVM         not installed
  rbenv       not installed
  chruby      not installed

Bundler Build Metadata

Timestamp  2025-12-09
Git SHA    f3e5ebf5af

Gemfile

Gemfile

# frozen_string_literal: true

source 'https://rubygems.org'

ruby file: '.ruby-version'

gem 'bootsnap', require: false
gem 'countries'
gem 'csv'
gem 'dry-validation'
gem 'flipper-active_record'
gem 'flipper-ui'
gem 'jbuilder'
gem 'jwt'
gem 'mission_control-jobs'
gem 'name_of_person'
gem 'oj'
gem 'openssl'
gem 'pagy'
gem 'pg'
gem 'propshaft'
gem 'puma'
gem 'rails'
gem 'rubyzip'
gem 'solid_cache'
gem 'solid_queue'
gem 'statesman'
gem 'strong_migrations'
gem 'thruster', require: false
gem 'tzinfo-data', platforms: %i[windows jruby]
# Use Rack CORS for handling Cross-Origin Resource Sharing (CORS), making cross-origin Ajax possible
# gem "rack-cors"

group :development, :test do
  gem 'brakeman', require: false
  gem 'bundler-audit', require: false

  gem 'debug', platforms: %i[mri windows], require: 'debug/prelude'
  gem 'dotenv'

  gem 'rubocop', require: false
  gem 'rubocop-minitest', require: false
  gem 'rubocop-performance', require: false
  gem 'rubocop-rails', require: false
end

group :development do
  gem 'annotaterb', require: false
  gem 'mailbin'
end

group :test do
  gem 'concurrent-ruby'
  gem 'mocha'
  gem 'rails-controller-testing'
  gem 'simplecov', require: false
  gem 'simplecov_json_formatter', github: 'shetty-tejas/simplecov_json_formatter', require: false
  gem 'vcr', require: 'vcr'
  gem 'webmock', require: 'webmock/minitest'
end

Gemfile.lock

GIT
  remote: https://github.com/shetty-tejas/simplecov_json_formatter.git
  revision: c2df8c0ac712f047e64a122efa6a2b37f48e0999
  specs:
    simplecov_json_formatter (0.1.4)

GEM
  remote: https://rubygems.org/
  specs:
    action_text-trix (2.1.15)
      railties
    actioncable (8.1.1)
      actionpack (= 8.1.1)
      activesupport (= 8.1.1)
      nio4r (~> 2.0)
      websocket-driver (>= 0.6.1)
      zeitwerk (~> 2.6)
    actionmailbox (8.1.1)
      actionpack (= 8.1.1)
      activejob (= 8.1.1)
      activerecord (= 8.1.1)
      activestorage (= 8.1.1)
      activesupport (= 8.1.1)
      mail (>= 2.8.0)
    actionmailer (8.1.1)
      actionpack (= 8.1.1)
      actionview (= 8.1.1)
      activejob (= 8.1.1)
      activesupport (= 8.1.1)
      mail (>= 2.8.0)
      rails-dom-testing (~> 2.2)
    actionpack (8.1.1)
      actionview (= 8.1.1)
      activesupport (= 8.1.1)
      nokogiri (>= 1.8.5)
      rack (>= 2.2.4)
      rack-session (>= 1.0.1)
      rack-test (>= 0.6.3)
      rails-dom-testing (~> 2.2)
      rails-html-sanitizer (~> 1.6)
      useragent (~> 0.16)
    actiontext (8.1.1)
      action_text-trix (~> 2.1.15)
      actionpack (= 8.1.1)
      activerecord (= 8.1.1)
      activestorage (= 8.1.1)
      activesupport (= 8.1.1)
      globalid (>= 0.6.0)
      nokogiri (>= 1.8.5)
    actionview (8.1.1)
      activesupport (= 8.1.1)
      builder (~> 3.1)
      erubi (~> 1.11)
      rails-dom-testing (~> 2.2)
      rails-html-sanitizer (~> 1.6)
    activejob (8.1.1)
      activesupport (= 8.1.1)
      globalid (>= 0.3.6)
    activemodel (8.1.1)
      activesupport (= 8.1.1)
    activerecord (8.1.1)
      activemodel (= 8.1.1)
      activesupport (= 8.1.1)
      timeout (>= 0.4.0)
    activestorage (8.1.1)
      actionpack (= 8.1.1)
      activejob (= 8.1.1)
      activerecord (= 8.1.1)
      activesupport (= 8.1.1)
      marcel (~> 1.0)
    activesupport (8.1.1)
      base64
      bigdecimal
      concurrent-ruby (~> 1.0, >= 1.3.1)
      connection_pool (>= 2.2.5)
      drb
      i18n (>= 1.6, < 2)
      json
      logger (>= 1.4.2)
      minitest (>= 5.1)
      securerandom (>= 0.3)
      tzinfo (~> 2.0, >= 2.0.5)
      uri (>= 0.13.1)
    addressable (2.8.8)
      public_suffix (>= 2.0.2, < 8.0)
    annotaterb (4.20.0)
      activerecord (>= 6.0.0)
      activesupport (>= 6.0.0)
    ast (2.4.3)
    base64 (0.3.0)
    bigdecimal (3.3.1)
    bootsnap (1.19.0)
      msgpack (~> 1.2)
    brakeman (7.1.1)
      racc
    builder (3.3.0)
    bundler-audit (0.9.3)
      bundler (>= 1.2.0)
      thor (~> 1.0)
    concurrent-ruby (1.3.6)
    connection_pool (3.0.2)
    countries (8.0.4)
      unaccent (~> 0.3)
    crack (1.0.1)
      bigdecimal
      rexml
    crass (1.0.6)
    csv (3.3.5)
    date (3.5.1)
    debug (1.11.0)
      irb (~> 1.10)
      reline (>= 0.3.8)
    docile (1.4.1)
    dotenv (3.2.0)
    drb (2.2.3)
    dry-configurable (1.3.0)
      dry-core (~> 1.1)
      zeitwerk (~> 2.6)
    dry-core (1.1.0)
      concurrent-ruby (~> 1.0)
      logger
      zeitwerk (~> 2.6)
    dry-inflector (1.2.0)
    dry-initializer (3.2.0)
    dry-logic (1.6.0)
      bigdecimal
      concurrent-ruby (~> 1.0)
      dry-core (~> 1.1)
      zeitwerk (~> 2.6)
    dry-schema (1.14.1)
      concurrent-ruby (~> 1.0)
      dry-configurable (~> 1.0, >= 1.0.1)
      dry-core (~> 1.1)
      dry-initializer (~> 3.2)
      dry-logic (~> 1.5)
      dry-types (~> 1.8)
      zeitwerk (~> 2.6)
    dry-types (1.8.3)
      bigdecimal (~> 3.0)
      concurrent-ruby (~> 1.0)
      dry-core (~> 1.0)
      dry-inflector (~> 1.0)
      dry-logic (~> 1.4)
      zeitwerk (~> 2.6)
    dry-validation (1.11.1)
      concurrent-ruby (~> 1.0)
      dry-core (~> 1.1)
      dry-initializer (~> 3.2)
      dry-schema (~> 1.14)
      zeitwerk (~> 2.6)
    erb (6.0.0)
    erubi (1.13.1)
    et-orbi (1.4.0)
      tzinfo
    flipper (1.3.6)
      concurrent-ruby (< 2)
    flipper-active_record (1.3.6)
      activerecord (>= 4.2, < 9)
      flipper (~> 1.3.6)
    flipper-ui (1.3.6)
      erubi (>= 1.0.0, < 2.0.0)
      flipper (~> 1.3.6)
      rack (>= 1.4, < 4)
      rack-protection (>= 1.5.3, < 5.0.0)
      rack-session (>= 1.0.2, < 3.0.0)
      sanitize (< 8)
    fugit (1.12.1)
      et-orbi (~> 1.4)
      raabro (~> 1.4)
    globalid (1.3.0)
      activesupport (>= 6.1)
    hashdiff (1.2.1)
    i18n (1.14.7)
      concurrent-ruby (~> 1.0)
    importmap-rails (2.2.2)
      actionpack (>= 6.0.0)
      activesupport (>= 6.0.0)
      railties (>= 6.0.0)
    io-console (0.8.2)
    irb (1.15.3)
      pp (>= 0.6.0)
      rdoc (>= 4.0.0)
      reline (>= 0.4.2)
    jbuilder (2.14.1)
      actionview (>= 7.0.0)
      activesupport (>= 7.0.0)
    json (2.18.0)
    jwt (3.1.2)
      base64
    language_server-protocol (3.17.0.5)
    lint_roller (1.1.0)
    logger (1.7.0)
    loofah (2.24.1)
      crass (~> 1.0.2)
      nokogiri (>= 1.12.0)
    mail (2.9.0)
      logger
      mini_mime (>= 0.1.1)
      net-imap
      net-pop
      net-smtp
    mailbin (1.0.0)
      importmap-rails
      rails (>= 7.1.0)
      turbo-rails
    marcel (1.1.0)
    mini_mime (1.1.5)
    minitest (5.27.0)
    mission_control-jobs (1.1.0)
      actioncable (>= 7.1)
      actionpack (>= 7.1)
      activejob (>= 7.1)
      activerecord (>= 7.1)
      importmap-rails (>= 1.2.1)
      irb (~> 1.13)
      railties (>= 7.1)
      stimulus-rails
      turbo-rails
    mocha (3.0.0)
      ruby2_keywords (>= 0.0.5)
    msgpack (1.8.0)
    name_of_person (1.1.3)
      activesupport (>= 5.2.0)
    net-imap (0.6.0)
      date
      net-protocol
    net-pop (0.1.2)
      net-protocol
    net-protocol (0.2.2)
      timeout
    net-smtp (0.5.1)
      net-protocol
    nio4r (2.7.5)
    nokogiri (1.18.10-aarch64-linux-gnu)
      racc (~> 1.4)
    nokogiri (1.18.10-aarch64-linux-musl)
      racc (~> 1.4)
    nokogiri (1.18.10-arm-linux-gnu)
      racc (~> 1.4)
    nokogiri (1.18.10-arm-linux-musl)
      racc (~> 1.4)
    nokogiri (1.18.10-arm64-darwin)
      racc (~> 1.4)
    nokogiri (1.18.10-x86_64-darwin)
      racc (~> 1.4)
    nokogiri (1.18.10-x86_64-linux-gnu)
      racc (~> 1.4)
    nokogiri (1.18.10-x86_64-linux-musl)
      racc (~> 1.4)
    oj (3.16.13)
      bigdecimal (>= 3.0)
      ostruct (>= 0.2)
    openssl (4.0.0)
    ostruct (0.6.3)
    pagy (43.2.1)
      json
      yaml
    parallel (1.27.0)
    parser (3.3.10.0)
      ast (~> 2.4.1)
      racc
    pg (1.6.2)
    pg (1.6.2-aarch64-linux)
    pg (1.6.2-aarch64-linux-musl)
    pg (1.6.2-arm64-darwin)
    pg (1.6.2-x86_64-darwin)
    pg (1.6.2-x86_64-linux)
    pg (1.6.2-x86_64-linux-musl)
    pp (0.6.3)
      prettyprint
    prettyprint (0.2.0)
    prism (1.6.0)
    propshaft (1.3.1)
      actionpack (>= 7.0.0)
      activesupport (>= 7.0.0)
      rack
    psych (5.3.0)
      date
      stringio
    public_suffix (7.0.0)
    puma (7.1.0)
      nio4r (~> 2.0)
    raabro (1.4.0)
    racc (1.8.1)
    rack (3.2.4)
    rack-protection (4.2.1)
      base64 (>= 0.1.0)
      logger (>= 1.6.0)
      rack (>= 3.0.0, < 4)
    rack-session (2.1.1)
      base64 (>= 0.1.0)
      rack (>= 3.0.0)
    rack-test (2.2.0)
      rack (>= 1.3)
    rackup (2.3.1)
      rack (>= 3)
    rails (8.1.1)
      actioncable (= 8.1.1)
      actionmailbox (= 8.1.1)
      actionmailer (= 8.1.1)
      actionpack (= 8.1.1)
      actiontext (= 8.1.1)
      actionview (= 8.1.1)
      activejob (= 8.1.1)
      activemodel (= 8.1.1)
      activerecord (= 8.1.1)
      activestorage (= 8.1.1)
      activesupport (= 8.1.1)
      bundler (>= 1.15.0)
      railties (= 8.1.1)
    rails-controller-testing (1.0.5)
      actionpack (>= 5.0.1.rc1)
      actionview (>= 5.0.1.rc1)
      activesupport (>= 5.0.1.rc1)
    rails-dom-testing (2.3.0)
      activesupport (>= 5.0.0)
      minitest
      nokogiri (>= 1.6)
    rails-html-sanitizer (1.6.2)
      loofah (~> 2.21)
      nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
    railties (8.1.1)
      actionpack (= 8.1.1)
      activesupport (= 8.1.1)
      irb (~> 1.13)
      rackup (>= 1.0.0)
      rake (>= 12.2)
      thor (~> 1.0, >= 1.2.2)
      tsort (>= 0.2)
      zeitwerk (~> 2.6)
    rainbow (3.1.1)
    rake (13.3.1)
    rdoc (6.17.0)
      erb
      psych (>= 4.0.0)
      tsort
    regexp_parser (2.11.3)
    reline (0.6.3)
      io-console (~> 0.5)
    rexml (3.4.4)
    rubocop (1.81.7)
      json (~> 2.3)
      language_server-protocol (~> 3.17.0.2)
      lint_roller (~> 1.1.0)
      parallel (~> 1.10)
      parser (>= 3.3.0.2)
      rainbow (>= 2.2.2, < 4.0)
      regexp_parser (>= 2.9.3, < 3.0)
      rubocop-ast (>= 1.47.1, < 2.0)
      ruby-progressbar (~> 1.7)
      unicode-display_width (>= 2.4.0, < 4.0)
    rubocop-ast (1.48.0)
      parser (>= 3.3.7.2)
      prism (~> 1.4)
    rubocop-minitest (0.38.2)
      lint_roller (~> 1.1)
      rubocop (>= 1.75.0, < 2.0)
      rubocop-ast (>= 1.38.0, < 2.0)
    rubocop-performance (1.26.1)
      lint_roller (~> 1.1)
      rubocop (>= 1.75.0, < 2.0)
      rubocop-ast (>= 1.47.1, < 2.0)
    rubocop-rails (2.34.2)
      activesupport (>= 4.2.0)
      lint_roller (~> 1.1)
      rack (>= 1.1)
      rubocop (>= 1.75.0, < 2.0)
      rubocop-ast (>= 1.44.0, < 2.0)
    ruby-progressbar (1.13.0)
    ruby2_keywords (0.0.5)
    rubyzip (3.2.2)
    sanitize (7.0.0)
      crass (~> 1.0.2)
      nokogiri (>= 1.16.8)
    securerandom (0.4.1)
    simplecov (0.22.0)
      docile (~> 1.1)
      simplecov-html (~> 0.11)
      simplecov_json_formatter (~> 0.1)
    simplecov-html (0.13.2)
    solid_cache (1.0.10)
      activejob (>= 7.2)
      activerecord (>= 7.2)
      railties (>= 7.2)
    solid_queue (1.2.4)
      activejob (>= 7.1)
      activerecord (>= 7.1)
      concurrent-ruby (>= 1.3.1)
      fugit (~> 1.11)
      railties (>= 7.1)
      thor (>= 1.3.1)
    statesman (13.1.0)
    stimulus-rails (1.3.4)
      railties (>= 6.0.0)
    stringio (3.1.9)
    strong_migrations (2.5.1)
      activerecord (>= 7.1)
    thor (1.4.0)
    thruster (0.1.16)
    thruster (0.1.16-aarch64-linux)
    thruster (0.1.16-arm64-darwin)
    thruster (0.1.16-x86_64-darwin)
    thruster (0.1.16-x86_64-linux)
    timeout (0.5.0)
    tsort (0.2.0)
    turbo-rails (2.0.20)
      actionpack (>= 7.1.0)
      railties (>= 7.1.0)
    tzinfo (2.0.6)
      concurrent-ruby (~> 1.0)
    unaccent (0.4.0)
    unicode-display_width (3.2.0)
      unicode-emoji (~> 4.1)
    unicode-emoji (4.1.0)
    uri (1.1.1)
    useragent (0.16.11)
    vcr (6.3.1)
      base64
    webmock (3.26.1)
      addressable (>= 2.8.0)
      crack (>= 0.3.2)
      hashdiff (>= 0.4.0, < 2.0.0)
    websocket-driver (0.8.0)
      base64
      websocket-extensions (>= 0.1.0)
    websocket-extensions (0.1.5)
    yaml (0.4.0)
    zeitwerk (2.7.3)

PLATFORMS
  aarch64-linux
  aarch64-linux-gnu
  aarch64-linux-musl
  arm-linux-gnu
  arm-linux-musl
  arm64-darwin
  x86_64-darwin
  x86_64-linux
  x86_64-linux-gnu
  x86_64-linux-musl

DEPENDENCIES
  annotaterb
  bootsnap
  brakeman
  bundler-audit
  concurrent-ruby
  countries
  csv
  debug
  dotenv
  dry-validation
  flipper-active_record
  flipper-ui
  jbuilder
  jwt
  mailbin
  mission_control-jobs
  mocha
  name_of_person
  oj
  openssl
  pagy
  pg
  propshaft
  puma
  rails
  rails-controller-testing
  rubocop
  rubocop-minitest
  rubocop-performance
  rubocop-rails
  rubyzip
  simplecov
  simplecov_json_formatter!
  solid_cache
  solid_queue
  statesman
  strong_migrations
  thruster
  tzinfo-data
  vcr
  webmock

RUBY VERSION
  ruby 3.4.7p58

BUNDLED WITH
  4.0.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions