Disable asset digest / fingerprint and rely on Cache-Control: must-revalidate header instead

Would it be possible to disable asset digest / fingerprint in Propshaft? If not, do you think it could be interesting to allow it?

I am thinking to add the following header and letting the browser reverify all assets on each request:

Cache-Control: public, max-age=0, must-revalidate

I don’t currently use a CDN, but I think it can also be configured to correctly respect such header and cache the asset until new deployment invalidates it.

The idea is loosely inspired by Netlify atomic deploy, and the benefits are simpler build and debugging and no need for mapping asset paths in the code.

What do you think about this idea, does pursuing it make any sense?

If you’re going to do that, why use Propshaft at all? Just serve straight out of public.

Revalidating on each request sounds slow.

Valid point. I thought Propshaft is doing more than just fingerprinting and keeping track of hashes - I’ll check.

I hope it won’t be that slow, since it works by comparing timestamps or checksums, many can be checked in one request via HTTP/2 (I suppose) and is used by some services (like Netlify mentioned above). And it simplifies the pipeline, debugging, etc.