unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#49200] [PATCH] import: go: Fix match-error in 'go-package-description'
@ 2021-06-23 22:46 Sarah Morgensen via Guix-patches via
  2021-06-28  6:54 ` Björn Höfling
  0 siblings, 1 reply; 2+ messages in thread
From: Sarah Morgensen via Guix-patches via @ 2021-06-23 22:46 UTC (permalink / raw)
  To: 49200

* guix/import/go.scm (go-package-description): Make sure description* is
always a list, so the result is properly matched.
---
Hello Guix,

In the process of using `guix import go` I encountered a rare issue when the
go.pkg.dev Documentation and UnitInfo sections for a package are both blank:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix import go github.com/neelance/sourcemap
Backtrace:
In ice-9/boot-9.scm:
  1752:10  7 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
           6 (apply-smob/0 #<thunk 7fd10955ef60>)
In ice-9/boot-9.scm:
    724:2  5 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
    619:8  4 (_ #(#(#<directory (guile-user) 7fd109558c80>)))
In guix/ui.scm:
  2147:12  3 (run-guix-command _ . _)
In guix/scripts/import.scm:
   120:11  2 (guix-import . _)
In guix/scripts/import/go.scm:
   118:27  1 (guix-import-go . _)
In guix/import/go.scm:
    191:4  0 (go-module->guix-package _ #:goproxy _ #:version _ # _)

guix/import/go.scm:191:4: In procedure go-module->guix-package:
Throw to key `match-error' with args `("match" "no matching pattern" #f)'.
--8<---------------cut here---------------end--------------->8---

Looks like the error is due to using false where the empty list was expected.
This tiny patch fixes that. Copyright for go.scm was added in
<https://issues.guix.gnu.org/49196>.

Sarah

 guix/import/go.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/guix/import/go.scm b/guix/import/go.scm
index d110954664..cf8c62abe2 100644
--- a/guix/import/go.scm
+++ b/guix/import/go.scm
@@ -186,8 +186,9 @@ e.g. \"google.golang.org/protobuf/proto\"."
          (description (if (not (null? overview))
                           overview
                           (select-content sxml)))
-         (description* (and (not (null? description))
-                            (first description))))
+         (description* (if (not (null? description))
+                           (first description)
+                           description)))
     (match description*
       (() #f)                           ;nothing selected
       ((p elements ...)

base-commit: 1f3d7b45349d43e5cc02594083e0cd44ef730992
-- 
2.31.1





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

* [bug#49200] [PATCH] import: go: Fix match-error in 'go-package-description'
  2021-06-23 22:46 [bug#49200] [PATCH] import: go: Fix match-error in 'go-package-description' Sarah Morgensen via Guix-patches via
@ 2021-06-28  6:54 ` Björn Höfling
  0 siblings, 0 replies; 2+ messages in thread
From: Björn Höfling @ 2021-06-28  6:54 UTC (permalink / raw)
  To: 49200; +Cc: 49200-done, Sarah Morgensen

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

On Wed, 23 Jun 2021 15:46:46 -0700
Sarah Morgensen via Guix-patches via <guix-patches@gnu.org> wrote:

> * guix/import/go.scm (go-package-description): Make sure description*
> is always a list, so the result is properly matched.


Pushed as

9d9152425e96c408357d0f4961767a5c08076c13

Thanks,

Björn

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

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

end of thread, other threads:[~2021-06-28  6:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-23 22:46 [bug#49200] [PATCH] import: go: Fix match-error in 'go-package-description' Sarah Morgensen via Guix-patches via
2021-06-28  6:54 ` Björn Höfling

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).