[rubygem-sass-rails] Update to sass-rails 4.0.3.

Vít Ondruch vondruch at fedoraproject.org
Tue Jul 1 12:33:53 UTC 2014


commit f642025eb8074f85b8d971df0239abb2f0e31595
Author: Vít Ondruch <vondruch at redhat.com>
Date:   Tue Jul 1 14:33:18 2014 +0200

    Update to sass-rails 4.0.3.

 .gitignore                                         |    1 +
 ...rter-instead-of-monkey-patching-sprockets.patch |  152 ++++++++++++++++
 ...-restore-special-behavior-in-sassimporter.patch |  190 ++++++++++++++++++++
 ...ate-instead-of-monkey-patching-spsrockets.patch |  129 +++++++++++++
 rubygem-sass-rails.spec                            |   75 +++++----
 sources                                            |    2 +-
 6 files changed, 514 insertions(+), 35 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 65e9c1b..04c9748 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 /sass-rails-3.2.5.gem
 /sass-rails-3.2.6.gem
 /sass-rails-4.0.0.gem
+/sass-rails-4.0.3.gem
diff --git a/rubygem-sass-rails-4.0.3-own-importer-instead-of-monkey-patching-sprockets.patch b/rubygem-sass-rails-4.0.3-own-importer-instead-of-monkey-patching-sprockets.patch
new file mode 100644
index 0000000..518312d
--- /dev/null
+++ b/rubygem-sass-rails-4.0.3-own-importer-instead-of-monkey-patching-sprockets.patch
@@ -0,0 +1,152 @@
+From bd63297c31aceb079595c3a3d9007b0e4df505b6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafael=20Mendon=C3=A7a=20Fran=C3=A7a?=
+ <rafael.franca at plataformatec.com.br>
+Date: Thu, 13 Mar 2014 21:13:33 -0300
+Subject: [PATCH] Define our own importer instead of monkey patching sprockets
+
+---
+ lib/sass/rails/importer.rb | 112 ++++++---------------------------------------
+ lib/sass/rails/template.rb |   4 +-
+ 2 files changed, 16 insertions(+), 100 deletions(-)
+
+diff --git a/lib/sass/rails/importer.rb b/lib/sass/rails/importer.rb
+index 23c03e9..e31302c 100644
+--- a/lib/sass/rails/importer.rb
++++ b/lib/sass/rails/importer.rb
+@@ -1,104 +1,20 @@
+ require 'sprockets/sass_importer'
+ 
+-module Sprockets
+-  class SassImporter < Sass::Importers::Filesystem
+-    GLOB = /\*|\[.+\]/
+-
+-    attr_reader :context
+-    private :context
+-
+-    def extensions
+-      {
+-        'css'          => :scss,
+-        'css.scss'     => :scss,
+-        'css.sass'     => :sass,
+-        'css.erb'      => :scss,
+-        'scss.erb'     => :scss,
+-        'sass.erb'     => :sass,
+-        'css.scss.erb' => :scss,
+-        'css.sass.erb' => :sass
+-      }.merge!(super)
+-    end
+-
+-    def find_relative(name, base, options)
+-      if name =~ GLOB
+-        glob_imports(name, Pathname.new(base), options)
+-      else
+-        engine_from_path(name, File.dirname(base), options)
+-      end
+-    end
+-
+-    def find(name, options)
+-      if name =~ GLOB
+-        nil # globs must be relative
+-      else
+-        engine_from_path(name, root, options)
+-      end
+-    end
+-
+-    def each_globbed_file(glob, base_pathname, options)
+-      Dir["#{base_pathname}/#{glob}"].sort.each do |filename|
+-        next if filename == options[:filename]
+-        yield filename if File.directory?(filename) || context.asset_requirable?(filename)
+-      end
+-    end
+-
+-    def glob_imports(glob, base_pathname, options)
+-      contents = ""
+-      each_globbed_file(glob, base_pathname.dirname, options) do |filename|
+-        if File.directory?(filename)
+-          depend_on(filename)
+-        elsif context.asset_requirable?(filename)
+-          depend_on(filename)
+-          contents << "@import #{Pathname.new(filename).relative_path_from(base_pathname.dirname).to_s.inspect};\n"
+-        end
++module Sass
++  module Rails
++    class SassImporter < Sprockets::SassImporter
++      def extensions
++        {
++          'css'          => :scss,
++          'css.scss'     => :scss,
++          'css.sass'     => :sass,
++          'css.erb'      => :scss,
++          'scss.erb'     => :scss,
++          'sass.erb'     => :sass,
++          'css.scss.erb' => :scss,
++          'css.sass.erb' => :sass
++        }.merge!(super)
+       end
+-      return nil if contents.empty?
+-      Sass::Engine.new(contents, options.merge(
+-        :filename => base_pathname.to_s,
+-        :importer => self,
+-        :syntax => :scss
+-      ))
+     end
+-
+-    private
+-
+-      def depend_on(filename)
+-        context.depend_on(filename)
+-        context.depend_on(globbed_file_parent(filename))
+-      end
+-
+-      def globbed_file_parent(filename)
+-        if File.directory?(filename)
+-          File.expand_path('..', filename)
+-        else
+-          File.dirname(filename)
+-        end
+-      end
+-
+-      def engine_from_path(name, dir, options)
+-        full_filename, syntax = Sass::Util.destructure(find_real_file(dir, name, options))
+-        return unless full_filename && File.readable?(full_filename)
+-
+-        engine = Sass::Engine.new(evaluate(full_filename), options.merge(
+-          syntax: syntax,
+-          filename: full_filename,
+-          importer: self
+-        ))
+-
+-        if engine && (filename = engine.options[:filename])
+-          @context.depend_on(filename)
+-        end
+-
+-        engine
+-      end
+-
+-      def evaluate(filename)
+-        attributes = context.environment.attributes_for(filename)
+-        processors = context.environment.preprocessors(attributes.content_type) +
+-          attributes.engines.reverse - [Sprockets::ScssTemplate, Sprockets::SassTemplate]
+-
+-        context.evaluate(filename, processors: processors)
+-      end
+   end
+ end
+diff --git a/lib/sass/rails/template.rb b/lib/sass/rails/template.rb
+index 9def8d7..be7ccca 100644
+--- a/lib/sass/rails/template.rb
++++ b/lib/sass/rails/template.rb
+@@ -12,8 +12,8 @@ def evaluate(context, locals, &block)
+           :line => line,
+           :syntax => syntax,
+           :cache_store => cache_store,
+-          :importer => Sprockets::SassImporter.new(context.pathname.to_s),
+-          :load_paths => context.environment.paths.map { |path| Sprockets::SassImporter.new(path.to_s) },
++          :importer => SassImporter.new(context.pathname.to_s),
++          :load_paths => context.environment.paths.map { |path| SassImporter.new(path.to_s) },
+           :sprockets => {
+             :context => context,
+             :environment => context.environment
+-- 
+1.9.3
+
diff --git a/rubygem-sass-rails-4.0.3-restore-special-behavior-in-sassimporter.patch b/rubygem-sass-rails-4.0.3-restore-special-behavior-in-sassimporter.patch
new file mode 100644
index 0000000..c8807e2
--- /dev/null
+++ b/rubygem-sass-rails-4.0.3-restore-special-behavior-in-sassimporter.patch
@@ -0,0 +1,190 @@
+From e56c2fbf60ef2bd879aae6f6163c90326b4017be Mon Sep 17 00:00:00 2001
+From: Matthew Draper <matthew at trebex.net>
+Date: Wed, 23 Apr 2014 04:42:06 +0930
+Subject: [PATCH] Restore special behaviour in SassImporter
+
+---
+ Gemfile                          |  1 +
+ lib/sass/rails/importer.rb       | 78 +++++++++++++++++++++++++++++++++++++++-
+ lib/sass/rails/template.rb       | 11 ++----
+ sass-rails.gemspec               |  2 +-
+ sass-rails.gemspec.erb           |  2 +-
+ test/gemfiles/Gemfile-master     |  1 +
+ 6 files changed, 84 insertions(+), 11 deletions(-)
+
+diff --git a/Gemfile b/Gemfile
+index e93ce25..94da4f5 100644
+--- a/Gemfile
++++ b/Gemfile
+@@ -4,5 +4,6 @@ source "https://rubygems.org"
+ gemspec
+ 
+ gem "rails"
++gem "sprockets-rails"
+ 
+ gem "sqlite3"
+diff --git a/lib/sass/rails/importer.rb b/lib/sass/rails/importer.rb
+index e31302c..699b7a1 100644
+--- a/lib/sass/rails/importer.rb
++++ b/lib/sass/rails/importer.rb
+@@ -2,7 +2,15 @@
+ 
+ module Sass
+   module Rails
+-    class SassImporter < Sprockets::SassImporter
++    class SassImporter < Sass::Importers::Filesystem
++      GLOB = /\*|\[.+\]/
++
++      attr_reader :context
++      def initialize(context, *args)
++        @context = context
++        super(*args)
++      end
++
+       def extensions
+         {
+           'css'          => :scss,
+@@ -15,6 +23,74 @@ def extensions
+           'css.sass.erb' => :sass
+         }.merge!(super)
+       end
++
++      def find_relative(name, base, options)
++        if name =~ GLOB
++          glob_imports(name, Pathname.new(base), options)
++        else
++          engine_from_path(name, File.dirname(base), options)
++        end
++      end
++
++      def find(name, options)
++        if name =~ GLOB
++          nil # globs must be relative
++        else
++          engine_from_path(name, root, options)
++        end
++      end
++
++      private
++
++        def each_globbed_file(glob, base_pathname, options)
++          Dir["#{base_pathname}/#{glob}"].sort.each do |filename|
++            next if filename == options[:filename]
++            if File.directory?(filename)
++              context.depend_on(filename)
++              context.depend_on(File.expand_path('..', filename))
++            elsif context.asset_requirable?(filename)
++              context.depend_on(File.dirname(filename))
++              yield filename
++            end
++          end
++        end
++
++        def glob_imports(glob, base_pathname, options)
++          contents = ""
++          each_globbed_file(glob, base_pathname.dirname, options) do |filename|
++            contents << "@import #{Pathname.new(filename).relative_path_from(base_pathname.dirname).to_s.inspect};\n"
++          end
++          return nil if contents.empty?
++          Sass::Engine.new(contents, options.merge(
++            :filename => base_pathname.to_s,
++            :importer => self,
++            :syntax => :scss
++          ))
++        end
++
++
++        def engine_from_path(name, dir, options)
++          full_filename, syntax = Sass::Util.destructure(find_real_file(dir, name, options))
++          return unless full_filename && File.readable?(full_filename)
++
++          context.depend_on full_filename
++          engine = Sass::Engine.new(evaluate(full_filename), options.merge(
++            syntax: syntax,
++            filename: full_filename,
++            importer: self
++          ))
++
++          engine
++        end
++
++        def evaluate(filename)
++          attributes = context.environment.attributes_for(filename)
++          processors = context.environment.preprocessors(attributes.content_type) +
++            attributes.engines.reverse - [Sass::Rails::ScssTemplate, Sass::Rails::SassTemplate]
++
++          context.evaluate(filename, processors: processors)
++        end
++
+     end
+   end
+ end
+diff --git a/lib/sass/rails/template.rb b/lib/sass/rails/template.rb
+index be7ccca..d319905 100644
+--- a/lib/sass/rails/template.rb
++++ b/lib/sass/rails/template.rb
+@@ -12,8 +12,8 @@ def evaluate(context, locals, &block)
+           :line => line,
+           :syntax => syntax,
+           :cache_store => cache_store,
+-          :importer => SassImporter.new(context.pathname.to_s),
+-          :load_paths => context.environment.paths.map { |path| SassImporter.new(path.to_s) },
++          :importer => SassImporter.new(context, context.pathname.to_s),
++          :load_paths => context.environment.paths.map { |path| SassImporter.new(context, path.to_s) },
+           :sprockets => {
+             :context => context,
+             :environment => context.environment
+@@ -22,12 +22,7 @@ def evaluate(context, locals, &block)
+ 
+         sass_config = context.environment.context_class.sass_config.merge(options)
+ 
+-        result = ::Sass::Engine.new(data, sass_config).render
+-
+-        filenames = ([options[:importer].imported_filenames] + options[:load_path].map(&:imported_filenames)).flatten.uniq
+-        filenames.each { |filename| context.depend_on(filename) }
+-
+-        result
++        ::Sass::Engine.new(data, sass_config).render
+       rescue ::Sass::SyntaxError => e
+         context.__LINE__ = e.sass_backtrace.first[:line]
+         raise e
+diff --git a/sass-rails.gemspec b/sass-rails.gemspec
+index 2ce5250..d4d67ec 100644
+--- a/sass-rails.gemspec
++++ b/sass-rails.gemspec
+@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
+ 
+   s.rubyforge_project = "sass-rails"
+ 
+-  s.add_dependency 'sass',            '~> 3.2.0'
++  s.add_dependency 'sass',            '~> 3.2'
+   s.add_dependency 'railties',        '>= 4.0.0', '< 5.0'
+   s.add_dependency 'sprockets-rails', '~> 2.0'
+   s.add_dependency 'sprockets',       '~> 2.12'
+diff --git a/sass-rails.gemspec.erb b/sass-rails.gemspec.erb
+index 3bf13fd..296d330 100644
+--- a/sass-rails.gemspec.erb
++++ b/sass-rails.gemspec.erb
+@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
+ 
+   s.rubyforge_project = "sass-rails"
+ 
+-  s.add_dependency 'sass',            '~> 3.2.0'
++  s.add_dependency 'sass',            '~> 3.2'
+   s.add_dependency 'railties',        '>= 4.0.0', '< 5.0'
+   s.add_dependency 'sprockets-rails', '~> 2.0'
+   s.add_dependency 'sprockets',       '~> 2.12'
+diff --git a/test/gemfiles/Gemfile-master b/test/gemfiles/Gemfile-master
+index 7b09aaf..587850a 100644
+--- a/test/gemfiles/Gemfile-master
++++ b/test/gemfiles/Gemfile-master
+@@ -4,5 +4,6 @@ source "https://rubygems.org"
+ gemspec path: '../..'
+ 
+ gem "rails", github: 'rails/rails', branch: 'master'
++gem "sprockets-rails", github: 'rails/sprockets-rails', branch: '2-1-stable'
+ 
+ gem "sqlite3"
+-- 
+1.9.3
+
diff --git a/rubygem-sass-rails-4.0.3-template-instead-of-monkey-patching-spsrockets.patch b/rubygem-sass-rails-4.0.3-template-instead-of-monkey-patching-spsrockets.patch
new file mode 100644
index 0000000..da8f903
--- /dev/null
+++ b/rubygem-sass-rails-4.0.3-template-instead-of-monkey-patching-spsrockets.patch
@@ -0,0 +1,129 @@
+From a62bdf85e56a678aa5fded3d4ed0d10bbc0b7a7b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafael=20Mendon=C3=A7a=20Fran=C3=A7a?=
+ <rafael.franca at plataformatec.com.br>
+Date: Thu, 13 Mar 2014 21:12:56 -0300
+Subject: [PATCH] Define our own template instead of monkey patching sprockets
+
+---
+ lib/sass/rails/railtie.rb  |  3 +++
+ lib/sass/rails/template.rb | 61 ++++++++++++++++++++++++++++++----------------
+ sass-rails.gemspec         |  2 +-
+ sass-rails.gemspec.erb     |  2 +-
+ 4 files changed, 45 insertions(+), 23 deletions(-)
+
+diff --git a/lib/sass/rails/railtie.rb b/lib/sass/rails/railtie.rb
+index e839939..e99dd83 100644
+--- a/lib/sass/rails/railtie.rb
++++ b/lib/sass/rails/railtie.rb
+@@ -56,6 +56,9 @@ module SassContext
+       end
+ 
+       if app.assets
++        app.assets.register_engine '.sass', Sass::Rails::SassTemplate
++        app.assets.register_engine '.scss', Sass::Rails::ScssTemplate
++
+         app.assets.context_class.extend(SassContext)
+         app.assets.context_class.sass_config = app.config.sass
+       end
+diff --git a/lib/sass/rails/template.rb b/lib/sass/rails/template.rb
+index cc70752..9def8d7 100644
+--- a/lib/sass/rails/template.rb
++++ b/lib/sass/rails/template.rb
+@@ -1,28 +1,47 @@
+ require "sprockets/sass_template"
+ 
+-module Sprockets
+-  class SassTemplate
+-    def evaluate(context, locals, &block)
+-      cache_store = SassCacheStore.new(context.environment)
+-
+-      options = {
+-        :filename => eval_file,
+-        :line => line,
+-        :syntax => syntax,
+-        :cache_store => cache_store,
+-        :importer => SassImporter.new(context, context.pathname),
+-        :load_paths => context.environment.paths.map { |path| SassImporter.new(context, path) },
+-        :sprockets => {
+-          :context => context,
+-          :environment => context.environment
++module Sass
++  module Rails
++    class SassTemplate < Sprockets::SassTemplate
++
++      def evaluate(context, locals, &block)
++        cache_store = Sprockets::SassCacheStore.new(context.environment)
++
++        options = {
++          :filename => eval_file,
++          :line => line,
++          :syntax => syntax,
++          :cache_store => cache_store,
++          :importer => Sprockets::SassImporter.new(context.pathname.to_s),
++          :load_paths => context.environment.paths.map { |path| Sprockets::SassImporter.new(path.to_s) },
++          :sprockets => {
++            :context => context,
++            :environment => context.environment
++          }
+         }
+-      }
+ 
+-      sass_config = context.environment.context_class.sass_config.merge(options)
+-      ::Sass::Engine.new(data, sass_config).render
+-    rescue ::Sass::SyntaxError => e
+-      context.__LINE__ = e.sass_backtrace.first[:line]
+-      raise e
++        sass_config = context.environment.context_class.sass_config.merge(options)
++
++        result = ::Sass::Engine.new(data, sass_config).render
++
++        filenames = ([options[:importer].imported_filenames] + options[:load_path].map(&:imported_filenames)).flatten.uniq
++        filenames.each { |filename| context.depend_on(filename) }
++
++        result
++      rescue ::Sass::SyntaxError => e
++        context.__LINE__ = e.sass_backtrace.first[:line]
++        raise e
++      end
++    end
++
++    class ScssTemplate < SassTemplate
++      def self.default_mime_type
++        'text/css'
++      end
++
++      def syntax
++        :scss
++      end
+     end
+   end
+ end
+diff --git a/sass-rails.gemspec b/sass-rails.gemspec
+index d597cd5..2ce5250 100644
+--- a/sass-rails.gemspec
++++ b/sass-rails.gemspec
+@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
+   s.add_dependency 'sass',            '~> 3.2.0'
+   s.add_dependency 'railties',        '>= 4.0.0', '< 5.0'
+   s.add_dependency 'sprockets-rails', '~> 2.0'
+-  s.add_dependency 'sprockets',       '~> 2.8', '<= 2.11.0'
++  s.add_dependency 'sprockets',       '~> 2.12'
+ 
+   s.files         = [".gitignore",".travis.yml","CHANGELOG.md","Gemfile","MIT-LICENSE","README.md","Rakefile","lib/rails/generators/sass/assets/assets_generator.rb","lib/rails/generators/sass/assets/templates/stylesheet.css.sass","lib/rails/generators/sass/scaffold/scaffold_generator.rb","lib/rails/generators/sass_scaffold.rb","lib/rails/generators/scss/assets/assets_generator.rb","lib/rails/generators/scss/assets/templates/stylesheet.css.scss","lib/rails/generators/scss/scaffold/scaffold_generator.rb","lib/sass-rails.rb","lib/sass/rails.rb","lib/sass/rails/helpers.rb","lib/sass/rails/importer.rb","lib/sass/rails/logger.rb","lib/sass/rails/railtie.rb","lib/sass/rails/template.rb","lib/sass/rails/version.rb","sass-rails.gemspec","sass-rails.gemspec.erb","test/fixtures/alternate_config_project/.gitignore","test/fixtures/alternate_config_project/Gemfile","test/fixtures/alternate_config_project/README","test/fixtures/alternate_config_project/Rakefile","test/fixtures/alternate_c
 onfig_project/app/assets/images/1x1.png","test/fixtures/alternate_config_project/app/assets/images/rails.png","test/fixtures/alternate_config_project/app/assets/javascripts/application.js","test/fixtures/alternate_config_project/app/assets/stylesheets/_top_level_partial.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/application.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/css_application.css","test/fixtures/alternate_config_project/app/assets/stylesheets/globbed/globbed.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/globbed/nested/nested_glob.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/_sass_import.css.sass","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/_scss_import.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/_without_css_ext.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/pa
 rtials/subfolder/_relative_sass.css.sass","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/subfolder/_relative_scss.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/subfolder/relative_not_a_partial.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/another_plain.css","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/plain.css","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/second_level.css.scss","test/fixtures/alternate_config_project/app/controllers/application_controller.rb","test/fixtures/alternate_config_project/app/helpers/application_helper.rb","test/fixtures/alternate_config_project/app/mailers/.gitkeep","test/fixtures/alternate_config_project/app/models/.gitkeep","test/fixtures/alternate_config_project/app/views/layouts/application.html.erb","test/fixtures/alternate_config_project/config.ru","test/fixtures/alternate_config_project/c
 onfig/application.rb","test/fixtures/alternate_config_project/config/boot.rb","test/fixtures/alternate_config_project/config/database.yml","test/fixtures/alternate_config_project/config/environment.rb","test/fixtures/alternate_config_project/config/environments/development.rb","test/fixtures/alternate_config_project/config/environments/production.rb","test/fixtures/alternate_config_project/config/environments/test.rb","test/fixtures/alternate_config_project/config/initializers/backtrace_silencers.rb","test/fixtures/alternate_config_project/config/initializers/inflections.rb","test/fixtures/alternate_config_project/config/initializers/mime_types.rb","test/fixtures/alternate_config_project/config/initializers/secret_token.rb","test/fixtures/alternate_config_project/config/initializers/session_store.rb","test/fixtures/alternate_config_project/config/initializers/wrap_parameters.rb","test/fixtures/alternate_config_project/config/locales/en.yml","test/fixtures/alternate_config_pr
 oject/config/routes.rb","test/fixtures/alternate_config_project/db/seeds.rb","test/fixtures/alternate_config_project/doc/README_FOR_APP","test/fixtures/alternate_config_project/lib/tasks/.gitkeep","test/fixtures/alternate_config_project/log/.gitkeep","test/fixtures/alternate_config_project/public/404.html","test/fixtures/alternate_config_project/public/422.html","test/fixtures/alternate_config_project/public/500.html","test/fixtures/alternate_config_project/public/favicon.ico","test/fixtures/alternate_config_project/public/index.html","test/fixtures/alternate_config_project/public/robots.txt","test/fixtures/alternate_config_project/script/rails","test/fixtures/alternate_config_project/vendor/assets/stylesheets/.gitkeep","test/fixtures/alternate_config_project/vendor/plugins/.gitkeep","test/fixtures/engine_project/.gitignore","test/fixtures/engine_project/Gemfile","test/fixtures/engine_project/MIT-LICENSE","test/fixtures/engine_project/README.rdoc","test/fixtures/engine_proje
 ct/Rakefile","test/fixtures/engine_project/app/assets/images/engine_project/.keep","test/fixtures/engine_project/app/assets/javascripts/engine_project/application.js","test/fixtures/engine_project/app/assets/stylesheets/engine_project/application.css","test/fixtures/engine_project/app/controllers/engine_project/application_controller.rb","test/fixtures/engine_project/app/helpers/engine_project/application_helper.rb","test/fixtures/engine_project/app/views/layouts/engine_project/application.html.erb","test/fixtures/engine_project/config/routes.rb","test/fixtures/engine_project/engine_project.gemspec","test/fixtures/engine_project/lib/engine_project.rb","test/fixtures/engine_project/lib/engine_project/engine.rb","test/fixtures/engine_project/lib/engine_project/version.rb","test/fixtures/engine_project/lib/tasks/engine_project_tasks.rake","test/fixtures/engine_project/script/rails","test/fixtures/engine_project/test/dummy/README.rdoc","test/fixtures/engine_project/test/dummy/Ra
 kefile","test/fixtures/engine_project/test/dummy/app/assets/javascripts/application.js","test/fixtures/engine_project/test/dummy/app/assets/stylesheets/application.css","test/fixtures/engine_project/test/dummy/app/controllers/application_controller.rb","test/fixtures/engine_project/test/dummy/app/controllers/concerns/.keep","test/fixtures/engine_project/test/dummy/app/helpers/application_helper.rb","test/fixtures/engine_project/test/dummy/app/mailers/.keep","test/fixtures/engine_project/test/dummy/app/models/.keep","test/fixtures/engine_project/test/dummy/app/models/concerns/.keep","test/fixtures/engine_project/test/dummy/app/views/layouts/application.html.erb","test/fixtures/engine_project/test/dummy/bin/bundle","test/fixtures/engine_project/test/dummy/bin/rails","test/fixtures/engine_project/test/dummy/bin/rake","test/fixtures/engine_project/test/dummy/config.ru","test/fixtures/engine_project/test/dummy/config/application.rb","test/fixtures/engine_project/test/dummy/config
 /boot.rb","test/fixtures/engine_project/test/dummy/config/database.yml","test/fixtures/engine_project/test/dummy/config/environment.rb","test/fixtures/engine_project/test/dummy/config/environments/development.rb","test/fixtures/engine_project/test/dummy/config/environments/production.rb","test/fixtures/engine_project/test/dummy/config/environments/test.rb","test/fixtures/engine_project/test/dummy/config/initializers/backtrace_silencers.rb","test/fixtures/engine_project/test/dummy/config/initializers/filter_parameter_logging.rb","test/fixtures/engine_project/test/dummy/config/initializers/inflections.rb","test/fixtures/engine_project/test/dummy/config/initializers/mime_types.rb","test/fixtures/engine_project/test/dummy/config/initializers/secret_token.rb","test/fixtures/engine_project/test/dummy/config/initializers/session_store.rb","test/fixtures/engine_project/test/dummy/config/initializers/wrap_parameters.rb","test/fixtures/engine_project/test/dummy/config/locales/en.yml",
 "test/fixtures/engine_project/test/dummy/config/routes.rb","test/fixtures/engine_project/test/dummy/lib/assets/.keep","test/fixtures/engine_project/test/dummy/log/.keep","test/fixtures/engine_project/test/dummy/public/404.html","test/fixtures/engine_project/test/dummy/public/422.html","test/fixtures/engine_project/test/dummy/public/500.html","test/fixtures/engine_project/test/dummy/public/favicon.ico","test/fixtures/sass_project/.gitignore","test/fixtures/sass_project/Gemfile","test/fixtures/sass_project/README","test/fixtures/sass_project/Rakefile","test/fixtures/sass_project/app/assets/images/rails.png","test/fixtures/sass_project/app/assets/javascripts/application.js","test/fixtures/sass_project/app/assets/stylesheets/application.css","test/fixtures/sass_project/app/controllers/application_controller.rb","test/fixtures/sass_project/app/helpers/application_helper.rb","test/fixtures/sass_project/app/mailers/.gitkeep","test/fixtures/sass_project/app/models/.gitkeep","test/fi
 xtures/sass_project/app/views/layouts/application.html.erb","test/fixtures/sass_project/config.ru","test/fixtures/sass_project/config/application.rb","test/fixtures/sass_project/config/boot.rb","test/fixtures/sass_project/config/database.yml","test/fixtures/sass_project/config/environment.rb","test/fixtures/sass_project/config/environments/development.rb","test/fixtures/sass_project/config/environments/production.rb","test/fixtures/sass_project/config/environments/test.rb","test/fixtures/sass_project/config/initializers/backtrace_silencers.rb","test/fixtures/sass_project/config/initializers/inflections.rb","test/fixtures/sass_project/config/initializers/mime_types.rb","test/fixtures/sass_project/config/initializers/secret_token.rb","test/fixtures/sass_project/config/initializers/session_store.rb","test/fixtures/sass_project/config/initializers/wrap_parameters.rb","test/fixtures/sass_project/config/locales/en.yml","test/fixtures/sass_project/config/routes.rb","test/fixtures/s
 ass_project/db/seeds.rb","test/fixtures/sass_project/doc/README_FOR_APP","test/fixtures/sass_project/lib/tasks/.gitkeep","test/fixtures/sass_project/log/.gitkeep","test/fixtures/sass_project/public/404.html","test/fixtures/sass_project/public/422.html","test/fixtures/sass_project/public/500.html","test/fixtures/sass_project/public/favicon.ico","test/fixtures/sass_project/public/index.html","test/fixtures/sass_project/public/robots.txt","test/fixtures/sass_project/script/rails","test/fixtures/sass_project/vendor/assets/stylesheets/.gitkeep","test/fixtures/sass_project/vendor/plugins/.gitkeep","test/fixtures/scss_project/.gitignore","test/fixtures/scss_project/Gemfile","test/fixtures/scss_project/README","test/fixtures/scss_project/Rakefile","test/fixtures/scss_project/app/assets/images/1x1.png","test/fixtures/scss_project/app/assets/images/rails.png","test/fixtures/scss_project/app/assets/javascripts/application.js","test/fixtures/scss_project/app/assets/stylesheets/_top_leve
 l_partial.css.scss","test/fixtures/scss_project/app/assets/stylesheets/application.css.scss","test/fixtures/scss_project/app/assets/stylesheets/css_application.css","test/fixtures/scss_project/app/assets/stylesheets/css_erb_handler.css.erb","test/fixtures/scss_project/app/assets/stylesheets/css_sass_erb_handler.css.sass.erb","test/fixtures/scss_project/app/assets/stylesheets/css_scss_erb_handler.css.scss.erb","test/fixtures/scss_project/app/assets/stylesheets/globbed/globbed.css.scss","test/fixtures/scss_project/app/assets/stylesheets/globbed/nested/nested_glob.css.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/_sass_import.css.sass","test/fixtures/scss_project/app/assets/stylesheets/partials/_scss_import.css.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/_without_css_ext.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/subfolder/_relative_sass.css.sass","test/fixtures/scss_project/app/assets/stylesheets/partials/subfold
 er/_relative_scss.css.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/subfolder/relative_not_a_partial.css.scss","test/fixtures/scss_project/app/assets/stylesheets/sass_erb_handler.sass.erb","test/fixtures/scss_project/app/assets/stylesheets/scss_erb_handler.scss.erb","test/fixtures/scss_project/app/assets/stylesheets/subfolder/_defaults.css.scss","test/fixtures/scss_project/app/assets/stylesheets/subfolder/another_plain.css","test/fixtures/scss_project/app/assets/stylesheets/subfolder/plain.css","test/fixtures/scss_project/app/assets/stylesheets/subfolder/second_level.css.scss","test/fixtures/scss_project/app/controllers/application_controller.rb","test/fixtures/scss_project/app/helpers/application_helper.rb","test/fixtures/scss_project/app/mailers/.gitkeep","test/fixtures/scss_project/app/models/.gitkeep","test/fixtures/scss_project/app/views/layouts/application.html.erb","test/fixtures/scss_project/config.ru","test/fixtures/scss_project/config/applicatio
 n.rb","test/fixtures/scss_project/config/boot.rb","test/fixtures/scss_project/config/database.yml","test/fixtures/scss_project/config/environment.rb","test/fixtures/scss_project/config/environments/development.rb","test/fixtures/scss_project/config/environments/production.rb","test/fixtures/scss_project/config/environments/test.rb","test/fixtures/scss_project/config/initializers/backtrace_silencers.rb","test/fixtures/scss_project/config/initializers/inflections.rb","test/fixtures/scss_project/config/initializers/mime_types.rb","test/fixtures/scss_project/config/initializers/postprocessor.rb","test/fixtures/scss_project/config/initializers/secret_token.rb","test/fixtures/scss_project/config/initializers/session_store.rb","test/fixtures/scss_project/config/initializers/wrap_parameters.rb","test/fixtures/scss_project/config/locales/en.yml","test/fixtures/scss_project/config/routes.rb","test/fixtures/scss_project/db/seeds.rb","test/fixtures/scss_project/doc/README_FOR_APP","test
 /fixtures/scss_project/lib/tasks/.gitkeep","test/fixtures/scss_project/log/.gitkeep","test/fixtures/scss_project/public/404.html","test/fixtures/scss_project/public/422.html","test/fixtures/scss_project/public/500.html","test/fixtures/scss_project/public/favicon.ico","test/fixtures/scss_project/public/index.html","test/fixtures/scss_project/public/robots.txt","test/fixtures/scss_project/script/rails","test/fixtures/scss_project/vendor/assets/stylesheets/.gitkeep","test/fixtures/scss_project/vendor/plugins/.gitkeep","test/gemfiles/Gemfile-master","test/sass_rails_generators_test.rb","test/sass_rails_logger_test.rb","test/sass_rails_test.rb","test/support/sass_rails_test_case.rb","test/test_helper.rb"]
+   s.test_files    = ["test/fixtures/alternate_config_project/.gitignore","test/fixtures/alternate_config_project/Gemfile","test/fixtures/alternate_config_project/README","test/fixtures/alternate_config_project/Rakefile","test/fixtures/alternate_config_project/app/assets/images/1x1.png","test/fixtures/alternate_config_project/app/assets/images/rails.png","test/fixtures/alternate_config_project/app/assets/javascripts/application.js","test/fixtures/alternate_config_project/app/assets/stylesheets/_top_level_partial.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/application.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/css_application.css","test/fixtures/alternate_config_project/app/assets/stylesheets/globbed/globbed.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/globbed/nested/nested_glob.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/_sass_import.css.sass","test/fi
 xtures/alternate_config_project/app/assets/stylesheets/partials/_scss_import.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/_without_css_ext.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/subfolder/_relative_sass.css.sass","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/subfolder/_relative_scss.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/partials/subfolder/relative_not_a_partial.css.scss","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/another_plain.css","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/plain.css","test/fixtures/alternate_config_project/app/assets/stylesheets/subfolder/second_level.css.scss","test/fixtures/alternate_config_project/app/controllers/application_controller.rb","test/fixtures/alternate_config_project/app/helpers/application_helper.rb","test/fixtures/alternate_config_project/app/mail
 ers/.gitkeep","test/fixtures/alternate_config_project/app/models/.gitkeep","test/fixtures/alternate_config_project/app/views/layouts/application.html.erb","test/fixtures/alternate_config_project/config.ru","test/fixtures/alternate_config_project/config/application.rb","test/fixtures/alternate_config_project/config/boot.rb","test/fixtures/alternate_config_project/config/database.yml","test/fixtures/alternate_config_project/config/environment.rb","test/fixtures/alternate_config_project/config/environments/development.rb","test/fixtures/alternate_config_project/config/environments/production.rb","test/fixtures/alternate_config_project/config/environments/test.rb","test/fixtures/alternate_config_project/config/initializers/backtrace_silencers.rb","test/fixtures/alternate_config_project/config/initializers/inflections.rb","test/fixtures/alternate_config_project/config/initializers/mime_types.rb","test/fixtures/alternate_config_project/config/initializers/secret_token.rb","test/fi
 xtures/alternate_config_project/config/initializers/session_store.rb","test/fixtures/alternate_config_project/config/initializers/wrap_parameters.rb","test/fixtures/alternate_config_project/config/locales/en.yml","test/fixtures/alternate_config_project/config/routes.rb","test/fixtures/alternate_config_project/db/seeds.rb","test/fixtures/alternate_config_project/doc/README_FOR_APP","test/fixtures/alternate_config_project/lib/tasks/.gitkeep","test/fixtures/alternate_config_project/log/.gitkeep","test/fixtures/alternate_config_project/public/404.html","test/fixtures/alternate_config_project/public/422.html","test/fixtures/alternate_config_project/public/500.html","test/fixtures/alternate_config_project/public/favicon.ico","test/fixtures/alternate_config_project/public/index.html","test/fixtures/alternate_config_project/public/robots.txt","test/fixtures/alternate_config_project/script/rails","test/fixtures/alternate_config_project/vendor/assets/stylesheets/.gitkeep","test/fixtur
 es/alternate_config_project/vendor/plugins/.gitkeep","test/fixtures/engine_project/.gitignore","test/fixtures/engine_project/Gemfile","test/fixtures/engine_project/MIT-LICENSE","test/fixtures/engine_project/README.rdoc","test/fixtures/engine_project/Rakefile","test/fixtures/engine_project/app/assets/images/engine_project/.keep","test/fixtures/engine_project/app/assets/javascripts/engine_project/application.js","test/fixtures/engine_project/app/assets/stylesheets/engine_project/application.css","test/fixtures/engine_project/app/controllers/engine_project/application_controller.rb","test/fixtures/engine_project/app/helpers/engine_project/application_helper.rb","test/fixtures/engine_project/app/views/layouts/engine_project/application.html.erb","test/fixtures/engine_project/config/routes.rb","test/fixtures/engine_project/engine_project.gemspec","test/fixtures/engine_project/lib/engine_project.rb","test/fixtures/engine_project/lib/engine_project/engine.rb","test/fixtures/engine_
 project/lib/engine_project/version.rb","test/fixtures/engine_project/lib/tasks/engine_project_tasks.rake","test/fixtures/engine_project/script/rails","test/fixtures/engine_project/test/dummy/README.rdoc","test/fixtures/engine_project/test/dummy/Rakefile","test/fixtures/engine_project/test/dummy/app/assets/javascripts/application.js","test/fixtures/engine_project/test/dummy/app/assets/stylesheets/application.css","test/fixtures/engine_project/test/dummy/app/controllers/application_controller.rb","test/fixtures/engine_project/test/dummy/app/controllers/concerns/.keep","test/fixtures/engine_project/test/dummy/app/helpers/application_helper.rb","test/fixtures/engine_project/test/dummy/app/mailers/.keep","test/fixtures/engine_project/test/dummy/app/models/.keep","test/fixtures/engine_project/test/dummy/app/models/concerns/.keep","test/fixtures/engine_project/test/dummy/app/views/layouts/application.html.erb","test/fixtures/engine_project/test/dummy/bin/bundle","test/fixtures/engi
 ne_project/test/dummy/bin/rails","test/fixtures/engine_project/test/dummy/bin/rake","test/fixtures/engine_project/test/dummy/config.ru","test/fixtures/engine_project/test/dummy/config/application.rb","test/fixtures/engine_project/test/dummy/config/boot.rb","test/fixtures/engine_project/test/dummy/config/database.yml","test/fixtures/engine_project/test/dummy/config/environment.rb","test/fixtures/engine_project/test/dummy/config/environments/development.rb","test/fixtures/engine_project/test/dummy/config/environments/production.rb","test/fixtures/engine_project/test/dummy/config/environments/test.rb","test/fixtures/engine_project/test/dummy/config/initializers/backtrace_silencers.rb","test/fixtures/engine_project/test/dummy/config/initializers/filter_parameter_logging.rb","test/fixtures/engine_project/test/dummy/config/initializers/inflections.rb","test/fixtures/engine_project/test/dummy/config/initializers/mime_types.rb","test/fixtures/engine_project/test/dummy/config/initial
 izers/secret_token.rb","test/fixtures/engine_project/test/dummy/config/initializers/session_store.rb","test/fixtures/engine_project/test/dummy/config/initializers/wrap_parameters.rb","test/fixtures/engine_project/test/dummy/config/locales/en.yml","test/fixtures/engine_project/test/dummy/config/routes.rb","test/fixtures/engine_project/test/dummy/lib/assets/.keep","test/fixtures/engine_project/test/dummy/log/.keep","test/fixtures/engine_project/test/dummy/public/404.html","test/fixtures/engine_project/test/dummy/public/422.html","test/fixtures/engine_project/test/dummy/public/500.html","test/fixtures/engine_project/test/dummy/public/favicon.ico","test/fixtures/sass_project/.gitignore","test/fixtures/sass_project/Gemfile","test/fixtures/sass_project/README","test/fixtures/sass_project/Rakefile","test/fixtures/sass_project/app/assets/images/rails.png","test/fixtures/sass_project/app/assets/javascripts/application.js","test/fixtures/sass_project/app/assets/stylesheets/application
 .css","test/fixtures/sass_project/app/controllers/application_controller.rb","test/fixtures/sass_project/app/helpers/application_helper.rb","test/fixtures/sass_project/app/mailers/.gitkeep","test/fixtures/sass_project/app/models/.gitkeep","test/fixtures/sass_project/app/views/layouts/application.html.erb","test/fixtures/sass_project/config.ru","test/fixtures/sass_project/config/application.rb","test/fixtures/sass_project/config/boot.rb","test/fixtures/sass_project/config/database.yml","test/fixtures/sass_project/config/environment.rb","test/fixtures/sass_project/config/environments/development.rb","test/fixtures/sass_project/config/environments/production.rb","test/fixtures/sass_project/config/environments/test.rb","test/fixtures/sass_project/config/initializers/backtrace_silencers.rb","test/fixtures/sass_project/config/initializers/inflections.rb","test/fixtures/sass_project/config/initializers/mime_types.rb","test/fixtures/sass_project/config/initializers/secret_token.rb",
 "test/fixtures/sass_project/config/initializers/session_store.rb","test/fixtures/sass_project/config/initializers/wrap_parameters.rb","test/fixtures/sass_project/config/locales/en.yml","test/fixtures/sass_project/config/routes.rb","test/fixtures/sass_project/db/seeds.rb","test/fixtures/sass_project/doc/README_FOR_APP","test/fixtures/sass_project/lib/tasks/.gitkeep","test/fixtures/sass_project/log/.gitkeep","test/fixtures/sass_project/public/404.html","test/fixtures/sass_project/public/422.html","test/fixtures/sass_project/public/500.html","test/fixtures/sass_project/public/favicon.ico","test/fixtures/sass_project/public/index.html","test/fixtures/sass_project/public/robots.txt","test/fixtures/sass_project/script/rails","test/fixtures/sass_project/vendor/assets/stylesheets/.gitkeep","test/fixtures/sass_project/vendor/plugins/.gitkeep","test/fixtures/scss_project/.gitignore","test/fixtures/scss_project/Gemfile","test/fixtures/scss_project/README","test/fixtures/scss_project/Ra
 kefile","test/fixtures/scss_project/app/assets/images/1x1.png","test/fixtures/scss_project/app/assets/images/rails.png","test/fixtures/scss_project/app/assets/javascripts/application.js","test/fixtures/scss_project/app/assets/stylesheets/_top_level_partial.css.scss","test/fixtures/scss_project/app/assets/stylesheets/application.css.scss","test/fixtures/scss_project/app/assets/stylesheets/css_application.css","test/fixtures/scss_project/app/assets/stylesheets/css_erb_handler.css.erb","test/fixtures/scss_project/app/assets/stylesheets/css_sass_erb_handler.css.sass.erb","test/fixtures/scss_project/app/assets/stylesheets/css_scss_erb_handler.css.scss.erb","test/fixtures/scss_project/app/assets/stylesheets/globbed/globbed.css.scss","test/fixtures/scss_project/app/assets/stylesheets/globbed/nested/nested_glob.css.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/_sass_import.css.sass","test/fixtures/scss_project/app/assets/stylesheets/partials/_scss_import.css.scss
 ","test/fixtures/scss_project/app/assets/stylesheets/partials/_without_css_ext.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/subfolder/_relative_sass.css.sass","test/fixtures/scss_project/app/assets/stylesheets/partials/subfolder/_relative_scss.css.scss","test/fixtures/scss_project/app/assets/stylesheets/partials/subfolder/relative_not_a_partial.css.scss","test/fixtures/scss_project/app/assets/stylesheets/sass_erb_handler.sass.erb","test/fixtures/scss_project/app/assets/stylesheets/scss_erb_handler.scss.erb","test/fixtures/scss_project/app/assets/stylesheets/subfolder/_defaults.css.scss","test/fixtures/scss_project/app/assets/stylesheets/subfolder/another_plain.css","test/fixtures/scss_project/app/assets/stylesheets/subfolder/plain.css","test/fixtures/scss_project/app/assets/stylesheets/subfolder/second_level.css.scss","test/fixtures/scss_project/app/controllers/application_controller.rb","test/fixtures/scss_project/app/helpers/application_helper.rb","tes
 t/fixtures/scss_project/app/mailers/.gitkeep","test/fixtures/scss_project/app/models/.gitkeep","test/fixtures/scss_project/app/views/layouts/application.html.erb","test/fixtures/scss_project/config.ru","test/fixtures/scss_project/config/application.rb","test/fixtures/scss_project/config/boot.rb","test/fixtures/scss_project/config/database.yml","test/fixtures/scss_project/config/environment.rb","test/fixtures/scss_project/config/environments/development.rb","test/fixtures/scss_project/config/environments/production.rb","test/fixtures/scss_project/config/environments/test.rb","test/fixtures/scss_project/config/initializers/backtrace_silencers.rb","test/fixtures/scss_project/config/initializers/inflections.rb","test/fixtures/scss_project/config/initializers/mime_types.rb","test/fixtures/scss_project/config/initializers/postprocessor.rb","test/fixtures/scss_project/config/initializers/secret_token.rb","test/fixtures/scss_project/config/initializers/session_store.rb","test/fixtur
 es/scss_project/config/initializers/wrap_parameters.rb","test/fixtures/scss_project/config/locales/en.yml","test/fixtures/scss_project/config/routes.rb","test/fixtures/scss_project/db/seeds.rb","test/fixtures/scss_project/doc/README_FOR_APP","test/fixtures/scss_project/lib/tasks/.gitkeep","test/fixtures/scss_project/log/.gitkeep","test/fixtures/scss_project/public/404.html","test/fixtures/scss_project/public/422.html","test/fixtures/scss_project/public/500.html","test/fixtures/scss_project/public/favicon.ico","test/fixtures/scss_project/public/index.html","test/fixtures/scss_project/public/robots.txt","test/fixtures/scss_project/script/rails","test/fixtures/scss_project/vendor/assets/stylesheets/.gitkeep","test/fixtures/scss_project/vendor/plugins/.gitkeep","test/gemfiles/Gemfile-master","test/sass_rails_generators_test.rb","test/sass_rails_logger_test.rb","test/sass_rails_test.rb","test/support/sass_rails_test_case.rb","test/test_helper.rb"]
+diff --git a/sass-rails.gemspec.erb b/sass-rails.gemspec.erb
+index 521e8b2..3bf13fd 100644
+--- a/sass-rails.gemspec.erb
++++ b/sass-rails.gemspec.erb
+@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
+   s.add_dependency 'sass',            '~> 3.2.0'
+   s.add_dependency 'railties',        '>= 4.0.0', '< 5.0'
+   s.add_dependency 'sprockets-rails', '~> 2.0'
+-  s.add_dependency 'sprockets',       '~> 2.8', '<= 2.11.0'
++  s.add_dependency 'sprockets',       '~> 2.12'
+ 
+   s.files         = [<%= files.map(&:inspect).join ',' %>]
+   s.test_files    = [<%= test_files.map(&:inspect).join ',' %>]
+-- 
+1.9.3
+
diff --git a/rubygem-sass-rails.spec b/rubygem-sass-rails.spec
index 0740d2f..a229114 100644
--- a/rubygem-sass-rails.spec
+++ b/rubygem-sass-rails.spec
@@ -3,29 +3,28 @@
 
 Summary: Sass adapter for the Rails asset pipeline
 Name: rubygem-%{gem_name}
-Version: 4.0.0
-Release: 2%{?dist}
+Version: 4.0.3
+Release: 1%{?dist}
 Group: Development/Languages
 License: MIT
 URL: https://github.com/rails/sass-rails
 Source0: http://rubygems.org/gems/%{gem_name}-%{version}.gem
-Requires: ruby(release)
-Requires: ruby(rubygems)
-Requires: rubygem(sass) >= 3.1.10
-Requires: rubygem(railties) => 4.0.0
-Requires: rubygem(railties) < 5.0.0
-Requires: rubygem(sprockets-rails) => 2.0.0
-Requires: rubygem(sprockets-rails) < 3.0.0
+# Fix compatibility with sprockets 3.12.
+# https://github.com/rails/sass-rails/commit/a62bdf85e56a678aa5fded3d4ed0d10bbc0b7a7b
+Patch0: rubygem-sass-rails-4.0.3-template-instead-of-monkey-patching-spsrockets.patch
+# https://github.com/rails/sass-rails/commit/bd63297c31aceb079595c3a3d9007b0e4df505b6
+Patch1: rubygem-sass-rails-4.0.3-own-importer-instead-of-monkey-patching-sprockets.patch
+# https://github.com/rails/sass-rails/commit/e56c2fbf60ef2bd879aae6f6163c90326b4017be
+Patch2: rubygem-sass-rails-4.0.3-restore-special-behavior-in-sassimporter.patch
 BuildRequires: ruby(release)
 BuildRequires: rubygems-devel
 BuildRequires: ruby
-# BuildRequires: rubygem(minitest)
-# BuildRequires: rubygem(mocha)
-# BuildRequires: rubygem(sass) >= 3.1.10
-# BuildRequires: rubygem(railties) => 3.2.0
-# BuildRequires: rubygem(railties) < 3.3
+BuildRequires: rubygem(bundler)
+BuildRequires: rubygem(sqlite3)
+BuildRequires: rubygem(rails)
+BuildRequires: rubygem(sass)
+BuildRequires: rubygem(sprockets)
 BuildArch: noarch
-Provides: rubygem(%{gem_name}) = %{version}
 
 %description
 Sass adapter for the Rails asset pipeline.
@@ -41,10 +40,22 @@ BuildArch: noarch
 Documentation for %{name}.
 
 %prep
-%setup -q -c -T
-%gem_install -n %{SOURCE0}
+gem unpack %{SOURCE0}
+
+%setup -q -D -T -n  %{gem_name}-%{version}
+
+# Use .gemspec shipped with gem, since one patch modifies the dependencies.
+# gem spec %%{SOURCE0} -l --ruby > %%{gem_name}.gemspec
+
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
+gem build %{gem_name}.gemspec
+
+%gem_install
+
 
 %install
 mkdir -p %{buildroot}%{gem_dir}
@@ -53,23 +64,16 @@ cp -a .%{gem_dir}/* \
 
 %check
 pushd .%{gem_instdir}
-# Test suite is relying on git and Bundler especially so heavily, that all my
-# attempts to execute the test suite failed so far :/
-# https://github.com/rails/sass-rails/issues/114
-# https://github.com/rails/sass-rails/issues/115
-
-# Get rid of Bundler
-# sed -i "/require 'bundler\/setup'/d" test/test_helper.rb
-# sed -i "15,26d" test/test_helper.rb
-# sed -i "1,4d" test/support/sass_rails_test_case.rb
+# Use just locally available gems.
+sed -i -r 's/runcmd "bundle install --verbose/\0 --local/' test/support/sass_rails_test_case.rb
 
-# sed -i "s/bundle install/bundle install --local/" test/support/sass_rails_test_case.rb
+# Explicitly depend on RDoc.
+echo 'gem "rdoc"' >> Gemfile
+sed -i '/possible_dev_dependencies/ s/%w(/%w(rdoc /' test/test_helper.rb
 
-# sfl is not needed for Ruby 1.9.
-# https://github.com/rails/sass-rails/pull/113
-# sed -i "/require 'sfl'/d" test/test_helper.rb
-
-# ruby -I.:lib:test -e 'Dir.glob("test/**/*_test.rb").each {|t| require t}'
+# Require action_controller explicitely. This should be fixed with RoR 4.1.2+.
+# https://github.com/rails/sass-rails/issues/205
+ruby -I.:test -raction_controller -e 'Dir.glob "test/**/*_test.rb", &method(:require)'
 popd
 
 
@@ -89,11 +93,14 @@ popd
 %{gem_instdir}/Rakefile
 %{gem_instdir}/sass-rails.gemspec
 %{gem_instdir}/sass-rails.gemspec.erb
-# Test suite can't be executed and rpmlint complains a lot about dot files:
-# https://github.com/rails/sass-rails/issues/116
+# Leave out the test suite, since rpmlint complains a lot about dot and
+# empty files.
 %exclude %{gem_instdir}/test
 
 %changelog
+* Tue Jul 01 2014 Vít Ondruch <vondruch at redhat.com> - 4.0.3-1
+- Update to sass-rails 4.0.3.
+
 * Sun Jun 08 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.0.0-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 
diff --git a/sources b/sources
index e6afd7e..de3ba34 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-b829fcfca5a1c3a692b36fcada886c14  sass-rails-4.0.0.gem
+43797e2bfad4181b408eadd67bd51ee2  sass-rails-4.0.3.gem


More information about the scm-commits mailing list