Commit Graph

330 Commits

Author SHA1 Message Date
Natalie Weizenbaum
a6a32a0827
Merge pull request #223 from sass/node-functions
Add support for the Node Sass custom function API
2018-02-02 14:21:57 -08:00
Natalie Weizenbaum
5a1bfaebbf Add support for the Node Sass custom function API
Closes #10
Closes #12
2018-01-30 11:14:42 -08:00
Natalie Weizenbaum
2f5069e6a8 Add a changelog entry 2018-01-29 14:30:34 -08:00
Natalie Weizenbaum
9240f372aa Fix a unit division bug 2018-01-23 12:51:33 -08:00
Natalie Weizenbaum
921e1fa204 Fix a unit optimization bug 2018-01-23 12:45:25 -08:00
Natalie Weizenbaum
ac0ab00120 Emit compressed output 2018-01-21 13:15:55 -08:00
Natalie Weizenbaum
e5af175b55 Fix a couple number hashing bugs 2018-01-13 00:34:54 -08:00
Natalie Weizenbaum
b5a838c9c5 Improve callable and value documentation
This documentation now targets external users, since these are part of
the public API.
2018-01-13 00:34:54 -08:00
Natalie Weizenbaum
aa3c765b10
Allow var() in place of multiple arguments to color functions (#208)
See sass/sass#2440
2018-01-12 11:43:36 -08:00
Natalie Weizenbaum
75776ca062
Emit a warning for && (#207)
See sass/sass#2429
2018-01-03 19:12:53 -08:00
Natalie Weizenbaum
c49e037e34
Fix round() for negative numbers (#205)
See sass/sass#2409
2017-12-15 15:11:32 -08:00
Natalie Weizenbaum
fa29248955 Support unquoted imports in the indented syntax
Closes #202
2017-12-08 15:38:08 -08:00
Natalie Weizenbaum
9c241eafb9 Add a changelog entry for asynchronous importers 2017-12-01 14:30:31 -08:00
Natalie Weizenbaum
74400dc4a4 Add asynchronous versions of several evaluation-related libraries
This allows us to support asynchronous importers and, eventually,
functions without breaking synchronous support. The copies were made
manually, but the eventual plan is to auto-generate the synchronous
versions by stripping all asynchrony from the async versions.

See #9
2017-12-01 14:29:11 -08:00
Natalie Weizenbaum
2cb325a3df
Fix a crash when extending :not(...) into :not(:not(...)) (#192)
Closes #191
2017-11-16 16:25:19 -08:00
Natalie Weizenbaum
cede973af2 Add a CHANGELOG entry for Node Sass importers 2017-11-03 14:55:30 -07:00
Natalie Weizenbaum
a003e5c31f Expose a Dart API for importers
Closes #172
2017-10-12 21:54:58 -07:00
Natalie Weizenbaum
35f879abde Don't crash on a fully-interpolated CSS variable name (#177)
Closes #176
2017-10-04 15:20:15 -07:00
Natalie Weizenbaum
dbeefd939f Properly parse numbers with exponents (#173) 2017-09-29 15:31:21 -07:00
Natalie Weizenbaum
9f85a4dc34 Default --color to true when using a terminal 2017-07-13 16:11:24 -07:00
Natalie Weizenbaum
a1c0f41180 Add changelog entries. 2017-07-09 18:31:05 -07:00
Natalie Weizenbaum
74cb974455 Support includePaths in the JS API (#162)
Closes #7
2017-07-07 14:50:12 -07:00
Natalie Weizenbaum
8f836df66c Add support for the data option to the JS API (#159)
Also add renderString to the Dart API.

Partially addresses #7
2017-07-07 00:57:10 -07:00
Natalie Weizenbaum
b5157905f4 Emit transparent colors in rgba format (#157)
Closes #1782
2017-07-06 17:49:03 -07:00
Natalie Weizenbaum
5d574f9923 Add support for ::slotted() (#156)
See sass/sass#2266
2017-07-05 16:00:20 -07:00
Sam Rawlins
7d92f2c1ad Support lineFeed in the Node API (#153) 2017-06-15 15:19:26 -07:00
Natalie Weizenbaum
bd912aee4f Release 1.0.0-beta.1. 2017-06-05 12:50:47 -07:00
Natalie Weizenbaum
e032de83fb Allow \ before a selector in the indented syntax. (#152)
See sass/sass-spec#1136
2017-06-02 18:04:21 -07:00
Natalie Weizenbaum
59e782e4dc Fix rounding behavior. (#147) 2017-05-29 17:07:21 -07:00
Natalie Weizenbaum
0ae7372d75 Allow compound extendees in selector functions. 2017-05-28 16:00:37 -07:00
Natalie Weizenbaum
b4d1d95889 Don't use partially-extended selectors as parents. 2017-05-28 15:54:18 -07:00
Natalie Weizenbaum
c63e62abe9 Add changelog entries. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
61da3ec6b7 Disallow all top-level declarations and extend. (#141)
We were previously allowing declarations and extend in control
directives at the top level of documents, as long as those documents
were only ever imported in a nested context.
2017-05-25 12:18:57 -07:00
Natalie Weizenbaum
b3a00edec1 Properly parse unary operators after commas.
Closes #138
2017-05-18 18:13:33 -07:00
Natalie Weizenbaum
a4a2a26464 Allow /***/ in selectors.
Closes #135
2017-05-18 17:56:20 -07:00
Natalie Weizenbaum
372ef02aa6 Fix a string inspection crash.
This was being triggered for parse errors, because we inspect the
selector expression when we generate the error.

Closes #134
2017-05-18 17:39:47 -07:00
Natalie Weizenbaum
e840bd0927 Support "url" as an identifier name.
Closes #132
2017-05-18 17:38:54 -07:00
Natalie Weizenbaum
0556665f64 Fix @supports (not ...). (#125) 2017-05-18 17:05:58 -07:00
Natalie Weizenbaum
7182ea2fad Merge branch 'master' into fixes 2017-02-22 20:50:16 -08:00
Natalie Weizenbaum
716157f4bc Drop support for the reference combinator. (#123) 2017-02-22 20:48:56 -08:00
Natalie Weizenbaum
2f53f85053 Fix another extend edge-case. 2017-02-16 18:41:11 -08:00
Natalie Weizenbaum
7fe9dd8735 Fix hacky combinator unification. 2017-02-16 18:31:06 -08:00
Natalie Weizenbaum
4bc2770333 Compile JS with --minify. 2017-02-16 17:37:31 -08:00
Natalie Weizenbaum
f00c6c8c5d Compile JS with --trust-type-annotations. 2017-02-16 17:05:01 -08:00
Natalie Weizenbaum
18f4c1b801 Merge pull request #117 from sass/fixes
Fix more bugs.
2017-02-08 14:25:24 -08:00
Natalie Weizenbaum
89a7888a0e Properly isolate callable environments. 2017-02-04 14:16:29 -08:00
Natalie Weizenbaum
5e4d260c2a Fix a @content bug. 2017-02-04 12:39:23 -08:00
Natalie Weizenbaum
231a85be38 Improve Node file load speed. (#110) 2017-02-04 12:20:34 -08:00
Natalie Weizenbaum
79261fee8e Add boolean short-circuiting. 2017-02-03 17:37:54 -08:00
Natalie Weizenbaum
b32e5f96ce Fix a multi-combinator extend edge case. 2017-02-03 16:49:55 -08:00
Natalie Weizenbaum
73be343be5 Fix a selector pseudo superselector edge case. 2017-02-03 16:15:15 -08:00
Natalie Weizenbaum
d9ef7d00c4 Move a changelog entry into 1.0.0-alpha.9. 2017-02-03 14:23:29 -08:00
Natalie Weizenbaum
e1c0c95f3a Merge remote-tracking branch 'origin/master' into fixes 2017-02-02 14:48:15 -08:00
Natalie Weizenbaum
35d1af51d1 Update namespace extend per sass/sass#2229. (#106) 2017-01-26 20:12:22 -08:00
Natalie Weizenbaum
c26615386b Reject unknown named parameters. 2017-01-26 20:09:45 -08:00
Natalie Weizenbaum
45cfed063f Support slash-separated plain CSS arguments. 2017-01-26 20:09:06 -08:00
Natalie Weizenbaum
4b614166ca Fix numbers divided by colors. 2017-01-26 20:08:49 -08:00
Natalie Weizenbaum
56e41b3ad0 Fix some slash division edge cases. 2017-01-15 16:09:27 -08:00
Natalie Weizenbaum
ad622039bd Support backslash CRLF in quoted strings. 2017-01-15 15:53:19 -08:00
Natalie Weizenbaum
31cc3fc521 Add a span to call()'s rest arguments. 2017-01-15 15:24:35 -08:00
Natalie Weizenbaum
0000c4a7e9 Detect import loops. 2017-01-15 15:15:46 -08:00
Natalie Weizenbaum
6a4eafe915 Fix attribute selectors with single-char values. 2017-01-15 14:45:05 -08:00
Natalie Weizenbaum
84d6c07707 Fix not(). 2017-01-15 14:00:25 -08:00
Natalie Weizenbaum
6192dfd1b0 Fix division in @each. 2017-01-15 14:00:25 -08:00
Natalie Weizenbaum
9f25689654 Don't emit loud comments in functions. 2017-01-15 14:00:25 -08:00
Natalie Weizenbaum
04570bf828 Warn about named colors in interpolation. 2017-01-15 12:30:50 -08:00
Natalie Weizenbaum
4c95be3e5b Allow whitespace in indented mixin declarations. 2017-01-14 23:01:29 -08:00
Natalie Weizenbaum
2d28194e4c Fix %. 2017-01-14 22:54:13 -08:00
Natalie Weizenbaum
ca4d411362 Fix str-slice() again. 2017-01-14 22:39:28 -08:00
Natalie Weizenbaum
566c06df0e Fix unitless-to-unit number equality. 2017-01-14 22:17:57 -08:00
Natalie Weizenbaum
37f43417bc Handle a placeholder in a compound selector. 2017-01-14 21:40:56 -08:00
Natalie Weizenbaum
c50563e0b4 Handle placeholders in selector pseudos. 2017-01-14 21:30:37 -08:00
Natalie Weizenbaum
146d24e28e Fix split media queries. 2017-01-14 20:09:34 -08:00
Natalie Weizenbaum
015bb0d79f Support &1. 2017-01-14 18:27:50 -08:00
Natalie Weizenbaum
247ab93eec Fix plain import parsing. 2017-01-14 17:53:39 -08:00
Natalie Weizenbaum
6b2d9e519c Support --$variable. 2017-01-14 17:38:57 -08:00
Natalie Weizenbaum
6bc4fb1c34 Test a unit-parsing edge case on Dart Sass. 2017-01-14 17:06:05 -08:00
Natalie Weizenbaum
c415dd068d Fix the $weight parameter for invert(). 2017-01-14 16:54:19 -08:00
Natalie Weizenbaum
d491ab5916 Fix selector error handling. 2017-01-14 15:30:44 -08:00
Natalie Weizenbaum
28efbe1df3 Fix type-of() with a function. 2017-01-14 15:14:57 -08:00
Natalie Weizenbaum
05acf01e58 Forbid more illegal function names. 2017-01-14 15:08:55 -08:00
Natalie Weizenbaum
eab36eafe5 Fix @import with supports(). 2017-01-14 14:56:33 -08:00
Natalie Weizenbaum
9031a7f554 Fix variable scoping in @at-root. 2017-01-14 14:20:44 -08:00
Natalie Weizenbaum
989ffcb53c Forbid & after compound. 2017-01-14 13:43:40 -08:00
Natalie Weizenbaum
dbdd4d72d5 Support & in @at-root. 2017-01-14 13:39:00 -08:00
Natalie Weizenbaum
016fe59d1f Forbid extending across media queries. 2017-01-13 01:53:04 -08:00
Natalie Weizenbaum
c507afe46e Fix whitespace after "...". 2017-01-08 23:29:07 -08:00
Natalie Weizenbaum
d8a299845d Support nested ; and ! in custom property values. 2017-01-08 22:59:58 -08:00
Natalie Weizenbaum
3c7daa3499 Support interpolation in loud comments. 2017-01-08 22:47:05 -08:00
Natalie Weizenbaum
7136b98b09 Support content-exists(). 2017-01-08 22:05:23 -08:00
Natalie Weizenbaum
bf771689f3 Fix SassMap.asList's return type. 2017-01-08 21:39:30 -08:00
Natalie Weizenbaum
de69e7ae1b Parse terse indented mixin syntax. 2017-01-08 17:13:08 -08:00
Natalie Weizenbaum
40be168635 Properly handle "..." after a digit. 2017-01-08 17:12:27 -08:00
Natalie Weizenbaum
8d7a8c7e12 Disallow invalid function names. 2017-01-08 17:12:11 -08:00
Natalie Weizenbaum
06609e4551 Support @-moz-document. 2017-01-08 17:11:52 -08:00
Natalie Weizenbaum
330326c7f7 Fix @at-root query parsing. 2017-01-08 17:11:31 -08:00
Natalie Weizenbaum
51eb75567a Report stack traces along with import errors. 2017-01-06 21:38:48 -08:00
Natalie Weizenbaum
d7caf7fbc1 Gracefully handle invalid UTF-8.
This will be even more graceful when dart-lang/sdk#28293 is fixed.
2017-01-06 21:31:29 -08:00
Natalie Weizenbaum
8c4f0bdf81 Fix superselector computation for :not(). 2017-01-06 21:31:09 -08:00
Natalie Weizenbaum
ce36eb5b10 Forbid functions and mixins in control directives. 2017-01-06 17:46:38 -08:00
Natalie Weizenbaum
7ccccbc2ba Fix unit coercion in @for. 2017-01-06 17:46:12 -08:00
Natalie Weizenbaum
a7c6a1ad5b Fix String.asInterpolation().
We were checking if its contents was an Interpolation, when we should
have been checking for an Expression.
2017-01-06 17:45:34 -08:00
Natalie Weizenbaum
63b39479e1 Fix *-exists(). (#86)
These were always using the global scope rather than the lexical scope.
They've been moved into the perform visitor so that they have access to
the lexical environment instead.
2017-01-06 14:43:34 -08:00
Natalie Weizenbaum
bf464f0539 Fix str-insert() with negative indices. (#85) 2016-12-29 17:14:36 -08:00
Natalie Weizenbaum
a212999554 Properly parse URLs containing "//" and "/*". (#84) 2016-12-29 15:24:45 -08:00
Natalie Weizenbaum
17521b5a3b Update the pubspec and changelog. 2016-12-29 12:33:12 -08:00
Natalie Weizenbaum
d5a8a3f725 Fix a few extend issues. (#75) 2016-12-19 15:23:14 -08:00
Natalie Weizenbaum
e5fb64e89f Preserve escapes in non-script identifiers. (#74) 2016-12-18 22:42:11 -08:00
Natalie Weizenbaum
9fdc8194fd Fix newlines in interpolation. (#73) 2016-12-18 22:19:50 -08:00
Natalie Weizenbaum
b4730dd6a6 Don't crash in *-color(). (#72) 2016-12-18 18:54:48 -08:00
Natalie Weizenbaum
41772a1739 Fix str-slice(). (#70)
See sass/sass#2211
2016-12-18 17:54:35 -08:00
Natalie Weizenbaum
ade384b4f5 Add a CHANGELOG entry for dp* units.
See c91ace92ab.
2016-12-16 18:22:19 -08:00
Natalie Weizenbaum
9d678469d0 Support var() in plain CSS color functions. (#69)
See sass/sass-spec#1002
See sass/sass#2175
2016-12-16 18:20:03 -08:00
Natalie Weizenbaum
b730e3f85c Support CSS import reordering. (#64) 2016-12-10 15:04:09 -08:00
Natalie Weizenbaum
65acb8b184 Allow #{...}--1. (#62) 2016-12-09 17:22:53 -08:00
Natalie Weizenbaum
779edfad3b Set mixin/function arguments locally. (#63) 2016-12-09 17:08:11 -08:00
Natalie Weizenbaum
5d96a2af20 Allow saturate($number). (#61) 2016-12-09 16:41:47 -08:00
Natalie Weizenbaum
9ce2d30e2a Fix handling of **/. (#60)
We had been failing to close comments because we'd consume the second
asterisk and fail to register that it might be the one to end the
comment.

See sass/sass-spec#986
Closes #58
2016-12-09 14:02:26 -08:00
Natalie Weizenbaum
d1fa5341c9 Fix a bug with superselector calculations. 2016-11-15 00:02:31 -08:00
Natalie Weizenbaum
d71e530622 Fix bounds-checking for opacify() et al. 2016-11-14 22:46:58 -08:00
Natalie Weizenbaum
4a592e18eb Add missing changelog entries. 2016-11-14 11:17:03 -08:00
Natalie Weizenbaum
bcd66991f7 Fix parsing of :nth-*-child() selectors. 2016-11-14 11:12:34 -08:00
Natalie Weizenbaum
8df94cc4ca Add support for Unicode ranges. (#42)
See sass/sass-spec#971
2016-11-13 13:26:52 -08:00
Natalie Weizenbaum
5f78a8b40a Fix an expression-parsing bug. (#38)
A binary operator followed by a unary operator (for example, `1 + - 2`)
would crash the parser.
2016-11-11 17:47:00 -08:00
Natalie Weizenbaum
b41dcfb457 Tag 1.0.0-alpha.3. 2016-11-07 18:49:05 -08:00
Natalie Weizenbaum
5fb090ef7e Print colors by name if possible. 2016-11-02 17:37:10 -07:00
Natalie Weizenbaum
bab6ebb59a Track and use colors' original representations. 2016-11-02 17:37:10 -07:00
Natalie Weizenbaum
e0fd5ea65c Fix a bug where names were broken through imports.
Closes #20
Closes #8
2016-11-01 14:43:46 -07:00
Natalie Weizenbaum
64dc85c80c Tag 1.0.0-alpha.1. 2016-10-31 13:19:10 -07:00
Natalie Weizenbaum
cf28c7ed20 Template files. 2016-08-30 15:51:06 -07:00