SCSS NEWS --- history of user-visible changes Copyright (C) 2007 Julian Graham See the end for copying conditions. Changes since development release 0.2.3 ** New license: GPLv3 SCSS is now licensed under the GPLv3; the COPYING file and the headers of the relevant source files have been updated to reflect this. ** Parser rewrite The SCSS parser has been completely rewritten for this release, such that it is now much closer to the definition in the CSS recommendation, and much better at recovering from parsing errors. The error handling behavior is also closer to the behavior described in the CSS recommendation -- the right portions of a stylesheet are now ignored following an error, for example, and non-terminated strings and blocks are properly closed. ** Parsing and query enhancement: Support for the @media rule The parser and query system now recognize the @media rule and, as an extension to the scss:select-value API, media types can be specified as part of a query against the cascade. ** Parsing enhancement: Support for rgb-function color syntax The parser now properly recognizes and formats colors specified in the "rgb()" pseudo-function notation. ** Major format change The format of SCSS's S-expr representation of stylesheets has undergone a complete rewrite. It is now somewhat compatible with the format used by Jim Bender's WebIt! toolkit (http://celtic.benderweb.net/webit/), a Scheme library that provides useful APIs for working with XML, HTML, and CSS documents. CSS documents given in the format described in the WebIt! specification can be used directly by SCSS; documents created by SCSS can be used by WebIt!, provided that only selectors and syntax covered by the CSS1 recommendation is used. More information on the new format and its compatibility with WebIt! can be found in the SCSS documentation. Changes since development release 0.2.2 ** Parsing enhancement: Support for Unicode SCSS now transforms Unicode escape sequences to the appropriate Unicode characters. Note that since Guile versions prior to 1.8 don't support Unicode, escapes that refer to characters over and above the first 256 characters won't be replaced in Guile 1.6 or earlier. ** Assorted minor bugfixes Character backslash escapes without a special meaning should be replaced by the character itself; the parser was failing to reject invalid values for certain generalized properties (background, border, border-*, font, list-style, outline, and text-decoration). Changes since development release 0.2.1 ** Major cascade lookup bugfix If the best selector match contains a rule for a property that is a more general version than the property requested AND is inherited from an ancestor node, SCSS will now correctly use this property. ** New API function: scss:clear-style-cache! For greater efficiency in performing style lookups, SCSS maintains internal hashes mapping nodes to matching style information. scss:clear-style-cache! can be used to clear this cache when it is necessary to perform a full lookup from the cascade. See the SCSS documentation for more information. ** Assorted minor bugfixes Formatting of imported stylesheets when there are multiple @import directives has been fixed; requests for "border-color" will now properly generalize to "color." Changes since development release 0.2.0 ** Vastly improved performance As part of some fixes to query algorithm correctness, there is a welcome side- effect: SCSS queries now take an order of magnitude less time to complete, making SCSS a whole lot more useful as an embedded style-management system. ** Changes to internal stylesheet representation Pursuant to the optimizations mentioned above, the stylesheet format has changed; detailed information can be found in the documentation, but developers relying on direct access to SCSS stylesheets will need to update their code. Changes since development release 0.1 ** Property generalization improvements and bugfixes If the best selector match contains a rule for a property that is a more general version than the property requested, such as "border" for a lookup of "border-left-style," SCSS will now correctly use the more general property to determine the value of the requested property. ** Assorted bugfixes Among others, bugs related to the !important modifier, color-to-hexadecimal conversion, and stylesheet emitting have been fixed. ** Documentation is complete The SCSS API should now be fully documented. Copyright information: Copyright (C) 2007 Julian Graham Permission is granted to anyone to make or distribute verbatim copies of this document as received, in any medium, provided that the copyright notice and this permission notice are preserved, thus giving the recipient permission to redistribute in turn. Permission is granted to distribute modified versions of this document, or of portions of it, under the above conditions, provided also that they carry prominent notices stating who last changed them. Local variables: mode: outline paragraph-separate: "[ ]*$" end: