Commit Graph

1267 Commits

Author SHA1 Message Date
Natalie Weizenbaum
fa0d2fb55a
Add support for arbitrary modifiers after @import (#1695)
See sass/sass#3285
2022-05-19 16:53:30 -07:00
Jennifer Thakar
b19b3b141d
Fix assertUnit and assertNoUnits (#1686)
Fixes #1685.
2022-05-10 15:27:47 -07:00
Christophe Coevoet
1e211d640a
Escape the source map URL before using it in a CSS comment (#1676)
The URL must not be allowed to terminate the comment.
2022-04-27 09:54:52 -07:00
Christophe Coevoet
7004d49f98
Fix the tracking of variable nodes for scopes (#1681)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2022-04-26 14:59:21 -07:00
Natalie Weizenbaum
0c24114bad
Update the order of maps returned by map.deep-merge() (#1680)
Closes sass/sass#3092
2022-04-25 19:20:54 -07:00
Christophe Coevoet
6eed6eb62a
Fix the string representations of the Sass AST (#1682)
* Fix the string representations of the Sass AST

Those are used when providing recommendations in warnings or errors, so
it is better if they produce valid code.

* Add changelog

Co-authored-by: Jennifer Thakar <jathak@google.com>
2022-04-25 16:53:08 -07:00
Jennifer Thakar
039f2adeed
Add support for :where() (#1662) 2022-04-06 19:19:59 -07:00
Michael Crumm
c7ab426cb0
Abort sass if stdin is closed when watching (#1411)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2022-04-06 17:37:40 -07:00
Jennifer Thakar
6652001f19
Stop simplifying calculations in supports (#1653)
Fixes #1652.

Also releases 1.49.10
2022-03-30 15:14:46 -07:00
Christophe Coevoet
85ca0b270f
Remove dead code in the stylesheet parser (#1640)
At that point, the scanner is still at the same position than the
previous check for children returning a nested declaration, so  it is
impossible for it to be looking at children.
2022-03-23 13:48:14 -07:00
Natalie Weizenbaum
33f18c4b54
Preserve rgb/rgba/hsl/hsla formats in expanded mode (#1651)
This also fixes a bug where four- and eight-digit hex numbers weren't
being translated to more compatible formats.

Closes #1634
2022-03-17 15:44:38 -07:00
Natalie Weizenbaum
3abcc20595
Silence compiler warnings in dependency callables with --quiet-deps (#1650)
Closes #1560
2022-03-14 15:52:13 -07:00
Jennifer Thakar
c66ea3f9a5
Fix CSS import bug (#1633) 2022-02-17 13:25:21 -08:00
Awjin Ahn
864d526715
Allow Node 17 to pass extra args to inspect. (#1631) 2022-02-16 16:38:56 -08:00
Christophe Coevoet
f055db0797
Implement the sourceMapIncludeSources JS option (#1583) 2022-01-14 16:38:26 -08:00
Jennifer Thakar
e1fcbaaf36
Fix string.insert with negative indices (#1598) 2022-01-13 16:40:02 -08:00
Natalie Weizenbaum
720c358c06
Set LegacyResult.map to undefined rather than null (#1592) 2022-01-10 14:16:27 -08:00
Natalie Weizenbaum
6bf9853330
Pass undefined span instead of null to Logger.warn() in JS (#1586) 2022-01-05 15:59:15 -08:00
Natalie Weizenbaum
169178af6c
Fix the default separator for new SassArgumentList in the JS API (#1580) 2021-12-30 16:04:00 -08:00
Natalie Weizenbaum
f7669d5a99
Properly parse custom property values in @supports conditions (#1570)
Closes sass/sass#3216
2021-12-11 00:59:08 +00:00
Nate Bosch
6b35eb633e
Remove some dead code (#1565)
This change preserves behavior, though the current behavior has the
appearance of a bug so an author more familiar with the intention may
want to add a test.

There are no assignments to `first` so the conditional can be removed.
When building internally the analyze is surfacing a `dead_code`
diagnostic which needs to be ignored. Fixing the code will allow us to
remove the ignore.

I don't know why the diagnostic does not show up when analyzing using
the external analyzer.
https://github.com/dart-lang/sdk/issues/47837
2021-12-11 00:58:44 +00:00
Awjin Ahn
1798a7c275
Let inspect() print nested, empty, bracketed lists. (#1547)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2021-12-10 23:01:16 +00:00
Natalie Weizenbaum
e86897be97 Fix new analysis issues from Dart 2.15 2021-12-10 14:02:17 -08:00
Natalie Weizenbaum
79541905bc
Release a release candidate for the new JS API (#1562) 2021-11-30 23:32:09 +00:00
Natalie Weizenbaum
98a947056e
Add support for custom functions in the new JS API (#1558) 2021-11-30 22:46:39 +00:00
Christophe Coevoet
3e231f784b
Improve the deprecation message for /-as-division (#1561)
This also changes the string representation of ParenthesizedExpression
to fix the recommendations involving them (otherwise the calc
recommendation would be an invalid one).

Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2021-11-30 01:43:08 +00:00
Natalie Weizenbaum
97c51d6285
Add support for the JS API value types (#1552) 2021-11-30 00:10:47 +00:00
Paul Golmann
926781b782
Add support for css empty namespace attribute selector (#1554)
Closes sass/sass#3199
2021-11-24 23:20:33 +00:00
Christophe Coevoet
681bbb2a0d
Fix equality checks for CalculationOperation (#1556) 2021-11-16 13:05:29 -08:00
Natalie Weizenbaum
55cb4fd509
Track stack traces through rethrows (#1545)
This requires a lot of manual machinery when displaying stack traces
to the user, but it should make debugging errors (especially in JS)
much easier.

Works around dart-lang/sdk#10297 using expandos.
2021-11-05 06:05:50 +00:00
Natalie Weizenbaum
756fcd3911
Fix the logger option for render() (#1538)
Closes #1533
2021-10-26 21:06:40 +00:00
Natalie Weizenbaum
435e1b2f71
Merge pull request #1535 from sass/perf
Improve performance
2021-10-20 17:21:28 -07:00
Natalie Weizenbaum
2430ac6d20 Avoid creating zone variables inside _EvaluateVisitor
Instead, we create a single zone-scoped object that's visible for the
entire lifespan of the visitor, and which exposes evaluation internals
which can be updated as direct field modifications.
2021-10-20 16:36:52 -07:00
Natalie Weizenbaum
d13a38ed19 Cache relative import results as well as absolute ones
This dramatically improves the performance of a sample app using the
Carbon design system, and should generally improve apps that have a
lot of repeated @imports of library files. It's possible we can back
this out if it's not pulling its weight once we no longer support
@import.
2021-10-20 16:36:52 -07:00
Natalie Weizenbaum
6069708a83 Cache hash codes for Sass strings and numbers
These values are often stored in maps, so caching their hash codes
seems to be net valuable.
2021-10-20 16:36:52 -07:00
Natalie Weizenbaum
0ce65fc796 Replace Susy with Carbon as a benchmark target
Neither of these support Node v16 yet, but Susy is unmaintained and
will never support it while Carbon will likely add support in the near
future.
2021-10-20 16:36:29 -07:00
Christophe Coevoet
6253da740b
Fix the parsing of scientific notation in keyframe selectors (#1510) 2021-10-20 13:15:10 -07:00
Natalie Weizenbaum
3916ff6a0c
Add support for the alertAscii flag (#1524)
See sass/sass#3056
2021-10-14 22:45:35 +00:00
Natalie Weizenbaum
1fbda21d98 Merge remote-tracking branch 'origin/main' into cli-pkg 2021-10-13 13:05:30 -07:00
Natalie Weizenbaum
aa81b12612
Automatically handle absolute URLs for FileImporters (#1527)
See sass/sass#3181
2021-10-13 02:39:39 +00:00
Natalie Weizenbaum
1e70242959 More gracefully handle unexpected errors in JS interop 2021-10-12 17:15:30 -07:00
Natalie Weizenbaum
2d56fe02df Allow PRs to be linked to sass/sass PRs 2021-10-06 16:37:56 -07:00
Natalie Weizenbaum
4379462b42 Replace FileImporterResult with a plain URL 2021-10-06 12:13:21 -07:00
Christophe Coevoet
d667843a4d
Fix the parsing of supports function in static imports (#1514) 2021-10-06 10:18:55 -07:00
Christophe Coevoet
6641459fa2
Improve the error message for invalid default namespaces (#1513) 2021-10-06 10:16:35 -07:00
Jennifer Thakar
4f67c4dd30
Fix RecursiveAstVisitor (#1525)
`visitCalculationExpression` is now properly implemented.

This also adds concrete test classes that extend `RecursiveAstVisitor`
and `RecursiveStatementVisitor` to ensure similar issues are avoided in
the future whenever new AST nodes are added.
2021-10-05 18:36:45 -07:00
Natalie Weizenbaum
c9e2f96f88
Add support for the new importer API (#1522) 2021-10-05 23:53:57 +00:00
Natalie Weizenbaum
4b0f008760
Add support for the new JS logger API (#1515)
See sass/sass#2979
2021-10-05 20:57:44 +00:00
Natalie Weizenbaum
fb180ff9f5 Update to the latest linter package and fix lints 2021-10-05 13:21:19 -07:00
Christophe Coevoet
8bade1d071
Fix typos in doc (#1480) 2021-10-04 11:16:19 -07:00