vite_ruby icon indicating copy to clipboard operation
vite_ruby copied to clipboard

clean command not detecting versions properly

Open philippevezina opened this issue 4 months ago • 1 comments

Description 📖

vite_ruby uses the mtime as a reference to detect different versions of the app: https://github.com/ElMassimo/vite_ruby/blob/main/vite_ruby/lib/vite_ruby/commands.rb#L148 That being said, a single Vite build can generate files with more than one mtime. For example, vite-plugin-rails uses rollup-plugin-gzip at the end of the build which will write many files with different mtimes.

This causes files to delete unexpectedly when running bin/vite clean. It's possible this bug is hard to reproduce with a small project as all written files may end up having the same mtime.

Reproduction 🐞

Vite Ruby Info
  • Run bin/rake vite:build on a big project with no currently built assets.
  • Run bin/rake vite:clean[1,0]

Result: files will be deleted while there is only a single version of the built assets.

philippevezina avatar Mar 05 '24 19:03 philippevezina