dx: use a single git cmd for lastmod calc #26722
Merged
+129
−134
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.
Summary
This replaces the logic to calculate lastmod via multiple git commands into a single git command.
Notes
src/pages/*.astro) will end up with a lastmod that is updated every build. I investigated using Astro'sIntegrationResolvedRouteto determine the source file via a custom integration that wrapped@astrojs/sitemap. But it became simpler to just keep things in a serializer. (I will keep investigating this path via a PR back to astro directly. That is likely a better place for this logic.)readlineto parse the output of the git command. This treats it as a stream and ends up faster while limiting any memory/heap hit from loading all the output into a JS string.Dateclass.Screenshots
Resulting sitemap
Build output