When attribute values contain both an apostrophe and a double quote, we should substitute the character being used to wrap the value with its key code instead of named/keyword entities (for IE support). Fixes #418.
Both of these are required to run the tests during development. Since there isn't a Gemfile for this project and I can't find where the development requirements are, I am assuming this is the right place to put this.
…d from rails
Backtracking in the SCSS parser when deciding between a declaration or a ruleset was taking way too long. When an expected token wasn't found, the parser constructed the full exception, which involved parsing the template for the error message. This parsing was O(template size), leading to nesting-heavy templates approaching O((template size)^2). The new approach makes backtracking more light-weight, at the cost of making exception-raising even more expensive (a perfectly acceptable tradeoff). When backtracking is being considered, no exception is raised; instead, Kernel#throw is used. Since the full error object is unavailable, once the parser knows which error it wants to raise, it actually moves backwards and re-runs the production that caused the error in order to re-raise the error. Closes gh-327