# frozen_string_literal: true require "cgi" require "forwardable" require "net/http" require "securerandom" require "uri" require "active_job" require "capybara" require "capybara/cuprite" require "connection_pool" require "docile" require "ferrum" require "metainspector" require "mime/types" require "mime-types" require "mock_redis" require "mustermann" require "net/http/persistent" require "nokogiri" require "normalize_url" require "selenium-webdriver" require "redis" require "thor" require "zeitwerk" loader = Zeitwerk::Loader.for_gem loader.inflector.inflect("cli" => "CLI", "dsl" => "DSL", "http" => "HTTP", "url" => "URL", "xml" => "XML", "json" => "JSON", "gc" => "GC") loader.setup module Wayfarer module VERSION MAJOR = 0 MINOR = 4 TINY = 3 STRING = [MAJOR, MINOR, TINY].join(".") end mattr_accessor :config, default: Wayfarer::Config::Root.new mattr_accessor :middleware, default: [Wayfarer::Middleware::Stage.new, Wayfarer::Middleware::Dedup.new, Wayfarer::Middleware::Normalize.new, Wayfarer::Middleware::Router.new, Wayfarer::Middleware::Fetch.new] UserAgentTimeoutError = Class.new(StandardError) end loader.eager_load ActiveJob::Serializers.serializers << Wayfarer::Serializer