Fix cache not resetting when include files are modified #26
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.
This PR addresses an issue where modifications to cached include files were not being reflected in subsequent builds.
Problem
When using
include_cachedtag, if the included file (e.g.,sidebar.html) was modified, the changes weren't visible in the rendered output even after rebuilding the site. This happened because the cache key was only based on the file path and parameters, not the file's content or modification time.Solution
I've modified the caching mechanism to include the file's modification time in the cache key calculation:
keymethod intag.rbto include the file's modification timedigestmethod to accept and use the modification time hashNow, whenever a cached include file is modified, its modification time changes, which generates a new cache key, causing a cache miss and forcing Jekyll to re-render the include.
Fixes #20.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.