diff --git a/lib/middleman/core_extensions/default_helpers.rb b/lib/middleman/core_extensions/default_helpers.rb index db1e7c4f..63096ae9 100644 --- a/lib/middleman/core_extensions/default_helpers.rb +++ b/lib/middleman/core_extensions/default_helpers.rb @@ -46,16 +46,18 @@ module Middleman::CoreExtensions::DefaultHelpers when :css then self.css_dir end end - path = current_path.dup + # If the basename of the request as no extension, assume we are serving a # directory and join index_file to the path. - path = File.join(path, self.index_file) if File.extname(path).empty? - path = path.gsub(%r{^/}, '') + path = full_path(current_path.dup) + + path = path.sub(%r{^/}, '') path = path.gsub(File.extname(path), ".#{asset_ext}") path = path.gsub("/", separator) - view = File.join(self.views, asset_dir, path) - yield path if File.exists?(view) or Dir["#{view}.*"].any? + matching_file = resolve_template(File.join(asset_dir, path)) + + yield path if matching_file end def page_classes diff --git a/lib/middleman/guard.rb b/lib/middleman/guard.rb index c3bec9a9..c7d76de0 100644 --- a/lib/middleman/guard.rb +++ b/lib/middleman/guard.rb @@ -40,6 +40,11 @@ module Guard def start server_start end + + def reload + server_stop + server_start + end def run_on_change(paths) needs_to_restart = false @@ -52,7 +57,7 @@ module Guard end if needs_to_restart - server_restart + reload elsif !@app.nil? paths.each do |path| @app.logger.debug :file_change, Time.now, path if @app.settings.logging? @@ -71,11 +76,6 @@ module Guard end private - def server_restart - server_stop - server_start - end - def server_start # Quiet down Guard # ENV['GUARD_ENV'] = 'test' if @options[:debug] == "true" diff --git a/lib/middleman/version.rb b/lib/middleman/version.rb index 089e4d1d..2f2db9d0 100644 --- a/lib/middleman/version.rb +++ b/lib/middleman/version.rb @@ -1,3 +1,3 @@ module Middleman - VERSION = "2.1.0.pre" + VERSION = "3.0.0.pre" end diff --git a/middleman-x86-mingw32.gemspec b/middleman-x86-mingw32.gemspec index 9a35d41b..0066bca4 100644 --- a/middleman-x86-mingw32.gemspec +++ b/middleman-x86-mingw32.gemspec @@ -24,34 +24,31 @@ Gem::Specification.new do |s| s.add_dependency("thin", ["~> 1.2.11"]) s.add_dependency("thor", ["~> 0.14.0"]) s.add_dependency("tilt", ["~> 1.3.1"]) - s.add_dependency("maruku", ["~> 0.6.0"]) - s.add_dependency("sinatra", ["~> 1.3.1"]) s.add_dependency("rack-test", ["~> 0.6.1"]) - s.add_dependency("uglifier", ["~> 1.0.0"]) - s.add_dependency("slim", ["~> 1.0.2"]) + s.add_dependency("uglifier", ["~> 1.1.0"]) s.add_dependency("haml", ["~> 3.1.0"]) s.add_dependency("sass", ["~> 3.1.7"]) + s.add_dependency("activesupport", ["~> 3.1.0"]) s.add_dependency("compass", ["~> 0.11.3"]) s.add_dependency("coffee-script", ["~> 2.2.0"]) - s.add_dependency("sprockets", ["~> 2.0.3"]) + s.add_dependency("execjs", ["~> 1.2.7"]) + s.add_dependency("sprockets", ["~> 2.0"]) s.add_dependency("sprockets-sass", ["~> 0.3.0"]) - s.add_dependency("padrino-core", ["~> 0.10.5"]) - s.add_dependency("padrino-helpers", ["~> 0.10.5"]) s.add_dependency("hooks", ["~> 0.2.0"]) + s.add_dependency("guard", ["~> 0.8.8"]) s.add_dependency("eventmachine", ["1.0.0.beta.4.1"]) s.add_dependency("win32-process", ["~> 0.6.5"]) s.add_dependency("rb-fchange") - s.add_dependency("guard", ["~> 0.8.8"]) - # Development and test - # s.add_development_dependency("jquery-rails") + s.add_development_dependency("slim") + s.add_development_dependency("maruku") s.add_development_dependency("coffee-filter", ["~> 0.1.1"]) s.add_development_dependency("liquid", ["~> 2.2.0"]) - s.add_development_dependency("cucumber", ["~> 1.0.2"]) + s.add_development_dependency("cucumber", ["~> 1.1.0"]) s.add_development_dependency("rake", ["~> 0.9.2"]) - s.add_development_dependency("rspec", ["~> 2.6.0"]) + s.add_development_dependency("rspec", ["~> 2.7.0"]) s.add_development_dependency("jquery-rails") s.add_development_dependency("bootstrap-rails") end diff --git a/middleman.gemspec b/middleman.gemspec index 7300df98..200b580c 100644 --- a/middleman.gemspec +++ b/middleman.gemspec @@ -35,9 +35,11 @@ Gem::Specification.new do |s| s.add_dependency("sprockets", ["~> 2.0"]) s.add_dependency("sprockets-sass", ["~> 0.3.0"]) s.add_dependency("hooks", ["~> 0.2.0"]) - s.add_dependency("rb-fsevent") s.add_dependency("guard", ["~> 0.8.8"]) + # OSX + s.add_dependency("rb-fsevent") + # Development and test s.add_development_dependency("slim") s.add_development_dependency("maruku")