| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Now matches Sass semantics much more closely, and understands
intermediate units in expressions like "1px * 1px / 1px".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CSS types now know whether they're expected to be rendered compressed or
not, and so can choose the most appropriate representation.
Colors in particular now try each of several possible renderings and
choose the shortest. (short_colors is still a separate setting, though
compress implies it.)
This removes the need for a full-document regex to shuffle colors
around, solving several problems related to color names that aren't
actually colors. It also kills off several regexes and dicts and brings
us closer to Ruby parity.
|
| |
|
|
|
|
|
|
|
|
| |
Variables, functions, and mixins are now all stored within a single
Namespace object, which can easily spin off child namespaces.
Calculator methods no longer need to accept a rule at all, making it
possible to parse and evaluate expressions in a vacuum.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This was an optimization to short-circuit evaluating any expressions
that don't appear to contain Sass syntax, but it was wrong: the
particular case I ran across was `foo, bar` not being parsed as a list!
Removing it added only 3% to the test suite runtime. We can see about
resurrecting the idea later, after the suite actually passes. :)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- FunctionRegistry is now FunctionLibrary, which sounds more like a
thing and less like I had no idea what to call it.
- Built-in functions are all added to the library decorator-style.
- Built-in functions have been split into several smaller modules.
- The stuff in parseutil turns out not to be related to parsing, so it's
been broken apart too.
|
| |
|
| |
|
| |
|
|
|