8.0
8.0.0 (2016-06-30)
- Store source CSS line numbers in tokens and parsing exceptions.
- No deprecations
Backwards-incompatible changes
- Unrecoverable parser errors throw an exception of type
Sabberworm\CSS\Parsing\SourceException instead of \Exception.
8.1.0 (2016-07-19)
- Comments are no longer silently ignored but stored with the object with which they appear (no render support, though). Thanks to .
- The IE hacks using
\0 and \9 can now be parsed (and rendered) in lenient mode. Thanks (again) to .
- Media queries with or without spaces before the query are parsed. Still no real parsing support, though. Sorry…
- PHPUnit is now listed as a dev-dependency in composer.json.
- No backwards-incompatible changes
- No deprecations
7.0
7.0.0 (2015-08-24)
- Compatibility with PHP 7. Well timed, eh?
- No deprecations
Backwards-incompatible changes
- The
Sabberworm\CSS\Value\String class has been renamed to Sabberworm\CSS\Value\CSSString.
7.0.1 (2015-12-25)
- No more suppressed
E_NOTICE
- No backwards-incompatible changes
- No deprecations
7.0.2 (2016-02-11)
- 150 time performance boost thanks to <a href="https://github.com/ossinkine">ossinkine
- No backwards-incompatible changes
- No deprecations
7.0.3 (2016-04-27)
- Fixed parsing empty CSS when multibyte is off
- No backwards-incompatible changes
- No deprecations
6.0
6.0.0 (2014-07-03)
- Format output using Sabberworm
- No backwards-incompatible changes
Deprecations
- The parse() method replaces __toString with an optional argument (instance of the OutputFormat class)
6.0.1 (2015-08-24)
- Remove some declarations in interfaces incompatible with PHP 5.3 (< 5.3.9)
- No deprecations
5.0
5.0.0 (2013-03-20)
- Correctly parse all known CSS 3 units (including Hz and kHz).
- Output RGB colors in short (#aaa or #ababab) notation
- Be case-insensitive when parsing identifiers.
- No deprecations
Backwards-incompatible changes
Sabberworm\CSS\Value\Color’s __toString method overrides CSSList’s to maybe return something other than type(value, …) (see above).
5.0.1 (2013-03-20)
- Internal cleanup
- No backwards-incompatible changes
- No deprecations
5.0.2 (2013-03-21)
- CHANGELOG.md file added to distribution
- No backwards-incompatible changes
- No deprecations
5.0.3 (2013-03-21)
- More size units recognized
- No backwards-incompatible changes
- No deprecations
5.0.4 (2013-03-21)
- Don’t output floats with locale-aware separator chars
- No backwards-incompatible changes
- No deprecations
5.0.5 (2013-04-17)
- Initial support for lenient parsing (setting this parser option will catch some exceptions internally and recover the parser’s state as neatly as possible).
- No backwards-incompatible changes
- No deprecations
5.0.6 (2013-05-31)
- Fix broken unit test
- No backwards-incompatible changes
- No deprecations
5.0.7 (2013-08-04)
- Fix broken decimal point output optimization
- No backwards-incompatible changes
- No deprecations
5.0.8 (2013-08-15)
- Make default settings’ multibyte parsing option dependent on whether or not the mbstring extension is actually installed.
- No backwards-incompatible changes
- No deprecations
5.1.0 (2013-10-24)
- Performance enhancements by Michael M Slusarz
- More rescue entry points for lenient parsing (unexpected tokens between declaration blocks and unclosed comments)
- No backwards-incompatible changes
- No deprecations
5.1.1 (2013-10-28)
- Updated CHANGELOG.md to reflect changes since 5.0.4
- No backwards-incompatible changes
- No deprecations
5.1.2 (2013-10-30)
- Remove the use of consumeUntil in comment parsing. This makes it possible to parse comments such as
/** Perfectly valid **/
- Add fr relative size unit
- Fix some issues with HHVM
- No backwards-incompatible changes
- No deprecations
5.2.0 (2014-06-30)
- Support removing a selector from a declaration block using
$oBlock->removeSelector($mSelector)
- Introduce a specialized exception (Sabberworm) for exceptions during output rendering
- No deprecations
Backwards-incompatible changes
- Outputting a declaration block that has no selectors throws an OuputException instead of outputting an invalid
{…} into the CSS document.
4.0
4.0.0 (2013-03-19)
- Support for more -rules
- Generic interface
Sabberworm\CSS\Property\AtRule, implemented by all -rule classes
- No deprecations
Backwards-incompatible changes
Sabberworm\CSS\RuleSet\AtRule renamed to Sabberworm\CSS\RuleSet\AtRuleSet
Sabberworm\CSS\CSSList\MediaQuery renamed to Sabberworm\CSS\RuleSet\CSSList\AtRuleBlockList with differing semantics and API (which also works for other block-list-based -rules like @supports).
3.0
3.0.0 (2013-03-06)
- Support for lenient parsing (on by default)
- No deprecations
Backwards-incompatible changes
- All properties (like whether or not to use
mb_-functions, which default charset to use and – new – whether or not to be forgiving when parsing) are now encapsulated in an instance of Sabberworm\CSS\Settings which can be passed as the second argument to Sabberworm\CSS\Parser->__construct().
- Specifying a charset as the second argument to
Sabberworm\CSS\Parser->__construct() is no longer supported. Use `Sabberworm::create()->withDefaultCharset('some-charset')instead.
SettingSabberworm->bUseMbFunctionshas no effect. UseSabberworm::create()->withMultibyteSupport(true/false)instead. *Sabberworm->parse()may throw aSabberworm` when in strict parsing mode.
2.0
2.0.0 (2013-01-29)
- Allow multiple rules of the same type per rule set
Backwards-incompatible changes
Sabberworm\CSS\RuleSet->getRules() returns an index-based array instead of an associative array. Use Sabberworm\CSS\RuleSet->getRulesAssoc() (which eliminates duplicate rules and lets the later rule of the same name win).
Sabberworm\CSS\RuleSet->removeRule() works as it did before except when passed an instance of Sabberworm\CSS\Rule\Rule, in which case it would only remove the exact rule given instead of all the rules of the same type. To get the old behaviour, use Sabberworm\CSS\RuleSet->removeRule($oRule->getRule();
1.0
Initial release of a stable public API.
0.9
Last version not to use PSR-0 project organization semantics.