0.53.0 / 2015-12-14
===================

  * Feature: Numeric partial references.
  * Feature: Relative references.
  * Feature: New `selectors()` bif.
  * Feature: Support for comma-separated lists as `selector()`'s arguments.
  * Docs: Reworked contribution guidelines.
  * Docs: Added Contributor Code of Conduct.
  * Fix: Support for multiple consecutive parent references.
  * Fix: Proper removal of parent references at the root when combinators are present.
  * Fix: Don't add space before unknown units.
  * Fix: Allow comma-separated lists in `@supports` value.
  * Fix: No more error message for "assertType" without parameter name.
  * Fix: Proper middleware overlap function on windows. Thanks to #2029 by @bcomnes.
  * Fix: Better absolute path detection for Windows. Thanks to #2033 by @mlohbihler.
  * Refactoring: Moved bifs to separate files.


0.52.4 / 2015-09-04
===================

  * Fix: Revert changes in "looksLikeSelector" method.

0.52.3 / 2015-09-04
===================

  * Fix: Another parsing regression.

0.52.2 / 2015-09-03
===================

  * Fix: A parsing regression.

0.52.1 / 2015-09-03
===================

  * Fix: Correct line numbers in error messages for files with CSS comments.
  * Fix: Better absolute urls detection.
  * Fix: Added type assertions to "substr", "split" and "replace" bifs.
  * Fix: Atrules parsing with a block at a new line.
  * Fix: Bug with commented indented lines at the end of a file.
  * Fix: Stylus error messages for Node 0.12+.
  * Fix: A bug with arguments cloning.

0.52.0 / 2015-07-19
===================

  * Feature: new url resolver without url checks (`--resolve-url-nocheck`).
  * Feature: New option to json bif ("leave-strings").
  * Feature: New option to json bif ("optional").
  * Feature: Adding utf-8 charset to inline sourcemap.
  * Feature: allow inline CSS comments inside value.
  * Fix: shouldn't fail to compile in strict mode, #1923.
  * Fix: Paths should be normalized for windows support, #1954.
  * Fix: Proper parsing of selector groups with placeholder and color-like ID.
  * Fix: Proper import loop detection.
  * Fix: Correct output of namespaces and charsets inside imports.
  * Fix: Indented comments shouldn't cause errors.
  * Fix: Proper way of parsing lists in "convert" bif.
  * Fix: Proper comma escaping in an object interpolation.
  * Fix: Allow no whitespace between keyframes name and the following curly brace.

0.51.1 / 2015-04-28
===================

  * Fixed `;` at the end of blockless unknown at-rules.
  * Fixed float units convertion by `convert` bif.

0.51.0 / 2015-04-23
===================

  * Added support for cascading extend.
  * Added "transparent" as a named color.
  * Added support for blockless unknown at-rules.
  * Made math more strict.
  * Fixed bug with extending nested placeholder selectors inside MQ.
  * Fixed imports inside `@media` blocks.
  * Fixed url resolver to consider `--out` options.
  * Fixed parsing of multiple "else if" statements.
  * Fixed an edge case with recursive extend.
  * Fixed regression with nested media queries.
  * Fixed parsing of nested comments.
  * Fixed checking paths overlap if 'dest' is a function in middleware.

0.50.0 / 2015-02-05
===================

  * Added `!optional` directive for extending, #1757.
  * Added `selector-exists` bif, #1758.
  * Added `remove` bif for removing items from hashes.
  * Added optional recursive hash merging, #1771.
  * Added optional (`--hoist-atrules` flag) `@import` and `@charset` hoisting.
  * Added a way to output to specific file path with CLI, #1800.
  * Fixed regression with using `@media` inside `+cache`.
  * Fixed `resolve-url` for hash urls, #1778.
  * Fixed `mix` bif for differently transparent colors, #1792.
  * Fixed bug with postfix `&` without comma.
  * Fixed incorrectly imported functions defined in other files with nested @require.
  * Fixed duplicated selectors when extending into placeholders with MQ.
  * Fixed `filter: contrast()` error.
  * Fixed the cloning of cached nodes.
  * Fixed incorrect filenames included in source maps, #1812.
  * Fixed stripping of unsuppressed comments from nested blocks.
  * Fixed build error for multiple files, #1813.
  * Fixed error handling slightly.
  * Fixed (throwing error) edge case of watching and printing at the same time, #1798.
  * Fixed watch to log to std.err, #1796.
  * Fixed indent in complex rules at CSS to Stylus conversion, #1808.

0.49.3 / 2014-11-06
===================

  * Fixed regression with `block` keyword inside block mixin.

0.49.2 / 2014-10-14
===================

  * Fixed regression #1727 + small fixes for #1717.
  * Fixed nested selectors when using nested and bubbled media queries.
  * Fixed issue when mixin's block is used as part of a property value.
  * Fixed hardcoded `.styl` extension from CLI (added `extname` arg).

0.49.1 / 2014-09-24
===================

  * Fixed an output order of nested media queries.
  * Fixed regression with cached nodes.
  * Fixed support for `Woff2` and `WebP` mime-tipes, #1699.

0.49.0 / 2014-09-22
===================

  * Added a way to use plugins in stylus.render options, #1697.
  * Added LRU for memory caching.
  * Now returning literal CSS on parser error when `--resolve-url` is set.
  * Now not showing JS stack trace for stylus' `error()` calls.
  * Fixed inconsistent source maps' field orders.
  * Fixed bug with calling functions inside an inline loop.
  * Fixed bug with nested media queries inside a mixin.
  * Fixed bug with extending nested selector inside placeholder selector.
  * Fixed bug with alpha variable for hsla/rgba.
  * Fixed extending of rules inside unknown at-rules.
  * Fixed incorrect merging of media queries using variables.
  * Fixed bubbling for `@keyframes`.
  * Fixed incorrect `@supports` parsing.
  * Fixed `url()` support for `@namespace`.
  * Fixed incorrect filename and column information for cached nodes.
  * Fixed `--sourcemap-base` to be ignored when `--out` is present.
  * Fixed outputting sourcemap log message when `--print` was present.

