compass 0.11.3 → 0.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. data/VERSION.yml +1 -1
  2. data/features/command_line.feature +9 -0
  3. data/features/step_definitions/command_line_steps.rb +7 -0
  4. data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +2 -2
  5. data/frameworks/blueprint/stylesheets/blueprint/_form.scss +1 -1
  6. data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +4 -1
  7. data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +1 -1
  8. data/frameworks/compass/stylesheets/compass/css3/_images.scss +1 -4
  9. data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +1 -4
  10. data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +2 -0
  11. data/frameworks/compass/stylesheets/compass/css3/_transition.scss +35 -1
  12. data/frameworks/compass/stylesheets/compass/typography/_text.scss +1 -0
  13. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +74 -14
  14. data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +12 -0
  15. data/lib/compass.rb +1 -1
  16. data/lib/compass/commands/base.rb +9 -1
  17. data/lib/compass/commands/project_base.rb +2 -2
  18. data/lib/compass/commands/update_project.rb +2 -1
  19. data/lib/compass/compiler.rb +5 -2
  20. data/lib/compass/configuration.rb +2 -1
  21. data/lib/compass/configuration/adapters.rb +2 -2
  22. data/lib/compass/configuration/defaults.rb +4 -0
  23. data/lib/compass/exec/sub_command_ui.rb +4 -3
  24. data/lib/compass/sass_extensions/functions/inline_image.rb +2 -0
  25. data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +3 -2
  26. data/test/fixtures/stylesheets/blueprint/css/screen.css +5 -5
  27. data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +4 -4
  28. data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +1 -1
  29. data/test/fixtures/stylesheets/compass/css/force-wrap.css +9 -0
  30. data/test/fixtures/stylesheets/compass/css/gradients.css +0 -3
  31. data/test/fixtures/stylesheets/compass/css/opacity.css +0 -1
  32. data/test/fixtures/stylesheets/compass/sass/force-wrap.scss +3 -0
  33. data/test/fixtures/stylesheets/compass/tmp/border_radius.css +23 -0
  34. data/test/fixtures/stylesheets/compass/tmp/box.css +103 -0
  35. data/test/fixtures/stylesheets/compass/tmp/box_shadow.css +17 -0
  36. data/test/fixtures/stylesheets/compass/tmp/columns.css +47 -0
  37. data/test/fixtures/stylesheets/compass/tmp/fonts.css +4 -0
  38. data/test/fixtures/stylesheets/compass/tmp/force-wrap.css +9 -0
  39. data/test/fixtures/stylesheets/compass/tmp/gradients.css +576 -0
  40. data/test/fixtures/stylesheets/compass/tmp/grid_background.css +78 -0
  41. data/test/fixtures/stylesheets/compass/tmp/image_size.css +15 -0
  42. data/test/fixtures/stylesheets/compass/tmp/images.css +8 -0
  43. data/test/fixtures/stylesheets/compass/tmp/layout.css +16 -0
  44. data/test/fixtures/stylesheets/compass/tmp/legacy_clearfix.css +26 -0
  45. data/test/fixtures/stylesheets/compass/tmp/lists.css +153 -0
  46. data/test/fixtures/stylesheets/compass/tmp/opacity.css +3 -0
  47. data/test/fixtures/stylesheets/compass/tmp/pie.css +28 -0
  48. data/test/fixtures/stylesheets/compass/tmp/print.css +11 -0
  49. data/test/fixtures/stylesheets/compass/tmp/reset.css +60 -0
  50. data/test/fixtures/stylesheets/compass/tmp/sprites.css +1262 -0
  51. data/test/fixtures/stylesheets/compass/tmp/stretching.css +66 -0
  52. data/test/fixtures/stylesheets/compass/tmp/text_shadow.css +14 -0
  53. data/test/fixtures/stylesheets/compass/tmp/transform.css +333 -0
  54. data/test/fixtures/stylesheets/compass/tmp/utilities.css +36 -0
  55. data/test/fixtures/stylesheets/compass/tmp/vertical_rhythm.css +42 -0
  56. metadata +78 -3
@@ -1,5 +1,5 @@
1
1
  ---
