From: Stefan Monnier <monnier@iro.umontreal.ca>
To: emacs-devel@gnu.org
Subject: Re: GNU ELPA package for CC-mode
Date: Thu, 23 Aug 2018 18:17:22 -0400 [thread overview]
Message-ID: <jwv36v4u4ha.fsf-monnier+gmane.emacs.devel@gnu.org> (raw)
In-Reply-To: 20180823213418.GA32596@ACM
> You don't understand the notion of the VCS logs becoming polluted?
No, indeed, see below.
> In every possible way, bar the superficial. c-version is an essential
> part of CC Mode,
Hardly: I removed it in my local Emacs and everything works just as well
as before.
> and is THE version of CC Mode. The proposed VERSION: header is not
> a part of CC Mode, it is part of ELPA, recording the number of the
> ELPA release only.
The "Version:" header could just as well be THE version.
So, I still don't see in which way they're fundamentally different.
>> > This "Version:" header certainly has no place in master, though I can
>> > see an argument being made for it being included in an ELPA version of
>> > CC Mode.
>> The purpose of this "Version:" header is to document for package.el
>> ....
> Yes. It's essentially part of package.el, not part of CC Mode or of
> master.
I don't think the version of a package can be considered to be "part of
package.el".
>> .... which version of the cc-mode package is bundled with Emacs so
>> that it ....
> "It" being what? Emacs? package.el?
package.el or "Emacs via package.el".
>> .... can decide whether some other cc-mode ELPA package is more or
>> less recent (and hence whether to activate that other package or not).
>> So it very much belongs in `master`.
> I can't follow your arguments, sorry.
Here's the scenario:
- Scene 1:
Georges is happily using Emacs-25.4 when he notices that he'd like the
support for newer C++ language features present in the newer version of
CC-mode, so he installs a newer CC-mode package locally.
- Scene 2: Georges is very happy.
- Scene 3: Georges is a bit older, using Emacs-28.3 and usually happy
about it, except baffled that his CC-mode is still not supporting the
latest features of C++++ despite the etc/NEWS claiming that it does.
- Scene 4: Georges realizes that the problem was the old CC-mode package
he had installed which took precedence over his Emacs's newer bundled
CC-mode. So he removes his old CC-mode package.
- Scene 5: Goerges is forced to go back to Emacs-25.4 temporarily and is
annoyed that he get rid of that old CC-mode package which worked
better than the even older CC-mode bundled with Emacs-25.4.
By adding a "Version:" header in Emacs's bundled CC-mode package,
package.el can automatically decide whether to use the bundled CC-mode
package of the separately install CC-mode package based on which of the
two is more recent, so Georges wouldn't hit the above problem in scene
3 and wouldn't have to remove the old CC-mode package hence could switch
between 25.4 and 28.3 without problems.
> Your conclusion doesn't appear to
> follow from the arguments. This proposed "Version:" header has no
> purpose in master, only in package.el, isn't that right?
Not sure what you mean by "in package.el". "package.el" is a file
bundled with Emacs which provides facilities to
install/activate/deinstall packages and that's all.
>> >> The generation of the new package happens when the "Version:" header
>> >> changes, so I don't think we want this header to be auto-generated on
>> >> every commit.
>> > "Changes" is a verb with an agent. Under what scenario do you envisage
>> > this version number being changed?
>> Someone pushed a commit which changes that part of the file.
> That wasn't the question I was attempting to ask; I wanted you to tell
> me about the schedule for changing the version number, the criterion for
> doing so, the frequency with which it will be done, things like that.
I'd assume that unless you decide otherwise noone but you would change
that "Version:" header (for fear of you biting their head off), so you'd
get to choose those things the way you like.
Personally, I'd recommend you'd upgrade the "Version:" header whenever
the file has accrued enough new features or bug fixes that some users of
non-master Emacs may want to install that new package in their
own Emacs.
> It seems to make sense to make such a release on each CC Mode commit to
> master. I thought that was the idea - to keep the ELPA release
> synchronised with master. However, if we end up keeping this obtrusive
> "Version:" in cc-mode.el, I would say do it on every tenth commit that
> changes the substance of cc-mode.el, thus keeping the aforementioned
> pollution within reasonable bounds.
You can upgrade the "Version:" header as part of some other commit.
That's usually what I do.
Stefan
next prev parent reply other threads:[~2018-08-23 22:17 UTC|newest]
Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-19 13:24 GNU ELPA package for CC-mode Stefan Monnier
2018-08-19 20:49 ` Alan Mackenzie
2018-08-19 23:45 ` Stefan Monnier
2018-08-20 8:24 ` Jostein Kjønigsen
2018-08-20 14:06 ` Stefan Monnier
2018-08-20 17:58 ` Jostein Kjønigsen
2018-08-21 13:30 ` Stefan Monnier
2018-08-21 16:20 ` Alan Mackenzie
2018-08-23 5:25 ` Stefan Monnier
2018-08-23 21:34 ` Alan Mackenzie
2018-08-23 22:17 ` Stefan Monnier [this message]
2018-08-24 8:43 ` Eli Zaretskii
2018-08-24 11:56 ` Michael Albinus
2018-08-24 22:21 ` Stefan Monnier
2018-08-25 8:43 ` Tramp as ELPA package (was: GNU ELPA package for CC-mode) Michael Albinus
2018-08-25 18:04 ` Tramp as ELPA package Stefan Monnier
2018-08-25 21:04 ` Stefan Monnier
2018-08-26 6:39 ` Andreas Schwab
2018-08-26 10:48 ` Michael Albinus
2018-08-26 11:09 ` Michael Albinus
2018-08-26 15:21 ` Stefan Monnier
2018-08-26 18:04 ` Michael Albinus
2018-08-26 18:27 ` Eli Zaretskii
2018-08-26 18:34 ` Michael Albinus
2018-08-26 19:03 ` Eli Zaretskii
2018-08-27 7:12 ` Michael Albinus
2018-08-27 13:33 ` Stefan Monnier
2018-08-27 13:41 ` Michael Albinus
2018-08-27 13:44 ` Stefan Monnier
2018-08-27 15:22 ` Michael Albinus
2018-08-27 15:09 ` Eli Zaretskii
2018-08-27 15:21 ` Michael Albinus
2018-08-26 15:30 ` Tom Tromey
2018-08-26 16:26 ` Stefan Monnier
2018-08-26 17:46 ` Michael Albinus
2019-04-04 12:41 ` Michael Albinus
2019-04-04 15:48 ` Stefan Monnier
2019-04-04 16:07 ` Michael Albinus
2019-04-05 14:43 ` Michael Albinus
2019-04-05 15:07 ` Dmitry Gutov
2019-04-05 16:19 ` Michael Albinus
2019-04-16 7:53 ` Steinar Bang
2019-04-05 18:14 ` Stephen Leake
2019-04-05 18:20 ` Stephen Leake
2019-04-05 22:18 ` Michael Albinus
2019-04-07 0:17 ` Stephen Leake
2019-04-07 7:41 ` Michael Albinus
2019-04-06 12:42 ` Stefan Monnier
2019-04-08 12:37 ` Michael Albinus
2019-04-08 13:07 ` Stefan Monnier
2019-04-08 13:31 ` Michael Albinus
2019-04-08 16:43 ` Stefan Monnier
2019-05-20 13:05 ` Michael Albinus
2019-06-30 19:20 ` Michael Albinus
2019-04-05 18:55 ` Achim Gratz
2019-04-06 22:25 ` GNU ELPA and package.el (was: Tramp as ELPA package) Stefan Monnier
2019-04-07 7:17 ` GNU ELPA and package.el Achim Gratz
2019-04-07 14:07 ` Stefan Monnier
2019-04-07 17:37 ` Achim Gratz
2019-04-07 20:31 ` Stefan Monnier
2019-04-08 17:55 ` Achim Gratz
2019-04-08 19:01 ` Stefan Monnier
2019-04-08 20:24 ` Achim Gratz
2019-04-09 1:39 ` Stefan Monnier
2018-08-25 19:15 ` GNU ELPA package for CC-mode Clément Pit-Claudel
2018-08-25 20:17 ` Stefan Monnier
2018-08-25 21:17 ` Tom Tromey
2018-08-25 23:28 ` Kyle Andrews
2018-08-24 15:48 ` Stefan Monnier
2018-08-24 19:21 ` Eli Zaretskii
2018-08-24 22:17 ` Stefan Monnier
2018-08-25 7:02 ` Eli Zaretskii
2018-08-25 8:51 ` Alan Mackenzie
2018-08-25 10:15 ` Michael Albinus
2018-08-25 18:07 ` Stefan Monnier
2018-08-25 18:27 ` Eli Zaretskii
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwv36v4u4ha.fsf-monnier+gmane.emacs.devel@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=emacs-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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).