sfcode
An Online Competing and Development Environment
0.54.5 / 2016-04-28
  • Fix: [CLI] Correct console output for Node 6.0

0.54.4 / 2016-04-27

  • Fix: Correct extname checks for Node 6.0

0.54.3 / 2016-04-26

  • Fix: Proper embedurl encoding for svg files with a hash.
  • Fix: Validate this.dest before using path.extname.
  • Fix: Update node-glob version.

0.54.2 / 2016-03-11

  • Fix: False-positive import loop with empty imported file.

0.54.0 / 2016-03-05

  • Feature: Added initial reference selector.
  • Feature: New embedurl() bif with optional utf8 uncoding support for SVG.
  • Feature: New index() bif.
  • Feature: New percentage() bif.
  • Feature: New slice() bif, #2115.
  • Feature: Support for UTF-8 encoding of urls, #2084.
  • Feature: Added global flag to define() function.
  • Feature: match() bif now returns the matched values instead of a boolean, #2109.
  • Feature: Added an optional flags argument to match() bif, #2109.
  • Docs: Added basic “getting started” to Readme, #2073.
  • Docs: Updated information about error reporting.
  • Fix: selectors() now returns proper subselectors.
  • Fix: No more unneeded spaces with partial reference selector using ranges.
  • Fix: Proper evaluating of the default arguments.
  • Fix: Evaluate variables in current-media function.
  • Fix: Validate regexp flags for match function.
  • Fix: Proper conditional assignment and "define" method.
  • Fix: Proper relative paths in sourcemaps if –out flag is set to a filename.
  • Fix: Proper errors with --include-css and --resolve-url used concurrently.
  • Fix: [Evaluator] Support for function as a default argument for functions.
  • Fix: [Lexer] Proper multiline comments inside multiline expressions.
  • Fix: [JS API] Proper variables from options object inside expressions.
  • Fix: [Renderer] No more caching of parsed AST for deps-resolver.

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 (+foo) with block interpolation (block), #1223.
  • Added selector() bif, #1249.
  • Added hash interpolation to blocks, #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