diff --git a/.gitignore b/.gitignore index 68465df..7d876e8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ SOURCES/delve-1.9.1.tar.gz /delve-1.20.2.tar.gz /delve-1.21.2.tar.gz /delve-1.22.1.tar.gz +/delve-1.24.1.tar.gz diff --git a/delve.spec b/delve.spec index 9b2c37c..11ce26c 100644 --- a/delve.spec +++ b/delve.spec @@ -3,7 +3,7 @@ %endif Name: delve -Version: 1.22.1 +Version: 1.24.1 Release: 1%{?dist} Summary: A debugger for the Go programming language @@ -18,8 +18,8 @@ BuildRequires: git BuildRequires: lsof Provides: dlv = %{version} - -Patch0001: modify-tests.patch +Patch1: skip-coredump-test.patch +Patch2: skip-substitute-path-test.patch %description @@ -71,6 +71,11 @@ done %changelog +* Fri Mar 14 2025 David Benoit - 1.24.1-1 +- Rebase to 1.24.1 +- Skip unsupported tests +- Resolves: RHEL-83451 + * Fri Aug 16 2024 Alejandro Sáez - 1.22.1-1 - Rebase to 1.22.1 - Resolves: RHEL-54307 diff --git a/skip-coredump-test.patch b/skip-coredump-test.patch new file mode 100644 index 0000000..03f5d36 --- /dev/null +++ b/skip-coredump-test.patch @@ -0,0 +1,78 @@ +From d5fb3bee427202f0d4b1683bf743bfd2adb41757 Mon Sep 17 00:00:00 2001 +From: Derek Parker +Date: Thu, 20 Mar 2025 01:15:19 -0700 +Subject: [PATCH] proc/core: skip tests on ppc64le (#3954) + +These tests have been somewhat silently failing on our CI because the +test ends up being skipped [due to the lack of coredumpctl](https://delve.teamcity.com/buildConfiguration/Delve_linux_ppc64le_1_24/66766?buildTab=tests&focusLine=NaN&name=testcore&suite=github.com%2Fgo-delve%2Fdelve%2Fpkg%2Fproc%2Fcore%3A+&expandedTest=build%3A%28id%3A66766%29%2Cid%3A2000000704&showLog=66766_20670_112.20612.20670&logFilter=debug&logView=flowAware). + +When `coredumpctl` is present, the test [fails +anyways](https://issues.redhat.com/browse/RHEL-83939), so let's just +skip it on ppc64le for now. +--- + pkg/proc/core/core_test.go | 41 +++++++++++++++++++++----------------- + 1 file changed, 23 insertions(+), 18 deletions(-) + +diff --git a/pkg/proc/core/core_test.go b/pkg/proc/core/core_test.go +index dddc1d3e7..52b210b6f 100644 +--- a/pkg/proc/core/core_test.go ++++ b/pkg/proc/core/core_test.go +@@ -249,15 +249,8 @@ func logRegisters(t *testing.T, regs proc.Registers, arch *proc.Arch) { + } + + func TestCore(t *testing.T) { +- if runtime.GOOS != "linux" || runtime.GOARCH == "386" { +- t.Skip("unsupported") +- } +- if runtime.GOOS != "linux" || runtime.GOARCH == "loong64" { +- t.Skip("could not read runtime.sigtrampgo context") +- } +- if runtime.GOOS == "linux" && os.Getenv("CI") == "true" && buildMode == "pie" { +- t.Skip("disabled on linux, Github Actions, with PIE buildmode") +- } ++ mustSupportCore(t) ++ + grp := withCoreFile(t, "panic", "") + p := grp.Selected + +@@ -412,15 +405,8 @@ func TestCoreFpRegisters(t *testing.T) { + } + + func TestCoreWithEmptyString(t *testing.T) { +- if runtime.GOOS != "linux" || runtime.GOARCH == "386" { +- t.Skip("unsupported") +- } +- if runtime.GOOS != "linux" || runtime.GOARCH == "loong64" { +- t.Skip("could not read runtime.sigtrampgo context") +- } +- if runtime.GOOS == "linux" && os.Getenv("CI") == "true" && buildMode == "pie" { +- t.Skip("disabled on linux, Github Actions, with PIE buildmode") +- } ++ mustSupportCore(t) ++ + grp := withCoreFile(t, "coreemptystring", "") + p := grp.Selected + +@@ -536,3 +522,22 @@ func procdump(t *testing.T, exePath string) string { + t.Fatalf("could not find dump file") + return "" + } ++ ++func mustSupportCore(t *testing.T) { ++ t.Helper() ++ ++ if runtime.GOOS != "linux" { ++ t.Skip("test must be run on linux") ++ } ++ ++ switch runtime.GOARCH { ++ case "386", "ppc64le": ++ t.Skip("unsupported") ++ case "loong64": ++ t.Skip("could not read runtime.sigtrampgo context") ++ } ++ ++ if os.Getenv("CI") == "true" && buildMode == "pie" { ++ t.Skip("disabled on linux, Github Actions, with PIE buildmode") ++ } ++} diff --git a/skip-substitute-path-test.patch b/skip-substitute-path-test.patch new file mode 100644 index 0000000..f234e60 --- /dev/null +++ b/skip-substitute-path-test.patch @@ -0,0 +1,42 @@ +From 55486fbab43420d67323cd3e79cda115e7e687c6 Mon Sep 17 00:00:00 2001 +From: Derek Parker +Date: Thu, 20 Mar 2025 01:14:20 -0700 +Subject: [PATCH] service/test: skip substitutepath test when modules disabled + (#3955) + +See: https://issues.redhat.com/browse/RHEL-83958 +--- + pkg/proc/test/support.go | 6 ++++++ + service/test/integration2_test.go | 2 ++ + 2 files changed, 8 insertions(+) + +diff --git a/pkg/proc/test/support.go b/pkg/proc/test/support.go +index d1f25bd49..c8efea360 100644 +--- a/pkg/proc/test/support.go ++++ b/pkg/proc/test/support.go +@@ -392,6 +392,12 @@ func MustHaveCgo(t *testing.T) { + } + } + ++func MustHaveModules(t *testing.T) { ++ if os.Getenv("GO111MODULE") == "off" { ++ t.Skip("skipping test which requires go modules") ++ } ++} ++ + func RegabiSupported() bool { + // Tracks regabiSupported variable in ParseGOEXPERIMENT internal/buildcfg/exp.go + switch { +diff --git a/service/test/integration2_test.go b/service/test/integration2_test.go +index 9ef131a3e..2e3928fb8 100644 +--- a/service/test/integration2_test.go ++++ b/service/test/integration2_test.go +@@ -3157,6 +3157,8 @@ func TestBreakpointVariablesWithoutG(t *testing.T) { + } + + func TestGuessSubstitutePath(t *testing.T) { ++ protest.MustHaveModules(t) ++ + t.Setenv("NOCERT", "1") + ver, _ := goversion.Parse(runtime.Version()) + if ver.IsDevelBuild() && os.Getenv("CI") != "" && runtime.GOOS == "linux" { diff --git a/sources b/sources index 82d5e7d..b71893d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (delve-1.22.1.tar.gz) = 73b6e7f5c88ffe3c3197a33106c2d10349bb622f10ec54e3dd0b045ed5717a341d48c5415f6b56b3a927afa6d994ff30dced802f82ed14d149f202f46c7a6b44 +SHA512 (delve-1.24.1.tar.gz) = 7308339af2ef0da14b3d1860d99a602f6fdf3861afd12fd25930c2587bec3099905d3c74ae3d93a193d9aebc77bea4eb4fe3878e3a84c45616ea9926d6b6ba27