class Puma::Launcher

def prune_bundler

def prune_bundler
  return unless defined?(Bundler)
  require_rubygems_min_version!(Gem::Version.new("2.2"), "prune_bundler")
  unless puma_wild_location
    log "! Unable to prune Bundler environment, continuing"
    return
  end
  deps, dirs = dependencies_and_files_to_require_after_prune
  log '* Pruning Bundler environment'
  home = ENV['GEM_HOME']
  Bundler.with_clean_env do
    ENV['GEM_HOME'] = home
    ENV['PUMA_BUNDLER_PRUNED'] = '1'
    args = [Gem.ruby, puma_wild_location, '-I', dirs.join(':'), deps.join(',')] + @original_argv
    # Ruby 2.0+ defaults to true which breaks socket activation
    args += [{:close_others => false}]
    Kernel.exec(*args)
  end
end