diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/.gitignore b/.gitignore index e23e7a5..01db2e0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,15 +1,3 @@ /delve-1.20.1.tar.gz /delve-1.20.2.tar.gz /delve-1.21.0.tar.gz -/delve-1.21.2.tar.gz -/delve-1.22.0.tar.gz -/delve-1.22.1.tar.gz -/delve-1.23.0.tar.gz -/delve-1.23.1.tar.gz -/delve-1.24.0.tar.gz -/delve-1.24.1.tar.gz -/delve-1.24.2.tar.gz -/delve-1.25.0.tar.gz -/delve-1.25.1.tar.gz -/delve-1.25.2.tar.gz -/delve-1.26.0.tar.gz diff --git a/.packit.yml b/.packit.yml deleted file mode 100644 index 44c2dbe..0000000 --- a/.packit.yml +++ /dev/null @@ -1,27 +0,0 @@ -specfile_path: delve.spec -files_to_sync: - - delve.spec - - .packit.yaml -upstream_package_name: delve -upstream_project_url: https://github.com/go-delve/delve -downstream_package_name: delve -upstream_tag_template: v{version} - -actions: - changelog-entry: - - bash -c "echo - New release ${PACKIT_PROJECT_VERSION}" - -jobs: -- job: pull_from_upstream - trigger: release - dist_git_branches: - rawhide: - fast_forward_merge_into: [fedora-branched] - -- job: koji_build - trigger: commit - dist_git_branches: fedora-all - -- job: bodhi_update - trigger: commit - dist_git_branches: fedora-all diff --git a/0001-Skip-TestCgoStacktrace2.patch b/0001-Skip-TestCgoStacktrace2.patch new file mode 100644 index 0000000..4d2e0ac --- /dev/null +++ b/0001-Skip-TestCgoStacktrace2.patch @@ -0,0 +1,24 @@ +From dff6a7871debe62db762eea34a1356f11fda305c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=81lex=20S=C3=A1ez?= +Date: Mon, 31 Jul 2023 14:46:54 +0200 +Subject: [PATCH] Skip TestCgoStacktrace2 + +--- + pkg/proc/proc_test.go | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/pkg/proc/proc_test.go b/pkg/proc/proc_test.go +index 0cb84f6b..88db4c43 100644 +--- a/pkg/proc/proc_test.go ++++ b/pkg/proc/proc_test.go +@@ -4606,6 +4606,7 @@ func TestCgoStacktrace2(t *testing.T) { + skipOn(t, "upstream issue", "windows") + skipOn(t, "broken", "386") + skipOn(t, "broken", "arm64") ++ skipOn(t, "broken", "amd64") + protest.MustHaveCgo(t) + // If a panic happens during cgo execution the stacktrace should show the C + // function that caused the problem. +-- +2.41.0 + diff --git a/0001-Skipping-due-issues-with-the-go-version-in-Fedora.patch b/0001-Skipping-due-issues-with-the-go-version-in-Fedora.patch deleted file mode 100644 index 943fee4..0000000 --- a/0001-Skipping-due-issues-with-the-go-version-in-Fedora.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 70a9601e1b6e4d97c2c34e1989eba5726df97131 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=C3=81lex=20S=C3=A1ez?= -Date: Wed, 31 Jul 2024 16:54:34 +0200 -Subject: [PATCH] Skipping due issues with the go version in Fedora - -If the Go package gets an update, Koschei will trigger a Delve build -that will fail because Delve is not supporting the newer version of Go. - -Skipping these tests is not ideal but gore returns an error if the go -version is missing. ---- - pkg/proc/proc_test.go | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/pkg/proc/proc_test.go b/pkg/proc/proc_test.go -index 3437a2a4..a602dbcb 100644 ---- a/pkg/proc/proc_test.go -+++ b/pkg/proc/proc_test.go -@@ -3236,6 +3236,7 @@ func TestShadowedFlag(t *testing.T) { - func TestDebugStripped(t *testing.T) { - // Currently only implemented for Linux ELF and macOS Mach-O executables. - // TODO(derekparker): Add support for PE. -+ skipOn(t, "not working on Fedora CI", "linux") - skipOn(t, "not working on windows", "windows") - skipOn(t, "not working on freebsd", "freebsd") - skipOn(t, "not working on linux/386", "linux", "386") -@@ -3265,6 +3266,7 @@ func TestDebugStripped(t *testing.T) { - - func TestDebugStripped2(t *testing.T) { - // TODO(derekparker): Add support for PE. -+ skipOn(t, "not working on Fedora CI", "linux") - skipOn(t, "not working on windows", "windows") - skipOn(t, "not working on freebsd", "freebsd") - skipOn(t, "not working on linux/386", "linux", "386") --- -2.45.2 - diff --git a/README.packit b/README.packit deleted file mode 100644 index 9bb65f0..0000000 --- a/README.packit +++ /dev/null @@ -1,3 +0,0 @@ -This repository is maintained by packit. -https://packit.dev/ -The file was generated using packit 1.13.0.post1.dev2+g84134016c. diff --git a/bundled-deps.sh b/bundled-deps.sh deleted file mode 100755 index 51dd446..0000000 --- a/bundled-deps.sh +++ /dev/null @@ -1,22 +0,0 @@ -#! /bin/bash -# Copyright (C) 2021 Jakub Čajka jcajka@redhat.com -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -provides="" -for bundle in $(find -name modules.txt); do -provides="$provides\n$(cat "$bundle" | grep "^# " | grep -v "# explicit" | sed -r s/"^#.* => "// | sed -r "s/# //" | sed -r "s:(.*) v(.*):Provides\: bundled(golang(\1)) = \2:")" -done -echo -e "$provides" | sed 's/-/./g' | sort -u diff --git a/delve.spec b/delve.spec index baac82f..b398e93 100644 --- a/delve.spec +++ b/delve.spec @@ -1,23 +1,19 @@ # Run tests in check section %bcond_without check -%ifarch ppc64le -%global exp "-tags=exp.linuxppc64le" -%endif - # https://github.com/go-delve/delve %global goipath github.com/go-delve/delve -Version: 1.26.0 +Version: 1.21.0 %global common_description %{expand: -Delve is a debugger for the Go programming language. The goal of the project -is to provide a simple, full featured debugging tool for Go. Delve should be -easy to invoke and easy to use. Chances are if you're using a debugger, things -aren't going your way. With that in mind, Delve should stay out of your way as +Delve is a debugger for the Go programming language. The goal of the project +is to provide a simple, full featured debugging tool for Go. Delve should be +easy to invoke and easy to use. Chances are if you're using a debugger, things +aren't going your way. With that in mind, Delve should stay out of your way as much as possible.} -# Currently Delve only supports x86_64, aarch64, and ppc64le -%global golang_arches x86_64 aarch64 ppc64le +# Currently Delve only supports x86_64 and aarch64 +%global golang_arches x86_64 aarch64 %gometa @@ -26,60 +22,68 @@ Release: %autorelease Summary: A debugger for the Go programming language # Detected licences # - Expat License at 'LICENSE' -# It is a SPDX license already License: MIT URL: %{gourl} Source0: %{gosource} +# RHEL builds with vendored dependencies +%if %{undefined rhel} +# This dependencies are only in use in x86_64 +%ifarch x86_64 +BuildRequires: golang(github.com/cilium/ebpf) +BuildRequires: golang(github.com/cilium/ebpf/link) +BuildRequires: golang(github.com/cilium/ebpf/ringbuf) +%endif +BuildRequires: golang(github.com/cosiner/argv) +BuildRequires: golang(github.com/creack/pty) +BuildRequires: golang(github.com/derekparker/trie) +BuildRequires: golang(github.com/go-delve/liner) +BuildRequires: golang(github.com/google/go-dap) +BuildRequires: golang(github.com/hashicorp/golang-lru/simplelru) +BuildRequires: golang(github.com/mattn/go-isatty) +BuildRequires: golang(github.com/sirupsen/logrus) +BuildRequires: golang(github.com/spf13/cobra) +BuildRequires: golang(github.com/spf13/cobra/doc) +BuildRequires: golang(golang.org/x/arch/arm64/arm64asm) +BuildRequires: golang(golang.org/x/arch/ppc64/ppc64asm) +BuildRequires: golang(golang.org/x/arch/x86/x86asm) +BuildRequires: golang(golang.org/x/sys/unix) +BuildRequires: golang(golang.org/x/tools/go/packages) +BuildRequires: golang(gopkg.in/yaml.v2) +BuildRequires: golang(go.starlark.net/resolve) +BuildRequires: golang(go.starlark.net/starlark) +BuildRequires: golang(go.starlark.net/syntax) +%endif BuildRequires: lsof BuildRequires: git -# Bundled/Vendored provides generated by bundled-deps.sh based on the in tree module data -# - in version filed substituted with . per versioning guidelines -Provides: bundled(golang(github.com/cilium/ebpf)) = 0.11.0 -Provides: bundled(golang(github.com/cosiner/argv)) = 0.1.0 -Provides: bundled(golang(github.com/cpuguy83/go.md2man/v2)) = 2.0.2 -Provides: bundled(golang(github.com/creack/pty)) = 1.1.20 -Provides: bundled(golang(github.com/derekparker/trie)) = 0.0.0.20230829180723.39f4de51ef7d -Provides: bundled(golang(github.com/go.delve/liner)) = 1.2.3.0.20231231155935.4726ab1d7f62 -Provides: bundled(golang(github.com/google/go.dap)) = 0.12.0 -Provides: bundled(golang(github.com/hashicorp/golang.lru)) = 1.0.2 -Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 -Provides: bundled(golang(github.com/mattn/go.colorable)) = 0.1.13 -Provides: bundled(golang(github.com/mattn/go.isatty)) = 0.0.20 -Provides: bundled(golang(github.com/mattn/go.runewidth)) = 0.0.13 -Provides: bundled(golang(github.com/rivo/uniseg)) = 0.2.0 -Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 -Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 -Provides: bundled(golang(github.com/spf13/cobra)) = 1.7.0 -Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 -Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.4 -Provides: bundled(golang(golang.org/x/arch)) = 0.6.0 -Provides: bundled(golang(golang.org/x/exp)) = 0.0.0.20230224173230.c95f2b4c22f2 -Provides: bundled(golang(golang.org/x/mod)) = 0.14.0 -Provides: bundled(golang(golang.org/x/sys)) = 0.17.0 -Provides: bundled(golang(golang.org/x/tools)) = 0.14.0 -Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 -Provides: bundled(golang(go.starlark.net)) = 0.0.0.20231101134539.556fd59b42f6 - -Patch0001: 0001-Skipping-due-issues-with-the-go-version-in-Fedora.patch +Patch1: 0001-Skip-TestCgoStacktrace2.patch %description %{common_description} %prep echo "=== Start prep ===" +%if %{defined rhel} %goprep -k # unpack vendored dependencies to GOPATH tar c -C vendor/ . | tar x -C %{gobuilddir}/src %autopatch -v -p1 +%else +%goprep +%autopatch -v -p1 + +%generate_buildrequires +%go_generate_buildrequires +%endif %build echo "=== Start build ===" -%gobuild %{?exp} -o %{gobuilddir}/bin/dlv %{goipath}/cmd/dlv +%gobuild -o %{gobuilddir}/bin/dlv %{goipath}/cmd/dlv echo "=== End build ===" %install +%gopkginstall install -m 0755 -vd %{buildroot}%{_bindir} install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ @@ -88,26 +92,20 @@ install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ export GO111MODULE=off export GOPATH=%{buildroot}/%{gopath}:%{gobuilddir}:%{gopath} delvepath=%{buildroot}/%{gopath}/src/%{goipath} -mkdir -p $delvepath -mkdir -p $delvepath/pkg/dwarf/line -mkdir -p $delvepath/pkg/proc/internal cp -r _fixtures $delvepath -cp -r pkg/dwarf $delvepath/pkg/ cp -r pkg/dwarf/line/_testdata $delvepath/pkg/dwarf/line cp -r pkg/proc/internal/ebpf $delvepath/pkg/proc/internal/ pushd $delvepath echo "=== Start tests ===" -for d in $(go list %{?exp} ./... | grep -v cmd | grep -v scripts); do - go test %{?exp} ${d} -skip TestGuessSubstitutePath -done +%gotest $(go list ./... | awk '!/(cmd|scripts)/ {print $1}') echo "=== End tests ===" rm -rf $delvepath popd %endif %files -%license LICENSE vendor/modules.txt +%license LICENSE %{?rhel:vendor/modules.txt} %doc CONTRIBUTING.md CHANGELOG.md %doc Documentation/* %{_bindir}/dlv diff --git a/gating.yaml b/gating.yaml deleted file mode 100644 index ce3cdc1..0000000 --- a/gating.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- !Policy -product_versions: - - fedora-* -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} ---- !Policy -product_versions: - - rhel-8 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} ---- !Policy -product_versions: - - rhel-9 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/plans/ci.fmf b/plans/ci.fmf deleted file mode 100644 index eaa8bdf..0000000 --- a/plans/ci.fmf +++ /dev/null @@ -1,6 +0,0 @@ -summary: CI Gating Plan -discover: - how: fmf - url: https://src.fedoraproject.org/tests/delve -execute: - how: tmt diff --git a/sources b/sources index dd76784..df8bd86 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (delve-1.26.0.tar.gz) = 1b9d5c7b91bbf1df47c1fdb3553893497defe7a71ae9c7cef160cf15afac391fe77f66b748e028b29aa3456c21cfc079c2751afb788cb065ee8580501d21ad0e +SHA512 (delve-1.21.0.tar.gz) = 2b2249b14d5565fbb59408251a1272db8e092ab7ac7cb65d33b810b89f1352d3b487a8d582dde8f1102d0362ee142e6106c98cd217c5031c9a09497d20a0cdde