Sha256: 70a8f0f11ef9527f9dc476176a4a6dee8f73b70398ab906e8d551f691501b575

Contents?: true

Size: 618 Bytes

Versions: 4

Compression:

Stored size: 618 Bytes

Contents

# frozen_string_literal: true

require "dry-container"
require "open3"
require "spek"

module Gemsmith
  # Provides a global gem container for injection into other objects.
  module Container
    extend Dry::Container::Mixin

    config.registry = ->(container, key, value, _options) { container[key.to_s] = value }

    merge Rubysmith::Container

    register(:configuration) { Gemsmith::Configuration::Loader.call }
    register(:specification) { Spek::Loader.call "#{__dir__}/../../gemsmith.gemspec" }
    register(:environment) { ENV }
    register(:executor) { Open3 }
    register(:kernel) { Kernel }
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
gemsmith-17.0.1 lib/gemsmith/container.rb
gemsmith-17.0.0 lib/gemsmith/container.rb
gemsmith-16.2.0 lib/gemsmith/container.rb
gemsmith-16.1.0 lib/gemsmith/container.rb