Comments (6)
So I believe that it could be worth the extra run time (around 1 minute) for a guaranteed fresh build?
What do you think?
from templ.
I had a closer look at the actions, and it does build using Nix, but a stale entry fetched from the magic-nix-cache is used if the hash is not changed for the vendors.
from templ.
Comparing cached and un-cached actions runs on my own fork of this repo:
-
First run, a normal commit: builds correctly and caches result.
-
Second run, a PR changes version numbers, without updating the hash: builds using stale versions of modules fetched from the cache, passes!?
-
The cache is deleted
-
Third run: mysterious hash mismatch appears from nowhere as the cache can no longer be used to fetch the outdated hash!
Logs and run times:
Run 1 (no cache, first run): passed in 2m 38s
Run 2 (commit is made, action uses cache from run 1): passed in 1m 20s
Run 3 (same commit, without cache): failed in 2m 28s
from templ.
Just hit this as well on darwin-arm64.
from templ.
Nice investigation and summary @headblockhead
I was thinking about swapping to gomod2nix so that go modules are more than just a blob of "stuff". Got an example here: https://github.com/a-h/nix-gomod2nix-example
I think that might allow caching to be used, but also means that Nix derived SBOMs are useful.
from templ.
I've updated the flake.nix
to use gomod2nix
instead. I think that should resolve the issue. If you were able to re-test it, that would be great.
from templ.
Related Issues (20)
- vscode: show _templ.go files greyed out? HOT 8
- Can/could templ support plain text? HOT 3
- lsp: formatting malformed when CSS expressions are too long HOT 6
- proposal: add templ.JSONScript and templ.JSON functions HOT 4
- proposal: deprecate CSS components in favour of 3rd party CSS pre-processors HOT 11
- Bug: hot reloader adds a wrong reload script in nested body responses HOT 1
- fmt: broken mutliline raw string formatting
- Website SEO HOT 1
- proposal: Allow for primitives & fmt.Stringer in addition to string in templates HOT 2
- vscode: Bad highlighting when using generic functions HOT 3
- Binary in`templ_Darwin_arm64.tar.gz` v0.2.697 displays version 0.2.696 HOT 8
- -stdout sends error report to output file HOT 3
- bug: script elements don't render script templates
- lsp: support the organizeImports code action HOT 4
- Wasm support for interacting with the DOM HOT 3
- generator: can't use iterator value in for loop HOT 8
- max retries reached HOT 3
- lsp: panic on codeAction HOT 6
- question: Escape go keywords at the beginning of the line HOT 3
- generator: Duplicate Import Statements in Generated Templates Cause go build Failure HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from templ.