Commit Graph

1391 Commits

Author SHA1 Message Date
Natalie Weizenbaum
58cbab42e6
Stop working around dart-lang/linter#4381 (#2071) 2023-08-21 23:47:18 +00:00
Natalie Weizenbaum
aa53bd0ef3
Use wrapJSExceptions() to work around dart-lang/sdk#53105 (#2055) 2023-08-18 21:32:28 +00:00
Natalie Weizenbaum
a6a06b7eec Update pubspec and changelog and re-add abs-percent deprecation 2023-08-17 11:35:35 -07:00
Natalie Weizenbaum
458852dfd3 Revert "Calc functions implementation (#1970)"
This reverts commit e4c8cd67e8.
2023-08-17 11:12:19 -07:00
Natalie Weizenbaum
86a2f42a40 Revert "Update abs-percent deprecatedIn version (#2057)"
This reverts commit bb244761d3.
2023-08-17 11:12:14 -07:00
Pamela Lozano
bb244761d3
Update abs-percent deprecatedIn version (#2057) 2023-08-09 15:38:01 -07:00
Pamela Lozano
e4c8cd67e8
Calc functions implementation (#1970)
* Sqrt calc function implementation

* Pow calc function

* Calc round function

* Corrections and rename parameter to inLegacySassFunction

* Unary calc functions

* Arguments with no units correction

* Refactor round function

* Update modulo function to return SassNumber and corrections

* Round accepting fake units fix

* Up/Down round strategy fix

* Return incompatible message fix
2023-08-09 14:14:08 -07:00
Natalie Weizenbaum
4c3bd0e89f
Deprecate explicitly passing null as an alpha value (#2049)
This allows us to reserve null to indicate a missing alpha channel
instead in future versions.
2023-08-07 22:07:01 +00:00
Natalie Weizenbaum
8802c69337
Add ignores to work around dart-lang/linter#4381 (#2053) 2023-08-02 01:13:14 +00:00
Natalie Weizenbaum
17e3a48639
Convert Sass to Dart 3 style (#2038) 2023-08-02 00:34:45 +00:00
なつき
2836216ba5
Fix deprotofy SassCalculation.clamp (#2043) 2023-07-21 15:08:08 -07:00
Natalie Weizenbaum
b1d56a4f07
Change terminology to refer to JS instead of Node.js (#2039)
Now that we support running in a browser, saying "Node.js" is
generally inaccurate. It's still preserved in places that are
genuinely Node-specific.
2023-07-21 14:36:12 -07:00
Natalie Weizenbaum
89bd36b14e Revert "Start writing implementation documentation"
This reverts commit 6c592134fe. This was
supposed to land on a separate branch.
2023-07-20 19:01:13 -07:00
Natalie Weizenbaum
6c592134fe Start writing implementation documentation 2023-07-19 18:36:50 -07:00
Ed Rivas
ca2be2ace9
Expose calculations in JS API (#1988)
Co-authored-by: Jonny Gerig Meyer <jonny@oddbird.net>
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2023-07-19 14:36:22 -07:00
Goodwine
fe7f9a146d
Do not validate a CSS declaration if its key is interpolated (#2036)
* Do not validate a CSS declaration if itss key is interpolated

* add changelog
2023-07-13 17:02:24 -07:00
Natalie Weizenbaum
262961cb57
Check the fs library to determine if we're on Node.js (#2033)
This fixes an issue where some environments (like VS Code) define
`process` but don't load the Node.js entrypoint, causing Sass to think
it's running under Node without access to its Node dependencies.

Closes #2032
2023-07-06 16:03:32 -07:00
Natalie Weizenbaum
e9e44d7edb
Emit comments in source order where possible (#1989)
See sass/sass#2848
Closes #1939
2023-06-23 15:52:06 -07:00
なつき
61af9ee0ac
Use a common error handler for embedded protocol errors (#2027) 2023-06-22 18:12:20 -07:00
Natalie Weizenbaum
a48ced8ec9
Fix a race condition with re-used compilation isolate IDs (#2018)
Closes #2004
2023-06-20 17:55:46 -07:00
なつき
b11840eaa1
Limit pool size (#2019)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2023-06-15 15:01:40 -07:00
なつき
aa59a5f4a9
Fix race condition between spawning and killing isolates during shutdown (#2007)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2023-06-09 15:55:47 -07:00
なつき
760fa2ead1
Add current stylesheet to loadedUrls when throwing parsing error (#1991)
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2023-06-09 13:41:25 -07:00
Natalie Weizenbaum
a88318f5a9
Run embedded compilations across multiple isolates (#1981)
Closes #1980
Closes #1959
2023-06-06 14:23:17 -07:00
Ed Rivas
cca9464b09
Add support for running in the browser (#1895)
Closes #25

Co-authored-by: Jonny Gerig Meyer <jonny@oddbird.net>
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
2023-05-19 13:22:44 -07:00
Natalie Weizenbaum
6d6d5ee5a4 Merge branch 'embedded-move' into embedded 2023-05-15 14:34:52 -07:00
Natalie Weizenbaum
3fc6a42e8f Move source and test files to namespaced subdirectories 2023-05-08 17:34:32 -07:00
Natalie Weizenbaum
8dddcb7b7d
Split SilentComment nodes on empty lines in SCSS (#1945)
Closes #1941
2023-04-25 16:21:05 -07:00
Natalie Weizenbaum
3091de542c
Fix :has(+ &) (#1938)
Closes #1937
2023-04-19 15:29:31 -07:00
Natalie Weizenbaum
c55235d166
Don't separate out media queries after one has bubbled (#1933)
Closes #777
2023-04-11 15:44:19 -07:00
Goodwine
e68818a86e
Allow global Sass function colliding with CSS native functions to use CSS variables (#1926)
* Allow global Sass function colliding with CSS native functions to use CSS variables

Many Sass functions are available globally even without loading their module. Some of these are also valid CSS native functions. Sass performs validations which disallow the use of CSS variables because the arguments are asserted a given type of value. For these collisions allow the use of CSS variables and in such cases assume the entire function call is meant to be the CSS native function rather than the global Sass function.

Fixes https://github.com/sass/sass/issues/3507

* Also allow for special numbers, not only for var()

* add changelog oops
2023-04-10 16:58:55 -07:00
Natalie Weizenbaum
283bdc0063
Deprecate duplicate !global and !default declarations (#1931)
See #604
See sass/sass#2607
2023-04-07 16:29:57 -07:00
Natalie Weizenbaum
702a7ee7a1
Fix the performance of selector span expansion (#1929)
Instead of calling `SourceFile.getText()`, which creates string copies
of a substantial subset of the text of the file every time, this
directly accesses the file's underlying code units without doing any
copies.

Closes #1913
2023-04-06 14:44:29 -07:00
Natalie Weizenbaum
f5a3dea748
Add support for constants in calculations (#1922)
Closes #1900
See sass/sass#3258
2023-03-23 15:59:27 -07:00
Jennifer Thakar
09a5f09638
Fix performance regression from selector spans (#1916) 2023-03-14 14:08:46 -07:00
Jennifer Thakar
8f8138dfab
Add --fatal-deprecations and --future-deprecations (#1820)
* Add fatal/futureDeprecations to Dart API

This adds a new `Deprecation` class that specifies an ID for each
deprecated feature along with what Dart Sass version deprecated it.

The compile functions allow you to pass a set of `fatalDeprecations`
that will cause an error instead of a warning. You can also pass a set
of `futureDeprecations`, which let you opt-in to deprecations (like
`@import`) early.

* Add future deprecation for `@import`

* Add flags

* Merge colorUnits and randomWithUnits

* Update changelogs and pubspecs

* Add tests

* Use isFuture instead of deprecatedIn == null
* Split warnForDeprecation from warn

* Add missing word to error message
2023-03-10 14:24:33 -08:00
Natalie Weizenbaum
9417b6e8d8
Track original source spans for selectors (#1903)
Closes #1783
2023-03-08 14:59:12 -08:00
Natalie Weizenbaum
f022e02bc5
Improve errors for invalid CSS values passed to CSS functions (#1901)
Closes #1769
2023-03-03 15:07:15 -08:00
Goodwine
eb1ced15d6
Pull @font-face out to root (#1899)
Closes sass/sass#1251
2023-03-01 18:12:11 -08:00
dannypernik
c4523884bf
Add timestamp to printed compile statement (#1876)
Co-authored-by: dannypernik <dannypernik@mail.com>
Co-authored-by: Natalie Weizenbaum <nweiz@google.com>
Co-authored-by: なつき <i@ntk.me>
2023-02-16 17:27:30 -08:00
Natalie Weizenbaum
13cc7d2da4
Improve the suggested replacements for unary minus in /-as-division (#1888)
Closes #1887
2023-02-16 13:34:57 -08:00
Natalie Weizenbaum
c8b4cd09eb
Don't emit "deg" for hsl hues (#1885) 2023-02-13 16:44:14 -08:00
Andreas Deininger
5eb66fc219
Fixes typos (#1879) 2023-02-03 14:47:13 -08:00
Natalie Weizenbaum
6310dfb129
Update synchronization tests to verify the entire file (#1880)
This catches cases where the target file is edited directly without
also editing the source file.

Also re-run `pub run grinder`.
2023-02-01 16:23:37 -08:00
Natalie Weizenbaum
98fe9a43dd
Track dependencies through meta.load-css() with --watch (#1877)
Closes #1808
2023-01-31 16:58:45 -08:00
Christophe Coevoet
5a521b86f9
Add all CSS length units in known compatibilities (#1868)
This allows more validation of wrong computations in first-class calc.
2023-01-30 23:29:04 +00:00
Jennifer Thakar
00069241b9
Fix escaped backslash crash (#1870)
* Fix escaped backslash crash

Fixes #1855.

* Code review
2023-01-24 16:03:49 -08:00
Goodwine
0248608c44
Return an error when using a custom property in a propset instead of crashing (#1874)
Fixes: #1857
See: sass/sass-spec#1873
2023-01-24 15:42:09 -08:00
Natalie Weizenbaum
b98fa4fbd1
Fix an edge case in superselector computation (#1866)
Closes #1843
2023-01-06 00:30:49 -08:00
Natalie Weizenbaum
14c1634057
Don't crash when parsing +. (#1865)
Closes #1856
2023-01-04 17:03:08 -08:00