<commit_before>require 'psychic/runner/version'

autoload :YAML, 'yaml'

module Psychic
  autoload :Util,   'psychic/util'
  autoload :Logger, 'psychic/logger'
  autoload :Shell,  'psychic/shell'
  class Runner
    autoload :BaseRunner, 'psychic/runner/base_runner'
    autoload :SampleRunner, 'psychic/runner/sample_runner'
    autoload :HotRunner, 'psychic/runner/hot_runner'
    autoload :CompoundRunner, 'psychic/runner/compound_runner'
    autoload :ColdRunnerRegistry, 'psychic/runner/cold_runner_registry'
    class TaskNotImplementedError < NotImplementedError; end
    ColdRunnerRegistry.autoload_runners!

    include BaseRunner
    include SampleRunner
    attr_reader :runners, :hot_runner, :cold_runners

    def initialize(opts = { cwd: Dir.pwd })
      fail 'cwd is required' unless opts[:cwd]
      super
      @hot_runner = HotRunner.new(opts)
      @cold_runners = ColdRunnerRegistry.active_runners(opts)
      @runners = [@hot_runner, @cold_runners].flatten
      @known_tasks = @runners.map(&:known_tasks).uniq
    end
<commit_msg>The cwd must be a string on windows<commit_after>require 'psychic/runner/version'

autoload :YAML, 'yaml'

module Psychic
  autoload :Util,   'psychic/util'
  autoload :Logger, 'psychic/logger'
  autoload :Shell,  'psychic/shell'
  class Runner
    autoload :BaseRunner, 'psychic/runner/base_runner'
    autoload :SampleRunner, 'psychic/runner/sample_runner'
    autoload :HotRunner, 'psychic/runner/hot_runner'
    autoload :CompoundRunner, 'psychic/runner/compound_runner'
    autoload :ColdRunnerRegistry, 'psychic/runner/cold_runner_registry'
    class TaskNotImplementedError < NotImplementedError; end
    ColdRunnerRegistry.autoload_runners!

    include BaseRunner
    include SampleRunner
    attr_reader :runners, :hot_runner, :cold_runners

    def initialize(opts = { cwd: Dir.pwd })
      fail 'cwd is required' unless opts[:cwd]
      opts[:cwd] = Pathname(opts[:cwd]).to_s # must be a string on windows...
      super
      @hot_runner = HotRunner.new(opts)
      @cold_runners = ColdRunnerRegistry.active_runners(opts)
      @runners = [@hot_runner, @cold_runners].flatten
      @known_tasks = @runners.map(&:known_tasks).uniq
    end

{'fraction_non_alphanumeric': 0.1008174386920981, 'fraction_numerical': 0.0, 'mean_word_length': 4.245238095238095, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5485286', 'n_tokens_mistral': 772, 'n_tokens_neox': 735, 'n_words': 149}