From: Daniel Hackney <dan@haxney.org>
To: emacs-devel@gnu.org
Subject: Put updated package.el in ELPA? (and cl-lib backport)
Date: Fri, 2 Nov 2012 14:01:02 -0400 [thread overview]
Message-ID: <CAMqXDZt+2ZHy+Vh9h=6i=uXPsOqe380MRz7DUF8urVw9UbS-Jw@mail.gmail.com> (raw)
Yeah, yeah, I'm obsessed with package.el. So sue me ;)
Since my branch of package.el wasn't ready in time for 24.3, I'd like to
distribute it via ELPA itself. This would let us develop new features
(like Org-based READMEs) and make them available to people without
having to wait for 24.4. Obviously, this is a big deal and, if not done
carefully, could break a lot of people's installations. Real care and
frequent testing would be needed to ensure a smooth rollout. Any changes
to "archive-contents" or "FOO-pkg.el" files would need to be backward-
and forward-compatible. Luckily, the current package.el is perfectly
fine with extra elements in "FOO-pkg.el" files as well as
"archive-contents".
Is this something you all think would be appropriate?
On a related note, my branch of package.el relies on `cl-lib' from 24.3.
It would be impractical to maintain two versions, one using
`cl-defstruct' and the other using `defstruct'. Since people should be
migrating towards `cl-lib' in general, this presents a problem: either
use `cl' and get byte compiler warning or use `cl-lib' and restrict your
audience to 24.3 users.
I propose an ELPA-installable package called `cl-lib' which would be
like 24.3's `cl', but in reverse. It would consist of a bunch of aliases
to the `cl' functions and macros so that authors on <= 24.2 could use
`cl-*' functions without excluding everyone not on 24.3.
Once someone upgrades to 24.3, they should be transitioned to the
built-in `cl-lib'. This could be done by setting the version number of
the ELPA `cl-lib' to be lower than the built-in version in 24.3 so that
when package.el is activating packages, it would see that there is a
newer version of `cl-lib' already loaded and skip the ELPA-based
`cl-lib'.
Thoughts?
--
Daniel Hackney
next reply other threads:[~2012-11-02 18:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-02 18:01 Daniel Hackney [this message]
2012-11-02 22:58 ` Put updated package.el in ELPA? (and cl-lib backport) Stefan Monnier
2012-11-02 23:24 ` Daniel Hackney
2012-11-03 2:22 ` Stefan Monnier
2012-11-03 11:23 ` Chong Yidong
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='CAMqXDZt+2ZHy+Vh9h=6i=uXPsOqe380MRz7DUF8urVw9UbS-Jw@mail.gmail.com' \
--to=dan@haxney.org \
--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).