Commit Graph

1602 Commits

Author SHA1 Message Date
Natalie Weizenbaum
c794abd858 Eagerly dash-normalize Sass identifiers
This avoids using maps and sets with custom equality, which are
moderately inefficient relative to built-in maps and sets on both Node
and the Dart VM. In order to make error messages continue to use the
original identifiers where possible, this updates some of them to rely
more heavily on their associated source spans for context.
2019-07-16 19:42:38 -07:00
Natalie Weizenbaum
437e04ea0b Merge remote-tracking branch 'origin/master' into feature.use 2019-07-16 18:49:15 -07:00
Natalie Weizenbaum
7f2055e775 Make colorsByName a normal map
There was no reason for this to be a normalized map, since color names
don't contain dashes or underscores.
2019-07-16 13:37:03 -07:00
Marcel Greter
d91e758889 Fix typo in silent comment error message (#761) 2019-07-16 00:44:32 +01:00
Natalie Weizenbaum
f2bc521082
Merge pull request #760 from sass/js-perf
Improve the JS performance for logic-heavy stylesheets
2019-07-15 22:43:13 +01:00
Natalie Weizenbaum
535030bb0f Release 1.22.5 2019-07-15 21:59:54 +01:00
Natalie Weizenbaum
ed73c2c053 Update benchmarks for JS performance improvements
As expected, this substantially improves the JS performance in
logic-heavy benchmarks. I believe the other changes are just noise.
2019-07-15 21:59:54 +01:00
Natalie Weizenbaum
58e9e74b37 Use list comprehensions in *Evaluate._evaluateArguments
As well as being arguably more readable, the toList() method was
running a type check that was showing up as a minor bottleneck in JS
profiles.
2019-07-15 21:59:54 +01:00
Natalie Weizenbaum
a8e99e9152 Pass a dummy isValidKey callback to normalized map and set
The default implementation runs a type check, which was a performance
bottleneck when compiled to JS. There's no need for this type check in
practice, since we never pass a non-String value to the contains(),
containsKey(), or remove() methods (and if we do, it will throw a
TypeError in our tests).
2019-07-15 21:59:54 +01:00
Natalie Weizenbaum
a841882724 Don't compile to JS in minified mode
The JS size doesn't really matter on the server side, and this makes
profiling the release-mode binary substantially easier, as well as
improving the quality of stack traces provided by downstream users.
2019-07-15 21:59:54 +01:00
Natalie Weizenbaum
0e47e03305
Fix at-rules in nested imports (#758)
Closes #755
2019-07-12 01:55:30 +01:00
Natalie Weizenbaum
a7172a2b1d
Update benchmarks (#759) 2019-07-12 01:53:36 +01:00
Natalie Weizenbaum
fb75fc39ce
Fix a Travis task that was broken by sass/sass-spec#1426 (#757) 2019-07-10 16:02:40 -07:00
Natalie Weizenbaum
525958951d
Merge pull request #750 from sass/function-fixes
Fix a bunch of small spec incompatibilities in built-in functions
2019-07-03 17:55:15 -07:00
Natalie Weizenbaum
2003f1c6ec Merge remote-tracking branch 'origin/master' into function-fixes 2019-07-03 16:56:54 -07:00
Natalie Weizenbaum
b7999e41ad
Fix a new lint (#752) 2019-07-03 16:56:33 -07:00
Natalie Weizenbaum
faa053733a Release 1.22.3 2019-07-03 15:31:56 -07:00
Natalie Weizenbaum
d3e288ccf2 Support map-remove() with a named $key argument
Closes #742
2019-07-03 15:31:56 -07:00
Natalie Weizenbaum
eff8c37457 Fix a deadlock in zip()
Closes #739
2019-07-03 15:31:56 -07:00
Natalie Weizenbaum
5ff434da6a Fix join() and append() $separator error messages
Closes #738
2019-07-03 15:31:56 -07:00
Natalie Weizenbaum
47e0cfc8c8 Empty maps have undecided separators
Closes #737
2019-07-03 15:31:56 -07:00
Natalie Weizenbaum
821b5e2521 Fix str-insert() with $index: -1
Closes #733
2019-07-02 17:25:46 -07:00
Natalie Weizenbaum
40df8e3bc1 Fix str-slice() with astral plane characters
Closes #732
2019-07-02 17:25:46 -07:00
Natalie Weizenbaum
2105a138c0 Clamp $alpha in adjust-color() with HSL args
Closes #708
2019-07-02 17:25:45 -07:00
Natalie Weizenbaum
7bfba04b79 Throw an error for plain-CSS invert() with $weight
Closes #705
2019-07-02 17:25:36 -07:00
Natalie Weizenbaum
d5adb4621e Fix invert() with $weight: 50%
Closes #704
2019-07-02 17:25:25 -07:00
Natalie Weizenbaum
9838caff6f Improve errors for alpha() with the wrong number of arguments
Closes #700
2019-07-02 17:25:14 -07:00
Natalie Weizenbaum
ed06a41afc Fix the argument name for a single-argument saturate() function
Closes #699
2019-07-02 16:10:28 -07:00
Natalie Weizenbaum
60af5f6c25
Release 1.22.2 (#745)
The CHANGELOG entry from #727 got misplaced; that code hasn't been
released yet.
2019-07-01 13:31:13 -07:00
Natalie Weizenbaum
1fb3d1f6f1
Merge pull request #741 from sass/load-css
Add load-css()
2019-06-29 00:29:22 -07:00
Natalie Weizenbaum
88774b3a07 Fix a Dart 2.4 analysis hint 2019-06-29 07:08:58 +01:00
Natalie Weizenbaum
72d932884f Merge remote-tracking branch 'origin/feature.use' into load-css 2019-06-29 05:54:39 +01:00
Natalie Weizenbaum
3c3fd1f024
Merge pull request #746 from sass/merge-master
Merge master into feature.use
2019-06-28 18:01:38 -07:00
Natalie Weizenbaum
b8186fee05 Merge remote-tracking branch 'origin/master' into merge-master 2019-06-29 00:34:38 +01:00
Natalie Weizenbaum
532358d7fa
Merge pull request #727 from sass/static-require
Require dependencies in the preamble rather than through JS-interop
2019-06-28 14:32:18 -07:00
Natalie Weizenbaum
abf7d7f922
Fix a new analysis hint from Dart 2.4.0 (#743) 2019-06-28 14:32:04 -07:00
Natalie Weizenbaum
bfbe1efd3e Add a load-css() function 2019-06-27 14:12:38 -07:00
Natalie Weizenbaum
fe30fd61a3 Add the ability for built-in modules to expose mixins 2019-06-27 12:09:34 -07:00
Natalie Weizenbaum
6f89055ea6
Add support for "@use with" (#728) 2019-06-26 17:34:24 -07:00
Natalie Weizenbaum
2cdbbebcaf
Declare support for Chokidar 3.0.0 (#731)
Closes #730
2019-06-26 16:06:22 -07:00
Natalie Weizenbaum
ccec9342a5
Merge pull request #736 from sass/merge-master
Merge master into feature.use
2019-06-26 16:05:59 -07:00
Natalie Weizenbaum
18b06df84f Merge remote-tracking branch 'origin/master' into merge-master 2019-06-26 15:04:36 -07:00
Natalie Weizenbaum
033533ae75
Avoid deprecated analyzer APIs (#735) 2019-06-26 14:53:37 -07:00
Natalie Weizenbaum
aca7057078
Merge pull request #724 from sass/merge-use
Merge feature.use into master
2019-06-24 16:40:41 -07:00
Natalie Weizenbaum
7955bab749 Mark the pubspec as a release version 2019-06-24 14:55:19 -07:00
Natalie Weizenbaum
174ef128a2 Merge remote-tracking branch 'origin/feature.use' into merge-use 2019-06-24 14:12:05 -07:00
Natalie Weizenbaum
19cfb63ab4
Address code review comments from #724 (#729) 2019-06-24 14:05:17 -07:00
Natalie Weizenbaum
31f3ca2ead Replace dynamic require()s in dependencies with static alternatives 2019-06-20 19:05:23 +01:00
Natalie Weizenbaum
b5de9d24c2
Merge pull request #725 from sass/global-deprecation-warning
Clarify !global deprecation warnings
2019-06-19 14:38:48 -07:00
Natalie Weizenbaum
494e208067 Require dependencies in the preamble rather than through JS-interop
Closes #726
2019-06-19 19:41:16 +01:00