all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Alex Kost <alezost@gmail.com>
To: Carlo Zancanaro <carlo@zancanaro.id.au>
Cc: Guix-devel <guix-devel@gnu.org>, Federico Beffa <beffa@fbengineering.ch>
Subject: Re: [PATCH] Elpa importer improvements
Date: Tue, 27 Dec 2016 11:54:55 +0300	[thread overview]
Message-ID: <87ful9px9c.fsf@gmail.com> (raw)
In-Reply-To: <8760mn5kqq.fsf@zancanaro.id.au> (Carlo Zancanaro's message of "Wed, 14 Dec 2016 13:04:45 +1100")

Carlo Zancanaro (2016-12-14 13:04 +1100) wrote:

> I was trying to import some elpa packages recently and found some
> issues, so here are some patches to fix them.
>
> 1. call-with-downloaded-file had behaviour different to how it was
> documented to behave. This was primarily a problem when trying to import
> packages with no description (eg. color-theme-solarized on melpa).
>
> 2. Package dependencies need to be propagated so that emacs can find
> them.

> Has anyone looked at this? This is relatively minor, but now that the
> 0.12.0 release is done I thought a ping might be appropriate.

Thanks for pinging!  I've also Cc-ed Federico and Ludovic who wrote and
changed this part of code.

> From 0e561aee91b5d389d72906d059ddf486a322f20a Mon Sep 17 00:00:00 2001
> From: Carlo Zancanaro <carlo@zancanaro.id.au>
> Date: Wed, 14 Dec 2016 12:31:12 +1100
> Subject: [PATCH 1/2] import: elpa: Fix call-with-downloaded-file
>
> * guix/import/elpa.scm (call-with-downloaded-file): Make function behaviour
> match documentation string.
> ---
>  guix/import/elpa.scm | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm
> index 320a09e8c..5f8b7a9e5 100644
> --- a/guix/import/elpa.scm
> +++ b/guix/import/elpa.scm
> @@ -89,7 +89,13 @@ NAMES (strings)."
>    "Fetch URL, store the content in a temporary file and call PROC with that
>  file.  Returns the value returned by PROC.  On error call ERROR-THUNK and
>  return its value or leave if it's false."
> -  (proc (http-fetch/cached (string->uri url))))
> +  (catch #t
> +    (lambda ()
> +      (proc (http-fetch/cached (string->uri url))))
> +    (lambda (key . args)
> +      (if error-thunk
> +          (error-thunk)
> +          (apply throw key args)))))

So here you fixed a regression introduced by commit 218622a73¹, thanks!
I think it's better to call 'leave' on the last line as it was done
originally.

¹ http://git.savannah.gnu.org/cgit/guix.git/commit/?id=218622a73794c3b0d0d81db9176a59125c58df41

> From 88f23b9c369841837a83225b52e19f4c029906ab Mon Sep 17 00:00:00 2001
> From: Carlo Zancanaro <carlo@zancanaro.id.au>
> Date: Wed, 14 Dec 2016 12:34:15 +1100
> Subject: [PATCH 2/2] import: elpa: Import dependencies as propagated-inputs
>
> * guix/import/elpa.scm (elpa-package->sexp): Import dependencies as
> propagated-inputs.
> ---
>  guix/import/elpa.scm | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm
> index 5f8b7a9e5..897ce6a69 100644
> --- a/guix/import/elpa.scm
> +++ b/guix/import/elpa.scm
> @@ -228,7 +228,7 @@ type '<elpa-package>'."
>                          (bytevector->nix-base32-string (file-sha256 tarball))
>                          "failed to download package")))))
>         (build-system emacs-build-system)
> -       ,@(maybe-inputs 'inputs dependencies)
> +       ,@(maybe-inputs 'propagated-inputs dependencies)
>         (home-page ,(elpa-package-home-page pkg))
>         (synopsis ,(elpa-package-synopsis pkg))
>         (description ,(elpa-package-description pkg))

Using 'propagated-inputs' looks right to me.

-- 
Alex

  parent reply	other threads:[~2016-12-27  8:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-14  2:04 [PATCH] Elpa importer improvements Carlo Zancanaro
2016-12-23  1:57 ` Carlo Zancanaro
2016-12-27  8:54 ` Alex Kost [this message]
2016-12-27 10:20   ` Carlo Zancanaro
2016-12-29 17:16   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ful9px9c.fsf@gmail.com \
    --to=alezost@gmail.com \
    --cc=beffa@fbengineering.ch \
    --cc=carlo@zancanaro.id.au \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.