The package rpms/delve.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/delve.git/commit/?id=39cfa248f89a...
https://src.fedoraproject.org/cgit/rpms/delve.git/commit/?id=8ec56186bf07...
https://src.fedoraproject.org/cgit/rpms/delve.git/commit/?id=baf961b7b960....
Change:
+ExclusiveArch: x86_64
+ExcludeArch: i686
+ExcludeArch: armv7hl
Thanks.
Full change:
============
commit 866ba589069390e0eb52d68b391b5e1fd86d25b6
Author: Derek Parker <deparker(a)redhat.com>
Date: Tue Feb 26 16:02:11 2019 -0800
Use custom check section
diff --git a/delve.spec b/delve.spec
index 2b58de7..f1b891c 100644
--- a/delve.spec
+++ b/delve.spec
@@ -79,7 +79,19 @@ install -Dpm 0755 _bin/dlv %{buildroot}%{_bindir}/dlv
%if %{with check}
%check
-%gochecks
+export GO111MODULE=off
+export GOPATH=%{buildroot}/%{gopath}:%{gopath}
+
+delvepath=%{buildroot}/%{gopath}/src/%{goipath}
+cp -r _fixtures $delvepath
+cp -r pkg/dwarf/line/_testdata $delvepath/pkg/dwarf/line
+pushd $delvepath
+for d in $(go list ./... | grep -v cmd | grep -v scripts); do
+ %gotest ${d}
+done
+rm -rf $delvepath/_fixtures
+rm -rf $delvepath/pkg/dwarf/line/_testdata
+popd
%endif
commit baf961b7b960dd8025602db8db4211423015e9ce
Author: Derek Parker <deparker(a)redhat.com>
Date: Mon Feb 25 10:18:40 2019 -0800
Exclude armv7hl
diff --git a/delve.spec b/delve.spec
index ce5dade..2b58de7 100644
--- a/delve.spec
+++ b/delve.spec
@@ -28,6 +28,7 @@ ExcludeArch: ppc64le
ExcludeArch: s390x
ExcludeArch: aarch64
ExcludeArch: i686
+ExcludeArch: armv7hl
Patch1: ./disable-default-compression-dwz-test.patch
Patch2: ./integration-test-symlinks.patch
commit 8ec56186bf07517e8266ed3bef02d5e3eea8bc84
Author: Derek Parker <deparker(a)redhat.com>
Date: Mon Feb 25 10:09:57 2019 -0800
Exclude non-supported arches
diff --git a/delve.spec b/delve.spec
index b175ad4..ce5dade 100644
--- a/delve.spec
+++ b/delve.spec
@@ -22,7 +22,12 @@ Summary: A debugger for the Go programming language
License: MIT
URL: %{gourl}
Source0: %{gosource}
-ExclusiveArch: x86_64
+
+# Currently Delve only supports x86_64
+ExcludeArch: ppc64le
+ExcludeArch: s390x
+ExcludeArch: aarch64
+ExcludeArch: i686
Patch1: ./disable-default-compression-dwz-test.patch
Patch2: ./integration-test-symlinks.patch
commit 39cfa248f89aa69b377aede2ba07c76df8fe0552
Author: Derek Parker <deparker(a)redhat.com>
Date: Fri Feb 22 13:02:51 2019 -0800
Add ExclusiveArch
diff --git a/delve.spec b/delve.spec
index 8777d2e..b175ad4 100644
--- a/delve.spec
+++ b/delve.spec
@@ -22,6 +22,7 @@ Summary: A debugger for the Go programming language
License: MIT
URL: %{gourl}
Source0: %{gosource}
+ExclusiveArch: x86_64
Patch1: ./disable-default-compression-dwz-test.patch
Patch2: ./integration-test-symlinks.patch
commit c22c3edb1c567b0446b5788b77b8a9ea891f839b
Author: Derek Parker <deparker(a)redhat.com>
Date: Fri Feb 22 12:54:49 2019 -0800
Add sources file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..9cdee55
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/delve-1.2.0.tar.gz
diff --git a/sources b/sources
new file mode 100644
index 0000000..e33a23b
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (delve-1.2.0.tar.gz) =
8a19decbb47952671e5b73f6ec1707e318259376b02268509374e101cd9ee54c279fac0655885be6095e7cc82bfb09082cfe557f763475a2cd2f1f572f1a300e
commit 43d2ad259c07bf87f266d97f27e3d744be14d950
Author: Derek Parker <deparker(a)redhat.com>
Date: Thu Feb 21 16:50:11 2019 -0800
Add patch to remove empty doc file
diff --git a/clean-empty-doc.patch b/clean-empty-doc.patch
new file mode 100644
index 0000000..4c12416
--- /dev/null
+++ b/clean-empty-doc.patch
@@ -0,0 +1,16 @@
+From 9cb76893334154001489fb1bbd19fe926f0249e7 Mon Sep 17 00:00:00 2001
+From: Derek Parker <deparker(a)redhat.com>
+Date: Thu, 21 Feb 2019 12:15:37 -0800
+Subject: [PATCH] Documentation: Remove empty doc file
+
+---
+ Documentation/usage/commands.md | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
+ delete mode 100644 Documentation/usage/commands.md
+
+diff --git a/Documentation/usage/commands.md b/Documentation/usage/commands.md
+deleted file mode 100644
+index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
+--
+2.16.5
+
diff --git a/delve.spec b/delve.spec
index a8202df..8777d2e 100644
--- a/delve.spec
+++ b/delve.spec
@@ -25,6 +25,7 @@ Source0: %{gosource}
Patch1: ./disable-default-compression-dwz-test.patch
Patch2: ./integration-test-symlinks.patch
+Patch3: ./clean-empty-doc.patch
BuildRequires:
golang(github.com/cosiner/argv)
BuildRequires:
golang(github.com/mattn/go-isatty)
commit 5ccb3d6f3f0b901a068ca41dc2c4e397f7a47270
Author: Derek Parker <deparker(a)redhat.com>
Date: Wed Feb 20 14:30:38 2019 -0800
Switch back to using gochecks
diff --git a/delve.spec b/delve.spec
index 82a4361..a8202df 100644
--- a/delve.spec
+++ b/delve.spec
@@ -71,17 +71,7 @@ install -Dpm 0755 _bin/dlv %{buildroot}%{_bindir}/dlv
%if %{with check}
%check
-# Copy to $GOPATH since modules aren't supported.
-export GOPATH=%{gopath}
-export GO111MODULE=off
-mkdir -p %{gopath}/src/$(dirname %{goipath})
-ln -s $(pwd)/. %{gopath}/src/%{goipath}
-cd %{gopath}/src/%{goipath}
-for i in $(go list ./... | grep -v scripts | grep -v cmd); do
- pushd .${i##%{goipath}}
- %{gotest}
- popd
-done
+%gochecks
%endif
commit 6a24acf8d595cc52f18ca8eac331f8caae22e0bc
Author: Derek Parker <deparker(a)redhat.com>
Date: Wed Feb 20 14:10:25 2019 -0800
Fix spec file and patch tests to run in package build
diff --git a/delve.spec b/delve.spec
index 0b40524..82a4361 100644
--- a/delve.spec
+++ b/delve.spec
@@ -23,6 +23,9 @@ License: MIT
URL: %{gourl}
Source0: %{gosource}
+Patch1: ./disable-default-compression-dwz-test.patch
+Patch2: ./integration-test-symlinks.patch
+
BuildRequires:
golang(github.com/cosiner/argv)
BuildRequires:
golang(github.com/mattn/go-isatty)
BuildRequires:
golang(github.com/peterh/liner)
@@ -68,7 +71,17 @@ install -Dpm 0755 _bin/dlv %{buildroot}%{_bindir}/dlv
%if %{with check}
%check
-%gochecks
+# Copy to $GOPATH since modules aren't supported.
+export GOPATH=%{gopath}
+export GO111MODULE=off
+mkdir -p %{gopath}/src/$(dirname %{goipath})
+ln -s $(pwd)/. %{gopath}/src/%{goipath}
+cd %{gopath}/src/%{goipath}
+for i in $(go list ./... | grep -v scripts | grep -v cmd); do
+ pushd .${i##%{goipath}}
+ %{gotest}
+ popd
+done
%endif
diff --git a/disable-default-compression-dwz-test.patch
b/disable-default-compression-dwz-test.patch
new file mode 100644
index 0000000..244e4c8
--- /dev/null
+++ b/disable-default-compression-dwz-test.patch
@@ -0,0 +1,36 @@
+From 1f9597d3ca2e7d3497f9d28046bbae5522742306 Mon Sep 17 00:00:00 2001
+From: Derek Parker <deparker(a)redhat.com>
+Date: Wed, 20 Feb 2019 13:26:18 -0800
+Subject: [PATCH] pkg/proc: Disable default compression on DWZ test
+
+When compression is applied by default running the DWZ tool on the
+resulting binary will crash.
+
+The actual default compression code will look and see if compression
+makes any difference and if so replace the normal `.debug_*` section
+with `.zdebug_*`. This is why it may not have been hit before. On one of
+my workstations I build with 1.12rc1 and no compression happens, but on
+a Fedora VM I build and the binary results in compressed DWARF sections.
+
+Adding this flag will make this test more consistent overall.
+---
+ pkg/proc/test/support.go | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/pkg/proc/test/support.go b/pkg/proc/test/support.go
+index 9e09da861ec53657bfa0fb9cf76620a4fcd485dc..ccfc1c4939ef6e9c8abbbc67f4fbeaaf0e623de1
100644
+--- a/pkg/proc/test/support.go
++++ b/pkg/proc/test/support.go
+@@ -125,6 +125,9 @@ func BuildFixture(name string, flags BuildFlags) Fixture {
+ if flags&BuildModePIE != 0 {
+ buildFlags = append(buildFlags, "-buildmode=pie")
+ }
++ if flags&EnableDWZCompression != 0 {
++ buildFlags = append(buildFlags, "-ldflags=-compressdwarf=false")
++ }
+ if path != "" {
+ buildFlags = append(buildFlags, name+".go")
+ }
+--
+2.16.5
+
diff --git a/integration-test-symlinks.patch b/integration-test-symlinks.patch
new file mode 100644
index 0000000..94e2545
--- /dev/null
+++ b/integration-test-symlinks.patch
@@ -0,0 +1,27 @@
+From c4a4e442e2eee35bc26674cb1d2cb28336780891 Mon Sep 17 00:00:00 2001
+From: Derek Parker <deparker(a)redhat.com>
+Date: Wed, 20 Feb 2019 14:01:13 -0800
+Subject: [PATCH] service/test: Follow symlinks in integration tests
+
+---
+ service/test/common_test.go | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/service/test/common_test.go b/service/test/common_test.go
+index 2b58e371a12472c71beaad0790b001cf4258934c..ee56a53350a45ab790229dd359c472f2c9a952b0
100644
+--- a/service/test/common_test.go
++++ b/service/test/common_test.go
+@@ -52,6 +52,10 @@ func testProgPath(t *testing.T, name string) string {
+ t.Fatal(err)
+ }
+ }
++ sympath, err := filepath.EvalSymlinks(fp)
++ if err == nil {
++ fp = strings.Replace(sympath, "\\", "/", -1)
++ }
+ return fp
+ }
+
+--
+2.16.5
+
commit c3ae28ead26d7fa3af8c3f1d221dbc44acc8a4fb
Author: Derek Parker <deparker(a)redhat.com>
Date: Tue Feb 19 11:50:30 2019 -0800
Update spec for v1.2.0
diff --git a/delve.spec b/delve.spec
index 46d6ce3..0b40524 100644
--- a/delve.spec
+++ b/delve.spec
@@ -1,9 +1,9 @@
# Run tests in check section
%bcond_without check
-#
https://github.com/derekparker/delve
-%global goipath
github.com/derekparker/delve
-Version: 1.1.0
+#
https://github.com/go-delve/delve
+%global goipath
github.com/go-delve/delve
+Version: 1.2.0
%global common_description %{expand:
Delve is a debugger for the Go programming language. The goal of the project
@@ -23,10 +23,6 @@ License: MIT
URL: %{gourl}
Source0: %{gosource}
-Patch1: ./eval-symlink-in-test.patch
-Patch2: ./test-fixture-vendor-to-internal.patch
-Patch3: ./doc-location.patch
-
BuildRequires:
golang(github.com/cosiner/argv)
BuildRequires:
golang(github.com/mattn/go-isatty)
BuildRequires:
golang(github.com/peterh/liner)
@@ -88,5 +84,5 @@ install -Dpm 0755 _bin/dlv %{buildroot}%{_bindir}/dlv
%changelog
-* Fri Nov 2 2018 Derek Parker <deparker(a)redhat.com> - 1.1.0-1
+* Fri Nov 2 2018 Derek Parker <deparker(a)redhat.com> - 1.2.0-1
- First package for Fedora
diff --git a/doc-location.patch b/doc-location.patch
deleted file mode 100644
index 79a5f46..0000000
--- a/doc-location.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 0d98c57cd3276667655d3b23f8268f1249a9994d Mon Sep 17 00:00:00 2001
-From: Derek Parker <deparker(a)redhat.com>
-Date: Mon, 4 Feb 2019 01:49:43 -0800
-Subject: [PATCH] Update doc location for RPM package
-
----
- pkg/terminal/command.go | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/pkg/terminal/command.go b/pkg/terminal/command.go
-index 2927365447575b9a00418f72bdde87c5b58b9682..80d0df131613636c28800b5951f4bb5efba509f4
100644
---- a/pkg/terminal/command.go
-+++ b/pkg/terminal/command.go
-@@ -105,14 +105,14 @@ Type "help" followed by the name of a command for more
information about it.`},
-
- break [name] <linespec>
-
--See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/locspec.md for the syntax
of linespec.
-+See /usr/share/doc/delve/Documentation/cli/locspec.md for the syntax of linespec.
-
- See also: "help on", "help cond" and "help clear"`},
- {aliases: []string{"trace", "t"}, cmdFn: tracepoint, helpMsg: `Set
tracepoint.
-
- trace [name] <linespec>
-
--A tracepoint is a breakpoint that does not stop the execution of the program, instead
when the tracepoint is hit a notification is displayed. See
$GOPATH/src/github.com/derekparker/delve/Documentation/cli/locspec.md for the syntax of
linespec.
-+A tracepoint is a breakpoint that does not stop the execution of the program, instead
when the tracepoint is hit a notification is displayed. See
/usr/share/doc/delve/Documentation/cli/locspec.md for the syntax of linespec.
-
- See also: "help on", "help cond" and "help clear"`},
- {aliases: []string{"restart", "r"}, cmdFn: restart, helpMsg:
`Restart process.
-@@ -182,7 +182,7 @@ Called with more arguments it will execute a command on the specified
goroutine.
-
- [goroutine <n>] [frame <m>] print <expression>
-
--See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a description
of supported expressions.`},
-+See /usr/share/doc/delve/Documentation/cli/expr.md for a description of supported
expressions.`},
- {aliases: []string{"whatis"}, cmdFn: whatisCommand, helpMsg: `Prints type of
an expression.
-
- whatis <expression>.`},
-@@ -190,7 +190,7 @@ See
$GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a des
-
- [goroutine <n>] [frame <m>] set <variable> = <value>
-
--See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a description
of supported expressions. Only numerical variables and pointers can be changed.`},
-+See /usr/share/doc/delve/Documentation/cli/expr.md for a description of supported
expressions. Only numerical variables and pointers can be changed.`},
- {aliases: []string{"sources"}, cmdFn: sources, helpMsg: `Print list of
source files.
-
- sources [<regex>]
---
-2.16.5
-
diff --git a/eval-symlink-in-test.patch b/eval-symlink-in-test.patch
deleted file mode 100644
index 58aa079..0000000
--- a/eval-symlink-in-test.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From de6682d29149cc8f2131d295d68a5e3d65102590 Mon Sep 17 00:00:00 2001
-From: Derek Parker <parkerderek86(a)gmail.com>
-Date: Fri, 4 Jan 2019 02:03:16 -0800
-Subject: [PATCH] pkg/proc/test: Eval symlinks for test source (#1452)
-
-Some build environments (such as when building RPMs) enjoy symlinking
-things. This unfortunately causes our tests to fail as we record the
-path of fixtures and use that when looking up file:line information.
-However, the debug info in the binary records the original file
-location, not the location of the symlink.
----
- pkg/proc/test/support.go | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/pkg/proc/test/support.go b/pkg/proc/test/support.go
-index 733bad85..5f4a4127 100644
---- a/pkg/proc/test/support.go
-+++ b/pkg/proc/test/support.go
-@@ -150,6 +150,10 @@ func BuildFixture(name string, flags BuildFlags) Fixture {
-
- source, _ := filepath.Abs(path)
- source = filepath.ToSlash(source)
-+ sympath, err := filepath.EvalSymlinks(source)
-+ if err == nil {
-+ source = strings.Replace(sympath, "\\", "/", -1)
-+ }
-
- fixture := Fixture{Name: name, Path: tmpfile, Source: source}
-
diff --git a/test-fixture-vendor-to-internal.patch
b/test-fixture-vendor-to-internal.patch
deleted file mode 100644
index 774de87..0000000
--- a/test-fixture-vendor-to-internal.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-From 73d636f7d7adf159e26f35f37aba514f647492ce Mon Sep 17 00:00:00 2001
-From: aarzilli <alessandro.arzilli(a)gmail.com>
-Date: Tue, 6 Nov 2018 12:11:51 +0100
-Subject: [PATCH] tests: rename _fixtures/vendor to _fixtures/internal
-
-Some tests used a fake vendor directory placed inside _fixtures to
-import some support packages.
-In go.mod mode vendor directory are only supported on the root of the
-project, which breaks some of our tests.
-Since vendor directories outside the root of the project are so rare
-anyway it's possible that a future version of go will stop supporting
-it even in GOPATH mode.
-Also it was weird and unnecessary in the first place anyawy.
----
- _fixtures/consts.go | 2 +-
- _fixtures/dotpackagesiface.go | 4 ++--
- _fixtures/{vendor => internal}/dir.io/dir.go | 0
- .../{vendor => internal}/dir.io/io.io/io.go | 0
- .../{vendor => internal}/dir0/pkg/main.go | 0
- .../dir0/renamedpackage/main.go | 0
- .../{vendor => internal}/dir1/pkg/main.go | 0
- _fixtures/pkgrenames.go | 6 ++---
- service/test/variables_test.go | 24 +++++++++----------
- 9 files changed, 18 insertions(+), 18 deletions(-)
- rename _fixtures/{vendor => internal}/dir.io/dir.go (100%)
- rename _fixtures/{vendor => internal}/dir.io/io.io/io.go (100%)
- rename _fixtures/{vendor => internal}/dir0/pkg/main.go (100%)
- rename _fixtures/{vendor => internal}/dir0/renamedpackage/main.go (100%)
- rename _fixtures/{vendor => internal}/dir1/pkg/main.go (100%)
-
-diff --git a/_fixtures/consts.go b/_fixtures/consts.go
-index 531a27db..54bfa8b2 100644
---- a/_fixtures/consts.go
-+++ b/_fixtures/consts.go
-@@ -1,8 +1,8 @@
- package main
-
- import (
-- "dir0/pkg"
- "fmt"
-+ "github.com/derekparker/delve/_fixtures/internal/dir0/pkg"
- "runtime"
- )
-
-diff --git a/_fixtures/dotpackagesiface.go b/_fixtures/dotpackagesiface.go
-index 5ad147c2..5952ebeb 100644
---- a/_fixtures/dotpackagesiface.go
-+++ b/_fixtures/dotpackagesiface.go
-@@ -1,9 +1,9 @@
- package main
-
- import (
-- "dir.io"
-- "dir.io/io.io"
- "fmt"
-+ "github.com/derekparker/delve/_fixtures/internal/dir.io"
-+ "github.com/derekparker/delve/_fixtures/internal/dir.io/io.io"
- "runtime"
- )
-
-diff --git a/_fixtures/vendor/dir.io/dir.go b/_fixtures/internal/dir.io/dir.go
-similarity index 100%
-rename from _fixtures/vendor/dir.io/dir.go
-rename to _fixtures/internal/dir.io/dir.go
-diff --git a/_fixtures/vendor/dir.io/io.io/io.go b/_fixtures/internal/dir.io/io.io/io.go
-similarity index 100%
-rename from _fixtures/vendor/dir.io/io.io/io.go
-rename to _fixtures/internal/dir.io/io.io/io.go
-diff --git a/_fixtures/vendor/dir0/pkg/main.go b/_fixtures/internal/dir0/pkg/main.go
-similarity index 100%
-rename from _fixtures/vendor/dir0/pkg/main.go
-rename to _fixtures/internal/dir0/pkg/main.go
-diff --git a/_fixtures/vendor/dir0/renamedpackage/main.go
b/_fixtures/internal/dir0/renamedpackage/main.go
-similarity index 100%
-rename from _fixtures/vendor/dir0/renamedpackage/main.go
-rename to _fixtures/internal/dir0/renamedpackage/main.go
-diff --git a/_fixtures/vendor/dir1/pkg/main.go b/_fixtures/internal/dir1/pkg/main.go
-similarity index 100%
-rename from _fixtures/vendor/dir1/pkg/main.go
-rename to _fixtures/internal/dir1/pkg/main.go
-diff --git a/_fixtures/pkgrenames.go b/_fixtures/pkgrenames.go
-index d315e6b7..6e0882dc 100644
---- a/_fixtures/pkgrenames.go
-+++ b/_fixtures/pkgrenames.go
-@@ -8,9 +8,9 @@ import (
- pkg1 "go/ast"
- pkg2 "net/http"
-
-- "dir0/pkg"
-- "dir0/renamedpackage"
-- dir1pkg "dir1/pkg"
-+ "github.com/derekparker/delve/_fixtures/internal/dir0/pkg"
-+ "github.com/derekparker/delve/_fixtures/internal/dir0/renamedpackage"
-+ dir1pkg "github.com/derekparker/delve/_fixtures/internal/dir1/pkg"
- )
-
- func main() {
-diff --git a/service/test/variables_test.go b/service/test/variables_test.go
-index 83fb6e7a..0e29202a 100644
---- a/service/test/variables_test.go
-+++ b/service/test/variables_test.go
-@@ -978,20 +978,20 @@ func TestPackageRenames(t *testing.T) {
- {"amap", true, "interface {}(map[go/ast.BadExpr]net/http.Request)
[{From: 2, To: 3}: *{Method: \"othermethod\", ", "",
"interface {}", nil},
-
- // Package name that doesn't match import path
-- {"iface3", true, `interface
{}(*github.com/derekparker/delve/_fixtures/vendor/dir0/renamedpackage.SomeType) *{A:
true}`, "", "interface {}", nil},
-+ {"iface3", true, `interface
{}(*github.com/derekparker/delve/_fixtures/internal/dir0/renamedpackage.SomeType) *{A:
true}`, "", "interface {}", nil},
-
- // Interfaces to anonymous types
- {"amap2", true, "interface {}(*map[go/ast.BadExpr]net/http.Request)
*[{From: 2, To: 3}: *{Method: \"othermethod\", ", "",
"interface {}", nil},
-- {"dir0someType", true, "interface
{}(*github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) *{X: 3}",
"", "interface {}", nil},
-- {"dir1someType", true, "interface
{}(github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType) {X: 1, Y: 2}",
"", "interface {}", nil},
-- {"amap3", true, "interface
{}(map[github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType]github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType)
[{X: 4}: {X: 5, Y: 6}, ]", "", "interface {}", nil},
-- {"anarray", true, `interface
{}([2]github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) [{X: 1},{X: 2}]`,
"", "interface {}", nil},
-- {"achan", true, `interface {}(chan
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) chan
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType 0/0`, "",
"interface {}", nil},
-- {"aslice", true, `interface
{}([]github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) [{X: 3},{X: 4}]`,
"", "interface {}", nil},
-- {"afunc", true, `interface
{}(func(github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType,
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType)) main.main.func1`,
"", "interface {}", nil},
-- {"astruct", true, `interface {}(*struct { A
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; B
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType }) *{A:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, B:
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType {X: 3}}`, "",
"interface {}", nil},
-- {"astruct2", true, `interface {}(*struct {
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; X int }) *{SomeType:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`,
"", "interface {}", nil},
-- {"iface2iface", true, `interface {}(*interface { AMethod(int) int;
AnotherMethod(int) int })
**github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType {X: 4}`, "",
"interface {}", nil},
-+ {"dir0someType", true, "interface
{}(*github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) *{X: 3}",
"", "interface {}", nil},
-+ {"dir1someType", true, "interface
{}(github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType) {X: 1, Y: 2}",
"", "interface {}", nil},
-+ {"amap3", true, "interface
{}(map[github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType]github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType)
[{X: 4}: {X: 5, Y: 6}, ]", "", "interface {}", nil},
-+ {"anarray", true, `interface
{}([2]github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) [{X: 1},{X: 2}]`,
"", "interface {}", nil},
-+ {"achan", true, `interface {}(chan
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) chan
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType 0/0`, "",
"interface {}", nil},
-+ {"aslice", true, `interface
{}([]github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) [{X: 3},{X: 4}]`,
"", "interface {}", nil},
-+ {"afunc", true, `interface
{}(func(github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType,
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType)) main.main.func1`,
"", "interface {}", nil},
-+ {"astruct", true, `interface {}(*struct { A
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; B
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType }) *{A:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, B:
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType {X: 3}}`, "",
"interface {}", nil},
-+ {"astruct2", true, `interface {}(*struct {
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; X int }) *{SomeType:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`,
"", "interface {}", nil},
-+ {"iface2iface", true, `interface {}(*interface { AMethod(int) int;
AnotherMethod(int) int })
**github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType {X: 4}`, "",
"interface {}", nil},
-
- {`"dir0/pkg".A`, false, "0", "", "int", nil},
- {`"dir1/pkg".A`, false, "1", "", "int", nil},
-@@ -1010,7 +1010,7 @@ func TestPackageRenames(t *testing.T) {
- if ver.Major > 0 && !ver.AfterOrEqual(goversion.GoVersion{1, 9, -1, 0, 0,
""}) {
- // before 1.9 embedded struct field have fieldname == type
- if tc.name == "astruct2" {
-- tc.value = `interface {}(*struct {
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; X int })
*{github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`
-+ tc.value = `interface {}(*struct {
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; X int })
*{github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`
- }
- }
- variable, err := evalVariable(p, tc.name, pnormalLoadConfig)
commit da74eae497435bb41a624c5c4f15876502585917
Author: Derek Parker <deparker(a)redhat.com>
Date: Mon Feb 4 01:52:04 2019 -0800
Update doc location output, cleanup spec
diff --git a/delve.spec b/delve.spec
index bddcced..46d6ce3 100644
--- a/delve.spec
+++ b/delve.spec
@@ -25,6 +25,7 @@ Source0: %{gosource}
Patch1: ./eval-symlink-in-test.patch
Patch2: ./test-fixture-vendor-to-internal.patch
+Patch3: ./doc-location.patch
BuildRequires:
golang(github.com/cosiner/argv)
BuildRequires:
golang(github.com/mattn/go-isatty)
@@ -54,10 +55,7 @@ building other packages which use import path with
%prep
-%forgesetup
-
-%patch1 -p1
-%patch2 -p1
+%forgeautosetup -p1
rm -rf vendor/
diff --git a/doc-location.patch b/doc-location.patch
new file mode 100644
index 0000000..79a5f46
--- /dev/null
+++ b/doc-location.patch
@@ -0,0 +1,51 @@
+From 0d98c57cd3276667655d3b23f8268f1249a9994d Mon Sep 17 00:00:00 2001
+From: Derek Parker <deparker(a)redhat.com>
+Date: Mon, 4 Feb 2019 01:49:43 -0800
+Subject: [PATCH] Update doc location for RPM package
+
+---
+ pkg/terminal/command.go | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/pkg/terminal/command.go b/pkg/terminal/command.go
+index 2927365447575b9a00418f72bdde87c5b58b9682..80d0df131613636c28800b5951f4bb5efba509f4
100644
+--- a/pkg/terminal/command.go
++++ b/pkg/terminal/command.go
+@@ -105,14 +105,14 @@ Type "help" followed by the name of a command for more
information about it.`},
+
+ break [name] <linespec>
+
+-See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/locspec.md for the syntax
of linespec.
++See /usr/share/doc/delve/Documentation/cli/locspec.md for the syntax of linespec.
+
+ See also: "help on", "help cond" and "help clear"`},
+ {aliases: []string{"trace", "t"}, cmdFn: tracepoint, helpMsg: `Set
tracepoint.
+
+ trace [name] <linespec>
+
+-A tracepoint is a breakpoint that does not stop the execution of the program, instead
when the tracepoint is hit a notification is displayed. See
$GOPATH/src/github.com/derekparker/delve/Documentation/cli/locspec.md for the syntax of
linespec.
++A tracepoint is a breakpoint that does not stop the execution of the program, instead
when the tracepoint is hit a notification is displayed. See
/usr/share/doc/delve/Documentation/cli/locspec.md for the syntax of linespec.
+
+ See also: "help on", "help cond" and "help clear"`},
+ {aliases: []string{"restart", "r"}, cmdFn: restart, helpMsg:
`Restart process.
+@@ -182,7 +182,7 @@ Called with more arguments it will execute a command on the specified
goroutine.
+
+ [goroutine <n>] [frame <m>] print <expression>
+
+-See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a description
of supported expressions.`},
++See /usr/share/doc/delve/Documentation/cli/expr.md for a description of supported
expressions.`},
+ {aliases: []string{"whatis"}, cmdFn: whatisCommand, helpMsg: `Prints type of
an expression.
+
+ whatis <expression>.`},
+@@ -190,7 +190,7 @@ See
$GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a des
+
+ [goroutine <n>] [frame <m>] set <variable> = <value>
+
+-See $GOPATH/src/github.com/derekparker/delve/Documentation/cli/expr.md for a description
of supported expressions. Only numerical variables and pointers can be changed.`},
++See /usr/share/doc/delve/Documentation/cli/expr.md for a description of supported
expressions. Only numerical variables and pointers can be changed.`},
+ {aliases: []string{"sources"}, cmdFn: sources, helpMsg: `Print list of
source files.
+
+ sources [<regex>]
+--
+2.16.5
+
commit 1881006b0f0a31290a6d11aeb4228e1d6e2da1c0
Author: Derek Parker <deparker(a)redhat.com>
Date: Thu Nov 1 13:37:02 2018 -0700
Initial spec file
diff --git a/delve.spec b/delve.spec
new file mode 100644
index 0000000..bddcced
--- /dev/null
+++ b/delve.spec
@@ -0,0 +1,94 @@
+# Run tests in check section
+%bcond_without check
+
+#
https://github.com/derekparker/delve
+%global goipath
github.com/derekparker/delve
+Version: 1.1.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
+much as possible.}
+
+%gometa
+
+Name: delve
+Release: 1%{?dist}
+Summary: A debugger for the Go programming language
+# Detected licences
+# - Expat License at 'LICENSE'
+License: MIT
+URL: %{gourl}
+Source0: %{gosource}
+
+Patch1: ./eval-symlink-in-test.patch
+Patch2: ./test-fixture-vendor-to-internal.patch
+
+BuildRequires:
golang(github.com/cosiner/argv)
+BuildRequires:
golang(github.com/mattn/go-isatty)
+BuildRequires:
golang(github.com/peterh/liner)
+BuildRequires:
golang(github.com/pkg/profile)
+BuildRequires:
golang(github.com/sirupsen/logrus)
+BuildRequires:
golang(github.com/spf13/cobra)
+BuildRequires:
golang(golang.org/x/arch/x86/x86asm)
+BuildRequires:
golang(golang.org/x/sys/unix)
+BuildRequires:
golang(golang.org/x/sys/windows)
+BuildRequires: golang(gopkg.in/yaml.v2)
+
+%description
+%{common_description}
+
+
+%package -n %{goname}-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{goname}-devel
+%{common_description}
+
+This package contains library source intended for
+building other packages which use import path with
+%{goipath} prefix.
+
+
+%prep
+%forgesetup
+
+%patch1 -p1
+%patch2 -p1
+
+rm -rf vendor/
+
+
+%build
+%gobuildroot
+%gobuild -o _bin/dlv %{goipath}/cmd/dlv
+
+
+%install
+%goinstall
+install -Dpm 0755 _bin/dlv %{buildroot}%{_bindir}/dlv
+
+
+%if %{with check}
+%check
+%gochecks
+%endif
+
+
+%files
+%license LICENSE
+%doc CONTRIBUTING.md CHANGELOG.md
+%doc Documentation/*
+%{_bindir}/dlv
+
+
+%files -n %{goname}-devel -f devel.file-list
+%license LICENSE
+
+
+%changelog
+* Fri Nov 2 2018 Derek Parker <deparker(a)redhat.com> - 1.1.0-1
+- First package for Fedora
diff --git a/eval-symlink-in-test.patch b/eval-symlink-in-test.patch
new file mode 100644
index 0000000..58aa079
--- /dev/null
+++ b/eval-symlink-in-test.patch
@@ -0,0 +1,29 @@
+From de6682d29149cc8f2131d295d68a5e3d65102590 Mon Sep 17 00:00:00 2001
+From: Derek Parker <parkerderek86(a)gmail.com>
+Date: Fri, 4 Jan 2019 02:03:16 -0800
+Subject: [PATCH] pkg/proc/test: Eval symlinks for test source (#1452)
+
+Some build environments (such as when building RPMs) enjoy symlinking
+things. This unfortunately causes our tests to fail as we record the
+path of fixtures and use that when looking up file:line information.
+However, the debug info in the binary records the original file
+location, not the location of the symlink.
+---
+ pkg/proc/test/support.go | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/pkg/proc/test/support.go b/pkg/proc/test/support.go
+index 733bad85..5f4a4127 100644
+--- a/pkg/proc/test/support.go
++++ b/pkg/proc/test/support.go
+@@ -150,6 +150,10 @@ func BuildFixture(name string, flags BuildFlags) Fixture {
+
+ source, _ := filepath.Abs(path)
+ source = filepath.ToSlash(source)
++ sympath, err := filepath.EvalSymlinks(source)
++ if err == nil {
++ source = strings.Replace(sympath, "\\", "/", -1)
++ }
+
+ fixture := Fixture{Name: name, Path: tmpfile, Source: source}
+
diff --git a/test-fixture-vendor-to-internal.patch
b/test-fixture-vendor-to-internal.patch
new file mode 100644
index 0000000..774de87
--- /dev/null
+++ b/test-fixture-vendor-to-internal.patch
@@ -0,0 +1,142 @@
+From 73d636f7d7adf159e26f35f37aba514f647492ce Mon Sep 17 00:00:00 2001
+From: aarzilli <alessandro.arzilli(a)gmail.com>
+Date: Tue, 6 Nov 2018 12:11:51 +0100
+Subject: [PATCH] tests: rename _fixtures/vendor to _fixtures/internal
+
+Some tests used a fake vendor directory placed inside _fixtures to
+import some support packages.
+In go.mod mode vendor directory are only supported on the root of the
+project, which breaks some of our tests.
+Since vendor directories outside the root of the project are so rare
+anyway it's possible that a future version of go will stop supporting
+it even in GOPATH mode.
+Also it was weird and unnecessary in the first place anyawy.
+---
+ _fixtures/consts.go | 2 +-
+ _fixtures/dotpackagesiface.go | 4 ++--
+ _fixtures/{vendor => internal}/dir.io/dir.go | 0
+ .../{vendor => internal}/dir.io/io.io/io.go | 0
+ .../{vendor => internal}/dir0/pkg/main.go | 0
+ .../dir0/renamedpackage/main.go | 0
+ .../{vendor => internal}/dir1/pkg/main.go | 0
+ _fixtures/pkgrenames.go | 6 ++---
+ service/test/variables_test.go | 24 +++++++++----------
+ 9 files changed, 18 insertions(+), 18 deletions(-)
+ rename _fixtures/{vendor => internal}/dir.io/dir.go (100%)
+ rename _fixtures/{vendor => internal}/dir.io/io.io/io.go (100%)
+ rename _fixtures/{vendor => internal}/dir0/pkg/main.go (100%)
+ rename _fixtures/{vendor => internal}/dir0/renamedpackage/main.go (100%)
+ rename _fixtures/{vendor => internal}/dir1/pkg/main.go (100%)
+
+diff --git a/_fixtures/consts.go b/_fixtures/consts.go
+index 531a27db..54bfa8b2 100644
+--- a/_fixtures/consts.go
++++ b/_fixtures/consts.go
+@@ -1,8 +1,8 @@
+ package main
+
+ import (
+- "dir0/pkg"
+ "fmt"
++ "github.com/derekparker/delve/_fixtures/internal/dir0/pkg"
+ "runtime"
+ )
+
+diff --git a/_fixtures/dotpackagesiface.go b/_fixtures/dotpackagesiface.go
+index 5ad147c2..5952ebeb 100644
+--- a/_fixtures/dotpackagesiface.go
++++ b/_fixtures/dotpackagesiface.go
+@@ -1,9 +1,9 @@
+ package main
+
+ import (
+- "dir.io"
+- "dir.io/io.io"
+ "fmt"
++ "github.com/derekparker/delve/_fixtures/internal/dir.io"
++ "github.com/derekparker/delve/_fixtures/internal/dir.io/io.io"
+ "runtime"
+ )
+
+diff --git a/_fixtures/vendor/dir.io/dir.go b/_fixtures/internal/dir.io/dir.go
+similarity index 100%
+rename from _fixtures/vendor/dir.io/dir.go
+rename to _fixtures/internal/dir.io/dir.go
+diff --git a/_fixtures/vendor/dir.io/io.io/io.go b/_fixtures/internal/dir.io/io.io/io.go
+similarity index 100%
+rename from _fixtures/vendor/dir.io/io.io/io.go
+rename to _fixtures/internal/dir.io/io.io/io.go
+diff --git a/_fixtures/vendor/dir0/pkg/main.go b/_fixtures/internal/dir0/pkg/main.go
+similarity index 100%
+rename from _fixtures/vendor/dir0/pkg/main.go
+rename to _fixtures/internal/dir0/pkg/main.go
+diff --git a/_fixtures/vendor/dir0/renamedpackage/main.go
b/_fixtures/internal/dir0/renamedpackage/main.go
+similarity index 100%
+rename from _fixtures/vendor/dir0/renamedpackage/main.go
+rename to _fixtures/internal/dir0/renamedpackage/main.go
+diff --git a/_fixtures/vendor/dir1/pkg/main.go b/_fixtures/internal/dir1/pkg/main.go
+similarity index 100%
+rename from _fixtures/vendor/dir1/pkg/main.go
+rename to _fixtures/internal/dir1/pkg/main.go
+diff --git a/_fixtures/pkgrenames.go b/_fixtures/pkgrenames.go
+index d315e6b7..6e0882dc 100644
+--- a/_fixtures/pkgrenames.go
++++ b/_fixtures/pkgrenames.go
+@@ -8,9 +8,9 @@ import (
+ pkg1 "go/ast"
+ pkg2 "net/http"
+
+- "dir0/pkg"
+- "dir0/renamedpackage"
+- dir1pkg "dir1/pkg"
++ "github.com/derekparker/delve/_fixtures/internal/dir0/pkg"
++ "github.com/derekparker/delve/_fixtures/internal/dir0/renamedpackage"
++ dir1pkg "github.com/derekparker/delve/_fixtures/internal/dir1/pkg"
+ )
+
+ func main() {
+diff --git a/service/test/variables_test.go b/service/test/variables_test.go
+index 83fb6e7a..0e29202a 100644
+--- a/service/test/variables_test.go
++++ b/service/test/variables_test.go
+@@ -978,20 +978,20 @@ func TestPackageRenames(t *testing.T) {
+ {"amap", true, "interface {}(map[go/ast.BadExpr]net/http.Request)
[{From: 2, To: 3}: *{Method: \"othermethod\", ", "",
"interface {}", nil},
+
+ // Package name that doesn't match import path
+- {"iface3", true, `interface
{}(*github.com/derekparker/delve/_fixtures/vendor/dir0/renamedpackage.SomeType) *{A:
true}`, "", "interface {}", nil},
++ {"iface3", true, `interface
{}(*github.com/derekparker/delve/_fixtures/internal/dir0/renamedpackage.SomeType) *{A:
true}`, "", "interface {}", nil},
+
+ // Interfaces to anonymous types
+ {"amap2", true, "interface {}(*map[go/ast.BadExpr]net/http.Request)
*[{From: 2, To: 3}: *{Method: \"othermethod\", ", "",
"interface {}", nil},
+- {"dir0someType", true, "interface
{}(*github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) *{X: 3}",
"", "interface {}", nil},
+- {"dir1someType", true, "interface
{}(github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType) {X: 1, Y: 2}",
"", "interface {}", nil},
+- {"amap3", true, "interface
{}(map[github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType]github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType)
[{X: 4}: {X: 5, Y: 6}, ]", "", "interface {}", nil},
+- {"anarray", true, `interface
{}([2]github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) [{X: 1},{X: 2}]`,
"", "interface {}", nil},
+- {"achan", true, `interface {}(chan
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) chan
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType 0/0`, "",
"interface {}", nil},
+- {"aslice", true, `interface
{}([]github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType) [{X: 3},{X: 4}]`,
"", "interface {}", nil},
+- {"afunc", true, `interface
{}(func(github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType,
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType)) main.main.func1`,
"", "interface {}", nil},
+- {"astruct", true, `interface {}(*struct { A
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; B
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType }) *{A:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, B:
github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType {X: 3}}`, "",
"interface {}", nil},
+- {"astruct2", true, `interface {}(*struct {
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; X int }) *{SomeType:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`,
"", "interface {}", nil},
+- {"iface2iface", true, `interface {}(*interface { AMethod(int) int;
AnotherMethod(int) int })
**github.com/derekparker/delve/_fixtures/vendor/dir0/pkg.SomeType {X: 4}`, "",
"interface {}", nil},
++ {"dir0someType", true, "interface
{}(*github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) *{X: 3}",
"", "interface {}", nil},
++ {"dir1someType", true, "interface
{}(github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType) {X: 1, Y: 2}",
"", "interface {}", nil},
++ {"amap3", true, "interface
{}(map[github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType]github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType)
[{X: 4}: {X: 5, Y: 6}, ]", "", "interface {}", nil},
++ {"anarray", true, `interface
{}([2]github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) [{X: 1},{X: 2}]`,
"", "interface {}", nil},
++ {"achan", true, `interface {}(chan
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) chan
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType 0/0`, "",
"interface {}", nil},
++ {"aslice", true, `interface
{}([]github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType) [{X: 3},{X: 4}]`,
"", "interface {}", nil},
++ {"afunc", true, `interface
{}(func(github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType,
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType)) main.main.func1`,
"", "interface {}", nil},
++ {"astruct", true, `interface {}(*struct { A
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; B
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType }) *{A:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, B:
github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType {X: 3}}`, "",
"interface {}", nil},
++ {"astruct2", true, `interface {}(*struct {
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; X int }) *{SomeType:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`,
"", "interface {}", nil},
++ {"iface2iface", true, `interface {}(*interface { AMethod(int) int;
AnotherMethod(int) int })
**github.com/derekparker/delve/_fixtures/internal/dir0/pkg.SomeType {X: 4}`, "",
"interface {}", nil},
+
+ {`"dir0/pkg".A`, false, "0", "", "int", nil},
+ {`"dir1/pkg".A`, false, "1", "", "int", nil},
+@@ -1010,7 +1010,7 @@ func TestPackageRenames(t *testing.T) {
+ if ver.Major > 0 && !ver.AfterOrEqual(goversion.GoVersion{1, 9, -1, 0, 0,
""}) {
+ // before 1.9 embedded struct field have fieldname == type
+ if tc.name == "astruct2" {
+- tc.value = `interface {}(*struct {
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType; X int })
*{github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType:
github.com/derekparker/delve/_fixtures/vendor/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`
++ tc.value = `interface {}(*struct {
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType; X int })
*{github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType:
github.com/derekparker/delve/_fixtures/internal/dir1/pkg.SomeType {X: 1, Y: 2}, X: 10}`
+ }
+ }
+ variable, err := evalVariable(p, tc.name, pnormalLoadConfig)