From bc097406953d27b57f451f20f9fa51bb7341bc6d Mon Sep 17 00:00:00 2001 From: Tom Dracz Date: Thu, 16 May 2024 04:32:39 +0100 Subject: [PATCH] Fix assets clean lookups (#474) * Update lib/shakapacker/commands.rb --- CHANGELOG.md | 4 ++++ lib/shakapacker/commands.rb | 2 +- spec/shakapacker/command_spec.rb | 18 ++++++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index eabfc8c24..a6b68e093 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,10 @@ _next_ branch is for v8 changes ## [Unreleased] Changes since the last non-beta release. +### Fixed + +- Fixes incorrect removal of files in the assets:clean task [PR 474](https://github.com/shakacode/shakapacker/pull/474) by [tomdracz](https://github.com/tomdracz). + ## [v8.0.0.rc.3] - May 9, 2024 ### Fixed diff --git a/lib/shakapacker/commands.rb b/lib/shakapacker/commands.rb index c3a60d67d..98232402f 100644 --- a/lib/shakapacker/commands.rb +++ b/lib/shakapacker/commands.rb @@ -61,7 +61,7 @@ def packs packs = all_files - manifest_config - current_version packs.reject { |file| File.directory?(file) }.group_by do |path| - base, _, ext = File.basename(path).scan(/(.*)(-[\da-f]+)(\.\w+)/).flatten + base, _, ext = File.basename(path).scan(/(.*)(-[\da-f]+)([.\w]+)/).flatten "#{File.dirname(path)}/#{base}#{ext}" end.values end diff --git a/spec/shakapacker/command_spec.rb b/spec/shakapacker/command_spec.rb index 90b5d570c..1a1552c7b 100644 --- a/spec/shakapacker/command_spec.rb +++ b/spec/shakapacker/command_spec.rb @@ -46,6 +46,18 @@ "js/brandnew-0002.js" => now - 10, "js/brandnew-0003.js" => now - 20, "js/brandnew-0004.js" => now - 40, + + # Compressed and map files + "js/application-deadbeef.js.br" => now - 4000, + "js/application-deadbeef.js.gz" => now - 4000, + "js/application-deadbeef.js.map" => now - 4000, + "js/application-deadbeef.js.map.br" => now - 4000, + "js/application-deadbeef.js.map.gz" => now - 4000, + "js/application-1eadbeef.js.br" => now - 4000, + "js/application-1eadbeef.js.gz" => now - 4000, + "js/application-1eadbeef.js.map" => now - 4000, + "js/application-1eadbeef.js.map.br" => now - 4000, + "js/application-1eadbeef.js.map.gz" => now - 4000, }.transform_keys { |path| "#{Shakapacker.config.public_output_path}/#{path}" } end @@ -56,6 +68,12 @@ "js/common-0eadbeee.js" => now - 9002, "css/common-0eadbeed.css" => now - 9004, "js/brandnew-0005.js" => now - 3640, + # Compressed and map files + "js/application-0eadbeef.js.br" => now - 9000, + "js/application-0eadbeef.js.gz" => now - 9000, + "js/application-0eadbeef.js.map" => now - 9000, + "js/application-0eadbeef.js.map.br" => now - 9000, + "js/application-0eadbeef.js.map.gz" => now - 9000, }.transform_keys { |path| "#{Shakapacker.config.public_output_path}/#{path}" } end