lib/hx.rb in hx-0.25.0 vs lib/hx.rb in hx-0.26.0

- old
+ new

@@ -374,25 +374,17 @@ def self.get_default_author(options) options.fetch(:default_author, "nobody") end -def self.local_require(options, library) - saved_require_path = $:.dup - begin - $:.delete(".") - lib_dir = Hx.get_pathname(options, :lib_dir) - if lib_dir.relative? - $:.push "./#{lib_dir}" - else - $:.push lib_dir.to_s - end - require library - rescue LoadError - raise - ensure - $:[0..-1] = saved_require_path +def self.setup_require_path(options) + $:.delete(".") + lib_dir = Hx.get_pathname(options, :lib_dir) + if lib_dir.relative? + $:.push "./#{lib_dir}" + else + $:.push lib_dir.to_s end end def self.resolve_constant(qualified_name, root=Object) begin @@ -461,11 +453,11 @@ filter = raw_source['filter'] begin factory = Hx.resolve_constant(filter) rescue NameError library = filter.gsub(/::/, '/').downcase - Hx.local_require(options, library) + require library factory = Hx.resolve_constant(filter) end source = factory.new(source, filter_options) end @@ -516,12 +508,14 @@ options[key.intern] = value end options[:config_file] = config_file options.update(option_overrides) + Hx.setup_require_path(options) + if raw_config.has_key? 'require' for library in raw_config['require'] - Hx.local_require(options, library) + require library end end raw_sources_by_name = raw_config.fetch('sources', {}) raw_outputs = raw_config.fetch('output', [])