fix: sanitize all invalid characters in checksum filenames (#2886)

This commit is contained in:
SEONGHYUN HONG
2026-06-21 23:23:45 +09:00
committed by GitHub
parent f1ab404fbb
commit 91b9e42f17
2 changed files with 5 additions and 1 deletions

View File

@@ -119,7 +119,7 @@ func (checker *ChecksumChecker) checksumFilePath(t *ast.Task) string {
return filepath.Join(checker.tempDir, "checksum", normalizeFilename(t.Name()))
}
var checksumFilenameRegexp = regexp.MustCompile("[^A-z0-9]")
var checksumFilenameRegexp = regexp.MustCompile("[^[:alnum:]]")
// replaces invalid characters on filenames with "-"
func normalizeFilename(f string) string {

View File

@@ -16,6 +16,10 @@ func TestNormalizeFilename(t *testing.T) {
{"foo/bar/baz", "foo-bar-baz"},
{"foo@bar/baz", "foo-bar-baz"},
{"foo1bar2baz3", "foo1bar2baz3"},
{"foo\\bar", "foo-bar"},
{"foo_bar", "foo-bar"},
{"foo[bar]baz", "foo-bar-baz"},
{"foo^bar`baz", "foo-bar-baz"},
}
for _, test := range tests {
assert.Equal(t, test.Out, normalizeFilename(test.In))