unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / Atom feed
* bug#50595: Faliure in guix import go
@ 2021-09-15  0:32 Stephen Paul Weber
  2021-09-15  2:27 ` bug#50595: Failure " Stephen Paul Weber
  2021-09-17  3:07 ` Sarah Morgensen
  0 siblings, 2 replies; 6+ messages in thread
From: Stephen Paul Weber @ 2021-09-15  0:32 UTC (permalink / raw)
  To: 50595

[-- Attachment #1: Type: text/plain, Size: 201 bytes --]

$ guix import go -r bdd.fi/x/runitor

guix import: warning: Failed to import package "bdd.fi/x/runitor".
reason: ("struct-vtable" "Wrong type argument in position 1 (expecting struct): ~S" (#f) (#f)).

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#50595: Failure in guix import go
  2021-09-15  0:32 bug#50595: Faliure in guix import go Stephen Paul Weber
@ 2021-09-15  2:27 ` Stephen Paul Weber
  2021-09-17 21:39   ` Sarah Morgensen
  2021-09-17  3:07 ` Sarah Morgensen
  1 sibling, 1 reply; 6+ messages in thread
From: Stephen Paul Weber @ 2021-09-15  2:27 UTC (permalink / raw)
  To: 50595

[-- Attachment #1: Type: text/plain, Size: 626 bytes --]

Getting a similar failure here:

$ guix import go github.com/cncf/udpa/go/

following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@v/list'...
following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@latest'...
following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@v/v0.0.0-20210322005330-6414d713912e.mod'...
guix import: warning: Failed to import package "github.com/cncf/udpa/go/".
reason: ("vector-ref" "Wrong type argument in position 1 (expecting vector): ~S" (#f) (#f)).
guix import: error: failed to download meta-data for module 'github.com/cncf/udpa/go/'

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#50595: Faliure in guix import go
  2021-09-15  0:32 bug#50595: Faliure in guix import go Stephen Paul Weber
  2021-09-15  2:27 ` bug#50595: Failure " Stephen Paul Weber
@ 2021-09-17  3:07 ` Sarah Morgensen
  1 sibling, 0 replies; 6+ messages in thread
From: Sarah Morgensen @ 2021-09-17  3:07 UTC (permalink / raw)
  To: Stephen Paul Weber; +Cc: 50595

[-- Attachment #1: Type: text/plain, Size: 629 bytes --]

Hello,

Thanks for your report!

Stephen Paul Weber <singpolyma@singpolyma.net> writes:

> $ guix import go -r bdd.fi/x/runitor
>
> guix import: warning: Failed to import package "bdd.fi/x/runitor".
> reason: ("struct-vtable" "Wrong type argument in position 1 (expecting struct): ~S" (#f) (#f)).

It seems this is occurring because "https://bdd.fi/x/runitor?go-get=1"
does not have the

  <meta "go-import" ...>

tag in the <head> element, as the Go spec requires (it's a direct child
of the <html> element).  However, it seems fairly harmless to relax this
requirement in our importer, so the following patch should fix this.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: import: go: Match go-import meta tags anywhere. --]
[-- Type: text/x-patch, Size: 1359 bytes --]

From ca17299a3011171d6889202003d1e888b22303ec Mon Sep 17 00:00:00 2001
Message-Id: <ca17299a3011171d6889202003d1e888b22303ec.1631842353.git.iskarian@mgsn.dev>
From: Sarah Morgensen <iskarian@mgsn.dev>
Date: Thu, 16 Sep 2021 18:27:09 -0700
Subject: [PATCH] import: go: Match "go-import" meta tags anywhere.

Some personal sites forget to put <meta name="go-import" ...> in a
<head> element, so look anywhere for them.

* guix/import/go.scm (fetch-module-meta-data): Match "go-import" meta
tags anywhere in the page.
---
 guix/import/go.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/guix/import/go.scm b/guix/import/go.scm
index dad007d511..43abe004b3 100644
--- a/guix/import/go.scm
+++ b/guix/import/go.scm
@@ -480,7 +480,7 @@ build a package."
                          (strip-.git-suffix/maybe repo-url)))))
   ;; <meta name="go-import" content="import-prefix vcs repo-root">
   (let* ((meta-data (http-fetch* (format #f "https://~a?go-get=1" module-path)))
-         (select (sxpath `(// head (meta (@ (equal? (name "go-import"))))
+         (select (sxpath `(// (meta (@ (equal? (name "go-import"))))
                               // content))))
     (match (select (html->sxml meta-data #:strict? #t))
       (() #f)                           ;nothing selected

base-commit: 72297993a174586ee0a23b95b6b9ee2f3db34cf1
--
2.33.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#50595: Failure in guix import go
  2021-09-15  2:27 ` bug#50595: Failure " Stephen Paul Weber
@ 2021-09-17 21:39   ` Sarah Morgensen
  2021-09-18 21:12     ` bug#50595: Faliure " Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Sarah Morgensen @ 2021-09-17 21:39 UTC (permalink / raw)
  To: Stephen Paul Weber; +Cc: 50595

[-- Attachment #1: Type: text/plain, Size: 898 bytes --]

Hello,

Stephen Paul Weber <singpolyma@singpolyma.net> writes:

> Getting a similar failure here:
>
> $ guix import go github.com/cncf/udpa/go/
>
> following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@v/list'...
> following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@latest'...
> following redirection to `https://proxy.golang.org/github.com/cncf/udpa/go/@v/v0.0.0-20210322005330-6414d713912e.mod'...
> guix import: warning: Failed to import package "github.com/cncf/udpa/go/".
> reason: ("vector-ref" "Wrong type argument in position 1 (expecting vector): ~S" (#f) (#f)).
> guix import: error: failed to download meta-data for module 'github.com/cncf/udpa/go/'

This one seems to be caused by the importer incorrectly using the
repository root instead of the module path in a couple places.  The
attached patch fixes this.

Hope that helps,
--
Sarah


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: import: go: Import handling of modules in VCS subdirectories. --]
[-- Type: text/x-patch, Size: 2057 bytes --]

From b9ef64a641c20d331cf1886d71b85b81be910b30 Mon Sep 17 00:00:00 2001
Message-Id: <b9ef64a641c20d331cf1886d71b85b81be910b30.1631914185.git.iskarian@mgsn.dev>
From: Sarah Morgensen <iskarian@mgsn.dev>
Date: Thu, 16 Sep 2021 18:24:40 -0700
Subject: [PATCH] import: go: Improve handling of modules in VCS
 subdirectories.

Use the supplied module path (instead of the repository root) as the import
path for everything except source and homepage URLs.  For modules not in the
root of a VCS repository, set #:unpack-path to the repository root by default.

* guix/import/go.scm (go-module->guix-package): Use 'module-path'
instead of 'root-module-path' for #:import-path.  Emit #:unpack-path
when #:import-path is not equal to 'root-module-path'.
---
 guix/import/go.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/guix/import/go.scm b/guix/import/go.scm
index c6ecdbaffd..fe7387dec2 100644
--- a/guix/import/go.scm
+++ b/guix/import/go.scm
@@ -619,7 +619,7 @@ hint: use one of the following available versions ~a\n"
          (meta-data (fetch-module-meta-data root-module-path))
          (vcs-type (module-meta-vcs meta-data))
          (vcs-repo-url (module-meta-data-repo-url meta-data goproxy))
-         (synopsis (go-package-synopsis root-module-path))
+         (synopsis (go-package-synopsis module-path))
          (description (go-package-description module-path))
          (licenses (go-package-licenses module-path)))
     (values
@@ -630,7 +630,10 @@ hint: use one of the following available versions ~a\n"
          ,(vcs->origin vcs-type vcs-repo-url version*))
         (build-system go-build-system)
         (arguments
-         '(#:import-path ,root-module-path))
+         '(#:import-path ,module-path
+           ,@(if (string=? module-path root-module-path)
+                 '()
+                 `(#:unpack-path ,root-module-path))))
         ,@(maybe-propagated-inputs
            (map (match-lambda
                   ((name version)

base-commit: 72297993a174586ee0a23b95b6b9ee2f3db34cf1
--
2.33.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#50595: Faliure in guix import go
  2021-09-17 21:39   ` Sarah Morgensen
@ 2021-09-18 21:12     ` Ludovic Courtès
  2021-09-18 21:37       ` Sarah Morgensen
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2021-09-18 21:12 UTC (permalink / raw)
  To: Sarah Morgensen; +Cc: Stephen Paul Weber, 50595

Hi,

Sarah Morgensen <iskarian@mgsn.dev> skribis:

>>From b9ef64a641c20d331cf1886d71b85b81be910b30 Mon Sep 17 00:00:00 2001
> Message-Id: <b9ef64a641c20d331cf1886d71b85b81be910b30.1631914185.git.iskarian@mgsn.dev>
> From: Sarah Morgensen <iskarian@mgsn.dev>
> Date: Thu, 16 Sep 2021 18:24:40 -0700
> Subject: [PATCH] import: go: Improve handling of modules in VCS
>  subdirectories.
>
> Use the supplied module path (instead of the repository root) as the import
> path for everything except source and homepage URLs.  For modules not in the
> root of a VCS repository, set #:unpack-path to the repository root by default.
>
> * guix/import/go.scm (go-module->guix-package): Use 'module-path'
> instead of 'root-module-path' for #:import-path.  Emit #:unpack-path
> when #:import-path is not equal to 'root-module-path'.

[...]

>>From ca17299a3011171d6889202003d1e888b22303ec Mon Sep 17 00:00:00 2001
> Message-Id: <ca17299a3011171d6889202003d1e888b22303ec.1631842353.git.iskarian@mgsn.dev>
> From: Sarah Morgensen <iskarian@mgsn.dev>
> Date: Thu, 16 Sep 2021 18:27:09 -0700
> Subject: [PATCH] import: go: Match "go-import" meta tags anywhere.
>
> Some personal sites forget to put <meta name="go-import" ...> in a
> <head> element, so look anywhere for them.
>
> * guix/import/go.scm (fetch-module-meta-data): Match "go-import" meta
> tags anywhere in the page.

I went ahead and pushed these two patches on your behalf (after adding a
reference to this bug):

  281ede2e7d * import: go: Match "go-import" meta tags anywhere.
  b3907e304d * import: go: Improve handling of modules in VCS subdirectories.

Should we close this bug now, Sarah?

Thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#50595: Faliure in guix import go
  2021-09-18 21:12     ` bug#50595: Faliure " Ludovic Courtès
@ 2021-09-18 21:37       ` Sarah Morgensen
  0 siblings, 0 replies; 6+ messages in thread
From: Sarah Morgensen @ 2021-09-18 21:37 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Stephen Paul Weber, 50595-done

Hi,

Ludovic Courtès <ludo@gnu.org> writes:

> I went ahead and pushed these two patches on your behalf (after adding a
> reference to this bug):
>
>   281ede2e7d * import: go: Match "go-import" meta tags anywhere.
>   b3907e304d * import: go: Improve handling of modules in VCS subdirectories.

Thanks (that was quick)!

> Should we close this bug now, Sarah?

Yes; I've closed it now.

If anyone has some time and free disk space, you might try importing
something which brings in complicated repos like AWS, and see if
anything else falls out.  Perhaps try github.com/cloudfoundry/cli?  I've
tried that one before and it was a mess.

--
Sarah




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-09-18 21:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-15  0:32 bug#50595: Faliure in guix import go Stephen Paul Weber
2021-09-15  2:27 ` bug#50595: Failure " Stephen Paul Weber
2021-09-17 21:39   ` Sarah Morgensen
2021-09-18 21:12     ` bug#50595: Faliure " Ludovic Courtès
2021-09-18 21:37       ` Sarah Morgensen
2021-09-17  3:07 ` Sarah Morgensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).