Reduce string allocations with better alternatives #7643
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.
Rationales
frontmatter_defaults.rb
:#path_is_subpath?
checks a derived string against a string value derived from the second argument to the method. Instead of generating a new string from aPathname
object, its better to just pass String objects directly.jekyll/lib/jekyll/frontmatter_defaults.rb
Lines 136 to 139 in 8673cdc
slashed_coll_dir = collections_dir.empty? ? "/" : "#{collections_dir}/"
is better since it avoids allocating interpolated strings for default configuration. Surprisingly, its a lot faster too..!Context
String allocations will be further reduced by shipping #7406