0.48.1 / 2014-08-21
===================

  * Fixed sourcemap paths when `--out` flag is present, #1668.
  * Fixed the naming convention for maps: `.styl.map` => `.css.map`, #1668.

0.48.0 / 2014-08-20
===================

  * Added basic sourcemaps support, #1655.
  * Added info on columns for sourcemaps and better error reporting.
  * Added `globals` and `functions` keys to options object in JS API, #1653.
  * Added `rebeccapurple` named color.
  * Added `unicode-range` support (#1648).
  * Changed the behaviour of adding percents together to the more sane one, #1664.
  * Fixed bug with property lookup inside mixin block (#1645).
  * Fixed a bug with nested media queries inside mixins (#1643).
  * Fixed an `@extend` inside `@media` queries with multi-level selectors (#1658).
  * Fixed bug with cloning of an interpolated selector with comma (#1660).
  * Fixed bug with nested media queries in conditionals.
  * Fixed a bug with cached imports (#1641).
  * Fixed `@css` literal that generated `u+0085` characters instead of newlines (#1663).
  * Fixed escaped comma (`\,`) inside hashes (#1666).
  * Fixed a string representation of HSLA node to preserve `%` (#1439).
  * Fixed incorrect position of inline comments (#1597).
  * Fixed a bug with an apostrophe and a colon in a single-line comment (#1647).

0.47.3 / 2014-07-22
===================

  * Fixed support for schema-less urls inside `url()`.

0.47.2 / 2014-07-19
===================

  * Fixed comma-first multiline syntax, #1634.
  * Fixed hsla arguments for different color functions, #1619.
  * Fixed Bug with @media and placeholder selectors, #1625.
  * Fixed bug with nested media queries, 1620.
  * Fixed broken URL parsing for source and destination paths, #1613.

0.47.1 / 2014-07-02
===================

  * Fixed treatment of unknown pseudo-elements, #1608.
  * Fixed unit expression precedence error, #1611.

0.47.0 / 2014-07-01
===================

  * Added support for anonymous functions, #1580.
  * A lot of better color functions, #1526:
      * Added support for two arguments for `hsla`.
      * Added component setters (`red`, `hue`, `alpha` etc.).
      * Added `luminosity` bif.
      * Added `blend` bif.
      * Added `contrast` bif.
      * Added `transparentify` bif.
  * Added `list-separator` bif, #1576.
  * Added symlinks support to CLI, #1577.
  * Added idents and units coercion, #1605.
  * Fixed `@keyframes` parsing issue.
  * Fixed parse error when `{` is on a new line in at-rules.
  * Fixed an issue with multiline parsing.
  * Fixed another issue with cached imports, #1587.
  * Fixed illegal unary "%", missing left-hand operand, #1586.
  * Reverted #1527.

0.46.3 / 2014-06-09
===================

  * Fixed parse error, #1582.

0.46.2 / 2014-06-04
===================

  * Fixed regression with double writing of transparent mixin value, #1574.

0.46.1 / 2014-06-04
===================

  * Fixed regression with a root reference in interpolated selectors, #1573.

0.46.0 / 2014-06-03
===================

  * Added support for nested media queries, #1540.
  * Added `convert` built-in function, #1545.
  * Added negative index values support for subscripts, #1564.
  * Add short-circuit evaluation for logical operators, #1532.
  * Fixed the dropped commas in splat arguments, #1525.
  * Fixed double-writing the `@media` and other at-rules in mixins, #1535.
  * Fixed unit expression precedence error, #1537.
  * Fixed comments inside the property expressions, #1538.
  * Fixed handling of the `@css` and `unquote` inside groups, #1527.
  * Fixed incorrect line numbers on errors, #1543.
  * Fixed import cloning with cache, #1548.
  * Fixed cloning to preserve `property.literal`, #1558.
  * Fixed bifs arguments cloning bug, #1560.
  * Fixed bug with nested interpolated selectors with a comma, 1568.
  * Fixed `current-property` ignored in property lookup, #1565.
  * Fixed `current-property`'s value to be evaluated in the right context, #1562.
  * Fixed spaces and comments inside a hash declaration, #1554.
  * Fixed aliases for transparent mixins, #1557.
  * Fixed compilation fail when 'dest' path doesn't end with '/', #1541.
  * Fixed bug with CSS to Stylus `@keyframes` converting, #1549.

0.45.1 / 2014-05-16
===================

  * Fixed regression with `@require` and globbed paths inside functions, #1529.

0.45.0 / 2014-05-11
===================

  * Added support for more CSS-like syntax variants: indented code blocks, closing curly brace on the same line with props etc (as now ignoring meaningless tokens while parsing), #1506.
  * Added support for block-level `@import` and `@require`, #1495.
  * Added hash values support in `@media`, #1504.
  * Added coercion for pt units, #1483.
  * Added a way to escape `\` in a tag name, #1487.
  * Fixed trailing spaces and comments in the selector groups, #1499.
  * Fixed comments in the selector parts (now ignoring them), #1517.
  * Fixed bug with url string having a protocol, #1510.
  * Fixed bug with `@scope` and complex selectors, #1505.
  * Fixed the recursion with the `display: block` inside block mixins, #1515.
  * Fixed bug with current-property and block mixins, #1512.
  * Fixed bug with complex selectors in conditionals, #1500.
  * Fixed bug with `@media` bubbling and conditionals, #1518.
  * Fixed bug with newlines and comments in conditionals, #1520.
  * Fixed bug with the variable in the first line of mixin, #1502.
  * Fixed but with the variable right after iterating over an empty list, #1503.
  * Fixed bug with built-in function calls inside a hash assignment, #1488.
  * Fixed bug with `*` selector first in the group, #1498.
  * Fixed unnecessary bubbling for `@keyframes`, #1490.
  * Fixed bug with undefined `filename` on keyframes, #1485.

0.44.0 / 2014-04-23
===================

  * Major performance tuning and basic caching support, almost ⨉2 build time boost, #1428.
  * Added basic support for most at-rules, #1464.
  * Added `+cache` built-in mixin for caching the result of functions and mixins into placeholders, #1466.
  * Added `current-media()` bif that returns the string for the current media query, #1466.
  * Added `called-from` property in functions that contains the names of the functions from the call stack till the current one, #1466.
  * Added a way to escape commas and parent references inside selectors, #1413.
  * Removed the never needed `-ms-` prefix for keyframes.
  * Fixed rendering of multiple selectors inside interpolation, #1413.

0.43.1 / 2014-04-07
===================

  * Fixed regression with `only` keyword, #1460.

0.43.0 / 2014-04-05
===================

  * Added better support for media queries — interpolations, expressions in values and more, #1453.
  * Added `define` bif, #1382.
  * Add `--prefix` option for CLI and `+prefix-classes` mixin, #1420.
  * Added `--deps` flag to list the dependencies of the compiled file and stylus.deps function, #1429.
  * Added support for multiple selectors in `@extend`, #1419.
  * Added the support of the hash objects to `define`, #1444.
  * Fixed some floating point problems in maths, #1339.
  * Fixed the lost decimal part of units can when coercing from a string, #1387.
  * Fixed bug with hash lookup when a property name is the same as a name of local variable, #1433.
  * Fixed bug with the `+=` operator with strings, #1423.
  * Fixed a bug in recompiling of the files with `--watch`, #1435.
  * Fixed `default` value for `cursor` property (Temporally remove `default` from the pseudo-classes list), #1438.
  * Fixed the rendering of empty `@keyframes`, #1442.
  * Fixed parseColor for single digit integers in rgb(a) strings, #1447.
  * Fixed wrong named colors, #1450.


0.42.3 / 2014-03-03
==================

  * Fixed bug with pseudo-elements as part of the nested selector with a class, #1415.
  * Ignoring comments in REPL, #1390.
  * Fixed bug with print of the line numbers when node has empty `nodes` array, #1412.
  * Fixed bug with first argument for defaulted arguments, #1407.
  * Fixed compression of blocks with nested rules, #1396.
  * Fixed bug with importing of files with `.css` in the dirname, #1385.
  * Fixed eaten whitespace after selector with a keyword, #1383.

0.42.2 / 2014-01-30
==================

  * Added support for reverse ranges.
  * Fixed bug with an expression as arguments of function call.
  * Fixed bug with property lookup inside `@block`.
  * Fixed bug with parsing an attribute selector.
  * Fixed bug with `add-property` inside function call.
  * Fixed compiling to a directory with `.styl` in the name.
  * Fixed bug with missed `mtime` in middleware imports.
  * Fixed an incorrect line number in multi-line group selectors.
  * Fixed incorrect file path in win32 debug info, #1353.

0.42.1 / 2014-01-19
==================

  * Fixed color functions to fallback into literal CSS functions, #1340.
  * Fixed `@import` globbing with `--watch`.
  * Fixed Bug with units as part of the selector.
  * Fixed compiling with UTF-8 BOM.
  * Added Icons, and reorganization of graphics folder, #1346.

0.42.0 / 2014-01-06
==================

  * Added `@require`, #1287.
  * Added more lookup patterns for the `@import` and `@require`. Support Node.js modules, #1316.
  * Added file globbing, #1306 and #1013.
  * Added root reference, part of #1240.
  * Added basic support for `@block` entity, #1290.
  * Added string support for `selector()` bif, #1279.
  * Added options as an optional argument for `use()` bif, #1297.
  * Added some new colors shortcuts: grayscale, complement, tint & shade, #1308.
  * Fixed broken @media queries in logic blocks, #1289.
  * Fixed function call inside block mixin is on the `block` variable pass, #1285.
  * Fixed bug with `if` and color in array check, #1301.
  * Fixed bug with list of color keywords as default argument, #1294.
  * Fixed bug with property lookup in @media queries, #1315.
  * Now using `css-parse` instead of `CSSOM` for converting CSS -> Stylus, #1307.

0.41.3 / 2013-12-12
==================
  
  * Fixed regression for `selector`, #1278.

0.41.2 / 2013-12-10
==================
  
  * Fixed property lookup in blocks, #1273.
  * Fixed @extend in blocks, #1274.
  * Fixed if-else-if-else, #1276.

0.41.1 / 2013-12-08
==================

  * Fixed inaccessible local variable inside conditional which is inside a selector, #1267.
  * Fixed some minor issues with `selector()` interpolation, #1259.
  * Fixed missing hashes in base64 converted urls, #1263.
  * Fixed conditionals inside `@font-face`, #1268.

0.41.0 / 2013-11-30
==================

  * Added basic [block mixins](http://learnboost.github.io/stylus/docs/mixins.html#block-mixins) (`+foo`) with block interpolation (`block`), #1223.
  * Added [`selector()` bif](http://learnboost.github.io/stylus/docs/selectors.html#selector-bif), #1249.
  * Added [hash interpolation to blocks](http://learnboost.github.io/stylus/docs/hashes.html#interpolation), #1202.
  * Fixed parent reference in root context from returning `&`.
  * Fixed bug with double writing media blocks, 1ed44a81
  * Fixed a lot of regressions after hashes, #1230, #1236, #1237, #1248.

0.40.3 / 2013-11-16
==================

  * Fixed current-property to be available in function evaluation context, #1211.
  * Fixed another regression, #1215.

0.40.2 / 2013-11-12
==================

  * Fixed regression after the #1185, #1207.

0.40.1 / 2013-11-12
==================

  * Fixed assign to hashes using dot, #1201.
  * Fixed regression from the #1185.
  * Fixed precedence of the subscript operator, #1189.
  * Fixed imports in functions, #1192.
  * Fixed compressing of time units, #1204.

0.40.0 / 2013-11-05
==================

  * Allow multiple `end` event handlers + optional result css modification, #1180.
  * Added Support for proper hashes in json config, #1186.
  * Allow functions accept object literal as an argument, #1184.
  * Fixed another infinite loop (`a[` etc.), #1187.
  * Fixed bug in hashes subassigns with functions, #1181.
  * Fixed "is" attribute selectors fail, #1185.

0.39.4 / 2013-11-03
==================

  * Fixed another regression after #1150, #1183.

0.39.3 / 2013-11-01
==================

  * Fixed parse error in conditional statement without `()`, #1178.

0.39.2 / 2013-10-31
==================

  * Fixed other regressions after #1150, #1175.

0.39.1 / 2013-10-30
==================

  * Fixed regression after #1150, #1172.

0.39.0 / 2013-10-30
==================

  * Added basic hashes support, #1150.
  * Allow to inject Evaluator via Renderer's options, #1149.
  * Fixed infinite loop case, #1147.
  * Fixed Bug with `else if match`, #1154.
  * Fixed schemaless absolute urls for `url`, #1148.
  * Fixed urls in windows 7 for `--relative-url`, #1156.
  * Fixed calculation inside `calc` CSS function, #1133.
  * Fixed parsing shorthand colors from json config, #1158.

0.38.0 / 2013-09-24
==================

  * Fixed `push` not to modify the first element of another array, #1118.
  * Fixed property lookup from mixins, #1127.
  * Fixed support for `src` and `dest` in middleware, started tests for middleware #1143.
  * Fixed `--resolve-url` that removed tails from urls, #1126.
  * Fixed mime type for `.woff`, #1128.
  * Fixed `.toString` for undefined functions, #1119.
  * Fixed path overlap for non-string dest, #1115.
  * Fixed `path.resolve` for nonœ-true resolveURL, #1116.
  * Fixed sync return in `stylus.render()`, #1138.
  * Fixed duplicate calls from `this.calling`, #1122.

0.37.0 / 2013-08-19
==================

  * Added optional params to the json bif, #1102.
  * Added `--print` option to print CSS to stdout, #1108.
  * Fixed json bif to return literals for colours, #875.
  * Fixed include of the css files when `--resolve-url` is on, #1099.
  * Fixed error in negating variables, #1101.
  * Fixed bug in `p` function, #1111.
  * Fixed tests under windows, #1105.
  * Fixed regression after #1094, #1113.
  * Fixed regression after #983, #1098.

0.36.1 / 2013-08-06
==================

  * Fixed regression after #1090, #1094.

0.36.0 / 2013-08-01
==================

  * Added `substr`, `replace` and `split` bifs, #1088.
  * Added possibility to provide functions to src and dest, #930.
  * Added explicit expose for events, #898.
  * Added blocking and css manipulation possibility within 'end' event, #923.
  * Fixed unneeded code for imports, #1090.
  * Fixed mtime for literal imports, #983.
  * Fixed empty string as possible quote value for string node, #956.
  * Fixed non-symmetrical src and dest paths in middleware, #1037.

0.35.1 / 2013-07-29
==================

  * Fixed the support for progressive JPEGs in `image-size`, #1087.

0.35.0 / 2013-07-29
==================

  * Added jpeg and svg support to image-size, #1083.
  * Added `tan` trigonometric function, also `sin` and `cos` now  understand `deg` units.
  * Added fonts to data URI `url()` mimes, also the list of mimes is now configurable, #841, #1046.
  * Added base conversion for numbers, #714.
  * Fixes extends from nested mixins, #1084.
  * Fixes coercion error, #1082.

0.34.1 / 2013-07-12
==================

  * Fixed the regression after #865.

0.34.0 / 2013-07-12
==================

  * Added built-in `use()` function to extend Stylus from inside  of `.styl` files, #788.
  * Added optional resolver of relative urls, #1070.
  * Fixes incorrect imports lookup inside function call, #1069.
  * Fixes a lot of issues with trailing symbols in comments, #865.
  * Fixes brace on a newline CSS code style.
  * Some minor fixes to tmbundle: #975, #1033, #1034.
 
0.33.1 / 2013-06-30 
==================

  * Fixed the `exports.version` to always show an actual one.

0.33.0 / 2013-06-30 
==================

  * Added extendable placeholder selectors, #1014.
  * Added optional argument to `image-size` function, #812.
  * Fixed inline comments after selectors, #862.
  * Fixed a bug with empty block in CSS syntax, #712.
 
0.32.1 / 2013-02-27 
==================

  * fix issue on Windows where absolute path starts with two backslashes
  * fix extends within a loop.
  * fix: don't try to read absolute urls

0.32.0 / 2013-01-04 
==================

  * add sync api for #230 #691 #151
  * fix unsuppressed comments in nested imports
  * fix #911 Percentage calculation value not copied

0.31.0 / 2012-11-24 
==================

  * add support for rounding precision
  * fix extends with parent reference. Closes #879
  * fix importing of files with ".css" in the dirname
  * fix #619 Support slash in media  
  * fix #819 Extends generate duplicate selectors
  * fix #807 directory with `.styl` in the name and local install of stylus
  * fix #814 Add property function with media query
  * fix #828 Add 'x' unit for image-set (synonym to dppx).
  * fix #834 Percentage calculation not used when value is expression

0.30.1 / 2012-10-17 
==================

  * fix mozdocument nodes not getting visited during imports. Fixes #853

0.30.0 / 2012-10-15 
==================

  * add @-moz-document to the lexer and parser. Fixes #436
  * add --import for issue #485
  * fix @property lookup when a sibling is null
  * fix 'limit' file size option that was broken in 61a2cf
  * fix pseudo-selector properties. Closes #808

0.29.0 / 2012-08-15 
==================

  * add more features to the textmate bundle [paulmillr]
  * add `json()` BIF for loading variables from JSON files [geddesign]
  * fix for #790 allow trailing colon, comma etc in // comments [geddesign]

0.28.2 / 2012-07-15 
==================

  * fix extend in mixin. Closes #747, #748 and #751

0.28.1 / 2012-07-07 
==================

  * fix __@media__ cloning

0.28.0 / 2012-07-06 
==================

  * add suffix to `basename()` BIF
  * add `pathjoin()` BIF
  * add `basename()` BIF
  * add `dirname()` BIF
  * add `extname()` BIF
  * fix `@extend` in mixin. Closes #638

0.27.2 / 2012-06-19 
==================

  * Adding list of all css3 units
  * Fixed CSS to stylus conversion `!important` support
  * Fix last rule being ignored if empty indents at the end of the file
  * Fixes #425: Compiler hangs when the last property isn't followed by semicolon at the end of the document
  * Fixes #435: Can't concat array inside url()

0.27.1 / 2012-05-28 
==================

  * Fixes #698: incorrect function call within for with named argument [Tõnis Tiigi]
  * Fixes #676. Stylus incorrectly imports the .css files that are not in the same folder as the processed .styl file

0.27.0 / 2012-05-10 
==================

  * Added `add-property()` mixin support [jasonkuhrt]
  * Added % support for `fade-in()` and `fade-out()` [jasonkuhrt]
  * Added % support to `rgba()` [jasonkuhrt]
  * Fixed `.import()` - previously failed to mixin

0.26.1 / 2012-05-07 
==================

  * any node. Closes #657

0.26.0 / 2012-04-27 
==================

  * Added BIF shift [gravof]
  * Added BIF pop [gravof]
  * Added support for __@media__ bubbling properties [Ian MacLeod]
  * Changed: strip trailing zeros [gravof]

0.25.0 / 2012-04-03 
==================

  * Added `make test-cov`
  * Added temporary multiline support.
  * Added: allow for '%' unit type in the 'alpha' of rgba and hsla [jasonkuhrt]
  * Updated cssom dep
  * Removed growl dep. Closes #583
  * Fixed BIF retval coercion
  * Fixed issue #390, nested @media

0.24.0 / 2012-02-16 
==================

  * Added `mix()` BIF (docs needed)
  * Added: cast return values from js functions
  * Fixed binops in mixin selectors. Closes #566
  * Fixed `opposite-position()` pass through "center"`

0.23.0 / 2012-02-02 
==================

  * Added `Renderer` "end" event
  * Added: cast return value from js-functions
  * Cleaned up documentation grammar etc [Zearin]

0.22.6 / 2012-01-20 
==================

  * Fixed postfix conditional cloning. Closes #535
  * Fixed idents prefixed with several hyphens. Closes #536
  * Fixed up the TextMate bundle syntax [ianstormtaylor]

0.22.5 / 2012-01-16 
==================

  * Fixed underscore in function identifier. Closes #524

0.22.4 / 2012-01-11 
==================

  * Fixed __@extends__ inheritance bug. Closes #499
  * Fixed 'lineno' global leak due to missing `new` [teppeis]

0.22.3 / 2012-01-11 
==================

  * Fixed `--watch` working on windows with a temporary hack [dciccale]
  * Fixed __@extend__ with no properties. Closes #498

0.22.2 / 2012-01-08 
==================

  * Added: allow newlines in place of commas for keyframes
  * Fixed: skip comment newlines between keyframe positions. Closes #504

0.22.1 / 2012-01-08 
==================

  * Fixed __@keyframes__ support for multiple values. Closes #503

0.22.0 / 2012-01-04 
==================

  * Added `@extend`. Closes #149
  * Added more syntax highlighting to TextMate bundle [paulmillr]
  * Added `keys(pairs)` and `values(pairs)` BIFs
  * Added JavaScript object coercion support
  * Added JavaScript -> Stylus node coercion utilities
  * Fixed `.define()`ing of functions
  * Fixed `stylus(1)` repl for 0.6.x

0.21.2 / 2011-12-22 
==================

  * Fixed literal / within function call. Closes #432

0.21.1 / 2011-12-20 
==================

  * Fixed space after `)` in selectors. Closes #449

0.21.0 / 2011-12-17 
==================

  * Added unit casting, ex: `(n * 5)%`. Closes #285

0.20.1 / 2011-12-16 
==================

  * Added global leak detection to the test suite
  * Fixed two globals
  * Fixed operator ident regression. Closes #292

0.20.0 / 2011-12-11 
==================

  * Added `--include-css` to literally include imported CSS. Closes #448
  * Fixed coercion bug with expression. Closes #480

0.19.8 / 2011-12-01 
==================

  * Fixed middleware `mkdir -p` support

0.19.7 / 2011-11-30 
==================

  * Fixed `or` binop regression. Closes #475

0.19.6 / 2011-11-30 
==================

  * Fixed current-property with commas. Closes #472

0.19.5 / 2011-11-28 
==================

  * revert noop visitor methods, this breaks extensions

0.19.4 / 2011-11-28 
==================

  * Fixed css-style __@page__ support
  * Fixed __@page__ block evaluation
  * Fixed __@font-face__ block evaluation [Suor]

0.19.3 / 2011-11-17 
==================

  * Added "include css" setting (need docs) to literally include imported css. Closes #448
  * Added EOL escape. Related to #195
  * Fixed tab support in lexical analysis (trailing colors etc). Closes #460

0.19.2 / 2011-11-09 
==================

  * Fixed "in" within selectors. Closes #458

0.19.1 / 2011-11-08 
==================

  * Added `spin()` BIF (same as `color + 50deg` etc)
  * Removed "sys" require()s for 0.6.x
  * Fixed sibling property lookup bug. Closes #452
  * Fixed: retain original quote for strings

0.19.0 / 2011-10-26 
==================

  * Added property lookup bubbling support. Closes #446

0.18.1 / 2011-10-26 
==================

  * Added "indent spaces" compiler setting. Closes #445
  * Allow node > 0.4.x < 0.7.0
  * Fixed: allow function execution within @imports

0.18.0 / 2011-10-21 
==================

  * Added #n support (#e -> #eeeeee). Closes #430
  * Added #nn support (#ef -> #efefef)
  * Added support for rgb percentages.
  * Fixed property rendering in blocks. Closes #440

0.17.0 / 2011-09-30 
==================

  * Added `@scope <selector>` feature to scope all subsequent selectors
  * Added list equality to the `!=` operator
  * Added list equality to the `==` operator
  * Added mkdir -p support to the middleware
  * Changed: `!` coerces expression not the first value
  * Fixed Ternary boolean coercion. Closes #420
  * Fixed __@font-face__ __@import__ regression. Closes #418

0.16.0 / 2011-09-26 
==================

  * Added `mkdir -p` support to the middleware
  * Added `@import url(string)` support. Closes #352
  * Added `fade-in()` and `fade-out()` BIFs
  * Adding prefixes for Opera and IE
  * Fixed comments trailing __@media__. Closes #415 [guillermo]
  * Fixed: Output from --help in stylus executable cut-off half way through
  * Changed: treat -/+ operations with percentages as lighten()/darken(). 
Closes #401

0.15.4 / 2011-09-14 
==================

  * Fixed `String#coerce()` for Expressions

0.15.3 / 2011-09-14 
==================

  * Added `-U, --inline` to stylus(1)
  * Added `rem` support. Closes #395
  * Fixed __@charset__ semi-colon. Closes #400
  * Fixed infinite loop in `Parser#function()`. Closes #393

0.15.2 / 2011-09-06 
==================

  * Added alias `:=` of `?=`. Closes #389
  * Removed auto-prefixing of pseudo element selectors. Closes #385
  * Changed: when left-hand operand has no unit assign the right
  * Fixed __@keyframes__ with __@import__ regression. Closes #372
  * Fixed css __@import__ within blocks regression. Closes #388
  * Fixed unwrapping of property args expression. Closes #379
  * Fixed __@prop__ access scope issue, use closet block, not current
  * Fixed __@font-face__. Closes #375

0.15.1 / 2011-08-18 
==================

  * Added pseudo-element vendor expansion support
  * Added `@keyframe` expansion support. Closes #293
  * Added support for arbitrary `@-VENDOR-keyframes` support
  * Added support for `@property` mixin property access Closes #363
  * Added `/*!` support to comments to disable suppression
  * Changed: allow uses to append `.styl` when importing. Closes #366
  * Fixed paren matching issue. Closes #368
  * Fixed windows absolute path checking Added `utils.absolute(path)`
  * Fixed `Ident#clone()` with `.property` flag
  * Fixed evaluation of expression when using @name. Closes #361
  * Fixed `path.join()` usage in `utils.lookup()`. Closes #356
  * Fixed space after comment regression. Closes #360

0.15.0 / 2011-08-15 
==================

  * Adding `Renderer#get(option)`
  * Added the ability to reference property values with `@<name>`. Closes #344
  * Changed comment output. css-style multi-line comments are preserved
  * Fixed issue with bools in selectors. Closes #280

0.14.0 / 2011-08-10 
==================

  * Added firebug original file / line number mapping [parallel]
  * Added support for `#rgba` and `#rrggbbaa` color formats
  * Changed: fix alpha to a scale of 2
  * Fixing function param check to allow for empty function arguments

0.13.9 / 2011-08-04 
==================

  * Fixed `lighten()` BIF 'lighten by %' function push color closer to white [cwolves]
  * Fixed cli plugin usage absolute paths, don't prepend the CWD [cpojer]
  * Renaming 'import' to '_import' because import is a reserved word in node v0.5

0.13.8 / 2011-08-01 
==================

  * Added `PI` and `-math-prop(name)`
  * Added `cos()` and `sin()`
  * Added support for __SVG__ data URIs [mhemesath]
  * Rename variable "import" to "imported" [eegg]

0.13.7 / 2011-07-15 
==================

  * Added `js(str)` BIF
  * Fixed reserved keyword `import` with `imported`

0.13.6 / 2011-07-12 
==================

  * Added `@-webkit-keyframes` support. Closes #307
  * Added gedit language-spec
  * Changed: optional `growl` dep for stylus(1)
  * Changed: `require("stylus")` instead of `../` for the mac app integration

0.13.5 / 2011-06-27 
==================

  * Fixed middleware handling of new and removed `@import` s [brandonbloom]

0.13.4 / 2011-06-22 
==================

  * Added __Compile and Display CSS__ TextMate command (⌘B) [Daniel Gasienica]
  * Fixed caching behavior for recompilation of files with changed imports [Brandon Bloom]

0.13.3 / 2011-06-01 
==================

  * Added padding for error linenos so they line up
  * Improved unary op error messages
  * Improved invalid `@keyframes` ident error msg
  * Fixed HSLA regression for operations resulting in a bool. Closes #274
  * Fixed `arguments` issue with excluding defaults. Closes #272

0.13.2 / 2011-05-31 
==================

  * Fixed colors after `url()` call regression. Closes #270

0.13.1 / 2011-05-30 
==================

  * Fixed colors in `url()`. Closes #267
  * Fixed selector without trailing comma containing selector token. Closes #260

0.13.0 / 2011-05-17 
==================

  * Added `-u, --use PATH` flag for utilizing plugins
  * Fixed `hsla.clampDegrees()` with negative values [Bruno Héridet]

0.12.4 / 2011-05-12 
==================

  * Added support for underscore in identifiers. Closes #247
  * Fixed `@keyframe` block evaluation. Closes #252

0.12.3 / 2011-05-08 
==================

  * Fixed `0%` in `@keyframes` from becoming `0` when compressed. Closes #248

0.12.2 / 2011-05-03 
==================

  * Fixed issue with `^=` attr selector causing infinite loop. Closes #244
  * Fixed multiple occurrences of `&` in selectors. Closes #243

0.12.1 / 2011-04-29 
==================

  * Fixed spaces around line-height shorthand. Closes #228
  * Fixed `-{foo}` interpolation support. Closes #235

0.12.0 / 2011-04-29 
==================

  * Added `*prop: val` hack support (blueprint / html boilerplate etc parse fine now)
  * Added selector interpolation support
  * Fixed "-" within interpolation. Closes #220

0.11.12 / 2011-04-27 
==================

  * Added `SyntaxError` and `ParseError`
  * Removed `stylus.parse()`
  * Fixed error reporting. Closes #44

0.11.11 / 2011-04-24 
==================

  * Fixed mutation of units when using unary ops. Closes #233

0.11.10 / 2011-04-17 
==================

  * Fixed regression. Closes #229

0.11.9 / 2011-04-15 
==================

  * Fixed issue with large selectors spanning several lines

0.11.8 / 2011-04-15 
==================

  * Added support for `Renderer#define(name, node)` to define a global

0.11.7 / 2011-04-12 
==================

  * Added `Renderer#use(fn)`. Closes #224
  * Improved `utils.assertType()` error message; include param name

0.11.6 / 2011-04-12 
==================

  * Fixed: node.source and node.filename are writable

0.11.5 / 2011-04-12 
==================

  * Added / employed `Null#isNull`
  * Added / employed `Boolean#is{True,False}`
  * Removed all uses of `instanceof`
  * Removed all equality checks between singleton nodes

0.11.4 / 2011-04-10 
==================

  * Added `Arguments#clone()`
  * Added `push()` / `append()`
  * Added `unshift()` / `prepend()` BIFs

0.11.3 / 2011-04-08 
==================

  * Fixed: keyword args previously not evaluated
  * Fixed: subpixel support
  * Fixed bug preventing combinators (and other ops) in `@media` blocks. Closes #216 [reported by jsteenkamp]

0.11.2 / 2011-04-06 
==================

  * Added `Renderer#include(path)`. Closes #214
  * Fixed `@import` path resolution bug. Closes #215
  * Fixed optional keyword arg bug. Closes #212

0.11.1 / 2011-04-01 
==================

  * Fixed regression preventing commas from outputting

0.11.0 / 2011-04-01 
==================

  * Added `HSLA#add(h,s,l,a)`
  * Added `HSLA#sub(h,s,l,a)`
  * Added `RGBA#add(r,g,b,a)`
  * Added `RGBA#sub(r,g,b,a)`
  * Added `RGBA#multiply(n)`
  * Added `RGBA#divide(n)`
  * Added `HSLA#adjustHue(deg)`
  * Added `HSLA#adjustLightness(percent)`
  * Added `HSLA#adjustSaturation(percent)`
  * Added `linear-gradient()` example
  * Added `s(fmt, ...)` built-in; sprintf-like
  * Added `%` sprintf-like string operator, ex: `'%s %s' % (1 2)`
  * Added `current-property` local variable
  * Added `add-property(name, val)` 
  * Added the ability for functions to duplicate the property they are invoked within
  * Added `[]=` operator support. Ex: `fonts[1] = arial`, `nums[1..3] = 2`
  * Added `-I, --include <path>` to stylus(1). Closes #206
  * Added support for `50 + 25% == 75`
  * Added support for `rgba + 25%` to lighten
  * Added support for `rgba - 25%` to darken
  * Added support for `rgba - 25` to adjust rgb values
  * Changed: null now outputs "null" instead of "[Null]"
  * Fixed hsl operation support, all operations are equivalent on rgba/hsla nodes
  * Fixed degree rotation

0.10.0 / 2011-03-29 
==================

  * Added keyword argument support
  * Added `Arguments` node, acts like `Expression`
  * Added `utils.params()`
  * Added `debug` option to stylus middleware
  * Added support for `hsl + 15deg` etc to adjust hue
  * Added special-case for percentage based `RGBA` operations (`#eee - 20%`)
  * Changed: right-hand colors in operations are not clamped (`#eee * 0.2`)
  * Added support for `unit * color` (swaps operands)
  * Fixed color component requests on the opposite node type (ex red on hsla node)
  * Fixed `Expression#clone()` to support `Arguments`
  * Fixed issue with middleware where imports are improperly mapped
  * Fixed mutation of color when adjusting values
  * Fixed: coerce string to literal
  * Removed {`darken`,`lighten`}`-by()` BIFs

0.9.2 / 2011-03-21 
==================

  * Removed a `console.log()` call

0.9.1 / 2011-03-18 
==================

  * Fixed connect middleware `@import` support. Closes #168
    The middleware is now smart enough to know when imports
    change, and will re-compile the target file.

  * Changed middleware `compile` function to return the `Renderer` (API change)

0.9.0 / 2011-03-18 
==================

  * Added `-i, --interactive` for the Stylus REPL (eval stylus expressions, tab-completion etc)
  * Added link to vim syntax
  * Changed `p()` built-in to display parens
  * Changed `--compress -C` to `-c`, and `-css -c` is now `-C`
  * Fixed: preserve rest-arg expressions. Closes #194
  * Fixed `*=` in selector, ex `[class*="foo"]`
  * Fixed `--watch` issue with growl, updated to 1.1.0. Closes #188
  * Fixed negative floats when compressed. Closes #193 [reported by ludicco]

0.8.0 / 2011-03-14 
==================

  * Added postfix `for`-loop support.
    Ex: `return n if n % 2 == 0 for n in nums` 
  * Added support for several postfix operators
    Ex: `border-radius: 5px if true unless false;`
  * Added `last(expr)` built-in function
  * Added `sum(nums)` built-in function
  * Added `avg(nums)` built-in function
  * Added `join(delim, vals)` built-in function
  * Added `Evaluator#{currentScope,currentBlock}`
  * Added multi-line function parameter definition support
  * Changed: `0` is falsey, `0%`, `0em`, `0px` etc truthy. Closes #160
  * Fixed `for` implicit __return__ value
  * Fixed `for` explicit __return__ value
  * Fixed mixin property ordering

0.7.4 / 2011-03-10 
==================

  * Added `RGBA` node
  * Added `is a "color"` special-case, true for `HSLA` and `RGBA` nodes.
Closes #180
  * Performance; 2.5× faster compiles due to removing use of getters in `Parser` and `Lexer` (yes, they are really slow).
  * Removed `Color` node
  * Fixed stylus(1) `--watch` support due to dynamic `@import` support. Closes #176

0.7.3 / 2011-03-09 
==================

  * Fixed: allow semi-colons for non-css syntax for one-liners

0.7.2 / 2011-03-08 
==================

  * Added `isnt` operator (same as `is not` and `!=`)
  * Added support for dynamic `@import` expressions
  * Added `@import` index resolution support
  * Added `light()` / `dark()` BIFs
  * Added `compress` option for Connect middleware [disfated]
  * Changed: most built-in functions defined in stylus (`./lib/functions/index.styl`)
  * Fixed dynamic expressions in `url()`. Closes #105

0.7.1 / 2011-03-07 
==================

  * Fixed connect middleware for 0.4.x

0.7.0 / 2011-03-02 
==================

  * Added `is` and `is not` aliases for `==` and `!=`
  * Added `@keyframes` dynamic name support
  * Fixed units in interpolation
  * Fixed clamping of HSLA degrees / percentages

0.6.7 / 2011-03-01 
==================

  * Fixed __RGBA__ -> __HSLA__ conversion due to typo

0.6.6 / 2011-03-01 
==================

  * Added string -> unit type coercion support aka `5px + "10"` will give `15px`
  * Added `warn` option Closes #152
    Currently this only reports on re-definition of functions
  * Added `$` as a valid identifier character
  * Added `mixin` local variable for function introspection capabilities. Closes #162
  * Fixed typo: `Unit#toBoolean()` is now correct
  * Fixed interpolation function calls. Closes #156
  * Fixed mixins within Media node. Closes #153
  * Fixed function call in ret val. Closes #154

0.6.5 / 2011-02-24 
==================

  * Fixed parent ref `&` mid-selector bug. Closes #148 [reported by visnu]

0.6.4 / 2011-02-24 
==================

  * Fixed `for` within brackets. Closes #146

0.6.3 / 2011-02-22 
==================

  * Fixed single-ident selectors. Closes #142
  * Fixed cyclic `@import` with file of the same name. Closes #143

0.6.2 / 2011-02-21 
==================

  * Added stylus(1) growl support when using `--watch`
  * Added `@import` watching support to stylus(1). Closes #134
  * Changed: stylus(1) only throws when `--watch` is not used
  * Fixed `darken-by()` BIF
  * Fixed `@import` literal semi-colon. Closes #140

0.6.1 / 2011-02-18 
==================

  * Fixed evaluation of nodes after a return. Closes #139

0.6.0 / 2011-02-18 
==================

  * Added `stylus(1)` direct css to stylus file conversion [Mario]
    For example instead of `$ stylus --css < foo.css > foo.styl`
    you may now either `$ stylus --css foo.css` or provide
    a destination path `$ stylus --css foo.css /tmp/out.styl`.

  * Added postfix conditionals. Closes #74
    Expressive ruby-ish syntax, ex: `padding 5px if allow-padding`.

0.5.3 / 2011-02-17 
==================

  * Added `in` operator. `3 in nums`, `padding in props` etc
  * Added `Expression#hash`, hashing all of the nodes in order
  * Added tests for conditionals with braces. Closes #136
  * Fixed ids that are also valid colors. Closes #137

0.5.2 / 2011-02-15 
==================

  * Fixed spaces after `}` with css-style. Closes #131
  * Fixed single-line css-style support. Closes #130

0.5.1 / 2011-02-11 
==================

  * Fixed mixin property ordering. Closes #125

0.5.0 / 2011-02-09 
==================

  * Added `lighten-by()` BIF
  * Added `darken-by()` BIF

0.4.1 / 2011-02-09 
==================

  * Added support for function definition braces
  * Fixed issue with invalid color output. Closes #127

0.4.0 / 2011-02-07 
==================

  * Added css-style syntax support
  * Fixed support for `*` selector within `@media` blocks

0.3.1 / 2011-02-04 
==================

  * Fixed property disambiguation logic. Closes #117
    You no longer need to add a trailing comma when
    chaining selectors such as `td:nth-child(2)\ntd:nth-child(3)`

0.3.0 / 2011-02-04 
==================

  * Added more assignment operators. Closes #77
    `+=`, `-=`, `*=`, `/=`, and `%=`

0.2.1 / 2011-02-02 
==================

  * Fixed `--compress` when passing files for stylus(1). Closes #115
  * Fixed bug preventing absolute paths from being passed to `@import`
  * Fixed `opposite-position()` with nested expressions, unwrapping
  * Fixed a couple global var leaks [aheckmann]

0.2.0 / 2011-02-01 
==================

  * Added: `url()` utilizing general lookup paths.
    This means that `{ paths: [] }` is optional now, as lookups
    will be relative to the file being rendered by default.

  * Added `-w, --watch` support to stylus(1). Closes #113

0.1.0 / 2011-02-01 
==================

  * Added `opposite-position(positions)` built-in function
  * Added `image-lookup(path)` built-in function
  * Added `-o, --out <dir>` support to stylus(1)
  * Added `stylus [file|dir ...]` support
  * Added: defaulting paths to `[CWD]` for stylus(1)
  * Changed: `unquote()` using `Literal` node
  * Changed: utilizing `Literal` in place of some `Ident`s

0.0.2 / 2011-01-31 
==================

  * Added optional property colon support. Closes #110
  * Added `--version` to stylus(1) 

0.0.1 / 2011-01-31 
==================

  * Initial release
