lib/hanami/configuration.rb in hanami-2.0.0.alpha6 vs lib/hanami/configuration.rb in hanami-2.0.0.alpha7

- old
+ new

@@ -11,10 +11,11 @@ require_relative "configuration/logger" require_relative "configuration/middleware" require_relative "configuration/router" require_relative "configuration/sessions" require_relative "configuration/source_dirs" +require_relative "constants" module Hanami # Hanami application configuration # # @since 2.0.0 @@ -24,12 +25,11 @@ include Dry::Configurable DEFAULT_ENVIRONMENTS = Concurrent::Hash.new { |h, k| h[k] = Concurrent::Array.new } private_constant :DEFAULT_ENVIRONMENTS - MODULE_DELIMITER = "::" - private_constant :MODULE_DELIMITER + attr_reader :env attr_reader :actions attr_reader :middleware attr_reader :router attr_reader :views, :assets @@ -39,11 +39,11 @@ def initialize(application_name:, env:) @namespace = application_name.split(MODULE_DELIMITER)[0..-2].join(MODULE_DELIMITER) @environments = DEFAULT_ENVIRONMENTS.clone - config.env = env + @env = env # Some default setting values must be assigned at initialize-time to ensure they # have appropriate values for the current application self.root = Dir.pwd self.settings_store = Application::Settings::DotenvStore.new.with_dotenv_loaded @@ -115,17 +115,10 @@ def application_name inflector.underscore(@namespace).to_sym end - setting :env - - def env=(new_env) - config.env = env - apply_env_config(new_env) - end - setting :root, constructor: -> path { Pathname(path) } setting :inflector, default: Dry::Inflector.new def inflections(&block) @@ -146,22 +139,10 @@ setting :settings_class_name, default: "Settings" setting :settings_store, default: Application::Settings::DotenvStore - setting :slices_dir, default: "slices" - - setting :slices_namespace, default: Object - - # TODO: convert into a dedicated object with explicit behaviour around blocks per - # slice, etc. - setting :slices, default: {}, constructor: :dup.to_proc - setting :source_dirs, default: Configuration::SourceDirs.new, cloneable: true - - def slice(slice_name, &block) - slices[slice_name] = block - end setting :base_url, default: "http://0.0.0.0:2300", constructor: -> url { URI(url) } def for_each_middleware(&blk) stack = middleware.stack.dup