class Bundler::CLI::Config

def self.scope_options

def self.scope_options
  method_option :global, type: :boolean, banner: "Only change the global config"
  method_option :local, type: :boolean, banner: "Only change the local config"
end

def base(name = nil, *value)

def base(name = nil, *value)
  new_args =
    if ARGV.size == 1
      ["config", "list"]
    elsif ARGV.include?("--delete")
      ARGV.map {|arg| arg == "--delete" ? "unset" : arg }
    elsif ARGV.include?("--global") || ARGV.include?("--local") || ARGV.size == 3
      ["config", "set", *ARGV[1..-1]]
    else
      ["config", "get", ARGV[1]]
    end
  message = "Using the `config` command without a subcommand [list, get, set, unset] is deprecated and will be removed in the future. Use `bundle #{new_args.join(" ")}` instead."
  removed_message = "Using the `config` command without a subcommand [list, get, set, unset] is has been removed. Use `bundle #{new_args.join(" ")}` instead."
  SharedHelpers.major_deprecation 3, message, removed_message: removed_message
  Base.new(options, name, value, self).run
end

def get(name)

def get(name)
  Base.new(options, name, nil, self).run
end

def list

def list
  Base.new(options, nil, nil, self).run
end

def set(name, value, *value_)

def set(name, value, *value_)
  Base.new(options, name, value_.unshift(value), self).run
end

def unset(name)

def unset(name)
  options[:delete] = true
  Base.new(options, name, nil, self).run
end