This repository was archived by the owner on Oct 24, 2025. It is now read-only.
Issue 460: Update the extend operator to no longer filter non-placeholder selectors in the first pass of placeholder substitution #463
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes Issue #460
The first pass of placeholder substitution via the extend operator builds up an all_subbed list of selectors that were substituted. It then creates a selector out of the list and sets it as the selector for the passed in rule set. This ended up blowing away any non-substituted selectors for the rule set.
From issue #146, it sounds like there is a large set of changes intended for the extend operator. So, this fix tries to be surgical to fix the use case in issue 460 only. Our codebase relies on the pattern mentioned in #460 heavily.
There is also a pull request from michaek to update sass-spec to test for this case: sass/sass-spec#33. Once this change is merged, that test should now pass.