Implement AssetHelper.deleteStaleAssets().

This commit is contained in:
Joseph Cloutier
2024-05-28 19:33:30 -04:00
parent 1b8d7ac7fa
commit 12ddca85d9
2 changed files with 21 additions and 0 deletions

View File

@@ -191,6 +191,25 @@ class AssetHelper
return manifests;
}
public static function deleteStaleAssets(project:HXProject, targetDirectory:String):Void
{
var newAssets = [for (asset in project.assets) asset.targetPath];
var recordFile:String = targetDirectory + "/.assets";
if (FileSystem.exists(recordFile))
{
for (oldAsset in File.getContent(recordFile).split("\n"))
{
if (oldAsset.length > 0 && newAssets.indexOf(oldAsset) < 0)
{
System.deleteFile(targetDirectory + "/bin/" + oldAsset);
}
}
}
File.saveContent(recordFile, newAssets.join("\n"));
}
private static function getAssetData(project:HXProject, pathGroups:Map<String, Array<String>>, libraries:Map<String, Library>, library:String,
asset:Asset):Dynamic
{

View File

@@ -103,6 +103,8 @@ class PlatformTarget
// AssetHelper.processLibraries (project, targetDirectory);
// #end
update();
AssetHelper.deleteStaleAssets(project, targetDirectory);
}
if (command == "build" || command == "test")