Bug#1020851: elpa-ement: fails to install along emacs
Hello, On Fri 25 Nov 2022 at 09:47PM +01, Aymeric Agon-Rambosson wrote: > Hello, > > Le vendredi 25 novembre 2022 à 10:31, Sean Whitton > a écrit : > >> It would? The highest version is meant to take precedence. That's a >> feature of package.el. > > I run some version of emacs 28.1, which ships xref 1.3.0. > > I installed elpa-eglot, which depends on elpa-xref version 1.0.2. > > Since then, I have had the following : > > (find-library-name "xref") > "/usr/share/emacs/site-lisp/elpa-src/xref-1.0.2/xref.el" > > (locate-library "xref") > "/usr/share/emacs/site-lisp/elpa/xref-1.0.2/xref.el" > > I do have /usr/share/emacs/28.1/lisp/progmodes in my load-path, which is the > directory containing xref.el.gz. > > From what I can see, it would seem that /usr/share/emacs/site-lisp takes > precedence over /usr/share/emacs/, rather than the highest > library version. > > I'm not sure whether that is intended or not. My understanding is that this is an upstream bug in Emacs, but ICBW. -- Sean Whitton signature.asc Description: PGP signature
Bug#1020851: elpa-ement: fails to install along emacs
Hello, Le vendredi 25 novembre 2022 à 10:31, Sean Whitton a écrit : It would? The highest version is meant to take precedence. That's a feature of package.el. I run some version of emacs 28.1, which ships xref 1.3.0. I installed elpa-eglot, which depends on elpa-xref version 1.0.2. Since then, I have had the following : (find-library-name "xref") "/usr/share/emacs/site-lisp/elpa-src/xref-1.0.2/xref.el" (locate-library "xref") "/usr/share/emacs/site-lisp/elpa/xref-1.0.2/xref.el" I do have /usr/share/emacs/28.1/lisp/progmodes in my load-path, which is the directory containing xref.el.gz. From what I can see, it would seem that /usr/share/emacs/site-lisp takes precedence over /usr/share/emacs/, rather than the highest library version. I'm not sure whether that is intended or not. Best, Aymeric
Bug#1020851: elpa-ement: fails to install along emacs
Hello, On Wed 23 Nov 2022 at 11:26PM +01, Aymeric Agon-Rambosson wrote: > However, this packaged version of elpa-transient would also shadow the > transient shipped with emacs, regardless of their respective versions. It would? The highest version is meant to take precedence. That's a feature of package.el. -- Sean Whitton signature.asc Description: PGP signature
Bug#1020851: elpa-ement: fails to install along emacs
Hello, Le mercredi 23 novembre 2022 à 14:00, Sean Whitton a écrit : elpa-transient isn't a transitional package -- we'll keep it in Debian even after Emacs 28 is the only Emacs we have. This is because we might need a newer version of transient available for another package. So far our strategy has been to handle this in the code in dh_elpa that generates dependencies, and also not worry about it too much, unless we get a combination that results in something not having its dependency available. I don't think we should be adding Provides/Breaks anywhere without considering corresponding changes in dh_elpa. The change we have used previously was to add the package in question (then org, in the present case transient) to the list of separately packaged libraries in the dhelpa-filter-deps-for-debian. This would create a hard dependency on elpa-transient, regardless of the available version of the same library in the bundled version of emacs. This would solve the problem of elpa-ement and elpa-snakemake. However, this packaged version of elpa-transient would also shadow the transient shipped with emacs, regardless of their respective versions. The use of the Provides: mechanism proposed by Mr. Beckmann on the emacs-common package (which is independent from the changes made in dh-elpa that would need to be done anyway) would prevent that, and also allow apt to save installing a package (elpa-transient) only when the emacs-common version is high enough. This would only require computing, for each elisp libraries shipped with emacs that we also package separately, the version provided by the current version of emacs. A corresponding versioned Provides: field would be then added to emacs-common. I.E. a loop around something like this : (package-desc-version (cadr (assq 'transient package-alist))) This is in fact a simpler and more elegant solution than the one I proposed in 87h6zai8qp.fsf@EBx360. Best, Aymeric
Bug#1020851: elpa-ement: fails to install along emacs
Hello, On Wed 23 Nov 2022 at 01:17PM +01, Andreas Beckmann wrote: > On 23/11/2022 01.11, Sean Whitton wrote: >> Hello, >> On Tue 22 Nov 2022 at 05:39PM +01, Andreas Beckmann wrote: >> >>> On 28/09/2022 16.55, Sean Whitton wrote: transient is included in Emacs 28 so I'm inclined to leave this to fix itself when Emacs 28 migrates. >>> >>> Can't this be expressed as a package relationship? >>> e.g. Depends: emacs-el (>= 1:28) >> It's against the Emacsen Team policy to have a hard dependency on Emacs >> -- instead, it's in Recommends. So I'd prefer not to add a dependency >> that I'm only going to have to remove in a few weeks when Emacs >> migrates. But if you think this bug is getting in the way then I can >> add it. > > There is another occurrence of this bug in elpa-snakemake, #1024648. > Diane made me aware that there is currently a elpa-transient package ... > > Quoting myself what I wrote there: > >> But if emacs-el (or -common?) bundles extensions (or however you call them), >> especially ones that were previously packaged separately, it should probably >> have versioned Provides (and maybe versioned Breaks, too) for >> them. (Cf. perl, perl-base which does the same.) >> Not sure whether these should be in -el or -common ... >> If these Provides were available, elpa-snakemake wouldn't need to know about >> the packaging details of other packages and could just use >> Depends: elpa-transient > > There are a few other packages currently using Depends: elpa-transient elpa-transient isn't a transitional package -- we'll keep it in Debian even after Emacs 28 is the only Emacs we have. This is because we might need a newer version of transient available for another package. So far our strategy has been to handle this in the code in dh_elpa that generates dependencies, and also not worry about it too much, unless we get a combination that results in something not having its dependency available. I don't think we should be adding Provides/Breaks anywhere without considering corresponding changes in dh_elpa. -- Sean Whitton
Bug#1020851: elpa-ement: fails to install along emacs
On 23/11/2022 01.11, Sean Whitton wrote: Hello, On Tue 22 Nov 2022 at 05:39PM +01, Andreas Beckmann wrote: On 28/09/2022 16.55, Sean Whitton wrote: transient is included in Emacs 28 so I'm inclined to leave this to fix itself when Emacs 28 migrates. Can't this be expressed as a package relationship? e.g. Depends: emacs-el (>= 1:28) It's against the Emacsen Team policy to have a hard dependency on Emacs -- instead, it's in Recommends. So I'd prefer not to add a dependency that I'm only going to have to remove in a few weeks when Emacs migrates. But if you think this bug is getting in the way then I can add it. There is another occurrence of this bug in elpa-snakemake, #1024648. Diane made me aware that there is currently a elpa-transient package ... Quoting myself what I wrote there: But if emacs-el (or -common?) bundles extensions (or however you call them), especially ones that were previously packaged separately, it should probably have versioned Provides (and maybe versioned Breaks, too) for them. (Cf. perl, perl-base which does the same.) Not sure whether these should be in -el or -common ... If these Provides were available, elpa-snakemake wouldn't need to know about the packaging details of other packages and could just use Depends: elpa-transient There are a few other packages currently using Depends: elpa-transient Andreas
Bug#1020851: elpa-ement: fails to install along emacs
Hello, On Tue 22 Nov 2022 at 05:39PM +01, Andreas Beckmann wrote: > On 28/09/2022 16.55, Sean Whitton wrote: >> transient is included in Emacs 28 so I'm inclined to leave this to fix >> itself when Emacs 28 migrates. > > Can't this be expressed as a package relationship? > e.g. Depends: emacs-el (>= 1:28) It's against the Emacsen Team policy to have a hard dependency on Emacs -- instead, it's in Recommends. So I'd prefer not to add a dependency that I'm only going to have to remove in a few weeks when Emacs migrates. But if you think this bug is getting in the way then I can add it. -- Sean Whitton
Bug#1020851: elpa-ement: fails to install along emacs
On 28/09/2022 16.55, Sean Whitton wrote: transient is included in Emacs 28 so I'm inclined to leave this to fix itself when Emacs 28 migrates. Can't this be expressed as a package relationship? e.g. Depends: emacs-el (>= 1:28) Andreas
Bug#1020851: elpa-ement: fails to install along emacs
Hello, On Tue 27 Sep 2022 at 05:09PM +02, Andreas Beckmann wrote: > Package: elpa-ement > Version: 0.1.4-1 > Severity: serious > User: debian...@lists.debian.org > Usertags: piuparts > > Hi, > > during a test with piuparts I noticed your package failed to install. As > per definition of the release team this makes the package too buggy for > a release, thus the severity. > > This is the failure when installing the package along emacs 27 in bookworm. > (In sid there is currently a different error that is likely caused by > emacs 28 and hides this problem.) transient is included in Emacs 28 so I'm inclined to leave this to fix itself when Emacs 28 migrates. -- Sean Whitton signature.asc Description: PGP signature
Bug#1020851: elpa-ement: fails to install along emacs
Package: elpa-ement Version: 0.1.4-1 Severity: serious User: debian...@lists.debian.org Usertags: piuparts Hi, during a test with piuparts I noticed your package failed to install. As per definition of the release team this makes the package too buggy for a release, thus the severity. This is the failure when installing the package along emacs 27 in bookworm. (In sid there is currently a different error that is likely caused by emacs 28 and hides this problem.) >From the attached log (scroll to the bottom...): Setting up elpa-ement (0.1.4-1) ... Install elpa-magit-section for emacs install/magit-section-3.3.0: Handling install of emacsen flavor emacs install/magit-section-3.3.0: byte-compiling for emacs Install emacsen-common for emacs emacsen-common: Handling install of emacsen flavor emacs Install elpa-svg-lib for emacs install/svg-lib-0.2.5: Handling install of emacsen flavor emacs install/svg-lib-0.2.5: byte-compiling for emacs Install elpa-taxy for emacs install/taxy-0.10: Handling install of emacsen flavor emacs install/taxy-0.10: byte-compiling for emacs Install elpa-plz for emacs install/plz-0.2: Handling install of emacsen flavor emacs install/plz-0.2: byte-compiling for emacs Install elpa-taxy-magit-section for emacs install/taxy-magit-section-0.9.1: Handling install of emacsen flavor emacs install/taxy-magit-section-0.9.1: byte-compiling for emacs Install elpa-ement for emacs install/ement-0.1.4: Handling install of emacsen flavor emacs install/ement-0.1.4: byte-compiling for emacs In ement--xml-escape-string: ement-lib.el:1113:8:Warning: xml-escape-string called with 2 arguments, but accepts only 1 In end of data: ement-lib.el:1227:1:Warning: the following functions are not known to be defined: color-dark-p, button-buttonize In toplevel form: ement-notify.el:34:1:Error: Cannot open load file: No such file or directory, transient In toplevel form: ement-room-list.el:48:1:Error: Cannot open load file: No such file or directory, transient In toplevel form: ement-room.el:2443:1:Warning: Unused lexical variable `room-buffer' ement-room.el:4084:1:Error: Cannot open load file: No such file or directory, transient In toplevel form: ement-taxy.el:34:1:Error: Cannot open load file: No such file or directory, transient In toplevel form: ement.el:62:1:Error: Cannot open load file: No such file or directory, transient ERROR: install script from elpa-ement package failed dpkg: error processing package elpa-ement (--configure): installed elpa-ement package post-installation script subprocess returned error exit status 1 Processing triggers for install-info (6.8-6) ... Errors were encountered while processing: elpa-ement cheers, Andreas elpa-ement=0.1.4-1_emacs.log.gz Description: application/gzip