Skip to content

Instantly share code, notes, and snippets.

@chriseppstein
Forked from mislav/Gemfile
Created August 31, 2011 21:57
Show Gist options
  • Save chriseppstein/1184843 to your computer and use it in GitHub Desktop.
Save chriseppstein/1184843 to your computer and use it in GitHub Desktop.
How to integrate Compass with Rails 3.1 asset pipeline

This gist is no longer valid. Please see Compass-Rails for instructions on how to install.

@newman180
Copy link

I'm having an issue getting compass and blueprint to work with my project, even though I have followed all the steps... (all of this is in develop) Rails 3.1 Ruby 1.9.2

I originally installed compass, and then called compass init rails --using blueprint. It claimed it worked fine. I then went and relocated the stylesheets into the correct directory.

I have the standard partial called _base.scss inside its own partial folder and four stylesheets called
application.css.scss
ie.css.scss
print.css.scss
screen.css.scss
all are in the app/assests/stylesheets

I call each of them by using the stylesheet_link_tag '*.css'....
When running the rails server, it fails
Cannot find or import: blueprint/reset
So I go in and remove that clause, again,
Cannot find or import: compass/reset
...again
Cannot find or import: blueprint

and it goes on forever with me removing each line until nothing of
compass or blueprint is being called...

If I stop calling any stylesheet except application.css.scss, which is written in basic css with no compass or blueprint calls, the site runs fine. The second I add @import "blueprint";
the site crashes again saying cannot find or import blueprint.

Its as if compass and blueprint aren't really inserted into my project as it claims.

What am I missing?

@manuelmeurer
Copy link

I assume it's just a typo, but app/assests should be app/assets.

@newman180
Copy link

Yup, that's a typo... Though I wish it was something that stupid! haha

@newman180
Copy link

Found my issue. I had 0.11.5 installed!

@kreeger
Copy link

kreeger commented Dec 20, 2011

I'll note here that trying this out with Rails 3.2.0.rc1 appeared as if compass wasn't loaded when I tried to include it at the top of my application.css.sass on a fresh Rails project. Downgrading everything back to rails ~> 3.1 worked for me. Just a heads up.

Edit: d'oh! Issue has already been opened.

@bensie
Copy link

bensie commented Dec 20, 2011

Temporary fix for 3.2.0.rc1: make sure sprockets is declared above sass-rails in your Gemfile:

gem 'sprockets'
gem 'sass-rails'
gem 'compass', '0.12.alpha.2'

Asset pipeline fun continues...

@kreeger
Copy link

kreeger commented Dec 20, 2011

Thanks, @bensie, that seemed to do the trick. What does that accomplish, do you know? I'm not extremely familiar with bundler, but does that make a certain version of sprockets a priority over what compass normally uses?

@bensie
Copy link

bensie commented Dec 20, 2011

Sprockets was removed from the sass-rails Gemfile in rails/sass-rails@3c24e4f

While the reasoning behind it makes sense, there's clearly more work to be done to get the load order right.

@bensie
Copy link

bensie commented Dec 22, 2011

This was fixed in rails/sass-rails@f8faec5

@ntreadway
Copy link

Not sure is anyone is running an issue upgrading from Rails 3.0 to 3.1.3 with Compass v0.12.alpha.4

File to import not found or unreadable: compass/reset.
Load path: Sass::Rails::Importer

Add this to your application.rb:

 config.sass.load_paths << "#{Gem.loaded_specs['compass'].full_gem_path}/frameworks/compass/stylesheets"

Will fix this issue.

@oz
Copy link

oz commented Jan 20, 2012

FWIW, with rails 3.2.0, there is no need to add sprockets to your Gemfile, and the following assets group works fine:

group :assets do
  gem 'sass-rails', '~> 3.2'
  gem 'coffee-rails', '~> 3.2'
  gem 'uglifier', '~> 1.0'
  gem 'compass', '~> 0.12.alpha'
end

@chriseppstein
Copy link
Author

This gist is no longer valid. Compass v0.12 release candidate is out and should make rails integration a snap. Please see https://github.com/compass/compass-rails for details.

@bensie
Copy link

bensie commented Jan 31, 2012

@chriseppstein thanks for all your work on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment