* OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
@ 2018-12-03 12:08 João Távora
2018-12-03 14:29 ` Stefan Monnier
0 siblings, 1 reply; 8+ messages in thread
From: João Távora @ 2018-12-03 12:08 UTC (permalink / raw)
To: emacs-devel; +Cc: k.michal
Hi,
The subject should summarize my question. I've done some work in
flymake.el (bugfixes and some new features) that shouldn't have to wait
for Emacs 27, so I think this is a nice way for users in Emacs
26.1 and upcoming 26.2 to see those changes.
The only thing that's slightly putting me off is flymake.el's
requirement of lisp/progmodes/flymake-proc.el _after_ the `provide`
statement. It's odd, but shouldn't be a problem, right? I can also
remove it but that would break out-of-the-box compatibility with "old"
flymake.
So, if no-one opposes I will be commiting this in the near future:
Date: Mon Dec 3 11:58:59 2018 +0000
* externals-list ("flymake"): Add new :core package.
diff --git a/externals-list b/externals-list
index 6f7d623f7..146a33baf 100644
--- a/externals-list
+++ b/externals-list
@@ -76,6 +76,7 @@
("ergoemacs-mode" :external "https://github.com/ergoemacs/ergoemacs-mode.git")
("exwm" :external "https://github.com/ch11ng/exwm.git")
("f90-interface-browser" :subtree "https://github.com/wence-/f90-iface")
+ ("flymake" :core "lisp/progmodes/flymake.el")
("fountain-mode" :external "https://github.com/rnkn/fountain-mode")
("ggtags" :subtree "https://github.com/leoliu/ggtags")
("gnome-c-style" :subtree "https://github.com/ueno/gnome-c-style.git")
and also
Date: Mon Dec 3 11:52:38 2018 +0000
Prepare flymake.el for distribution in ELPA
* lisp/progmodes/flymake.el: Add Package-Requires. Bump version to
1.0.1
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 5352cc3fe6..ada8d27911 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -4,7 +4,8 @@
;; Author: Pavel Kobyakov <pk_at_work@yahoo.com>
;; Maintainer: João Távora <joaotavora@gmail.com>
-;; Version: 1.0
+;; Package-Requires: ((emacs "26.1"))
+;; Version: 1.0.1
;; Keywords: c languages tools
;; This file is part of GNU Emacs.
João
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-03 12:08 OK to put lisp/progmodes/flymake.el in ELPA as a :core package? João Távora
@ 2018-12-03 14:29 ` Stefan Monnier
2018-12-06 0:19 ` João Távora
0 siblings, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2018-12-03 14:29 UTC (permalink / raw)
To: emacs-devel
> The only thing that's slightly putting me off is flymake.el's
> requirement of lisp/progmodes/flymake-proc.el _after_ the `provide`
> statement. It's odd, but shouldn't be a problem, right?
It's sub-optimal, but sometimes it's better then the other options.
In any case I don't see why it should be a problem for GNU ELPA packaging.
> So, if no-one opposes I will be commiting this in the near future:
No objection on my side,
Stefan
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-03 14:29 ` Stefan Monnier
@ 2018-12-06 0:19 ` João Távora
2018-12-06 2:09 ` Stefan Monnier
0 siblings, 1 reply; 8+ messages in thread
From: João Távora @ 2018-12-06 0:19 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> The only thing that's slightly putting me off is flymake.el's
>> requirement of lisp/progmodes/flymake-proc.el _after_ the `provide`
>> statement. It's odd, but shouldn't be a problem, right?
>
> It's sub-optimal, but sometimes it's better then the other options.
> In any case I don't see why it should be a problem for GNU ELPA packaging.
>
>> So, if no-one opposes I will be commiting this in the near future:
>
> No objection on my side,
Hmmn,
I've done this, and GNU ELPA has already built version 1.0.1 of the
package as intended.
But how do I install it from Emacs 26.1, iow, how do I upgrade it?
1. This doesn't work:
emacs -Q
(package-initialize)
(package-refresh-contents)
(package-install 'flymake)
Presumably because in Emacs 26.1 flymake is already a "built-in" package
(though at version 0.3)
2. If I do it interactively from the package menu, it works. Go
into the menu with M-x list-package, mark flymake 1.0.1 with 'i', then
type x.
3. This does work but seems pretty brittle
(package-initialize)
(package-refresh-contents)
(package-install #s(package-desc flymake
(1 0 1)
"A universal on-the-fly syntax checker"
((emacs
(26 1)))
single "gnu" nil
((:url . "http://elpa.gnu.org/packages/flymake.html")
(:keywords "c" "languages" "tools"))
nil))
The reason I want to do this programatically is so I can test eglot, a
package that depends on flymake, from a "make check" target in a
Makefile.
João
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-06 0:19 ` João Távora
@ 2018-12-06 2:09 ` Stefan Monnier
2018-12-06 6:43 ` João Távora
0 siblings, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2018-12-06 2:09 UTC (permalink / raw)
To: emacs-devel
> (package-install #s(package-desc flymake
> (1 0 1)
> "A universal on-the-fly syntax checker"
> ((emacs
> (26 1)))
> single "gnu" nil
> ((:url . "http://elpa.gnu.org/packages/flymake.html")
> (:keywords "c" "languages" "tools"))
> nil))
You can try something like
(package-install (cadr (assoc 'flymake package-archive-contents)))
which should be a bit less brittle.
Stefan
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-06 2:09 ` Stefan Monnier
@ 2018-12-06 6:43 ` João Távora
2018-12-06 13:03 ` Stefan Monnier
0 siblings, 1 reply; 8+ messages in thread
From: João Távora @ 2018-12-06 6:43 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 762 bytes --]
On Thu, Dec 6, 2018, 02:10 Stefan Monnier <monnier@iro.umontreal.ca wrote:
> > (package-install #s(package-desc flymake
> > (1 0 1)
> > "A universal on-the-fly syntax checker"
> > ((emacs
> > (26 1)))
> > single "gnu" nil
> > ((:url . "http://elpa.gnu.org/packages/flymake.html")
> > (:keywords "c" "languages" "tools"))
> > nil))
>
> You can try something like
>
> (package-install (cadr (assoc 'flymake package-archive-contents)))
>
> which should be a bit less brittle.
>
Oh thanks, that's much nicer!
Should it be a separate function? Package-install-most-recent or package
upgrade?
João
>
[-- Attachment #2: Type: text/html, Size: 1609 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-06 6:43 ` João Távora
@ 2018-12-06 13:03 ` Stefan Monnier
2018-12-06 14:53 ` João Távora
0 siblings, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2018-12-06 13:03 UTC (permalink / raw)
To: João Távora; +Cc: emacs-devel
> Should it be a separate function? Package-install-most-recent or package
> upgrade?
Maybe a new `package-get-latest`, so you can do
(package-install (package-get-latest))
Especially if package-get-latest can be extracted from existing code
(and hence used there was well).
Stefan
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-06 13:03 ` Stefan Monnier
@ 2018-12-06 14:53 ` João Távora
2018-12-06 19:28 ` Stefan Monnier
0 siblings, 1 reply; 8+ messages in thread
From: João Távora @ 2018-12-06 14:53 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 505 bytes --]
On Thu, Dec 6, 2018, 13:03 Stefan Monnier <monnier@iro.umontreal.ca wrote:
> > Should it be a separate function? Package-install-most-recent or package
> > upgrade?
>
> Maybe a new `package-get-latest`, so you can do
>
> (package-install (package-get-latest))
>
> Especially if package-get-latest can be extracted from existing code
> (and hence used there was well).
But won't that upgrade all the packages? Or would you give
package-get-latest it an optional arg PACKAGE?
João
[-- Attachment #2: Type: text/html, Size: 868 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: OK to put lisp/progmodes/flymake.el in ELPA as a :core package?
2018-12-06 14:53 ` João Távora
@ 2018-12-06 19:28 ` Stefan Monnier
0 siblings, 0 replies; 8+ messages in thread
From: Stefan Monnier @ 2018-12-06 19:28 UTC (permalink / raw)
To: João Távora; +Cc: emacs-devel
>> (package-install (package-get-latest))
> But won't that upgrade all the packages?
Sorry, I dropped the arg, I meant:
(package-install (package-get-latest 'flymake))
[ You could have guessed by noticing that I used the singular spelling
of "latest". ]
Stefan
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2018-12-06 19:28 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-03 12:08 OK to put lisp/progmodes/flymake.el in ELPA as a :core package? João Távora
2018-12-03 14:29 ` Stefan Monnier
2018-12-06 0:19 ` João Távora
2018-12-06 2:09 ` Stefan Monnier
2018-12-06 6:43 ` João Távora
2018-12-06 13:03 ` Stefan Monnier
2018-12-06 14:53 ` João Távora
2018-12-06 19:28 ` Stefan Monnier
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.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.