2
2
  :major: 0
3
3
  :minor: 11
4
- :patch: 3
4
+ :patch: 4
5
5
  :name: Antares
@@ -63,6 +63,15 @@ Feature: Command Line
63
63
  And I am told that I can place stylesheets in the sass subdirectory
64
64
  And I am told how to compile my sass stylesheets
65
65
 
66
+ Scenario: Compiling a project with errors
67
+ Given I am using the existing project in test/fixtures/stylesheets/compass
68
+ And the project has a file named "sass/error.scss" containing:
69
+ """
70
+ .broken {
71
+ """
72
+ When I run: compass compile
73
+ Then the command exits with a non-zero error code
74
+
66
75
  Scenario: Creating a bare project with a framework
67
76
  When I create a project using: compass create bare_project --using blueprint --bare
68
77
  Then an error message is printed out: A bare project cannot be created when a framework is specified.
@@ -53,6 +53,13 @@ Given /^I should clean up the directory: (\w+)$/ do |directory|
53
53
  @cleanup_directories << directory
54
54
  end
55
55
 
56
+ Given %r{^the project has a file named "([^"]*)" containing:$} do |arg1, string|
57
+ File.open(arg1, "w") do |f|
58
+ f << string
59
+ end
60
+ end
61
+
62
+
56
63
  # When Actions are performed
57
64
  When /^I create a project using: compass create ([^\s]+) ?(.+)?$/ do |dir, args|
58
65
  @cleanup_directories << dir
@@ -1,5 +1,5 @@
1
1
  @import "compass/layout/grid-background";
2
- @import "blueprint/grid";
2
+ @import "grid", "typography";
3
3
 
4
4
  // Shows a background that can be used to check grid alignment.
5
5
  // By default this is a pure css version that only works in browsers
@@ -14,7 +14,7 @@
14
14
  $total : $blueprint-grid-columns,
15
15
  $column : $blueprint-grid-width,
16
16
  $gutter : $blueprint-grid-margin,
17
- $baseline : 20px
17
+ $baseline : $blueprint-font-size * 1.5
18
18
  );
19
19
  }
20
20
  }
@@ -59,7 +59,7 @@
59
59
  background-color:#fff;
60
60
  border: 1px solid $unfocused-border-color;
61
61
  &:focus {
62
- border: 1px solid $focus-border-color;
62
+ border-color: $focus-border-color;
63
63
  }
64
64
  }
