3.2.7
* The index and zip functions now work like all other list functions and treat
individual values as single-element lists.
* Avoid stack overflow errors caused by very long function or mixin argument
lists.
* Emit relative paths when using the --line-comments flag of the sass
executable.
* Fix a case where very long numbers would cause the SCSS parser to take
exponential time.
3.2.6
* Support for Rubinius 2.0.0.rc1. All tests pass in 1.8 mode. 1.9 mode has
some tests blocked on Rubinius issue 2139.
* Support for JRuby 1.7.2.
* Support for symlinked executables. Thanks to Yin-So Chen.
* Support for bubbling @supports queries in the indented syntax.
* Fix an incorrect warning when using @extend from within nested @media
queries.
* Update the bundled version of listen to 0.7.2.
3.2.5
* Fix a bug where bogus @extend warnings were being generated.
* Fix an @import bug on Windows. Thanks to Darryl Miles.
* Ruby 2.0.0-preview compatibility. Thanks to Eric Saxby.
* Fix incorrect line numbering when using DOS line endings with the indented
syntax.
3.2.4
* Fix imports from .jar files in JRuby. Thanks to Alex Hvostov.
* Allow comments within @import statements in SCSS.
* Fix a parsing performance bug where long decimals would occasionally take
many minutes to parse.
3.2.3
* sass --watch no longer crashs when a file in a watched directory is deleted.
* Allow @extend within bubbling nodes such as @media.
* Fix various JRuby incompatibilities and test failures.
* Work around a performance bug that arises from using @extend with
deeply-nested selectors.
3.2.2
* Add a --poll option to force sass --watch to use the polling backend to
Listen.
* Fix some error reporting bugs related to @import.
* Treat protocol-relative URLs in @imports as static URLs, just like http and
https URLs.
* Improve the error message for misplaced simple selectors.
* Fix an option-handling bug that was causing errors with the Compass URL
helpers.
* Fix a performance issue with @import that only appears when ActiveSupport is
loaded.
* Fix flushing of actions to stdout. Thanks to Russell Davis
(http://github.com/russelldavis).
* Fix the documentation for the max() function.
* Fix a @media parsing bug.
Deprecations -- Must Read!
* Sass will now print a warning when it encounters a single @import statement
that tries to import more than one file. For example, if you have @import
"screen" and both screen.scss and _screen.scss exist, a warning will be
printed. This will become an error in future versions of Sass.
3.1.16
* Fix some bugs in sass-convert selector parsing when converting from CSS.
* Substantially improve compilation performance on Ruby 1.8.
* Support the @-moz-document directive¡Çs non-standard url-prefix and domain
function syntax.
* Support the @supports directive.
* Fix a performance issue when using /*! */ comments with the Rails asset
pipeline.
* Support -moz-element.
* Properly handle empty lists in sass-convert.
* Move from FSSM to Listen for file-system monitoring.
3.1.12
* Compatibility with the mathn library (thanks to Thomas Walpole).
* Fix some infinite loops with mixins that were previously uncaught.
* Catch infinite @import loops.
* Fix a deprecation warning in sass --update and --watch (thanks to Marcel
Köppen).
* Don’t make $important a special pre-initialized variable.
* Fix exponential parsing time of certain complex property values and
selectors.
* Properly merge @media directives with comma-separated queries.
E.g.
@media foo, bar { @media baz { ... } } now becomes
@media foo and baz, bar and baz { ... }.
3.1.11
* Allow control directives (such as @if) to be nested beneath properties.
* Allow property names to begin with a hyphen followed by interpolation
(e.g. -#{...}).
* Fix a parsing error with interpolation in comma-separated lists.
* Make --cache-store with with --update.
* Properly report ArgumentErrors that occur within user-defined functions.
* Don’t crash on JRuby if the underlying Java doesn’t support every Unicode
encoding.
* Add new updated_stylesheet callback, which is run after each stylesheet has
been successfully compiled. Thanks to Christian Peters.
* Allow absolute paths to be used in an importer with a different root.
* Don’t destructively modify the options when running
Sass::Plugin.force_update.
Deprecations – Must Read!
* The updating_stylesheet is deprecated and will be removed in a future
release. Use the new updated_stylesheet callback instead.
3.1.10
* Fix another aspect of the 3.1.8 regression relating to +.
3.1.9
* Fix a regression in 3.1.8 that broke the + combinator in selectors.
* Deprecate the loud-comment flag when used with silent comments
(e.g. //!). Using it with multi-line comments (e.g. /*!) still works.
3.1.8
* Deprecate parent selectors followed immediately by identifiers
(e.g. &foo). This should never have worked, since it violates the rule of &
only being usable where an element selector would.
* Add a --force option to the sass executable which makes --update always
compile all stylesheets, even if the CSS is newer.
* Disallow semicolons at the end of @import directives in the indented syntax.
* Don’t error out when being used as a library without requiring fileutil.
* Don’t crash when Compass-style sprite imports are used with
StalenessChecker (thanks to Matthias Bauer).
* The numeric precision of numbers in Sass can now be set using the
--precision option to the command line. Additionally, the default number of
digits of precision in Sass output can now be changed by setting
Sass::Script::Number.precision to an integer (defaults to 3). Since this
value can now be changed, the PRECISION constant in Sass::Script::Number has
been deprecated. In the unlikely event that you were using it in your code,
you should now use Sass::Script::Number.precision_factor instead.
* Don’t crash when running sass-convert with selectors with two commas in a
row.
* Explicitly require Ruby >= 1.8.7 (thanks Eric Mason).
* Properly validate the nesting of elements in imported stylesheets.
* Properly compile files in parent directories with --watch and --update.
* Properly null out options in mixin definitions before caching them. This
fixes a caching bug that has been plaguing some Rails 3.1 users.
3.1.6
* The option :trace_selectors can now be used to emit a full trace before each
selector. This can be helpful for in-browser debugging of stylesheet imports
and mixin includes. This option supersedes the :line_comments option and is
superseded by the :debug_info option.
* Fix a bug where long @if/@else chains would cause exponential slowdown under
some circumstances.
3.1.5
* Updated the vendored FSSM version, which will avoid segfaults on OS X Lion
when using --watch.
3.1.4
* Sass no longer unnecessarily caches the sass options hash. This allows
objects that cannot be marshaled to be placed into the options hash.
3.1.3
* Sass now logs message thru a logger object which can be changed to provide
integration with other frameworks¡Ç logging infrastructure.
ruby-compass pacakge.
# Sass
**Sass makes CSS fun again**. Sass is an extension of CSS3,
adding nested rules, variables, mixins, selector inheritance, and more.
It's translated to well-formatted, standard CSS
using the command line tool or a web-framework plugin.
Sass has two syntaxes. The new main syntax (as of Sass 3)
is known as "SCSS" (for "Sassy CSS"),
and is a superset of CSS3's syntax.
This means that every valid CSS3 stylesheet is valid SCSS as well.
SCSS files use the extension `.scss`.
The second, older syntax is known as the indented syntax (or just "Sass").
Inspired by Haml's terseness, it's intended for people
who prefer conciseness over similarity to CSS.
Instead of brackets and semicolons,
it uses the indentation of lines to specify blocks.
Although no longer the primary syntax,
the indented syntax will continue to be supported.
Files in the indented syntax use the extension `.sass`.