Fix textareas only after preserved timing #941
Merged
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.
Description
We call
Haml::Buffer#fix_textareas!
to rollback textarea content's first

, which is unexpectedly preserved from\n
byHaml::Helpers#preserve
, to\n
for every script.But it means that we need to call
Haml::Buffer#fix_textareas!
only after we callpreserve
. So I fixed to do so.Benchmark
With Ruby 2.4.0 and k0kubun/haml_bench/templates/slim_bench.haml,
before
after
Now
_hamlout
's dependency is only_hamlout.attributes
call for Hash in that benchmark template. It means that we have new optimization chance to lazily initializeHaml::Buffer
instance, which is the current bottleneck of Haml.