65
65
  select { background-color:#fff; border-width:1px; border-style:solid; }
@@ -24,7 +24,10 @@ $default-box-shadow-spread : false !default;
24
24
  // The default shadow inset: inset or false (for standard shadow).
25
25
  $default-box-shadow-inset : false !default;
26
26
 
27
- // Provides cross-browser for Webkit, Gecko, and CSS3 box shadows when one or more box shadows are needed.
27
+ // Provides cross-browser for Webkit, Gecko, and CSS3 box shadows when one or more box
28
+ // shadows are needed.
29
+ // Each shadow argument should adhere to the standard css3 syntax for the
30
+ // box-shadow property.
28
31
  @mixin box-shadow(
29
32
  $shadow-1 : default,
30
33
  $shadow-2 : false,
@@ -15,7 +15,7 @@
15
15
  //
16
16
  // Example:
17
17
  //
18
- // +font-face("this name", font-files("this.woff", "woff", "this.otf", "opentype"), "this.eot")
18
+ // @include font-face("this name", font-files("this.woff", woff, "this.otf", opentype), "this.eot")
19
19
  @mixin font-face(
20
20
  $name,
21
21
  $font-files,
@@ -83,10 +83,7 @@
83
83
  @mixin filter-gradient($start-color, $end-color, $orientation: vertical) {
84
84
  @include has-layout;
85
85
  $gradient-type: if($orientation == vertical, 0, 1);
86
- @if $legacy-support-for-ie8 {
87
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(gradientType=#{$gradient-type}, startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}')";
88
- }
89
- @if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
86
+ @if $legacy-support-for-ie6 or $legacy-support-for-ie7 or $legacy-support-for-ie8 {
90
87
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=#{$gradient-type}, startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}');
91
88
  }
92
89
  }
@@ -6,10 +6,7 @@
6
6
  // A number between 0 and 1, where 0 is transparent and 1 is opaque.
7
7
 
8
8
  @mixin opacity($opacity) {
9
- @if $legacy-support-for-ie8 {
10
- -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=#{round($opacity * 100)})";
11
- }
12
- @if $legacy-support-for-ie6 or $legacy-support-for-ie7 {
9
+ @if $legacy-support-for-ie6 or $legacy-support-for-ie7 or $legacy-support-for-ie8 {
13
10
  filter: unquote("progid:DXImageTransform.Microsoft.Alpha(Opacity=#{round($opacity * 100)})");
14
11
  }
15
12
  opacity: $opacity;
@@ -9,6 +9,8 @@ $default-text-shadow-v-offset: 0px !default;
9
9
  $default-text-shadow-blur: 1px !default;
10
10
 
11
11
  // Provides cross-browser text shadows when one or more shadows are needed.
12
+ // Each shadow argument should adhere to the standard css3 syntax for the
13
+ // text-shadow property.
12
14
  @mixin text-shadow(
13
15
  $shadow-1 : default,
14
16
  $shadow-2 : false,
@@ -72,7 +72,7 @@ $default-transition-delay: false !default;
72
72
 
73
73
  // Transition all-in-one shorthand
74
74
 
75
- @mixin transition(
75
+ @mixin single-transition(
76
76
  $properties: $default-transition-property,
77
77
  $duration: $default-transition-duration,
78
78
  $function: $default-transition-function,
@@ -83,3 +83,37 @@ $default-transition-delay: false !default;
83
83
  @if $function { @include transition-timing-function($function); }
84
84
  @if $delay { @include transition-delay($delay); }
85
85
  }
86
+
87
+ @mixin transition(
88
+ $transition-1 : default,
89
+ $transition-2 : false,
90
+ $transition-3 : false,
91
+ $transition-4 : false,
92
+ $transition-5 : false,
93
+ $transition-6 : false,
94
+ $transition-7 : false,
95
+ $transition-8 : false,
96
+ $transition-9 : false,
97
+ $transition-10: false
98
+ ) {
99
+ $legacy: (type-of($transition-1) == string and type-of(if($transition-2, $transition-2, 0)) == number and type-of(if($transition-3, $transition-3, '')) == string and type-of(if($transition-4, $transition-4, 0)) == number and ($transition-2 or $transition-3 or $transition-4));
100
+ @if $legacy {
101
+ @warn "Passing separate arguments for a single transition to transition is deprecated. " +
102
+ "Pass the values as a single space-separated list, or use the single-transition mixin.";
103
+ @include single-transition(
104
+ if($transition-1, $transition-1, $default-transition-property),
105
+ if($transition-2, $transition-2, $default-transition-duration),
106
+ if($transition-3, $transition-3, $default-transition-funciton),
107
+ if($transition-4, $transition-4, $default-transition-delay)
108
+ );
109
+ }
110
+ @else {
111
+ @if $transition-1 == default {
112
+ $transition-1 : -compass-space-list(compact($default-transition-property, $default-transition-duration, $default-transition-function, $default-transition-delay));
113
+ }
114
+ $transition : compact($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10);
115
+ @include experimental(transition, $transition,
116
+ -moz, -webkit, -o, not -ms, not -khtml, official
117
+ );
118
+ }
119
+ }
@@ -1,3 +1,4 @@
1
1
  @import "text/ellipsis";
2
2
  @import "text/nowrap";
3
3
  @import "text/replacement";
4
+ @import "text/force-wrap";
@@ -10,22 +10,47 @@ $default-rhythm-border-style: solid !default;
10
10
  // The IE font ratio is a fact of life. Deal with it.
11
11
  $ie-font-ratio: 16px / 100%;
12
12
 
13
+ // Set to false if you want to use absolute pixes in sizing your typography.
14
+ $relative-font-sizing: true !default;
15
+
16
+ // Ensure there is at least this many pixels
17
+ // of vertical padding above and below the text.
18
+ $min-line-padding: 2px;
19
+
20
+ // $base-font-size but in your output unit of choice.
21
+ // Defaults to 1em when `$relative-font-sizing`
22
+ $font-unit: if($relative-font-sizing, 1em, $base-font-size) !default;
23
+
13
24
  // The basic unit of font rhythm
14
- $base-rhythm-unit: $base-line-height / $base-font-size * 1em;
25
+ $base-rhythm-unit: $base-line-height / $base-font-size * $font-unit;
15
26
 
16
27
  // The leader is the amount of whitespace in a line.
17
28
  // It might be useful in your calculations
18
- $base-leader: ($base-line-height - $base-font-size) * 1em / $base-font-size;
29
+ $base-leader: ($base-line-height - $base-font-size) * $font-unit / $base-font-size;
19
30
 
20
31
  // The half-leader is the amount of whitespace above and below a line.
21
32
  // It might be useful in your calculations
22
33
  $base-half-leader: $base-leader / 2;
23
34
 
35
+ // True if a number has a relative unit
36
+ @function relative-unit($number) {
37
+ @return unit($number) == "%" or unit($number) == "em" or unit($number) == "rem"
38
+ }
39
+
40
+ // True if a number has an absolute unit
41
+ @function absolute-unit($number) {
42
+ @return not (relative-unit($number) or unitless($number));
43
+ }
44
+
45
+ @if $relative-font-sizing and not relative-unit($font-unit) {
46
+ @warn "$relative-font-sizing is true but $font-unit is set to #{$font-unit} which is not a relative unit.";
47
+ }
48
+
24
49
  // Establishes a font baseline for the given font-size in pixels
25
50
  @mixin establish-baseline($font-size: $base-font-size) {
26
51
  body {
27
52
  font-size: $font-size / $ie-font-ratio;
28
- @include adjust-leading-to(1, $font-size);
53
+ @include adjust-leading-to(1, if($relative-font-sizing, $font-size, $base-font-size));
29
54
  }
30
55
  html>body {
31
56
  font-size: $font-size;
@@ -42,13 +67,19 @@ $base-half-leader: $base-leader / 2;
42
67
  // font size should use up. Does not have to be an integer, but it defaults
43
68
  // to the smallest integer that is large enough to fit the font.
44
69
  // Use $from_size to adjust from a non-base font-size.
45
- @mixin adjust-font-size-to($to-size, $lines: ceil($to-size / $base-line-height), $from-size: $base-font-size) {
46
- font-size: 1em * $to-size / $from-size;
47
- @include adjust-leading-to($lines, $to-size);
70
+ @mixin adjust-font-size-to($to-size, $lines: lines-for-font-size($to-size), $from-size: $base-font-size) {
71
+ @if $relative-font-sizing and $from-size != $base-font-size {
72
+ @warn "$relative-font-sizing is false but a relative font size was passed to adjust-font-size-to";
73
+ }
74
+ font-size: $font-unit * $to-size / $from-size;
75
+ @include adjust-leading-to($lines, if($relative-font-sizing, $to-size, $base-font-size));
48
76
  }
49
77
 
50
78
  @mixin adjust-leading-to($lines, $font-size: $base-font-size) {
51
- line-height: 1em * $lines * $base-line-height / $font-size;
79
+ @if $relative-font-sizing and $font-size != $base-font-size {
80
+ @warn "$relative-font-sizing is false but a relative font size was passed to adjust-leading-to";
81
+ }
82
+ line-height: $font-unit * $lines * $base-line-height / $font-size;
52
83
  }
53
84
 
54
85
  // Calculate rhythm units
@@ -56,32 +87,55 @@ $base-half-leader: $base-leader / 2;
56
87
  $lines: 1,
57
88
  $font-size: $base-font-size
58
89
  ) {
59
- $rhythm: 1em * $lines * $base-line-height / $font-size;
90
+ @if $relative-font-sizing and $font-size != $base-font-size {
91
+ @warn "$relative-font-sizing is false but a relative font size was passed to the rhythm function";
92
+ }
93
+ $rhythm: $font-unit * $lines * $base-line-height / $font-size;
60
94
  @return $rhythm;
61
95
  }
62
96
 
97
+ @function lines-for-font-size($font-size) {
98
+ $lines: ceil($font-size / $base-line-height);
99
+ @if $lines * $base-line-height - $font-size < $min-line-padding * 2 {
100
+ $lines: $lines + 1;
101
+ }
102
+ @return $lines;
103
+ }
104
+
63
105
  // Apply leading whitespace
64
106
  @mixin leader($lines: 1, $font-size: $base-font-size, $property: margin) {
65
- #{$property}-top: rhythm($lines, $font-size);
107
+ $leader: rhythm($lines, $font-size);
108
+ @if unit($leader) == px {
109
+ $leader: floor($leader)
110
+ }
111
+ #{$property}-top: $leader;
66
112
  }
67
113
 
114
+ // Apply leading whitespace as padding
68
115
  @mixin padding-leader($lines: 1, $font-size: $base-font-size) {
69
116
  @include leader($lines, $font-size, padding);
70
117
  }
71
118
 
119
+ // Apply leading whitespace as margin
72
120
  @mixin margin-leader($lines: 1, $font-size: $base-font-size) {
73
121
  @include leader($lines, $font-size, margin);
74
122
  }
75
123
 
76
124
  // Apply trailing whitespace
77
125
  @mixin trailer($lines: 1, $font-size: $base-font-size, $property: margin) {
78
- #{$property}-bottom: rhythm($lines, $font-size);
126
+ $leader: rhythm($lines, $font-size);
127
+ @if unit($leader) == px {
128
+ $leader: ceil($leader)
129
+ }
130
+ #{$property}-bottom: $leader;
79
131
  }
80
132
 
133
+ // Apply trailing whitespace as padding
81
134
  @mixin padding-trailer($lines: 1, $font-size: $base-font-size) {
82
135
  @include trailer($lines, $font-size, padding);
83
136
  }
84
137
 
138
+ // Apply trailing whitespace as margin
85
139
  @mixin margin-trailer($lines: 1, $font-size: $base-font-size) {
86
140
  @include trailer($lines, $font-size, margin);
87
141
  }
@@ -97,19 +151,25 @@ $base-half-leader: $base-leader / 2;
97
151
 
98
152
  // Apply a border width to any side without destroying the vertical rhythm
99
153
  @mixin apply-side-rhythm-border($side, $width: 1px, $lines: 1, $font-size: $base-font-size, $border-style: $default-rhythm-border-style) {
154
+ @if $relative-font-sizing and $font-size != $base-font-size {
155
+ @warn "$relative-font-sizing is false but a relative font size was passed to apply-side-rhythm-border";
156
+ }
100
157
  border-#{$side}: {
101
158
  style: $border-style;
102
- width: 1em * $width / $font-size;
159
+ width: $font-unit * $width / $font-size;
103
160
  };
104
- padding-#{$side}: 1em / $font-size * ($lines * $base-line-height - $width);
161
+ padding-#{$side}: $font-unit / $font-size * ($lines * $base-line-height - $width);
105
162
  }
106
163
 
107
164
  // Aplly rhythm borders equally to all sides
108
165
  @mixin rhythm-borders($width: 1px, $lines: 1, $font-size: $base-font-size, $border-style: $default-rhythm-border-style) {
166
+ @if $relative-font-sizing and $font-size != $base-font-size {
167
+ @warn "$relative-font-sizing is false but a relative font size was passed to rhythm-borders";
168
+ }
109
169
  border: {
110
170
  style: $border-style;
111
- width: 1em * $width / $font-size; };
112
- padding: 1em / $font-size * ($lines * $base-line-height - $width);
171
+ width: $font-unit * $width / $font-size; };
172
+ padding: $font-unit / $font-size * ($lines * $base-line-height - $width);
113
173
  }
114
174
 
115
175
  // Apply a leading rhythm border
@@ -0,0 +1,12 @@
1
+ // Prevent long urls and text from breaking layouts
2
+ // [originally from perishablepress.com](http://perishablepress.com/press/2010/06/01/wrapping-content/)
3
+ @mixin force-wrap {
4
+ white-space: pre; // CSS 2.0
5
+ white-space: pre-wrap; // CSS 2.1
6
+ white-space: pre-line; // CSS 3.0
7
+ white-space: -pre-wrap; // Opera 4-6
8
+ white-space: -o-pre-wrap; // Opera 7
9
+ white-space: -moz-pre-wrap; // Mozilla
10
+ white-space: -hp-pre-wrap; // HP Printers
11
+ word-wrap: break-word; // IE 5+
12
+ }
@@ -1,7 +1,7 @@
1
1
  module Compass
2
2
  end
3
3
 
4
- %w(dependencies util browser_support sass_extensions version errors quick_cache).each do |lib|
4
+ %w(dependencies util browser_support sass_extensions version errors quick_cache logger).each do |lib|
5
5
  require "compass/#{lib}"
6
6
  end
7
7
 
@@ -10,7 +10,7 @@ module Compass
10
10
  attr_accessor :working_path, :options
11
11
 
12
12
  def initialize(working_path, options)
13
- self.working_path = working_path
13
+ self.working_path = working_path.to_s
14
14
  self.options = options
15
15
  end
16
16
 
@@ -22,6 +22,14 @@ module Compass
22
22
  raise StandardError.new("Not Implemented")
23
23
  end
24
24
 
25
+ def successful?
26
+ !@failed
27
+ end
28
+
29
+ def failed!
30
+ @failed = true
31
+ end
32
+
25
33
  protected
26
34
 
27
35
  def framework
@@ -84,8 +84,8 @@ module Compass
84
84
  end
85
85
 
86
86
  def absolute_path?(path)
87
- # This is only going to work on unix, gonna need a better implementation.
88
- path.index(File::SEPARATOR) == 0
87
+ # Pretty basic implementation
88
+ path.index(File::SEPARATOR) == 0 || path.index(':') == 1
89
89
  end
90
90
 
91
91
  def skip_extension_discovery?
@@ -34,7 +34,8 @@ module Compass
34
34
  compiler = new_compiler_instance
35
35
  check_for_sass_files!(compiler)
36
36
  compiler.clean! if compiler.new_config?
37
- compiler.run
37
+ error_count = compiler.run
38
+ failed! if error_count > 0
38
39
  end
39
40
 
40
41
  def check_for_sass_files!(compiler)
@@ -6,7 +6,7 @@ module Compass
6
6
  attr_accessor :working_path, :from, :to, :options, :sass_options, :staleness_checker, :importer
7
7
 
8
8
  def initialize(working_path, from, to, options)
9
- self.working_path = working_path
9
+ self.working_path = working_path.to_s
10
10
  self.from, self.to = from.gsub('./', ''), to
11
11
  self.logger = options.delete(:logger)
12
12
  sass_opts = options.delete(:sass) || {}
@@ -82,9 +82,10 @@ module Compass
82
82
  end
83
83
 
84
84
  def run
85
+ failure_count = 0
85
86
  if new_config?
86
87
  # Wipe out the cache and force compilation if the configuration has changed.
87
- remove options[:cache_location]
88
+ remove options[:cache_location] if options[:cache_location]
88
89
  options[:force] = true
89
90
  end
90
91
 
@@ -97,6 +98,7 @@ module Compass
97
98
  begin
98
99
  compile_if_required sass_filename, css_filename
99
100
  rescue Sass::SyntaxError => e
101
+ failure_count += 1
100
102
  handle_exception(sass_filename, css_filename, e)
101
103
  end
102
104
  end
@@ -104,6 +106,7 @@ module Compass
104
106
  if options[:time]
105
107
  puts "Compilation took #{(result.__duration * 1000).round / 1000.0}s"
106
108
  end
109
+ return failure_count
107
110
  end
108
111
 
109
112
  def compile_if_required(sass_filename, css_filename)
@@ -38,7 +38,8 @@ module Compass
38
38
  :color_output,
39
39
  :preferred_syntax,
40
40
  :disable_warnings,
41
- :sprite_engine
41
+ :sprite_engine,
42
+ :chunky_png_options
42
43
  ].flatten
43
44
 
44
45
  # Registers a new configuration property.