[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Recent change in master breaks async package update using paradox

From: Lars Brinkhoff
Subject: Re: Recent change in master breaks async package update using paradox
Date: Fri, 07 Apr 2017 09:40:39 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Eli Zaretskii wrote:
>> The first lambda is executed in a subprocess emacs and throws the error
>> (wrong-type-argument sequencep #s(package-desc swiper ... ))
> What is package-desc?  If its value and/or its semantics are only
> valid in the parent Emacs process, then it might not work to use it in
> the subprocess.

It's a defstruct in package.el.

I interpret the error message as something probably creating a
package-desc instance as a record.  But then something else expects this
instance to be a sequence.  Possibly because it's compiled with the old
cl-defstruct, or maybe it's using a function that worked with vector
structures but now doesn't work with record structures.  (If it's the
latter, we should probably add something to cl-old-struct-compat-mode to
make it work.)

I think there are only a few functions that wants a sequence but not a
record: elt, copy-sequence, concat, reverse, and sort.  In the context
of structure operations, the most likely function would be copy-sequence.

The problem is finding this function call which is made in an async
subprocess emacs.  The backtrace we have only shows what's going in in
the parent emacs.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]