[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#51091] [PATCH v3] guix: opam: Do not fail when refreshing.
From: |
zimoun |
Subject: |
[bug#51091] [PATCH v3] guix: opam: Do not fail when refreshing. |
Date: |
Fri, 19 Nov 2021 12:30:20 +0100 |
Hi Julien,
On Fri, 19 Nov 2021 at 12:21, Julien Lepiller <julien@lepiller.eu> wrote:
> >> I forgot to remove the catch #t around the whole body of the function.
> >> I noticed that guard* was raising &non-continuable so I tried to fix it
> >> by using raise-continuable from (ice-9 exceptions). Is this the correct
> >> solution?
> >
> >I suppose, though I’m not sure why it needs to be continuable: you could
> >just catch the exception and move on to the next package?
>
> I don't understand how to catch the exception though, unless you mean wrap
> everything with catch #t, which kinda defeats the purpose of having a
> condition in the first pjace. guard* raises &non-continuable unless the
> condition is continuable, or I'm missing something in the way I use it. I
> have no idea what a continuable exception is, so let me just push the other
> patch.
>
> (guard* (c ((opam-error? c) #f)))
> (raise (condition (&opam-error …))))
>
> Doesn't return #f as I expect, but raises &non-continuable.
I sympathize and I had / is still having hard time with similar use
cases. That's one of the reasons (among my laziness :-)) that [1] is
not fixed yet. :-)
1: <1: <http://issues.guix.gnu.org/issue/45984>
> Hopefully someone smarter than me can figure it out. I'll push the other
> patch, although I don't like the double warning in the updater.
I agree. And move all G_ strings to guix/scripts/ is a good idea, IMHO.
Well, I do not know. :-)
(I secretly hoped that you would be the smarter than me person fixing
the recursive importers. ;-))
Cheers,
simon