diff --git a/.travis.yml b/.travis.yml
index a388edde..0d7fa848 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,6 +1,7 @@
rvm:
- 1.8.7
- 1.9.2
+ - 1.9.3
- jruby
- rbx
- ree
diff --git a/Gemfile b/Gemfile
index 9d4eac85..15601958 100644
--- a/Gemfile
+++ b/Gemfile
@@ -2,28 +2,27 @@ source :rubygems
gemspec
-gem "cucumber", "~> 0.9.2"
+gem "cucumber", "~> 1.1.4"
gem "rspec", "~>2.0.0"
-gem "rails", "~>3.0.0.rc"
+gem "rails", "~> 3.1"
gem "compass-validator", "3.0.1"
gem "css_parser", "~> 1.0.1"
-gem "sass", "~>3.1"
+gem "sass", "~> 3.1"
gem "haml", "~> 3.1"
-gem "rcov", :platform => :mri_18
gem "rubyzip"
-gem "livereload"
-gem "ruby-prof", :platform => :mri_18
-
-gem 'autotest'
-gem 'autotest-fsevent' if RUBY_PLATFORM =~ /darwin/
-gem 'fakefs', :git => 'git://github.com/johnbintz/fakefs.git'
gem 'mocha'
-gem 'timecop'
gem 'diff-lcs', '~> 1.1.2'
+gem 'rake', '~> 0.9.2'
-gem 'rake', '0.8.7'
+# Warning becarful adding OS dependant gems above this line it will break the CI server please
+# place them below so they are excluded
-group :mac do
- gem "rb-fsevent"
+unless ENV["CI"]
+ gem 'rb-fsevent'
+ gem 'growl_notify'
+ gem "ruby-prof", :platform => :mri_18
+ gem "rcov", :platform => :mri_18
+ gem 'guard'
+ gem 'guard-test'
+ gem 'guard-cucumber'
end
-
diff --git a/Guardfile b/Guardfile
new file mode 100644
index 00000000..c1258d0c
--- /dev/null
+++ b/Guardfile
@@ -0,0 +1,16 @@
+group :tests do
+ guard :test do
+ watch(%r{^lib/(.+)\.rb$}) { |m| "test/#{m[1]}_test.rb" }
+ watch(%r{^test/.+_test\.rb$})
+ watch(%r{^test/units/.+_test\.rb$})
+ watch('test/test_helper.rb') { "test" }
+ end
+end
+
+group :features do
+ guard :cucumber do
+ watch(%r{^features/.+\.feature$})
+ watch(%r{^features/support/.+$}) { 'features' }
+ watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' }
+ end
+end
\ No newline at end of file
diff --git a/README.markdown b/README.markdown
index 0b04d84f..a804a069 100644
--- a/README.markdown
+++ b/README.markdown
@@ -1,4 +1,7 @@
# Compass
+
+Build Status: ![Build Status](https://secure.travis-ci.org/chriseppstein/compass.png)
+
A [Sass][sass]-based CSS Meta-Framework that allows you to mix and match any of the following CSS frameworks:
- [Compass Core][compass_core_website] - [Wiki Documentation][compass_core_wiki]
diff --git a/Rakefile b/Rakefile
index e077d6f8..7fcfe035 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,6 +1,7 @@
require 'rubygems'
require 'bundler'
Bundler.setup
+require 'rake/dsl_definition' rescue nil
require 'compass'
# ----- Default: Testing ------
@@ -29,6 +30,16 @@ To run with an alternate version of Rails, make test/rails a symlink to that ver
To run with an alternate version of Haml & Sass, make test/haml a symlink to that version.
END
+Rake::TestTask.new :units do |t|
+ t.libs << 'lib'
+ t.libs << 'test'
+ test_files = FileList['test/units/**/*_test.rb']
+ test_files.exclude('test/rails/*', 'test/haml/*')
+ t.test_files = test_files
+ t.verbose = true
+end
+
+
desc "Compile Examples into HTML and CSS"
task :examples do
linked_haml = "tests/haml"
diff --git a/VERSION.yml b/VERSION.yml
index 38ecce4f..a56ccbb4 100644
--- a/VERSION.yml
+++ b/VERSION.yml
@@ -1,5 +1,6 @@
---
:major: 0
-:minor: 11
-:patch: 7
-:name: Antares
+:minor: 12
+:state: rc
+:build: 1
+:name: Alnilam
diff --git a/autotest/discover.rb b/autotest/discover.rb
deleted file mode 100644
index ee7f82c5..00000000
--- a/autotest/discover.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-Autotest.add_discovery { 'rspec2' }
-
-
-
-
diff --git a/bin/compass b/bin/compass
index 00996203..b7e7e012 100755
--- a/bin/compass
+++ b/bin/compass
@@ -21,6 +21,10 @@ fallback_load_path(File.join(File.dirname(__FILE__), '..', 'lib')) do
require 'compass/exec'
end
+if defined?(Bundler)
+ Bundler.require :assets
+end
+
runner = Proc.new do
Compass::Exec::SubCommandUI.new(ARGV).run!
end
@@ -36,9 +40,5 @@ if ARGV.delete("--profile")
printer.print(STDERR, 0)
exit exit_code
else
- if exit_code = runner.call
- exit exit_code
- else
- exit 1
- end
+ exit runner.call || 1
end
diff --git a/doc-src/.compass/config.rb b/doc-src/.compass/config.rb
index 44420f21..46d1e4ac 100644
--- a/doc-src/.compass/config.rb
+++ b/doc-src/.compass/config.rb
@@ -1,7 +1,7 @@
# Require any additional compass plugins here.
require 'susy'
require 'css-slideshow'
-
+require 'compass-theme'
# Set this to the root of your project when deployed:
http_path = "/"
project_path = File.expand_path(File.join(File.dirname(__FILE__), '..'))
diff --git a/doc-src/Gemfile b/doc-src/Gemfile
index e207f08e..20bbd758 100644
--- a/doc-src/Gemfile
+++ b/doc-src/Gemfile
@@ -1,6 +1,7 @@
source :gemcutter
gem 'nanoc3'
+gem 'asdf'
gem 'rdiscount'
gem 'thor'
gem 'rack'
@@ -8,12 +9,13 @@ gem 'mime-types'
gem 'serve', "1.0.0"
gem 'nokogiri'
gem 'coderay'
-gem 'sass', ">= 3.1"
-gem 'haml', ">= 3.1"
+gem 'haml'
gem 'rake'
+gem 'activesupport', '~> 3.0.10', :require => 'active_support/inflector'
gem 'compass', :path => ".."
-gem 'compass-susy-plugin', ">=0.7.0.pre8"
-gem 'css-slideshow', "0.2.0"
+gem 'compass-theme', :path => '../../compass-theme' #:git => 'git://github.com/Compass/compass-theme.git'
+# gem 'compass-susy-plugin', ">=0.7.0.pre8"
+# gem 'css-slideshow', "0.2.0"
gem 'json'
gem 'css_parser', "1.0.1"
gem 'ruby-prof'
diff --git a/doc-src/Gemfile.lock b/doc-src/Gemfile.lock
index 23b07b0a..a761d11c 100644
--- a/doc-src/Gemfile.lock
+++ b/doc-src/Gemfile.lock
@@ -1,57 +1,68 @@
PATH
remote: ..
specs:
- compass (0.11.5.38ccee8)
+ compass (0.12.rc.0.c403ac9)
chunky_png (~> 1.2)
fssm (>= 0.2.7)
sass (~> 3.1)
+PATH
+ remote: ../../compass-theme
+ specs:
+ compass-theme (0.0.2)
+ compass (~> 0.11)
+ compass-susy-plugin (~> 0.7.0)
+ css-slideshow (= 0.2.0)
+
GEM
remote: http://rubygems.org/
specs:
- activesupport (3.0.7)
- builder (2.1.2)
+ activesupport (3.0.10)
+ asdf (0.5.0)
+ rack (~> 1.2.1)
+ builder (3.0.0)
chunky_png (1.2.5)
coderay (0.9.7)
- compass-susy-plugin (0.9.beta.3)
- compass (>= 0.11.beta.3)
+ compass-susy-plugin (0.7.0)
+ compass (>= 0.10.0)
cri (2.0.2)
css-slideshow (0.2.0)
compass (>= 0.10.0.rc3)
css_parser (1.0.1)
- fssm (0.2.7)
- haml (3.1.0)
+ fssm (0.2.8.1)
+ haml (3.1.2)
i18n (0.4.2)
- json (1.5.1)
+ json (1.5.4)
mime-types (1.16)
nanoc3 (3.2.2)
cri (~> 2.0)
nokogiri (1.4.4)
rack (1.2.2)
- rake (0.8.7)
+ rake (0.9.2)
rb-fsevent (0.4.0)
rdiscount (1.6.8)
- ruby-prof (0.9.2)
- sass (3.1.0)
+ ruby-prof (0.10.8)
+ sass (3.1.12)
serve (1.0.0)
activesupport (~> 3.0.1)
i18n (~> 0.4.1)
rack (~> 1.2.1)
tzinfo (~> 0.3.23)
thor (0.14.6)
- tzinfo (0.3.26)
+ tzinfo (0.3.29)
PLATFORMS
ruby
DEPENDENCIES
+ activesupport (~> 3.0.10)
+ asdf
builder
coderay
compass!
- compass-susy-plugin (>= 0.7.0.pre8)
- css-slideshow (= 0.2.0)
+ compass-theme!
css_parser (= 1.0.1)
- haml (>= 3.1)
+ haml
json
mime-types
nanoc3
@@ -61,6 +72,5 @@ DEPENDENCIES
rb-fsevent
rdiscount
ruby-prof
- sass (>= 3.1)
serve (= 1.0.0)
thor
diff --git a/doc-src/Rules b/doc-src/Rules
index ee84cd46..884c7901 100644
--- a/doc-src/Rules
+++ b/doc-src/Rules
@@ -63,6 +63,7 @@ end
compile '*' do
if item[:extension] == "markdown"
+ filter :erb
filter :rdiscount
elsif item[:extension] == "haml"
filter :haml, :ugly => true
diff --git a/doc-src/assets/images/tutorials/sprites/layout/diagonal.png b/doc-src/assets/images/tutorials/sprites/layout/diagonal.png
new file mode 100644
index 00000000..a7b3f93d
Binary files /dev/null and b/doc-src/assets/images/tutorials/sprites/layout/diagonal.png differ
diff --git a/doc-src/assets/images/tutorials/sprites/layout/horizontal.png b/doc-src/assets/images/tutorials/sprites/layout/horizontal.png
new file mode 100644
index 00000000..057568e4
Binary files /dev/null and b/doc-src/assets/images/tutorials/sprites/layout/horizontal.png differ
diff --git a/doc-src/assets/images/tutorials/sprites/layout/smart.png b/doc-src/assets/images/tutorials/sprites/layout/smart.png
new file mode 100644
index 00000000..7fe102a6
Binary files /dev/null and b/doc-src/assets/images/tutorials/sprites/layout/smart.png differ
diff --git a/doc-src/assets/images/tutorials/sprites/layout/vert.png b/doc-src/assets/images/tutorials/sprites/layout/vert.png
new file mode 100644
index 00000000..dde31b03
Binary files /dev/null and b/doc-src/assets/images/tutorials/sprites/layout/vert.png differ
diff --git a/doc-src/assets/javascripts/install.js b/doc-src/assets/javascripts/install.js
index 6b52b844..31f371de 100644
--- a/doc-src/assets/javascripts/install.js
+++ b/doc-src/assets/javascripts/install.js
@@ -4,15 +4,38 @@ function showInstallCommand() {
var notes = [];
var project_name = "<myproject>";
var can_be_bare = true;
- commands.push("$ gem install compass");
+ var in_working_dir = false;
+ var use_bundler = false;
+ if ($("#app-type").val() != "rails") {
+ commands.push("$ gem install compass");
+ }
if (cmd == "init") {
commands.push("$ cd " + project_name);
+ in_working_dir = true
project_name = ".";
+ $(".creating").hide();
+ } else {
+ $(".creating").show();
+ if ($("#project_name").val() != "")
+ project_name = $("#project_name").val();
+ }
+ if ($("#app-type").val() == "rails") {
+ notes.push("
Rails 2.3 and 3.0 users require additional installation steps. For full rails installation and upgrade instructions please refer to the compass-rails README.
");
+ use_bundler = true;
}
if ($("#app-type").val() == "rails") {
if (cmd == "create") {
commands.push("$ rails new " + project_name);
+ commands.push("$ cd " + project_name);
+ in_working_dir = true
+ project_name = ".";
}
+ commands.push("> Edit Gemfile and add this:");
+ commands.push(" group :assets do");
+ commands.push(" gem 'compass-rails'");
+ commands.push(" # Add any compass extensions here");
+ commands.push(" end");
+ commands.push("$ bundle");
cmd = "init rails";
can_be_bare = false;
} else if ($("#app-type").val() == "other") {
@@ -28,9 +51,12 @@ function showInstallCommand() {
var framework = $("#framework").val();
var create_command;
if (cmd == "install") {
- create_command = "$ compass install " + framework + " " + project_name;
+ create_command = "$ compass install " + framework;
} else {
- create_command = "$ compass " + cmd + " " + project_name;
+ create_command = "$ compass " + cmd;
+ }
+ if (!in_working_dir) {
+ create_command = create_command + " " + project_name;
}
if (framework != "compass" && framework != "bare" && cmd != "install") {
create_command = create_command + " --using " + framework;
@@ -46,14 +72,20 @@ function showInstallCommand() {
}
if ($("#options").val() == "customized") {
$("#directories").show();
- create_command = create_command +
- " --sass-dir \"" + $("#sassdir").val() + "\"" +
- " --css-dir \"" + $("#cssdir").val() + "\"" +
- " --javascripts-dir \"" + $("#jsdir").val() + "\"" +
- " --images-dir \"" + $("#imagesdir").val() + "\"";
+ if ($("#sassdir").val() != "")
+ create_command += " --sass-dir \"" + $("#sassdir").val() + "\"";
+ if ($("#cssdir").val() != "")
+ create_command += " --css-dir \"" + $("#cssdir").val() + "\"";
+ if ($("#jsdir").val() != "")
+ create_command += " --javascripts-dir \"" + $("#jsdir").val() + "\"";
+ if ($("#imagesdir").val() != "")
+ create_command += " --images-dir \"" + $("#imagesdir").val() + "\"";
} else {
$("#directories").hide();
}
+ if (use_bundler) {
+ create_command = "$ bundle exec " + create_command.replace(/\$ /,'');
+ }
commands.push(create_command);
var instructions = "" + commands.join("\n") + "
";
if (instructions.match(/</)) {
diff --git a/doc-src/content/CHANGELOG.markdown b/doc-src/content/CHANGELOG.markdown
index fb347471..5c6522a0 100644
--- a/doc-src/content/CHANGELOG.markdown
+++ b/doc-src/content/CHANGELOG.markdown
@@ -14,6 +14,92 @@ The Documentation for the [latest stable release](http://compass-style.org/docs/
The Documentation for the [latest preview release](http://beta.compass-style.org/)
+0.12.rc.2 (03/11/2012)
+----------------------
+
+### Stylesheet Changes
+
+* Improved [hide-text mixin](/reference/compass/typography/text/replacement/#mixin-hide-text) for better performance and accessibility.
+* Added [squish-text mixin](/reference/compass/typography/text/replacement/#mixin-squish-text) to hide text on inline elements.
+* Compass css3 transitions module now correctly handled transitioning of
+ prefixed properties.
+
+### Misc Changes
+* Fix the mime-type of embedded `woff` font files. Add support for Embedded OpenType fonts.
+* New math functions are now available: `e()`, `log($number[, $base = e()])`, `sqrt($number)`
+ and `pow($number, $exponent)`
+
+
+0.12.rc.1 (02/02/2012)
+----------------------
+
+Give warnings for users who upgrade without knowing about the compass-rails gem.
+
+0.12.rc.0 (01/31/2012)
+----------------------
+
+### Stylesheet Changes
+
+* Removed -ms prefix from box-sizing
+* Added sprite_names sass function
+* Added -ms prefix to transitions
+
+### Command Line
+
+* Added support for `--debug-info` and `--no-debug-info` to the compass compile command
+
+### Rails Integration
+
+Rails projects must now use the [`compass-rails`](https://github.com/compass/compass-rails)
+gem to integrate with compass. Please read the [README](https://github.com/Compass/compass-rails/blob/master/README.md) for upgrade instructions. More information in this [blog post](/blog/2012/01/29/compass-and-rails-integration/).
+
+0.12.alpha.3 (12/23/2011)
+-------------------------
+
+* The `$round-to-nearest-half-line` config variable was added. When
+ true, the vertical rhythm module will round line heights to the
+ nearest half-line to avoid awkwardly large gaps between lines of text.
+ Defaults to false.
+* Added `reset-baseline` to the vertical rhythm module so you can force the baseline to reset.
+* Merges in the stable changes between 0.11.5 and 0.11.6.
+
+0.12.alpha.2 (11/28/2011)
+-------------------------
+
+* Bug fixes for Rails 2.x applications.
+
+0.12.alpha.1 (11/14/2011)
+-------------------------
+
+* font-files helper: Stop requiring font type when the type can be guessed from URL
+* inline-font-files: actually works now
+* Upgrade CSS3 Pie to 1.0beta5
+* log sprite generation and removal to the console
+* Added a new helper function `compass-env()` that returns the current compass environment (development, production)
+* Added the ability to inline a sprite image by setting `$