- 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
- Added firebug original file / line number mapping [parallel]
- Added support for
#rgbaand#rrggbbaacolor formats - Changed: fix alpha to a scale of 2
- Fixing function param check to allow for empty function arguments
- 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
- Added
PIand-math-prop(name) - Added
cos()andsin() - Added support for SVG data URIs [mhemesath]
- Rename variable "import" to "imported" [eegg]
- Added
js(str)BIF - Fixed reserved keyword
importwithimported
- Added
@-webkit-keyframessupport. Closes #307 - Added gedit language-spec
- Changed: optional
growldep for stylus(1) - Changed:
require("stylus")instead of../for the mac app integration
- Fixed middleware handling of new and removed
@imports [brandonbloom]
- Added Compile and Display CSS TextMate command (⌘B) [Daniel Gasienica]
- Fixed caching behavior for recompilation of files with changed imports [Brandon Bloom]
- Added padding for error linenos so they line up
- Improved unary op error messages
- Improved invalid
@keyframesident error msg - Fixed HSLA regression for operations resulting in a bool. Closes #274
- Fixed
argumentsissue with excluding defaults. Closes #272
- Fixed colors after
url()call regression. Closes #270
- Fixed colors in
url(). Closes #267 - Fixed selector without trailing comma containing selector token. Closes #260
- Added
-u, --use PATHflag for utilizing plugins - Fixed
hsla.clampDegrees()with negative values [Bruno Héridet]
- Added support for underscore in identifiers. Closes #247
- Fixed
@keyframeblock evaluation. Closes #252
- Fixed
0%in@keyframesfrom becoming0when compressed. Closes #248
- Fixed issue with
^=attr selector causing infinite loop. Closes #244 - Fixed multiple occurrences of
&in selectors. Closes #243
- Fixed spaces around line-height shorthand. Closes #228
- Fixed
-{foo}interpolation support. Closes #235
- Added
*prop: valhack support (blueprint / html boilerplate etc parse fine now) - Added selector interpolation support
- Fixed "-" within interpolation. Closes #220
- Added
SyntaxErrorandParseError - Removed
stylus.parse() - Fixed error reporting. Closes #44
- Fixed mutation of units when using unary ops. Closes #233
- Fixed regression. Closes #229
- Fixed issue with large selectors spanning several lines
- Added support for
Renderer#define(name, node)to define a global
- Added
Renderer#use(fn). Closes #224 - Improved
utils.assertType()error message; include param name
- Fixed: node.source and node.filename are writable
- Added / employed
Null#isNull - Added / employed
Boolean#is{True,False} - Removed all uses of
instanceof - Removed all equality checks between singleton nodes
- Added
Arguments#clone() - Added
push()/append() - Added
unshift()/prepend()BIFs
- Fixed: keyword args previously not evaluated
- Fixed: subpixel support
- Fixed bug preventing combinators (and other ops) in
@mediablocks. Closes #216 [reported by jsteenkamp]
- Added
Renderer#include(path). Closes #214 - Fixed
@importpath resolution bug. Closes #215 - Fixed optional keyword arg bug. Closes #212
- Fixed regression preventing commas from outputting
- 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-propertylocal 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 - 25to 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
- Added keyword argument support
- Added
Argumentsnode, acts likeExpression - Added
utils.params() - Added
debugoption to stylus middleware - Added support for
hsl + 15degetc to adjust hue - Added special-case for percentage based
RGBAoperations (#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 supportArguments - 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
- Removed a
console.log()call
-
Fixed connect middleware
@importsupport. Closes #168 The middleware is now smart enough to know when imports change, and will re-compile the target file. -
Changed middleware
compilefunction to return theRenderer(API change)
- Added
-i, --interactivefor the Stylus REPL (eval stylus expressions, tab-completion etc) - Added link to vim syntax
- Changed
p()built-in to display parens - Changed
--compress -Cto-c, and-css -cis now-C - Fixed: preserve rest-arg expressions. Closes #194
- Fixed
*=in selector, ex[class*="foo"] - Fixed
--watchissue with growl, updated to 1.1.0. Closes #188 - Fixed negative floats when compressed. Closes #193 [reported by ludicco]
- 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 paramter definition support
- Changed:
0is falsey,0%,0em,0pxetc truthy. Closes #160 - Fixed
forimplicit return value - Fixed
forexplicit return value - Fixed mixin property ordering
- Added
RGBAnode - Added
is a "color"special-case, true forHSLAandRGBAnodes. Closes #180 - Performance; 2.5× faster compiles due to removing use of getters in
ParserandLexer(yes, they are really slow). - Removed
Colornode - Fixed stylus(1)
--watchsupport due to dynamic@importsupport. Closes #176
- Fixed: allow semi-colons for non-css syntax for one-liners
- Added
isntoperator (same asis notand!=) - Added support for dynamic
@importexpressions - Added
@importindex resolution support - Added
light()/dark()BIFs - Added
compressoption for Connect middleware [disfated] - Changed: most built-in functions defined in stylus (
./lib/functions/index.styl) - Fixed dynamic expressions in
url(). Closes #105
- Fixed connect middleware for 0.4.x
- Added
isandis notaliases for==and!= - Added
@keyframesdynamic name support - Fixed units in interpolation
- Fixed clamping of HSLA degrees / percentages
- Fixed RGBA -> HSLA conversion due to typo
- Added string -> unit type coercion support aka
5px + "10"will give15px - Added
warnoption Closes #152 Currently this only reports on re-definition of functions - Added
$as a valid identifier character - Added
mixinlocal 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
- Fixed parent ref
&mid-selector bug. Closes #148 [reported by visnu]
- Fixed
forwithin brackets. Closes #146
- Fixed single-ident selectors. Closes #142
- Fixed cyclic
@importwith file of the same name. Closes #143
- Added stylus(1) growl support when using
--watch - Added
@importwatching support to stylus(1). Closes #134 - Changed: stylus(1) only throws when
--watchis not used - Fixed
darken-by()BIF - Fixed
@importliteral semi-colon. Closes #140
- Fixed evaluation of nodes after a return. Closes #139
-
Added
stylus(1)direct css to stylus file conversion [Mario] For example instead of$ stylus --css < foo.css > foo.stylyou may now either$ stylus --css foo.cssor 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.
- Added
inoperator.3 in nums,padding in propsetc - 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
- Fixed spaces after
}with css-style. Closes #131 - Fixed single-line css-style support. Closes #130
- Fixed mixin property ordering. Closes #125
- Added
lighten-by()BIF - Added
darken-by()BIF
- Added support for function definition braces
- Fixed issue with invalid color output. Closes #127
- Added css-style syntax support
- Fixed support for
*selector within@mediablocks
- 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)
- Added more assignment operators. Closes #77
+=,-=,*=,/=, and%=
- Fixed
--compresswhen 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]
-
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, --watchsupport to stylus(1). Closes #113
- 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()usingLiteralnode - Changed: utilizing
Literalin place of someIdents
- Added optional property colon support. Closes #110
- Added
--versionto stylus(1)
- Initial release