18 releases (breaking)
Uses old Rust 2015
0.13.5-h28 | Apr 9, 2017 |
---|---|
0.13.3-is-everything-brok… | Mar 30, 2017 |
0.12.0-againagain | Feb 2, 2016 |
0.11.0-shitshow | Oct 24, 2015 |
0.8.0-ehhhh | Jul 2, 2015 |
#1031 in Development tools
105KB
3K
SLoC
Sassers
A Sass compiler written natively in Rust.
Incomplete!!!! To see current progress:
- Clone this project and
cargo build
- Clone sass-spec and get ruby and all that good stuff
- In sass-spec, run `./sass-spec.rb -c '/path/to/your/sassers/executable'
Last run I did was 205 passing and 4294 failing out of 4499 tests. So yeah, REALLY NOT DONE YET.
Progress bar: [=-------------------]
Sassers follows Sentimental Versioning.
License
MIT. See LICENSE.
Optimizations
- Pass
T: Write
down into methods instead of returning String all the time to avoid allocating so many times
TODO
- Compare speed/memory usage to libsass
- Profile if it's significantly worse than libsass and fix
- Abstract variable/parameter HashMaps into a
context
orbinding
object with nice insertion and accessing methods
Useful debugging incantation
To get debugging statements and run a particular test:
- Add
extern crate env_logger;
to thetest
module - Add
let _ = env_logger::init();
to the particular test function - Run:
$ RUST_LOG=sassers=debug cargo test -- --nocapture evaluator::tests::it_subtitutes_variable_values
Dependencies
~4.5MB
~90K SLoC