Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.0 #3

Open
9 of 15 tasks
kaj opened this issue Apr 28, 2017 · 16 comments
Open
9 of 15 tasks

Release 1.0 #3

kaj opened this issue Apr 28, 2017 · 16 comments
Assignees

Comments

@kaj
Copy link
Owner

kaj commented Apr 28, 2017

Tracking issue for rsass 1.0 release criteria.

@kaj kaj self-assigned this Apr 28, 2017
@Boddlnagg
Copy link

Will widespread CSS/SASS frameworks like Bourbon or ZURB Foundation work with 1.0? Currently these two don't work.

@kaj
Copy link
Owner Author

kaj commented Jul 12, 2017

Will widespread CSS/SASS frameworks like Bourbon or ZURB Foundation work with 1.0? Currently these two don't work.

I don't want to add beeing able to transpile specific frameworks to the release criteria, but it may well be that the missing interpolation is the thing that is lacking for them, and if so, it will work.

One thing that I have not added to the release criteria, but that I want to support as soon as possible, is the selector-likes stop markers that is used for css animations (actually, using keywords from and to already works, but using percentages does not).

@Boddlnagg
Copy link

Okay, I looked at the errors that I get when I try to use Bourbon and Foundation with rsass, and the current blocker actually seems to be the missing interpolation (interpolation in property names for Bourbon and interpolation in media queries for Foundation), though this does not say whether everything will work once that is implemented.

Anyway, thanks for your work on this project!

@kaj
Copy link
Owner Author

kaj commented Nov 13, 2017

I added a bullet point for string quoting / unqouting. I'm considering requiring support for placeholder selectors and @extend directive.

@Geobert
Copy link

Geobert commented May 11, 2018

Hi, don't forget windows support! Thanks for your initiative!

  • build on appveyor

@kaj
Copy link
Owner Author

kaj commented May 12, 2018

Yes, it "should" build on windows, and I hope there won't be any big problems with that in itself (I think rsass works on windows as-is), but actually having continous verification of that would be a good thing. I'll try to look into it in a week or so. Hints welcome ... :-)

@Geobert
Copy link

Geobert commented May 12, 2018

I can give you a config file for appveyor :)

@Geobert
Copy link

Geobert commented May 12, 2018

@kaj
Copy link
Owner Author

kaj commented May 19, 2018

Appveyor build added and successfull. Thanks for the config file, @Geobert .

@naturallymitchell
Copy link

A reasonable amount of success on the sass-spec.

Would you please break this down further so we can gauge ongoing progress and work remaining?

@kaj
Copy link
Owner Author

kaj commented Feb 11, 2019

A reasonable amount of success on the sass-spec.

Would you please break this down further so we can gauge ongoing progress and work remaining?

I extracted Support placeholder selectors and the @extend directive as a separate item. Other than that, I don't really know. Also, I think at least issues #41 , #42 and #46 should be resolved.

@naturallymitchell
Copy link

how do the tests look now? (since 0597e3c)

@kaj
Copy link
Owner Author

kaj commented Jun 14, 2019

how do the tests look now? (since 0597e3c)

Pretty similar to how they looked before, only some tests that contained multiple properties testing different aspects of something has been broken up into a set of tests testing one aspect each, as for example 0597e3c#diff-b97f6e13978eef129ce0222c336c6d02

@Keats
Copy link

Keats commented May 9, 2021

@kaj How close would you say it is to usable? I'm looking at alternatives to sass-rs for Zola and there is this library and grass which seem to be at roughly the same stage.

I've tried running the cmd line on the new bootstrap 5 scss files but I get:

Error: $weight: Expected -20 to be within 0 and 100.
    ,
156 |   @return mix(white, $color, $weight);
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    '
    ../../Downloads/bootstrap-5.0.0/scss/_functions.scss 156:11  import
    ../../Downloads/bootstrap-5.0.0/scss/bootstrap-grid.scss 10:9  root stylesheet
    ,
166 |   @return if($weight > 0, shade-color($color, $weight), tint-color($color, -$weight));
    |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    '
    ../../Downloads/bootstrap-5.0.0/scss/_functions.scss 166:57  import
    ../../Downloads/bootstrap-5.0.0/scss/bootstrap-grid.scss 10:9  root stylesheet
    ,
291 | $link-hover-color:                        shift-color($link-color, $link-shade-percentage) !default;
    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    '
    ../../Downloads/bootstrap-5.0.0/scss/_variables.scss 291:43  import
    ../../Downloads/bootstrap-5.0.0/scss/bootstrap-grid.scss 11:9  root stylesheet

The JS implementation (using dart-sass) from their package.json seem to compile it without errors. Now according to their docs mix should be a value in between 0-100 so the error should be legit.
It would useful to vendor a few common Sass libraries and compile them as additional tests. It also gives an idea of which missing feature is commonly used.

@kaj
Copy link
Owner Author

kaj commented May 10, 2021

After looking at this for a while I realized what happens here: Since the shift-color function uses the if function rather than the @if directive, both its arguments are evaluated. For normal functions, evaluating the arguments before entering the function body is expected, but as the documentation actually mentions the if function is special in that regard. So it needs a special-case implementation, which is a bit ugly but probably not that hard to implement.

@kaj
Copy link
Owner Author

kaj commented May 10, 2021

As for the more general "use bootstrap and other libraries to find out what to implement next", I have only done so to some extent, but I don't think it's relevant to include that as an actual test case, at least not until it suceeds once manually. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants