class Cucumber::Cli::DRbClient

def run(args, error_stream, out_stream, port = nil)

def run(args, error_stream, out_stream, port = nil)
  port ||= ENV["CUCUMBER_DRB"] || DEFAULT_PORT
  setup_support_for_io_streams_over_drb
  feature_server = DRbObject.new_with_uri("druby://127.0.0.1:#{port}")
  cloned_args = [] # I have no idea why this is needed, but if the regular args are sent then DRb magically transforms it into a DRb object - not an array
  args.each { |arg| cloned_args << arg }
  feature_server.run(cloned_args, error_stream, out_stream)
rescue DRb::DRbConnError
  raise DRbClientError, "No DRb server is running."
end