<div dir="ltr"><div dir="ltr">Hi Antonio,<br><br>I maintain dart-sass in Debian.<br><br>The failure is in the command line options. AssetPack runs<br><br> sass -s --trace -I <path> [--scss] [-t compressed]<br><br>but in dart-sass `-s` is short for --style and takes a value, so<br>`-s --trace` is parsed as -s=--trace:<br><br> $ sass -s --trace -I . -t compressed < in.scss<br> "--trace" is not an allowed value for option "-s". (exit 64)<br><br>which is the exit status in your report. dart-sass also dropped --scss<br>(SCSS is the default, the indented syntax is --indented) and -t (use<br>--style=compressed).<br><br>dart-sass implements the current upstream Sass command line, so I would<br>rather not add a ruby-sass compatibility mode to it. The attached patch<br>fixes the command line branch instead: with it, TEST_SASS=1 on 2.15-1<br>passes (Files=1, Tests=18) against dart-sass 1.105, where it currently<br>exits 64 as in your report. The CSS::Sass path is untouched.<br><br>Regards,<br>Emfox<br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Thu, Oct 1, 2026 at 2:41 AM Antonio Terceiro <<a href="mailto:terceiro@debian.org">terceiro@debian.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Package: libmojolicious-plugin-assetpack-perl<br>
Version: 2.15-1<br>
Severity: important<br>
Tags: upstream<br>
Control: affects -1 src:openqa<br>
Control: affects -1 dart-sass<br>
X-Debbugs-CC: <a href="mailto:openqa@packages.debian.org" target="_blank">openqa@packages.debian.org</a>, <a href="mailto:dart-sass@packages.debian.org" target="_blank">dart-sass@packages.debian.org</a> <br>
<br>
Dear Maintainer,<br>
<br>
Mojolicious::Plugin-AssetPack is used by openqa to compile its assets,<br>
including SASS files. The current implementation provising a `sass`<br>
binary up to a few days ago was ruby-sass, which is deprecated and<br>
reached EOL in 2019 as you can read here:<br>
<br>
<a href="https://sass-lang.com/ruby-sass/" rel="noreferrer" target="_blank">https://sass-lang.com/ruby-sass/</a><br>
<br>
dart-sass is the currently maintained implementation, and it entered<br>
Debian recently. ruby-sass has been uploaded dropping any command line<br>
tools, to open space for the new `sass` binary provided by dart-sass.<br>
<br>
This caused a regression in openqa, due to the missing command line<br>
tool, as its tests fail when compiling sass assets. I tried patching<br>
openqa to depend on dart-sass instead of ruby-sass, but it then failed<br>
anyway.<br>
<br>
I then I tracked this down to this package, and could represent a<br>
similar failure by running the tests with TEST_SASS=1:<br>
<br>
----------------8<----------------8<----------------8<-----------------<br>
$ dpkg-query --show ruby-sass dart-sass<br>
dart-sass 1.105.0-5<br>
ruby-sass <br>
$ TEST_SASS=1 prove -Ilib t/sass-bin.t <br>
t/sass-bin.t .. 1/? [Pipe::Sass] Could not compile "sass.sass" with opts={"include_paths" => [bless( do{\(my $o = "/home/terceiro/src/debian/libmojolicious-plugin-assetpack-perl/t/assets")}, 'Mojo::Home' )],"source_map_file" => "__Mojolicious_Plugin_AssetPack_Pipe_Sass__","source_map_file_urls" => 1}: at /home/terceiro/src/debian/libmojolicious-plugin-assetpack-perl/lib/Mojolicious/Plugin/AssetPack/Pipe/Sass.pm line 70.<br>
# Tests were run but no plan was declared and done_testing() was not seen.<br>
# Looks like your test exited with 64 just after 1.<br>
t/sass-bin.t .. Dubious, test returned 64 (wstat 16384, 0x4000)<br>
All 1 subtests passed <br>
<br>
Test Summary Report<br>
-------------------<br>
t/sass-bin.t (Wstat: 16384 (exited 64) Tests: 1 Failed: 0)<br>
Non-zero exit status: 64<br>
Parse errors: No plan found in TAP output<br>
Files=1, Tests=1, 0 wallclock secs ( 0.03 usr 0.00 sys + 0.40 cusr 0.02 csys = 0.45 CPU)<br>
Result: FAIL<br>
----------------8<----------------8<----------------8<-----------------<br>
<br>
If I remove dart-sass and revert ruby-sass to the version in testing,<br>
then those tests pass:<br>
<br>
----------------8<----------------8<----------------8<-----------------<br>
[1]$ sudo apt -qy install ruby-sass/testing dart-sass-<br>
[...]<br>
$ TEST_SASS=1 prove -Ilib t/sass-bin.t <br>
t/sass-bin.t .. ok <br>
All tests successful.<br>
Files=1, Tests=18, 2 wallclock secs ( 0.03 usr 0.00 sys + 2.04 cusr 0.24 csys = 2.31 CPU)<br>
Result: PASS<br>
----------------8<----------------8<----------------8<-----------------<br>
<br>
Looking at the code, Mojolicious::Plugin::AssetPack::Pipe::Sass seems to<br>
depend on the exact command line options provided by sass from<br>
ruby-sass, but dart-sass does not really support the same options.<br>
<br>
It's also valid to point out that these tests are not running by<br>
default, because they need TEST_SASS=1. There are also a few other tests<br>
that get skipped due to missing environment variables, it would be great<br>
if the test coverage could be improved to actually test the usage of the<br>
texternal tools used for handling assets.<br>
<br>
-- System Information:<br>
Debian Release: forky/sid<br>
APT prefers testing<br>
APT policy: (900, 'testing'), (500, 'unstable'), (1, 'experimental')<br>
Architecture: arm64 (aarch64)<br>
<br>
Kernel: Linux 7.2.6+deb14-arm64 (SMP w/32 CPU threads; PREEMPT)<br>
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8), LANGUAGE not set<br>
Shell: /bin/sh linked to /usr/bin/dash<br>
Init: systemd (via /run/systemd/system)<br>
LSM: AppArmor: enabled<br>
<br>
Versions of packages libmojolicious-plugin-assetpack-perl depends on:<br>
ii libfile-which-perl 1.27-2<br>
ii libipc-run3-perl 0.049-1<br>
ii libmojolicious-perl 9.48+dfsg-1<br>
ii perl 5.42.3-1<br>
<br>
libmojolicious-plugin-assetpack-perl recommends no packages.<br>
<br>
libmojolicious-plugin-assetpack-perl suggests no packages.<br>
</blockquote></div><div><br></div></div>