Natalie Weizenbaum
8bffd52729
Don't hang after a syntax error in --watch ( #435 )
...
Closes #401
2018-08-03 15:38:16 -07:00
Natalie Weizenbaum
13b8ad6d4d
Format
2018-07-23 16:57:21 -07:00
Natalie Weizenbaum
e1750216ee
Don't crash when passing includePaths with importer
...
Closes #412
2018-07-23 16:20:06 -07:00
Natalie Weizenbaum
9bb272dcff
Support Node Sass's sass.types.Color(argb) constructor ( #398 )
...
Closes #397
2018-07-03 17:09:54 -07:00
Natalie Weizenbaum
96c46a242e
Add a --stop-on-error flag ( #391 )
...
Closes #264
2018-06-29 18:12:36 -07:00
Michael R Fairhurst
cd275705cd
Fix places awaiting void, for dart 2 ( #393 )
2018-06-29 13:20:26 -07:00
Natalie Weizenbaum
425305725b
Add a --poll option ( #390 )
...
Partially addresses #264 .
2018-06-28 18:20:28 -07:00
Natalie Weizenbaum
c462b82102
Run snapshots in Dart 1 mode
...
Until dart-lang/sdk#33257 is fixed, this ensures that users get as
much performance as possible.
2018-06-27 15:51:16 -07:00
Natalie Weizenbaum
ecc04665cf
Fix a couple more Grinder invocations ( #387 )
2018-06-27 14:32:44 -07:00
Natalie Weizenbaum
7e6f03fc18
Run the Dart CLI tests from app snapshots on CI ( #383 )
...
This substantially speeds up the test time, and once we re-enable Dart
2 support is should work around dart-lang/sdk#33257 .
2018-06-27 13:12:16 -07:00
Natalie Weizenbaum
39eeeb51ef
Add a missing _ignoreErrors() call in StylesheetGraph ( #377 )
...
We weren't ignoring errors when reloading a file, which meant that
syntax errors would get surfaced in the wrong place and cause a crash.
Closes #359
2018-06-26 20:10:46 -07:00
Natalie Weizenbaum
a87300a1e9
Use camel-case for grinder task names
...
This also causes Grinder to use hyphen-separated names for them on the
CLI, rather than underscore-separated.
2018-06-25 16:40:26 -07:00
Natalie Weizenbaum
87e568faa4
Fix a bug where we were setting the base URL of stylesheets wrong ( #370 )
...
Closes #369
2018-06-20 17:43:40 -07:00
Natalie Weizenbaum
6693a82f3b
Use the latest test_descriptor features to clean up tests ( #366 )
2018-06-19 17:50:49 -07:00
Natalie Weizenbaum
fdbccc8625
Ensure that source map comment URLs are relative to the CSS file ( #365 )
...
Closes #364
2018-06-19 17:50:37 -07:00
Natalie Weizenbaum
61eea4abd8
Format with the latest formatter version ( #363 )
2018-06-19 12:46:24 -07:00
Natalie Weizenbaum
c5071ef843
Stop using a deprecated API
2018-06-15 13:59:28 -07:00
Natalie Weizenbaum
c626bf5613
Remove casts that are now unnecessary
2018-06-15 13:59:28 -07:00
Natalie Weizenbaum
b949f9fe72
Use Dart 2 constants
2018-06-15 13:59:28 -07:00
Natalie Weizenbaum
7a2d724cc9
Use of() constructors instead of from()
2018-06-14 16:15:27 -07:00
Natalie Weizenbaum
6ad67a6f28
Remove the workaround for dart-lang/sdk#30098
...
This un-reverts pull request #320 from sass/remove-path-workaround,
which was reverted by commit 0fb5d25ee2
.
2018-06-14 16:15:27 -07:00
Natalie Weizenbaum
f074152f61
Add a tick in a test that's failing on Windows
2018-06-13 16:42:10 -07:00
Natalie Weizenbaum
0519163ae3
Use the standard tick helper rather than a custom sleep
2018-06-13 16:41:29 -07:00
Natalie Weizenbaum
5efa7bf48a
Normalize path separators in watch test expectations
2018-06-13 16:41:29 -07:00
Natalie Weizenbaum
6bbb961675
Add a --watch command
...
Partially addresses #264
2018-06-09 14:13:36 -04:00
Natalie Weizenbaum
3362273c29
Disallow --update and --watch with --interactive
2018-06-09 14:09:20 -04:00
Natalie Weizenbaum
594f936c54
Fix an edge-case bug
...
If a non-partial stylesheet is next to a partial with the same name,
canonicalizing the source URL would fail. We don't really need to
canonicalize that URL anyway, though, since it's only used for import
loops and such a loop will reload and rerun the entrypoint anyway.
2018-06-08 20:28:38 -04:00
Natalie Weizenbaum
0a21fb7063
Make sure --update surfaces failures properly
2018-06-08 20:28:38 -04:00
Natalie Weizenbaum
b9e1585cf6
Add a helper function for update tests ( #348 )
2018-06-07 09:54:18 -04:00
Natalie Weizenbaum
c26903e30e
Don't consider drive separators to be path-separating colons ( #342 )
...
Closes #340
2018-05-31 20:38:45 -04:00
Natalie Weizenbaum
0fb5d25ee2
Revert "Merge pull request #320 from sass/remove-path-workaround"
...
This reverts commit 08bfb46f16
, reversing
changes made to ad73a91f84
.
2018-05-31 14:37:21 -04:00
Natalie Weizenbaum
8435be5f4b
Style tweaks
2018-05-30 18:59:49 -04:00
Natalie Weizenbaum
1d7b0aa5ad
Merge branch 'master' into jathak-interactive
2018-05-30 18:41:15 -04:00
Natalie Weizenbaum
8e97e66426
Remove unused test/cli_shared.dart
...
[skip ci]
2018-05-30 18:37:55 -04:00
Natalie Weizenbaum
0c637b2e6a
Split CLI tests into multiple suites ( #337 )
2018-05-30 18:35:35 -04:00
Natalie Weizenbaum
d4655f22bd
Fix an Importer-calling bug ( #338 )
...
We were resolving URLs relative to the canonical URL rather than the
original URL, which broke importers for which those were different,
like the package importer.
Closes #334
2018-05-30 17:47:37 -04:00
Jen Thakar
930f361026
Merge branch 'master' of git://github.com/sass/dart-sass into interactive
2018-05-29 21:33:53 -07:00
Jen Thakar
da44841498
Add TrackingLogger and uses it in --interactive
...
If a warning or debug message is emitted, and then the line errors,
a simpler error message is output instead of highlighting the bad
input in the original line.
2018-05-29 21:27:36 -07:00
Natalie Weizenbaum
ac8c01a595
Add an --update flag
...
Partially addresses #264
2018-05-28 16:58:09 -04:00
Natalie Weizenbaum
31c77fb1cc
Remove the workaround for dart-lang/sdk#30098
2018-05-28 15:23:47 -04:00
Jen Thakar
eb71e2d5a7
Fix logging and invalid options for --interactive
...
--interactive now uses the ExecutableOptions' logger, so it respects
the --quiet option.
An invalid option used with --interactive will now be output.
2018-05-26 22:49:13 -07:00
Jen Thakar
6351458f35
Merge branch 'master' of git://github.com/sass/dart-sass into interactive
2018-05-26 21:49:48 -07:00
Jen Thakar
590b2a02c5
Fix bugs in interactive mode
...
The REPL no longer crashes when syntax errors point after the end of
the input; it also ignores empty lines.
2018-05-26 21:37:18 -07:00
Natalie Weizenbaum
ad73a91f84
Match Node Sass's logic around source map file names ( #333 )
...
When sourceMap is a string and outFile is null, Node Sass determines
the source map filename from the input filename.
2018-05-24 19:16:14 -04:00
Natalie Weizenbaum
7c26959156
Node API: generate a source map even when outFile isn't set ( #331 )
...
Contrary to documentation, Node Sass generates a source map when
outFile is unset as long as sourceMap is a string.
2018-05-24 18:42:16 -04:00
Natalie Weizenbaum
a7118824b5
Fix source map path canonicalization
...
We need to canonicalize rather than normalize to ensure a consistent
output.
2018-05-24 17:21:19 -04:00
Natalie Weizenbaum
d17b3e73fe
Normalize source map paths before converting to URLs
...
This ensures that source map URLs are always consistent on Windows,
where the case may be different from run to run.
2018-05-24 12:21:28 -04:00
Natalie Weizenbaum
d68acf9ac2
Support compiling entire directories at once ( #324 )
...
Partially addresses #264
2018-05-22 23:06:33 +01:00
Natalie Weizenbaum
1450c241c6
Support input:output syntax for compiling multiple files at once
...
Partially addresses #264
2018-05-20 20:57:33 +01:00
Jen Thakar
6d86b5fbdf
Merge branch 'master' of git://github.com/sass/dart-sass into interactive
2018-05-08 10:23:33 -07:00
Jen Thakar
49198f55ed
Add proper error logging to --interactive
...
Errors are now logged w/o the Sass stack trace and with arrows
pointing to the piece of the input that caused the error.
The bad input will also be highlighted in red if color is enabled.
Adds tests for error logging, both with and without color.
2018-05-08 09:54:35 -07:00
Jen Thakar
125b64760b
Add usage error for invalid use of --interactive
2018-05-07 23:54:25 -07:00
Natalie Weizenbaum
b5fd1409ce
Fix relative imports through relative load paths in the Node API ( #315 )
...
Closes #314
2018-05-02 17:04:36 -07:00
Natalie Weizenbaum
5bf7773590
Track variable declarations for source maps
...
Closes #2
2018-04-25 17:50:24 -07:00
Natalie Weizenbaum
6a117905ab
Fix a crash when printing warnings through the Node API ( #311 )
...
Closes #307
2018-04-25 17:47:29 -07:00
Natalie Weizenbaum
234aa12e08
Add CLI source map support ( #309 )
...
Partially addresses #2
2018-04-25 16:12:37 -07:00
Natalie Weizenbaum
dc8d8a6166
Run Dart Sass in checked mode in tests ( #304 )
...
Also fix a checked mode error.
2018-04-23 21:20:38 -07:00
Natalie Weizenbaum
7a882bd3be
Fix a relative import bug in the JS API
...
Closes #284
2018-04-21 00:50:23 -07:00
Natalie Weizenbaum
11f38291f0
Clean up expectations in node_api_test
2018-04-21 00:49:51 -07:00
Natalie Weizenbaum
fd19bc85b6
Add a JavaScript API for source map generation ( #302 )
...
Partially addresses #2
2018-04-20 17:56:00 -07:00
Natalie Weizenbaum
9ea001598a
Add a Dart API for source map generation ( #299 )
...
Partially addresses #2
2018-04-19 16:51:20 -07:00
Natalie Weizenbaum
b23993ea66
Always emit units for non-length/angle 0 values ( #300 )
...
Closes #297
2018-04-19 15:20:17 -07:00
Jen Thakar
d262e28603
Add interactive SassScript REPL
2018-04-14 11:40:04 -07:00
Natalie Weizenbaum
a31251fdc9
Create a directory for CSS output if necessary ( #291 )
...
Closes #288
2018-04-12 16:40:53 -07:00
Natalie Weizenbaum
5cce76b6d4
Use constants from dart2_constants ( #282 )
2018-04-04 15:49:07 -07:00
Natalie Weizenbaum
880c91444e
Add support for "sass input.scss output.css" ( #275 )
...
Closes #274
2018-03-27 13:45:03 -07:00
Natalie Weizenbaum
6608a46d1e
Make errors subtypes of Error
2018-03-23 15:22:10 -07:00
Natalie Weizenbaum
0e5a707ab4
Support both data and path options for the Node API
2018-03-23 14:55:28 -07:00
Natalie Weizenbaum
7fd8f7d6c2
Add an --indented flag ( #253 )
...
Closes #105
2018-03-11 23:07:31 -07:00
Natalie Weizenbaum
b93fcdb5ed
Add a --quiet flag to the CLI
...
Partially addresses #105
2018-03-11 21:05:34 -07:00
Natalie Weizenbaum
4c6494c288
Add a Logger class to control how output is emitted
2018-03-11 21:05:34 -07:00
Natalie Weizenbaum
da32588af1
Add support for the --load-path flag ( #251 )
...
Partially addresses #105
2018-03-11 20:39:00 -07:00
Natalie Weizenbaum
07b02174e0
Represent DynamicImport.url as a String ( #250 )
...
This works around dart-lang/sdk#32490. We need to preserve the leading
"./" to match Node Sass's behavior.
Closes #246
2018-03-11 15:46:59 -07:00
Natalie Weizenbaum
b7d4384a5c
Preserve whitespace after and
in media queries in compressed mode ( #242 )
...
Closes #239
2018-03-02 14:15:38 -08:00
Jen Thakar
90e65c1a93
Fix bug in visitColor for compressed mode
...
If `value` is not a named color, `name.length` will error.
This checks that `name` is not null before checking the length.
2018-02-03 13:25:07 -08:00
Natalie Weizenbaum
163e99bff2
Be explicit about string quotes in new SassString()
2018-02-02 16:47:54 -08:00
Natalie Weizenbaum
f0e181bf2e
Don't run tests that require Dart 2 against stable
2018-02-01 18:21:34 -08:00
Natalie Weizenbaum
5a1bfaebbf
Add support for the Node Sass custom function API
...
Closes #10
Closes #12
2018-01-30 11:14:42 -08:00
Natalie Weizenbaum
ac0ab00120
Emit compressed output
2018-01-21 13:15:55 -08:00
Natalie Weizenbaum
da2ff6a06d
Fix analysis hints ( #215 )
2018-01-19 15:26:41 -08:00
Natalie Weizenbaum
123fe55017
Add SassString index helpers
...
We aren't using these in our own functions because, for
backwards-compatibility, these functions don't throw errors for
invalid indices.
2018-01-14 16:04:46 -08:00
Natalie Weizenbaum
b1b9eca66a
Add tests for SassNumber.valueInRange() ( #212 )
2018-01-14 15:18:16 -08:00
Natalie Weizenbaum
9d207b13ec
SassNumber.assertIndexFor() -> Value.sassIndexToListIndex() ( #211 )
2018-01-14 13:38:43 -08:00
Natalie Weizenbaum
ce1cc18c0e
Add tests for Value subclasses
...
Now that these are an exposed part of the API, they need to be tested.
2018-01-13 00:34:54 -08:00
Natalie Weizenbaum
7a4158dafb
Fix some tests that were broken on Windows
2017-12-08 01:03:34 -08:00
Natalie Weizenbaum
6a1e6e6d12
Don't run ensureNpmPackage() on Windows under Node
2017-12-07 17:30:08 -08:00
Natalie Weizenbaum
525386e13c
Add a missing @TestOn
2017-12-02 14:39:53 -08:00
Natalie Weizenbaum
aa5fd1d060
Add support for the fibers package to speed up render()
2017-12-02 12:39:28 -08:00
Natalie Weizenbaum
0a67d3845f
Add a dev dependency on fibers from NPM
2017-12-01 14:36:37 -08:00
Natalie Weizenbaum
7178a91844
Make ensureNpmPackage() resilient to dependency overrides
2017-12-01 14:36:37 -08:00
Natalie Weizenbaum
8272724f42
Add support for async importers to the JS render() function ( #196 )
...
Closes #9
2017-12-01 14:29:11 -08:00
Natalie Weizenbaum
0df3463213
Compile asynchronous code to synchronous ( #194 )
...
See #9
2017-12-01 14:29:11 -08:00
Natalie Weizenbaum
e0ae8c907c
Add synchronous Node importer support
...
See #9
2017-11-03 12:28:56 -07:00
Natalie Weizenbaum
4e6e04faa5
Add tests for Node importers
...
These have been validated against node-sass itself, but they aren't
yet run supported by Dart Sass.
2017-11-02 18:12:47 -07:00
Natalie Weizenbaum
530c4244d0
Refactor some Node API testing
2017-10-20 16:56:54 -07:00
Natalie Weizenbaum
a003e5c31f
Expose a Dart API for importers
...
Closes #172
2017-10-12 21:54:58 -07:00
Natalie Weizenbaum
164f532ea2
Remove unused arguments from cli_shared.dart ( #181 )
2017-10-12 12:03:57 -07:00
Sam Rawlins
97f678a770
Read Sass from stdin ( #137 )
...
See #105
2017-10-06 18:59:49 -07:00
Natalie Weizenbaum
10ef04bad6
Fix analysis hints
2017-07-14 18:51:55 -07:00
Natalie Weizenbaum
53a8c553de
Add tests.
2017-07-14 16:29:53 -07:00
Natalie Weizenbaum
dfcbf78e7c
Fully support the error value for the Node render() functions
...
Closes #109
2017-07-09 18:18:56 -07:00
Natalie Weizenbaum
c5bf54a41f
Move exception-formatting logic into SassException
...
There was a bunch of custom formatting logic in the executable, which
made it difficult to work with exceptions programatically.
2017-07-09 18:18:56 -07:00
Natalie Weizenbaum
214a2af2e9
Fully support the return value for the Node render() functions ( #165 )
...
Closes #11
2017-07-09 14:52:14 -07:00
Natalie Weizenbaum
f1c23e7484
Rename "toCss" to "serialize"
...
This matches the filename and the name of the visitor.
2017-07-07 17:53:03 -07:00
Natalie Weizenbaum
970755d82e
Rename "render" to "compile"
...
"Render" is a strange term for compilation that kind of got copied
over from Haml and endured due to inertia.
2017-07-07 17:53:03 -07:00
Natalie Weizenbaum
2ff46cb149
Support outputStyle in the JS API ( #163 )
...
Closes #8
2017-07-07 16:39:58 -07:00
Natalie Weizenbaum
74cb974455
Support includePaths in the JS API ( #162 )
...
Closes #7
2017-07-07 14:50:12 -07:00
Natalie Weizenbaum
f41df9f7bd
Add support indentedSyntax to the JS API ( #161 )
...
Partially addresses #7
2017-07-07 01:40:15 -07:00
Natalie Weizenbaum
8f836df66c
Add support for the data option to the JS API ( #159 )
...
Also add renderString to the Dart API.
Partially addresses #7
2017-07-07 00:57:10 -07:00
Natalie Weizenbaum
48ba0e2128
Manually determine the operating system for paths
...
Works around dart-lang/sdk#30098 .
2017-07-06 23:52:43 -07:00
Natalie Weizenbaum
3b36c5a1fb
Reformat.
2017-07-06 23:23:04 -07:00
Natalie Weizenbaum
6ed530c895
Test the Node.js API.
...
Closes #150
2017-07-06 17:39:07 -07:00
Natalie Weizenbaum
6c0f87f0c8
Factor out logic to ensure that the NPM package is compiled
2017-07-06 14:40:45 -07:00
Natalie Weizenbaum
4db551e603
Stop using scheduled_test. ( #142 )
2017-05-25 14:23:48 -07:00
Luis Vargas
cfc3a15041
Support package: URLs as a Dart library ( #53 )
2017-02-03 01:08:06 -08:00
Natalie Weizenbaum
8b6548fc61
Add more CLI tests.
2016-12-02 17:39:28 -08:00
Natalie Weizenbaum
e59a172609
Run CLI tests on Travis.
2016-12-02 16:58:23 -08:00
Natalie Weizenbaum
224d9cdb47
Add CLI test files for Dart and Node.
...
More tests will be added in a future commit.
2016-12-02 16:09:20 -08:00