numerous tests mostly related to alpha channel fails on i386 since v0.29.0
Hi,
The Debian packaging of release v0.29.0 fails the testsuite on i386:
failures:
---- core_functions::color::adjust::hsl::alpha_input stdout ----
thread 'core_functions::color::adjust::hsl::alpha_input' panicked at rsass/tests/spec/core_functions/color/adjust/hsl.rs:59:5:
assertion `left == right` failed
left: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.6);\n}\n"
right: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::hsl::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::hwb::alpha_input stdout ----
thread 'core_functions::color::adjust::hwb::alpha_input' panicked at rsass/tests/spec/core_functions/color/adjust/hwb.rs:58:5:
assertion `left == right` failed
left: "a {\n b: rgba(51, 153, 102, 0.6);\n}\n"
right: "a {\n b: rgba(51, 153, 102, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::hwb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::rgb::alpha_arg stdout ----
thread 'core_functions::color::adjust::rgb::alpha_arg' panicked at rsass/tests/spec/core_functions/color/adjust/rgb.rs:22:5:
assertion `left == right` failed
left: "a {\n b: rgba(12, 24, 48, 0.6);\n}\n"
right: "a {\n b: rgba(12, 24, 48, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::rgb::alpha_arg
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::rgb::alpha_input stdout ----
thread 'core_functions::color::adjust::rgb::alpha_input' panicked at rsass/tests/spec/core_functions/color/adjust/rgb.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(12, 24, 48, 0.2);\n}\n"
right: "a {\n b: rgba(12, 24, 48, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::rgb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::units::alpha::percent stdout ----
thread 'core_functions::color::adjust::units::alpha::percent' panicked at rsass/tests/spec/core_functions/color/adjust/units.rs:14:9:
assertion `left == right` failed
left: "a {\n b: rgba(255, 0, 0, 0.6);\n}\n"
right: "a {\n b: rgba(255, 0, 0, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::units::alpha::percent
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::units::alpha::unitless stdout ----
thread 'core_functions::color::adjust::units::alpha::unitless' panicked at rsass/tests/spec/core_functions/color/adjust/units.rs:24:9:
assertion `left == right` failed
left: "a {\n b: rgba(255, 0, 0, 0.6);\n}\n"
right: "a {\n b: rgba(255, 0, 0, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::units::alpha::unitless
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::adjust::units::alpha::unknown stdout ----
thread 'core_functions::color::adjust::units::alpha::unknown' panicked at rsass/tests/spec/core_functions/color/adjust/units.rs:34:9:
assertion `left == right` failed
left: "a {\n b: rgba(255, 0, 0, 0.6);\n}\n"
right: "a {\n b: rgba(255, 0, 0, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::adjust::units::alpha::unknown
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::hsl::alpha_arg stdout ----
thread 'core_functions::color::change::hsl::alpha_arg' panicked at rsass/tests/spec/core_functions/color/change/hsl.rs:22:5:
assertion `left == right` failed
left: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.6);\n}\n"
right: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::hsl::alpha_arg
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::hsl::alpha_input stdout ----
thread 'core_functions::color::change::hsl::alpha_input' panicked at rsass/tests/spec/core_functions/color/change/hsl.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.6);\n}\n"
right: "a {\n b: rgba(151.776, 104.7744, 93.024, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::hsl::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::hwb::alpha_arg stdout ----
thread 'core_functions::color::change::hwb::alpha_arg' panicked at rsass/tests/spec/core_functions/color/change/hwb.rs:22:5:
assertion `left == right` failed
left: "a {\n b: rgba(51, 153, 102, 0.2);\n}\n"
right: "a {\n b: rgba(51, 153, 102, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::hwb::alpha_arg
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::hwb::alpha_input stdout ----
thread 'core_functions::color::change::hwb::alpha_input' panicked at rsass/tests/spec/core_functions/color/change/hwb.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(51, 153, 102, 0.6);\n}\n"
right: "a {\n b: rgba(51, 153, 102, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::hwb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::rgb::alpha_arg stdout ----
thread 'core_functions::color::change::rgb::alpha_arg' panicked at rsass/tests/spec/core_functions/color/change/rgb.rs:22:5:
assertion `left == right` failed
left: "a {\n b: rgba(12, 24, 48, 0.2);\n}\n"
right: "a {\n b: rgba(12, 24, 48, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::rgb::alpha_arg
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::change::rgb::alpha_input stdout ----
thread 'core_functions::color::change::rgb::alpha_input' panicked at rsass/tests/spec/core_functions/color/change/rgb.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(12, 24, 48, 0.2);\n}\n"
right: "a {\n b: rgba(12, 24, 48, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::change::rgb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::complement::alpha stdout ----
thread 'core_functions::color::complement::alpha' panicked at rsass/tests/spec/core_functions/color/complement.rs:10:5:
assertion `left == right` failed
left: "a {\n b: rgba(224, 64, 80, 0.6);\n}\n"
right: "a {\n b: rgba(224, 64, 80, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::complement::alpha
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::desaturate::alpha stdout ----
thread 'core_functions::color::desaturate::alpha' panicked at rsass/tests/spec/core_functions/color/desaturate.rs:10:5:
assertion `left == right` failed
left: "a {\n b: rgba(190.5, 190.5, 190.5, 0.2);\n}\n"
right: "a {\n b: rgba(190.5, 190.5, 190.5, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::desaturate::alpha
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::grayscale::legacy::alpha stdout ----
thread 'core_functions::color::grayscale::legacy::alpha' panicked at rsass/tests/spec/core_functions/color/grayscale.rs:136:9:
assertion `left == right` failed
left: "a {\n b: rgba(76.5, 76.5, 76.5, 0.2);\n}\n"
right: "a {\n b: rgba(76.5, 76.5, 76.5, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::grayscale::legacy::alpha
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::mix::alpha::even stdout ----
thread 'core_functions::color::mix::alpha::even' panicked at rsass/tests/spec/core_functions/color/mix/alpha.rs:10:5:
assertion `left == right` failed
left: "a {\n b: rgba(73, 146.5, 151, 0.2);\n}\n"
right: "a {\n b: rgba(73, 146.5, 151, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::mix::alpha::even
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::mix::both_weights::transparent::last stdout ----
thread 'core_functions::color::mix::both_weights::transparent::last' panicked at rsass/tests/spec/core_functions/color/mix/both_weights.rs:68:9:
assertion `left == right` failed
left: "a {\n b: rgba(145, 225, 111, 0.6);\n}\n"
right: "a {\n b: rgba(145, 225, 111, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::mix::both_weights::transparent::last
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::mix::both_weights::weighted::last stdout ----
thread 'core_functions::color::mix::both_weights::weighted::last' panicked at rsass/tests/spec/core_functions/color/mix/both_weights.rs:95:9:
assertion `left == right` failed
left: "a {\n b: rgba(1, 68, 191, 0.6);\n}\n"
right: "a {\n b: rgba(1, 68, 191, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::mix::both_weights::weighted::last
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::rgb::four_args::in_gamut::named stdout ----
thread 'core_functions::color::rgb::four_args::in_gamut::named' panicked at rsass/tests/spec/core_functions/color/rgb/four_args/in_gamut.rs:10:5:
assertion `left == right` failed
left: "a {\n b: rgba(0, 255, 127, 0.2);\n}\n"
right: "a {\n b: rgba(0, 255, 127, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::rgb::four_args::in_gamut::named
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::rgb::one_arg::alpha::in_gamut::named stdout ----
thread 'core_functions::color::rgb::one_arg::alpha::in_gamut::named' panicked at rsass/tests/spec/core_functions/color/rgb/one_arg/alpha.rs:179:9:
assertion `left == right` failed
left: "a {\n b: rgba(0, 255, 127, 0.2);\n}\n"
right: "a {\n b: rgba(0, 255, 127, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::rgb::one_arg::alpha::in_gamut::named
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::rgb::one_arg::alpha::in_gamut::parenthesized stdout ----
thread 'core_functions::color::rgb::one_arg::alpha::in_gamut::parenthesized' panicked at rsass/tests/spec/core_functions/color/rgb/one_arg/alpha.rs:197:9:
assertion `left == right` failed
left: "a {\n b: rgba(0, 255, 127, 0.2);\n}\n"
right: "a {\n b: rgba(0, 255, 127, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::rgb::one_arg::alpha::in_gamut::parenthesized
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::scale::hsl::alpha_input stdout ----
thread 'core_functions::color::scale::hsl::alpha_input' panicked at rsass/tests/spec/core_functions/color/scale/hsl.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(15.8934486486, 133.8665513514, 122.0692410811, 0.6);\n}\n"
right: "a {\n b: rgba(15.8934486486, 133.8665513514, 122.0692410811, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::scale::hsl::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::scale::hwb::alpha_input stdout ----
thread 'core_functions::color::scale::hwb::alpha_input' panicked at rsass/tests/spec/core_functions/color/scale/hwb.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(51, 102, 76.5, 0.6);\n}\n"
right: "a {\n b: rgba(51, 102, 76.5, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::scale::hwb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::color::scale::rgb::alpha_input stdout ----
thread 'core_functions::color::scale::rgb::alpha_input' panicked at rsass/tests/spec/core_functions/color/scale/rgb.rs:34:5:
assertion `left == right` failed
left: "a {\n b: rgba(171.4, 123.52, 145.8, 0.2);\n}\n"
right: "a {\n b: rgba(171.4, 123.52, 145.8, 0.3);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::color::scale::rgb::alpha_input
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- core_functions::meta::get_function::same_module::plain_css stdout ----
thread 'core_functions::meta::get_function::same_module::plain_css' panicked at rsass/tests/spec/core_functions/meta/get_function/same_module.rs:57:5:
assertion `left == right` failed
left: "a {\n sass-fn: 1;\n css-fn: round(0.5);\n}\n"
right: "a {\n sass-fn: 1;\n css-fn: round(0.6);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::core_functions::meta::get_function::same_module::plain_css
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass::color_functions::other::change_color::a::test stdout ----
thread 'libsass::color_functions::other::change_color::a::test' panicked at rsass/tests/spec/libsass/color_functions/other/change_color/a.rs:10:5:
assertion `left == right` failed
left: "foo {\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.2);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.5);\n c7: rgba(0, 0, 0, 0.6);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: black;\n}\n"
right: "foo {\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.3);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.6);\n c7: rgba(0, 0, 0, 0.7);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: black;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass::color_functions::other::change_color::a::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass::color_functions::opacity::alpha::test stdout ----
thread 'libsass::color_functions::opacity::alpha::test' panicked at rsass/tests/spec/libsass/color_functions/opacity/alpha.rs:10:5:
assertion `left == right` failed
left: "foo {\n c0: 0;\n c1: 0.1;\n c2: 0.2;\n c3: 0.2;\n c4: 0.4;\n c5: 0.5;\n c6: 0.5;\n c7: 0.6;\n c8: 0.8;\n c9: 0.9;\n c10: 1;\n}\n"
right: "foo {\n c0: 0;\n c1: 0.1;\n c2: 0.2;\n c3: 0.3;\n c4: 0.4;\n c5: 0.5;\n c6: 0.6;\n c7: 0.7;\n c8: 0.8;\n c9: 0.9;\n c10: 1;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass::color_functions::opacity::alpha::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass::color_functions::rgb::rgba::a::test stdout ----
thread 'libsass::color_functions::rgb::rgba::a::test' panicked at rsass/tests/spec/libsass/color_functions/rgb/rgba/a.rs:10:5:
assertion `left == right` failed
left: "foo {\n c-1: rgba(0, 0, 0, 0);\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.2);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.5);\n c7: rgba(0, 0, 0, 0.6);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: rgb(0, 0, 0);\n c11: rgb(0, 0, 0);\n c12: rgb(0, 0, 0);\n}\nfoo {\n c-1: rgba(0, 0, 0, 0);\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.2);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.5);\n c7: rgba(0, 0, 0, 0.6);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: black;\n c11: black;\n c12: black;\n}\n"
right: "foo {\n c-1: rgba(0, 0, 0, 0);\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.3);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.6);\n c7: rgba(0, 0, 0, 0.7);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: rgb(0, 0, 0);\n c11: rgb(0, 0, 0);\n c12: rgb(0, 0, 0);\n}\nfoo {\n c-1: rgba(0, 0, 0, 0);\n c0: rgba(0, 0, 0, 0);\n c1: rgba(0, 0, 0, 0.1);\n c2: rgba(0, 0, 0, 0.2);\n c3: rgba(0, 0, 0, 0.3);\n c4: rgba(0, 0, 0, 0.4);\n c5: rgba(0, 0, 0, 0.5);\n c6: rgba(0, 0, 0, 0.6);\n c7: rgba(0, 0, 0, 0.7);\n c8: rgba(0, 0, 0, 0.8);\n c9: rgba(0, 0, 0, 0.9);\n c10: black;\n c11: black;\n c12: black;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass::color_functions::rgb::rgba::a::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass::units::conversion::size::test stdout ----
thread 'libsass::units::conversion::size::test' panicked at rsass/tests/spec/libsass/units/conversion/size.rs:10:5:
assertion `left == right` failed
left: ".result {\n output: 1px;\n output: 4.2;\n output: 4.2px;\n output: 1.3333333333px;\n output: 3.15;\n output: 4.2pt;\n output: 16px;\n output: 0.2625;\n output: 4.2pc;\n output: 3.7795275591px;\n output: 1.11125;\n output: 4.2mm;\n output: 37.7952755906px;\n output: 0.111125;\n output: 4.2cm;\n output: 96px;\n output: 0.04375;\n output: 4.2in;\n output: 0.75pt;\n output: 5.6;\n output: 4.2px;\n output: 1pt;\n output: 4.2;\n output: 4.2pt;\n output: 12pt;\n output: 0.35;\n output: 4.2pc;\n output: 2.8346456693pt;\n output: 1.4816666667;\n output: 4.2mm;\n output: 28.3464566929pt;\n output: 0.1481666667;\n output: 4.2cm;\n output: 72pt;\n output: 0.0583333333;\n output: 4.2in;\n output: 0.0625pc;\n output: 67.2;\n output: 4.2px;\n output: 0.0833333333pc;\n output: 50.4;\n output: 4.2pt;\n output: 1pc;\n output: 4.2;\n output: 4.2pc;\n output: 0.2362204724pc;\n output: 17.78;\n output: 4.2mm;\n output: 2.3622047244pc;\n output: 1.778;\n output: 4.2cm;\n output: 6pc;\n output: 0.6;\n output: 4.2in;\n output: 0.2645833333mm;\n output: 15.874015748;\n output: 4.2px;\n output: 0.3527777778mm;\n output: 11.905511811;\n output: 4.2pt;\n output: 4.2333333333mm;\n output: 0.9921259843;\n output: 4.2pc;\n output: 1mm;\n output: 4.2;\n output: 4.2mm;\n output: 10mm;\n output: 0.42;\n output: 4.2cm;\n output: 25.4mm;\n output: 0.1653543307;\n output: 4.2in;\n output: 0.0264583333cm;\n output: 158.7401574803;\n output: 4.2px;\n output: 0.0352777778cm;\n output: 119.0551181102;\n output: 4.2pt;\n output: 0.4233333333cm;\n output: 9.9212598425;\n output: 4.2pc;\n output: 0.1cm;\n output: 42;\n output: 4.2mm;\n output: 1cm;\n output: 4.2;\n output: 4.2cm;\n output: 2.54cm;\n output: 1.6535433071;\n output: 4.2in;\n output: 0.0104166667in;\n output: 403.2;\n output: 4.2px;\n output: 0.0138888889in;\n output: 302.4;\n output: 4.2pt;\n output: 0.1666666667in;\n output: 25.2;\n output: 4.2pc;\n output: 0.0393700787in;\n output: 106.68;\n output: 4.2mm;\n output: 0.3937007874in;\n output: 10.668;\n output: 4.2cm;\n output: 1in;\n output: 4.2;\n output: 4.2in;\n}\n"
right: ".result {\n output: 1px;\n output: 4.2;\n output: 4.2px;\n output: 1.3333333333px;\n output: 3.15;\n output: 4.2pt;\n output: 16px;\n output: 0.2625;\n output: 4.2pc;\n output: 3.7795275591px;\n output: 1.11125;\n output: 4.2mm;\n output: 37.7952755906px;\n output: 0.111125;\n output: 4.2cm;\n output: 96px;\n output: 0.04375;\n output: 4.2in;\n output: 0.75pt;\n output: 5.6;\n output: 4.2px;\n output: 1pt;\n output: 4.2;\n output: 4.2pt;\n output: 12pt;\n output: 0.35;\n output: 4.2pc;\n output: 2.8346456693pt;\n output: 1.4816666667;\n output: 4.2mm;\n output: 28.3464566929pt;\n output: 0.1481666667;\n output: 4.2cm;\n output: 72pt;\n output: 0.0583333333;\n output: 4.2in;\n output: 0.0625pc;\n output: 67.2;\n output: 4.2px;\n output: 0.0833333333pc;\n output: 50.4;\n output: 4.2pt;\n output: 1pc;\n output: 4.2;\n output: 4.2pc;\n output: 0.2362204724pc;\n output: 17.78;\n output: 4.2mm;\n output: 2.3622047244pc;\n output: 1.778;\n output: 4.2cm;\n output: 6pc;\n output: 0.7;\n output: 4.2in;\n output: 0.2645833333mm;\n output: 15.874015748;\n output: 4.2px;\n output: 0.3527777778mm;\n output: 11.905511811;\n output: 4.2pt;\n output: 4.2333333333mm;\n output: 0.9921259843;\n output: 4.2pc;\n output: 1mm;\n output: 4.2;\n output: 4.2mm;\n output: 10mm;\n output: 0.42;\n output: 4.2cm;\n output: 25.4mm;\n output: 0.1653543307;\n output: 4.2in;\n output: 0.0264583333cm;\n output: 158.7401574803;\n output: 4.2px;\n output: 0.0352777778cm;\n output: 119.0551181102;\n output: 4.2pt;\n output: 0.4233333333cm;\n output: 9.9212598425;\n output: 4.2pc;\n output: 0.1cm;\n output: 42;\n output: 4.2mm;\n output: 1cm;\n output: 4.2;\n output: 4.2cm;\n output: 2.54cm;\n output: 1.6535433071;\n output: 4.2in;\n output: 0.0104166667in;\n output: 403.2;\n output: 4.2px;\n output: 0.0138888889in;\n output: 302.4;\n output: 4.2pt;\n output: 0.1666666667in;\n output: 25.2;\n output: 4.2pc;\n output: 0.0393700787in;\n output: 106.68;\n output: 4.2mm;\n output: 0.3937007874in;\n output: 10.668;\n output: 4.2cm;\n output: 1in;\n output: 4.2;\n output: 4.2in;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass::units::conversion::size::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass_closed_issues::issue_1332::test stdout ----
thread 'libsass_closed_issues::issue_1332::test' panicked at rsass/tests/spec/libsass_closed_issues/issue_1332.rs:10:5:
assertion `left == right` failed
left: ".box1 {\n color: rgb(51, 51, 51);\n}\n.box2 {\n color: rgb(32, 32, 32);\n}\n.box3 {\n color: rgba(51, 51, 51, 0.6);\n}\n"
right: ".box1 {\n color: rgb(51, 51, 51);\n}\n.box2 {\n color: rgb(32, 32, 32);\n}\n.box3 {\n color: rgba(51, 51, 51, 0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass_closed_issues::issue_1332::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- libsass_closed_issues::issue_550::operator::test stdout ----
thread 'libsass_closed_issues::issue_550::operator::test' panicked at rsass/tests/spec/libsass_closed_issues/issue_550/operator.rs:10:5:
assertion `left == right` failed
left: "#foo {\n color: saturate(0.02);\n color: saturate(0.6);\n -webkit-filter: grayscale(0.02);\n -webkit-filter: grayscale(0.6);\n}\n"
right: "#foo {\n color: saturate(0.03);\n color: saturate(0.7);\n -webkit-filter: grayscale(0.03);\n -webkit-filter: grayscale(0.7);\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::libsass_closed_issues::issue_550::operator::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- non_conformant::basic::t22_colors_with_alpha::test stdout ----
thread 'non_conformant::basic::t22_colors_with_alpha::test' panicked at rsass/tests/spec/non_conformant/basic/t22_colors_with_alpha.rs:10:5:
assertion `left == right` failed
left: "div {\n color: rgb(255, 255, 0);\n background: rgb(123, 45, 6);\n grah: rgba(255, 0, 238, 0.5);\n blah: rgba(1, 2, 3, 0.5);\n floo: rgb(0, 255, 255);\n bloo: rgba(0, 255, 255, 0.6);\n groo: rgb(0, 255, 255);\n hoo: 123;\n moo: 45;\n poo: 6;\n goo: rgba(63.75, 0, 191.25, 0.75);\n boo: #edcba9;\n}\n"
right: "div {\n color: rgb(255, 255, 0);\n background: rgb(123, 45, 6);\n grah: rgba(255, 0, 238, 0.5);\n blah: rgba(1, 2, 3, 0.6);\n floo: rgb(0, 255, 255);\n bloo: rgba(0, 255, 255, 0.7);\n groo: rgb(0, 255, 255);\n hoo: 123;\n moo: 45;\n poo: 6;\n goo: rgba(63.75, 0, 191.25, 0.75);\n boo: #edcba9;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::non_conformant::basic::t22_colors_with_alpha::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- non_conformant::scss::composed_args::test stdout ----
thread 'non_conformant::scss::composed_args::test' panicked at rsass/tests/spec/non_conformant/scss/composed_args.rs:10:5:
assertion `left == right` failed
left: ".testOneLevelPassthrough {\n width: 1px;\n height: 2px;\n opacity: 0.2;\n}\n.testOneLevelNoArgs {\n width: 0;\n height: 0;\n opacity: 0;\n}\n.testOneLevelSingleArg {\n width: 1px;\n height: 0;\n opacity: 0;\n}\n.testOneLevelNamedSingleArg {\n width: 0;\n height: 0;\n opacity: 0.1;\n}\n.testOneLevelNamedArgs {\n width: 1px;\n height: 2px;\n opacity: 0.2;\n}\n.testTwoLevelPassthrough {\n width: 1px;\n height: 2px;\n opacity: 0.2;\n}\n.testTwoLevelNoArgs {\n width: 0;\n height: 0;\n opacity: 0;\n}\n.testTwoLevelSingleArg {\n width: 1px;\n height: 0;\n opacity: 0;\n}\n.testTwoLevelNamedSingleArg {\n width: 0;\n height: 0;\n opacity: 0.1;\n}\n.testTwoLevelNamedArgs {\n width: 1px;\n height: 2px;\n opacity: 0.2;\n}\n"
right: ".testOneLevelPassthrough {\n width: 1px;\n height: 2px;\n opacity: 0.3;\n}\n.testOneLevelNoArgs {\n width: 0;\n height: 0;\n opacity: 0;\n}\n.testOneLevelSingleArg {\n width: 1px;\n height: 0;\n opacity: 0;\n}\n.testOneLevelNamedSingleArg {\n width: 0;\n height: 0;\n opacity: 0.1;\n}\n.testOneLevelNamedArgs {\n width: 1px;\n height: 2px;\n opacity: 0.3;\n}\n.testTwoLevelPassthrough {\n width: 1px;\n height: 2px;\n opacity: 0.3;\n}\n.testTwoLevelNoArgs {\n width: 0;\n height: 0;\n opacity: 0;\n}\n.testTwoLevelSingleArg {\n width: 1px;\n height: 0;\n opacity: 0;\n}\n.testTwoLevelNamedSingleArg {\n width: 0;\n height: 0;\n opacity: 0.1;\n}\n.testTwoLevelNamedArgs {\n width: 1px;\n height: 2px;\n opacity: 0.3;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::non_conformant::scss::composed_args::test
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- values::calculation::max::simplified::third stdout ----
thread 'values::calculation::max::simplified::third' panicked at rsass/tests/spec/values/calculation/max.rs:369:9:
assertion `left == right` failed
left: "a {\n b: 2.8px;\n}\n"
right: "a {\n b: 2.9px;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::values::calculation::max::simplified::third
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- values::numbers::modulo::floats::larger::negative_positive stdout ----
thread 'values::numbers::modulo::floats::larger::negative_positive' panicked at rsass/tests/spec/values/numbers/modulo/floats.rs:25:9:
assertion `left == right` failed
left: "a {\n b: 0.8;\n}\n"
right: "a {\n b: 0.9;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::values::numbers::modulo::floats::larger::negative_positive
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---- values::numbers::modulo::floats::larger::positive_negative stdout ----
thread 'values::numbers::modulo::floats::larger::positive_negative' panicked at rsass/tests/spec/values/numbers/modulo/floats.rs:36:9:
assertion `left == right` failed
left: "a {\n b: -0.8;\n}\n"
right: "a {\n b: -0.9;\n}\n"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: spec::values::numbers::modulo::floats::larger::positive_negative
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Full build log is here
Strange. The alpha value is somehow lowered by 0.1 in a bunch of color tests where the alpha value is not actually involved in any calculation?
I wonder if it may be a problem with the code that prints out numbers? But I don't think I have access to any actual i386 (that is, 32-bit intel) computer. Could you do this change, run the tests again and post the output?
diff --git a/rsass/src/value/number.rs b/rsass/src/value/number.rs
index 1361a3e1..a8952544 100644
--- a/rsass/src/value/number.rs
+++ b/rsass/src/value/number.rs
@@ -236,7 +236,7 @@ fn fmt(&self, out: &mut fmt::Formatter) -> fmt::Result {
if s.is_sign_negative() { "-" } else { "" }
)
} else {
- let mut frac = s.fract();
+ let mut frac = dbg!(s).fract();
let mut whole = s.trunc().abs();
let mut dec = String::with_capacity(if frac == 0. {
0
A build on Debian i386 (which is a label representing ia32 somewhat equivalent of i686) with your requested debugging patch applied is now here
Ok, the following extract seems to confirm that the problem is indeed in the formatting code. As it happens, I'm not entirely happy with that code anyway, and will probably rewrite the impl fmt::Display for Formatted<'_, Number> sometime. But it's not a high prio for me at the moment, so it may take some time.
Contributions are welcome, if you, or anyone reading this, feels up to it.
--- variablescope::test::color_simple_rgba stdout ----
[rsass/src/value/number.rs:239:28] s = 1.0
[rsass/src/value/number.rs:239:28] s = 2.0
[rsass/src/value/number.rs:239:28] s = 3.0
[rsass/src/value/number.rs:239:28] s = 0.6
thread 'variablescope::test::color_simple_rgba' panicked at rsass/src/variablescope.rs:764:9:
assertion `left == right` failed
left: "rgba(1, 2, 3, 0.5)"
right: "rgba(1, 2, 3, 0.6)"
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: core::panicking::assert_failed_inner
3: core::panicking::assert_failed
4: rsass::variablescope::test::color_simple_rgba
5: core::ops::function::FnOnce::call_once
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.