Skip to content

uninitialized constant Compass::Frameworks with compass-import-once #914

@boxofrox

Description

@boxofrox

The compass devs created a stand-alone extension, compass-import-once. When added to a Rails 4.2 Gemfile beside bootstrap-sass-3.3.4, rails server fails with the error message:

/home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/bootstrap-sass-3.3.4.1/lib/bootstrap-sass.rb:63:in `register_compass_extension': uninitialized constant Compass::Frameworks (NameError)
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/bootstrap-sass-3.3.4.1/lib/bootstrap-sass.rb:6:in `load!'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/bootstrap-sass-3.3.4.1/lib/bootstrap-sass.rb:84:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:76:in `require'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:72:in `each'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:72:in `block in require'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:61:in `each'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler/runtime.rb:61:in `require'
        from /home/user/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.9.6/lib/bundler.rb:134:in `require'
        from /home/user/files/development/rails-app/repo/config/application.rb:8:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands/commands_tasks.rb:78:in `require'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands/commands_tasks.rb:78:in `block in server'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands/commands_tasks.rb:75:in `tap'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands/commands_tasks.rb:75:in `server'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/railties-4.2.1/lib/rails/commands.rb:17:in `<top (required)>'
        from /home/user/files/development/rails-app/repo/bin/rails:8:in `require'
        from /home/user/files/development/rails-app/repo/bin/rails:8:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/client/rails.rb:28:in `load'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/client/rails.rb:28:in `call'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/client/command.rb:7:in `call'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/client.rb:26:in `run'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/bin/spring:48:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/binstub.rb:11:in `load'
        from /home/user/.rvm/gems/ruby-2.1.2@rails-app/gems/spring-1.3.5/lib/spring/binstub.rb:11:in `<top (required)>'
        from /home/user/files/development/rails-app/repo/bin/spring:13:in `require'
        from /home/user/files/development/rails-app/repo/bin/spring:13:in `<top (required)>'
        from bin/rails:3:in `load'
        from bin/rails:3:in `<main>'

I recommend changing the compass? method to check for ::Compass::Frameworks instead of only ::Compass in bootstrap-sass.rb:44.

Pull request will follow.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions