From 9bf797b9edf885846370fcbd3359da0c27511f0b Mon Sep 17 00:00:00 2001 From: Benny Date: Mon, 12 May 2025 19:32:14 +0800 Subject: [PATCH 1/3] patch for undeleted tmp --- .gitignore | 1 + schedule/cache_clean.go | 24 ++++++++++++++++++++++++ webp-server.go | 1 + 3 files changed, 26 insertions(+) diff --git a/.gitignore b/.gitignore index 224bc683..064d9946 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ coverage.txt .DS_Store /webp_server_go /metadata/* +/.idea/inspectionProfiles/Project_Default.xml diff --git a/schedule/cache_clean.go b/schedule/cache_clean.go index 34740f3e..cc55cee2 100644 --- a/schedule/cache_clean.go +++ b/schedule/cache_clean.go @@ -113,3 +113,27 @@ func CleanCache() { } } } + +func DeleteDeadCache() { + ticker := time.NewTicker(5 * time.Second) + defer ticker.Stop() + threshold := time.Now().Add(-10 * time.Minute) + for { + select { + case <-ticker.C: + _ = filepath.Walk(os.TempDir()+"vips-", func(path string, info os.FileInfo, err error) error { + log.Debugf("Checking possible dead cache: %s", path) + if err != nil { + return err + } + if info.IsDir() && info.ModTime().Before(threshold) { + // only delete directory + log.Warnf("Deleting: %s", path) + _ = os.RemoveAll(path) + return filepath.SkipDir + } + return nil + }) + } + } +} diff --git a/webp-server.go b/webp-server.go index 987d5b44..c08cf824 100644 --- a/webp-server.go +++ b/webp-server.go @@ -98,6 +98,7 @@ func init() { } func main() { + go schedule.DeleteDeadCache() if config.Config.MaxCacheSize != 0 { go schedule.CleanCache() } From 2c43e7b1fdf58e9a2c852f657cfce75f2e1f66ab Mon Sep 17 00:00:00 2001 From: Benny Date: Mon, 12 May 2025 19:33:31 +0800 Subject: [PATCH 2/3] every 30s --- schedule/cache_clean.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schedule/cache_clean.go b/schedule/cache_clean.go index cc55cee2..5a85f846 100644 --- a/schedule/cache_clean.go +++ b/schedule/cache_clean.go @@ -115,7 +115,7 @@ func CleanCache() { } func DeleteDeadCache() { - ticker := time.NewTicker(5 * time.Second) + ticker := time.NewTicker(30 * time.Second) defer ticker.Stop() threshold := time.Now().Add(-10 * time.Minute) for { From 7c7292c0b7fce5344a78dc6cf72a682ffc63f20e Mon Sep 17 00:00:00 2001 From: n0vad3v Date: Sat, 17 May 2025 15:45:31 +0800 Subject: [PATCH 3/3] bump version --- config/config.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/config.go b/config/config.go index 0699ba64..8ce3299e 100644 --- a/config/config.go +++ b/config/config.go @@ -55,7 +55,7 @@ var ( PrefetchForeground bool // Standalone prefetch, prefetch and exit AllowNonImage bool Config = NewWebPConfig() - Version = "0.13.6" + Version = "0.13.7" WriteLock = cache.New(5*time.Minute, 10*time.Minute) ConvertLock = cache.New(5*time.Minute, 10*time.Minute) LocalHostAlias = "local"