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
18b06df84f
Merge remote-tracking branch 'origin/master' into merge-master
2019-06-26 15:04:36 -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
a46e779675
Clarify !global deprecation warnings
...
Closes #723
2019-06-18 17:39:29 -07:00
Natalie Weizenbaum
bc4508d80d
Remove a reference to Sass 4.0 in a deprecation warning
2019-06-18 17:38:55 -07:00
Natalie Weizenbaum
e4b18b5231
Produce better stack traces for syntax errors loaded via import/use ( #722 )
...
We now wrap _withStackFrame() around wider sections of code, including
_loadStylesheet() which handles parse errors, so that the @use/@import
stack frames are available.
2019-06-18 17:26:46 -07:00
Natalie Weizenbaum
d89fef612b
Add a module-functions() function
2019-06-18 12:05:56 -07:00
Natalie Weizenbaum
bbaa91d658
Add a module-variables() function
2019-06-18 12:05:26 -07:00
Natalie Weizenbaum
4716349a0e
Add new module-system features for existing functions ( #720 )
2019-06-18 12:03:12 -07:00
Natalie Weizenbaum
6600de2dfe
Add built-in modules for core Sass functions ( #716 )
...
Partially addresses #554
2019-06-12 16:46:28 +01:00
Natalie Weizenbaum
e888f84ce5
Merge branch 'master' into feature.use
2019-06-06 21:46:51 +01:00
Natalie Weizenbaum
bea609d74b
Add a top-level warn() function for functions and importers ( #711 )
...
In addition to being useful for users of Sass, this will make it
possible for core Sass functions to produce warnings without needing
an explicit reference to the evaluator.
2019-06-06 19:42:44 +01:00
Natalie Weizenbaum
6494951e48
Improve the error message for module loops
2019-06-04 12:55:43 +01:00
Natalie Weizenbaum
a000bffd98
Add support for @forward
...
See sass/sass#1094
See #554
2019-06-02 14:26:54 +01:00
Natalie Weizenbaum
11e3749721
Merge pull request #709 from sass/analysis
...
Enable stricter analysis options, especially around typing
2019-05-31 17:01:13 +01:00
Natalie Weizenbaum
ac38653776
Enable strict raw types
2019-05-31 16:01:49 +01:00
Natalie Weizenbaum
79e9bbd816
Enable strict inference
2019-05-31 15:54:59 +01:00
Natalie Weizenbaum
1340ba7b8a
Enable and fix (most) pedantic lints
2019-05-31 15:18:59 +01:00
Natalie Weizenbaum
1ac41898e8
Add map views to represent the ways a module can be forwarded
2019-05-24 16:41:10 -07:00
Natalie Weizenbaum
f6575704dd
Factor out a function to load modules ( #693 )
...
This will allow us to re-use logic for @forward. It also fixes some
usability issues where incorrect or duplicated spans were being used
for @use errors.
2019-05-24 16:39:22 -07:00
Natalie Weizenbaum
2836780339
Merge pull request #689 from sass/exponent
...
Fix some number serialization bugs
2019-05-24 15:09:37 -07:00
Natalie Weizenbaum
6591e315af
Ensure that built-in functions aren't part of a module's API ( #692 )
...
The way this worked previously, you could call "mod.rgb()" for any
module and it would be the same as calling the built-in rgb()
function.
2019-05-23 13:24:41 -07:00
Natalie Weizenbaum
0fe0208f6e
Remove exponent notation for integers on Node.js
...
Closes #688
2019-05-21 13:36:36 -07:00
Natalie Weizenbaum
c76ef209af
Merge branch 'master' into master-into-use
2019-05-20 16:52:20 -07:00
Natalie Weizenbaum
fb383de20e
Fix a bug in SerializeVisitor._writeDecimal
...
This function didn't expect a number ending in ".0", because they're
normally filtered out by fuzzyAsInt(). However, they can make it
through for very large doubles.
2019-05-20 15:50:45 -07:00
Natalie Weizenbaum
5b9835a5bd
Make SerializeVisitor._removeExponent work with non-exponent numbers
...
This allows us to avoid traversing the number string more times than
necessary.
2019-05-20 15:47:59 -07:00
Natalie Weizenbaum
768da7088c
Resolve imports using custom imports before load paths ( #687 )
...
Closes #681
2019-05-20 15:34:57 -07:00
Natalie Weizenbaum
2317be8812
Give Module a type parameter rather than making it synchronized ( #686 )
...
This allows us to have one fewer synchronized file, which reduces
complexity, and also lets us just write "Module" in async code rather
than "AsyncModule".
2019-05-20 15:34:14 -07:00
Natalie Weizenbaum
db87ed2f0e
Use the new Dart 2.3.0 literal syntax ( #684 )
2019-05-17 18:02:12 -07:00
Natalie Weizenbaum
19df69d26c
Continue running feature.use in use mode
2019-05-17 14:40:34 -07:00
Natalie Weizenbaum
7c9d63a4dc
Reformat with the latest formatter
2019-05-15 18:17:26 -07:00
Natalie Weizenbaum
aaebd424ed
Get rid of tool/synchronize.dart
...
This was moved to tool/grind/synchronize.dart in #318 , but the old
file never got removed.
2019-05-15 18:17:06 -07:00
Natalie Weizenbaum
c1ae142ca9
Merge remote-tracking branch 'origin/master' into merge-use
2019-05-15 12:23:42 -07:00
Natalie Weizenbaum
3b47e34c87
Fix some places where a null could sneak into a boolean condition
2019-05-08 17:19:12 -07:00
Natalie Weizenbaum
4b572f6ad5
Merge branch 'feature.use'
2019-05-08 15:38:12 -07:00
Natalie Weizenbaum
92a2c67410
Merge branch 'master' into feature.use
2019-05-06 16:40:24 -07:00
Natalie Weizenbaum
34c068a189
Generate a CSS file describing an error when one occurs ( #659 )
...
Closes #657
2019-05-02 18:14:25 -07:00
Natalie Weizenbaum
57260a9fc1
Update color algorithm URLs ( #664 )
2019-05-02 16:16:33 -07:00
Natalie Weizenbaum
892f301d5a
Remove a debugging print ( #655 )
...
This never actually triggered because we always overrode the listener
before the directory was modified.
2019-05-02 13:07:57 -07:00
Natalie Weizenbaum
407eefded1
Add support for attribute selector modifiers ( #658 )
...
Closes #656
2019-04-30 11:31:18 -07:00
Natalie Weizenbaum
37f0740307
Allow ! in url()s ( #650 )
...
Closes #646
2019-04-18 17:37:20 -07:00
Natalie Weizenbaum
413c949446
Make FilesystemImport._loadPath absolute ( #651 )
...
This avoids having the effective load path change when the process's
working directory changes.
2019-04-18 16:34:48 -07:00
Natalie Weizenbaum
3b3a43a8f9
Add a --charset flag and API option ( #644 )
...
The automatic @charset adding is useful in general, but there are
consistently cases where it trips up naïve downstream tools. This
option makes it easier for users to control when it occurs.
2019-04-08 14:49:08 -07:00
Natalie Weizenbaum
59800ad1f9
Don't recursively list directories in realCasePath() ( #641 )
...
We only need to list the path's immediate parent directory in order to
find its real case.
Closes #636
2019-04-04 12:18:02 -07:00
Natalie Weizenbaum
495c6f3163
Only claim "package:" URLs are unsupported on Node ( #637 )
...
Closes #630
2019-04-04 12:17:36 -07:00
Jennifer Thakar
c2c9cedb81
Extend RecursiveStatementVisitor for expressions ( #639 )
...
This adds `RecursiveAstVisitor`, which extends
`RecursiveStatementVisitor` to traverse expressions as well.
2019-04-03 14:37:27 -07:00
Natalie Weizenbaum
8c9412b520
Fix importing files relative to "package:" imports ( #638 )
...
The PackageImporter wasn't accepting paths relative to its
canonicalized outputs as inputs.
Closes #631
2019-04-03 13:57:52 -07:00
Natalie Weizenbaum
9999835df0
Add a sass.types.Error constructor to the JS API ( #627 )
...
Closes #590
2019-04-03 01:07:12 -07:00