From 60ab8767b7c726188040d92251a70c9f849eba98 Mon Sep 17 00:00:00 2001 From: Aaronkala Date: Thu, 6 Mar 2025 12:29:03 +0200 Subject: [PATCH 1/2] Omit only start of string matching from wildcard package queries --- go/tools/gopackagesdriver/bazel_json_builder.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/tools/gopackagesdriver/bazel_json_builder.go b/go/tools/gopackagesdriver/bazel_json_builder.go index 763863320c..028ab36539 100644 --- a/go/tools/gopackagesdriver/bazel_json_builder.go +++ b/go/tools/gopackagesdriver/bazel_json_builder.go @@ -116,7 +116,7 @@ func (b *BazelJSONBuilder) adjustToRelativePathIfPossible(request string) string func (b *BazelJSONBuilder) packageQuery(importPath string) string { if strings.HasSuffix(importPath, "/...") { - importPath = fmt.Sprintf(`^%s(/.+)?$`, strings.TrimSuffix(importPath, "/...")) + importPath = fmt.Sprintf(`%s(/.+)?$`, strings.TrimSuffix(importPath, "/...")) } return fmt.Sprintf( From 23be4f0bf08f4c21b5985ecce586c21fdfa3a378 Mon Sep 17 00:00:00 2001 From: Aaronkala Date: Thu, 6 Mar 2025 21:22:06 +0200 Subject: [PATCH 2/2] escape literal importpath when used as a regular expression --- go/tools/gopackagesdriver/bazel_json_builder.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/go/tools/gopackagesdriver/bazel_json_builder.go b/go/tools/gopackagesdriver/bazel_json_builder.go index 028ab36539..d123889522 100644 --- a/go/tools/gopackagesdriver/bazel_json_builder.go +++ b/go/tools/gopackagesdriver/bazel_json_builder.go @@ -116,7 +116,9 @@ func (b *BazelJSONBuilder) adjustToRelativePathIfPossible(request string) string func (b *BazelJSONBuilder) packageQuery(importPath string) string { if strings.HasSuffix(importPath, "/...") { - importPath = fmt.Sprintf(`%s(/.+)?$`, strings.TrimSuffix(importPath, "/...")) + importPath = fmt.Sprintf(`%s(/.+)?$`, regexp.QuoteMeta(strings.TrimSuffix(importPath, "/..."))) + } else { + importPath = regexp.QuoteMeta(importPath) } return fmt.Sprintf(