We ran into an issue using GitHub Actions where the cache action preserves modification times, but the checkout action does not, and so the loader sources always look newer than the cache, and hence the loaders run even though the cache is populated. So perhaps a better default during build is to ignore modification times, and simply check whether the files are present. This way it will work by default in GitHub Actions without workarounds such as
find docs/.observablehq/cache -type f -exec touch {} +
And you can always remove the cache before building if you want to force a clean build.
We ran into an issue using GitHub Actions where the cache action preserves modification times, but the checkout action does not, and so the loader sources always look newer than the cache, and hence the loaders run even though the cache is populated. So perhaps a better default during build is to ignore modification times, and simply check whether the files are present. This way it will work by default in GitHub Actions without workarounds such as
And you can always remove the cache before building if you want to force a clean build.