Connor Skees
fccf93cd96
originals uses pointer equality check, rather than true equality
2021-07-24 14:42:21 -04:00
Connor Skees
b44f81bd60
newlines inside @supports
are the same as outside
2021-07-24 01:18:36 -04:00
Connor Skees
36411e36d3
space between styles inside @supports
2021-07-24 00:58:12 -04:00
Connor Skees
6febd161af
refactor how newlines are emitted between unrelated style rules
...
this makes our output of bootstrap correct, byte-for-byte
2021-07-23 22:35:08 -04:00
Connor Skees
548a5921e6
encountering placeholder selector resets has_written
2021-07-23 03:28:41 -04:00
Connor Skees
ec4fe9164d
do not emit newline between media query and ruleset
2021-07-23 03:08:23 -04:00
Connor Skees
5c4f11e63d
do not emit newline between media queries when they follow ruleset
2021-07-23 02:22:47 -04:00
Connor Skees
6b109a5c3d
improve handling of newlines around comments
2021-07-23 01:50:26 -04:00
Connor Skees
0edb60e2b3
support three level extend loop
...
the last feature stopping us from semantic parity with `dart-sass` when
compiling bootstrap.
this was a difficult bug -- it essentially boiled down to the fact that
we weren't applying extensions to _super_ selectors.
i suspect that this has somehow broken another feature of `@extend`, but
all of our unit tests, the sass spec, and bootstrap seem to be correct,
so i am considering this implemented.
2021-07-22 21:23:09 -04:00
Connor Skees
fba42df43b
test for hue when largest channel is blue
2021-07-21 22:07:03 -04:00
Connor Skees
d360af2cd6
improve code coverage
2021-07-21 09:17:37 -04:00
Connor Skees
26ec16a802
more robustly parse @else if
2021-07-20 23:55:18 -04:00
Connor Skees
7979158465
simplify parsing of @function
and throw error on invalid @charset
2021-07-20 20:41:21 -04:00
Connor Skees
2ec365ddfc
simplify lookahead in variable flag parsing
2021-07-20 11:15:19 -04:00
Connor Skees
2969f08e43
simplify lookahead for @for
2021-07-20 11:04:14 -04:00
Connor Skees
a34aa32128
simplify lookahead for @use
and @media
2021-07-19 20:50:12 -04:00
Connor Skees
c2e84e3854
update changelog
2021-07-19 19:52:09 -04:00
Connor Skees
839f101829
emit comments inside @if
rule
2021-07-14 21:19:38 -04:00
Connor Skees
1a660c7aa8
more correctly emit newlines around
2021-07-14 21:09:30 -04:00
Connor Skees
be9eb8e0b0
improve code coverage
...
also identified dead code and a bug in saturation and hue fns
2021-07-14 01:40:11 -04:00
Connor Skees
03f48cfd22
more robustly parse comments inside min and max
2021-07-12 02:22:13 -04:00
Connor Skees
8e08a5de4f
support special fns inside min and max
2021-07-12 01:59:30 -04:00
Connor Skees
7ad2da040f
support min and max as arguments to min and max
2021-07-11 02:13:05 -04:00
Connor Skees
bc49c2b8ee
add tests for compressed output
2021-07-10 12:52:41 -04:00
Connor Skees
142bc9da10
support builtin map.set
2021-07-04 18:59:35 -04:00
Connor Skees
81d5dbbb7e
implement math.div
2021-07-04 16:19:38 -04:00
Connor Skees
5d268be2ed
support hwb color space
2021-07-04 15:53:27 -04:00
Connor Skees
5c61f8ccaa
:is is alias for :matches
2021-07-04 11:48:13 -04:00
Connor Skees
2b72a1fc0d
avoid deep recursion in extend
2021-07-04 11:32:19 -04:00
Connor Skees
a555352713
better support negative modulo
2021-07-04 00:37:04 -04:00
Connor Skees
2ff3524ac2
support arg to map-merge
2021-07-03 23:17:31 -04:00
Connor Skees
e5d73ac265
don't read multiple stars in comment eagerly
2021-07-03 18:42:39 -04:00
Connor Skees
884b92f476
remove test macro shorthand for unchanged output
2020-11-20 04:34:36 -05:00
Connor Skees
27eeaeef08
plain-css invert accepts numbers of any unit
2020-11-16 03:09:40 -05:00
Connor Skees
f92a071434
move plain css imports to the top of the file
...
this is a bit of a hack as it does not currently account for multiline
comments (/**/) that precede these imports, but this should largely be a
cosmetic bug as opposed to one that can break programs.
2020-11-16 02:35:52 -05:00
Midas Lambrichts
7539762a0c
Resolve NaN todo!()
s for addition and subtraction with other numbers ( #40 )
...
* Replace todo's for propagating NaN
* Propagate NaN for remainder as well
2020-09-13 18:08:41 -04:00
Midas Lambrichts
8e060950d5
Fix panic when progid is the last token by removing unwrap ( #39 )
...
* Fix panic when progid by removing unwrap
* Incorporate PR feedback
2020-08-24 19:35:55 -04:00
Connor Skees
605f4f3d6b
allow = and == in media queries
2020-08-22 19:18:28 -04:00
Connor Skees
b03561bc37
add test for multiline comments between function name and args
2020-08-21 19:38:43 -04:00
Connor Skees
c44f20d377
allow whitespace between mixin name and args
2020-08-21 19:36:11 -04:00
Connor Skees
feb75800c8
allow whitespace between @content
and its args
2020-08-21 19:27:44 -04:00
Connor Skees
4635f76fa5
add test for integer overflow in division
2020-08-21 07:00:42 -04:00
Connor Skees
5bf03c15d6
consume utf8 bom in parser, not lexer
2020-08-21 06:54:03 -04:00
Connor Skees
c19eda6f89
deny scientific notation exponents below -99
...
1e999 and 1e-999 were able to cause hangs as we use arbitrary precision
numbers rather than floating point. this may change in the future (see
sass/sass#2892 )
2020-08-20 18:55:00 -04:00
Connor Skees
921b6e4f8d
do not panic on modulo by 0
2020-08-20 18:55:00 -04:00
Connor Skees
6849cd578f
refactor variable value parsing to use predicates
2020-08-19 07:13:32 -04:00
Connor Skees
c89013d607
add test for malformed bracketed list missing closing brace
2020-08-19 05:26:24 -04:00
Connor Skees
0d7208ccf0
add tests for numbers plus !important
, colors, and arglists
2020-08-19 04:14:49 -04:00
Connor Skees
d9d9777467
add tests for bools and important
plus quoted string
2020-08-19 04:02:47 -04:00
Connor Skees
cb1eecde74
add tests for nan in unary ops
2020-08-19 03:52:45 -04:00