* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-08 14:57 ` Clément Pit-Claudel
@ 2017-07-09 3:04 ` Yann Hodique
2017-07-10 9:29 ` Richard Stallman
2017-07-10 20:43 ` Joost Kremers
2017-07-11 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Stefan Monnier
2 siblings, 1 reply; 72+ messages in thread
From: Yann Hodique @ 2017-07-09 3:04 UTC (permalink / raw)
To: emacs-devel
>>>>> "Clément" == Clément Pit-Claudel <cpitclaudel@gmail.com> writes:
> On 2017-07-07 21:59, John Wiegley wrote:
>> I have a feeling that a lot of package authors choose MELPA because
>> the barrier to entry is so low, and they may not realize how easy it
>> is to get it into Emacs as well.
> It's not that they doesn't realize how easy it is: it's that it's
> not easy.
> Getting into MELPA requires a writing a one-line Lisp form and
> submitting it for inclusion. Getting into ELPA requires subtle git
> invocations that end up mashing up the history of your project with
> that of tens of others, while fearing to break the entire ELPA repo
> because of a missing copyright line in a test file.
> And ELPA makes maintaining the package more painful, too: picking out
> the commits made by others and copying them on your personal repo
> requires further arcane git invocations — same for importing new
> commits from your personal repo. And of course you lose other MELPA
> goodies, like getting download statistics.
> For now, the main motivation to publish on ELPA is ideological — not
> practical. My feeling is that package authors chose not to publish on
> ELPA because they get all they need from MELPA, for a fraction of the
> invested time.
+1
I'd also like to add a few things:
- some package authors *do not* choose MELPA, MELPA chooses them. Most
of my packages are in MELPA without me ever asking for it, it's just
that somebody else cared enough.
- let's not trivialize the act of assigning copyright. It's *not*
a neutral action (if it was, it wouldn't be required...), and it's
definitely *not* only about signing some paper. For many people it
involves researching whether it's actually meaningful or legal to do
so, depending on their country of citizenship and/or residence. In
some cases it means selling the idea to their employer (who frequenly
is the default copyright owner of all their work) which can easily be
met with scepticism and resistance from legal departments: personally
it took me more than 2 months to complete that particular
conversation, just because it's a highly unusual request and people
didn't understand what was the need.
Bottom-line there are legal implications beyond licensing to doing so
(which is again the whole point), and that can never be as simple as
handling licensing alone. I would consider it quite misleading if those
aspects were glossed over: I fear that would only encourage people to
sign without understanding what it's about.
Proactively contacting elisp developers to ask them if they would
consider a copyright assignment (mentioning the benefit of potential
bundling with Emacs, along with the rest of the implications) seems much
more OK to me.
my 2¢
Yann.
--
It is your fate, forgetfulness. All of the old lessons of life, you lose and
gain and lose and gain again.
-- Leto II, the Voice of Dar-es-Balat
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-09 3:04 ` Yann Hodique
@ 2017-07-10 9:29 ` Richard Stallman
2017-07-10 15:41 ` Ken Manheimer
2017-07-10 16:48 ` Yann Hodique
0 siblings, 2 replies; 72+ messages in thread
From: Richard Stallman @ 2017-07-10 9:29 UTC (permalink / raw)
To: Yann Hodique; +Cc: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> Proactively contacting elisp developers to ask them if they would
> consider a copyright assignment (mentioning the benefit of potential
> bundling with Emacs, along with the rest of the implications) seems much
> more OK to me.
That would entail searching for people who are just starting packages
and sending each one mail. I agree it would give better results -- if
we could do it. But it would be a lot of work. Who would do the
work? And how would we find people that are just starting
to get contributions to their packages?
It isn't better if it isn't feasible.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-10 9:29 ` Richard Stallman
@ 2017-07-10 15:41 ` Ken Manheimer
2017-07-10 23:30 ` Richard Stallman
2017-07-10 16:48 ` Yann Hodique
1 sibling, 1 reply; 72+ messages in thread
From: Ken Manheimer @ 2017-07-10 15:41 UTC (permalink / raw)
To: Richard Stallman; +Cc: Yann Hodique, emacs-devel@gnu.org
[-- Attachment #1: Type: text/plain, Size: 1679 bytes --]
On Mon, Jul 10, 2017 at 5:29 AM, Richard Stallman <rms@gnu.org> wrote:
> [[[ To any NSA and FBI agents reading my email: please consider ]]]
> [[[ whether defending the US Constitution against all enemies, ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> > Proactively contacting elisp developers to ask them if they would
> > consider a copyright assignment (mentioning the benefit of potential
> > bundling with Emacs, along with the rest of the implications) seems
> much
> > more OK to me.
>
> That would entail searching for people who are just starting packages
> and sending each one mail. I agree it would give better results -- if
> we could do it. But it would be a lot of work. Who would do the
> work? And how would we find people that are just starting
> to get contributions to their packages?
>
This is starting to zero in on a specific activity where informing the user
about the ELPA process would be appropriate.
How about enlisting the support of the various package repositories (MELPA
and etc.), so they provide notices to people establishing packages that the
additional steps to include their package in ELPA, including doing their
own copyright assignment and prompting their (prospective) contributors for
copyright assignment early on in the process, is good for Emacs and for
their packages...
> It isn't better if it isn't feasible.
>
The approach you proposed is only one option, there are others.
Ken
>
> --
> Dr Richard Stallman
> President, Free Software Foundation (gnu.org, fsf.org)
> Internet Hall-of-Famer (internethalloffame.org)
> Skype: No way! See stallman.org/skype.html.
>
>
>
[-- Attachment #2: Type: text/html, Size: 2815 bytes --]
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-10 15:41 ` Ken Manheimer
@ 2017-07-10 23:30 ` Richard Stallman
0 siblings, 0 replies; 72+ messages in thread
From: Richard Stallman @ 2017-07-10 23:30 UTC (permalink / raw)
To: Ken Manheimer; +Cc: yann.hodique, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> This is starting to zero in on a specific activity where informing the user
> about the ELPA process would be appropriate.
"The ELPA process" gives the wrong idea. This is the process for making
a package that CAN easily be integrated into Emacs, or ELPA.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-10 9:29 ` Richard Stallman
2017-07-10 15:41 ` Ken Manheimer
@ 2017-07-10 16:48 ` Yann Hodique
1 sibling, 0 replies; 72+ messages in thread
From: Yann Hodique @ 2017-07-10 16:48 UTC (permalink / raw)
To: emacs-devel
>>>>> "Richard" == Richard Stallman <rms@gnu.org> writes:
> [[[ To any NSA and FBI agents reading my email: please consider ]]]
> [[[ whether defending the US Constitution against all enemies, ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>> Proactively contacting elisp developers to ask them if they would
>> consider a copyright assignment (mentioning the benefit of potential
>> bundling with Emacs, along with the rest of the implications) seems much
>> more OK to me.
> That would entail searching for people who are just starting packages
> and sending each one mail. I agree it would give better results -- if
> we could do it. But it would be a lot of work. Who would do the
> work? And how would we find people that are just starting
> to get contributions to their packages?
> It isn't better if it isn't feasible.
Well, one possibility would be to:
1. figure out where most of the code that ends up in MELPA lives (since
it seems to be the target so far):
~/src/github.com/melpa/melpa/recipes master
❯ grep :fetcher * | sed 's/.*:fetcher \([a-z]*\).*/\1/' | sort | uniq -c | sort -rg
3393 github
156 wiki
44 git
38 bitbucket
26 gitlab
9 svn
4 cvs
2 darcs
2 bzr
1 hg
given that the wiki data is reachable from github (via
https://github.com/emacsmirror/emacswiki.org) that means that at
least 96.6% of the target is present on github one way or the
other. I'm too lazy to extract real trends, but this share is
slowly growing
| 07/2012 | 07/2013 | 07/2014 | 07/2015 | 07/2016 | 07/2017 |
|---------+---------+---------+---------+---------+---------|
| 89.8 | 92.4 | 94 | 95.8 | 96.5 | 96.6 |
2. use the fact that github data is published weekly as a BigQuery
dataset (https://cloud.google.com/bigquery/public-data/github) to
perform fancy queries on it: like what are the emacs repositories
that went from 1 contributor last week to 2 contributors this week,
crosscheck with paperwork data and identify who to go after next.
An example of what has already been achieved using those tools:
https://kozikow.com/2016/06/29/top-emacs-packages-used-in-github-repos/
That's kind of handwavy and vaguely creepy (then again, any kind of
automatic detection of what I might be doing to "help me being a better
member of the community" is gonna creep me out no matter what), but most
of the data is definitely readily available.
Yann.
--
The worst sort of protection is confidence. The best defense is suspicion.
-- HASIMIR FENRING
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-08 14:57 ` Clément Pit-Claudel
2017-07-09 3:04 ` Yann Hodique
@ 2017-07-10 20:43 ` Joost Kremers
2017-07-11 22:57 ` Richard Stallman
2017-07-11 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Stefan Monnier
2 siblings, 1 reply; 72+ messages in thread
From: Joost Kremers @ 2017-07-10 20:43 UTC (permalink / raw)
To: Clément Pit-Claudel; +Cc: emacs-devel
On Sat, Jul 08 2017, Clément Pit-Claudel wrote:
> On 2017-07-07 21:59, John Wiegley wrote:
>> I have a feeling that a lot of package authors choose MELPA
>> because
>> the barrier to entry is so low, and they may not realize how
>> easy it
>> is to get it into Emacs as well.
>
> It's not that they doesn't realize how easy it is: it's that
> it's not easy.
>
> Getting into MELPA requires a writing a one-line Lisp form and
> submitting it for inclusion. Getting into ELPA requires subtle
> git invocations that end up mashing up the history of your
> project with that of tens of others, while fearing to break the
> entire ELPA repo because of a missing copyright line in a test
> file.
>
> And ELPA makes maintaining the package more painful, too:
> picking out the commits made by others and copying them on your
> personal repo requires further arcane git invocations — same for
> importing new commits from your personal repo. And of course you
> lose other MELPA goodies, like getting download statistics.
>
> For now, the main motivation to publish on ELPA is ideological —
> not practical. My feeling is that package authors chose not to
> publish on ELPA because they get all they need from MELPA, for a
> fraction of the invested time.
Let me just say 'hear, hear' to that, as one of those typical
package maintainers. I thought about using ELPA instead of MELPA a
few times, but reading such comments as "arcane git commands",
"mashing up your history" and "breaking the entire ELPA repo", my
immediate reaction is "oh well, some other time, perhaps".
I should probably point out that my git skill level is low, and
while I'd be willing to learn more, the time investment if often
prohibitive. (I'm not a professional programmer, just a guy with a
hobby.) With MELPA, that's sufficient, though, and Github has a
lot of help pages that provide clear and concise instructions for
things I don't do every day, such as dealing with PRs or keeping a
fork up-to-date with its upstream repo.
I've just been skimming the GNU ELPA README on
http://git.savannah.gnu.org/cgit/emacs/elpa.git/plain/README and
although it *looks* like once thing's are set up, I shouldn't have
to do much more than a git push to update my package, the process
of getting there seems quite involved.
More importantly perhaps, the entire workflow seems to be
different. With MELPA, I put my code in a publicly accessible repo
that I create myself, on a service of my own choosing (in my case
Github), and then tell MELPA where to look for it. With GNU ELPA,
it seems I need to put my code somewhere specific, and it's not in
a repo that I create or own.
In itself, it's not a big problem that GNU ELPA uses a different
workflow from MELPA, but, speaking for myself, it would be good if
the ELPA README (or some other document) would contain a few
paragraphs explaining the differences and would cover the steps
involved in such a way that they make sense for someone with a
less-than-stellar understanding of git.
Anyway, just my two €0.02.
--
Joost Kremers
Life has its moments
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-10 20:43 ` Joost Kremers
@ 2017-07-11 22:57 ` Richard Stallman
2017-07-12 0:40 ` Stefan Monnier
0 siblings, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-11 22:57 UTC (permalink / raw)
To: Joost Kremers; +Cc: cpitclaudel, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> In itself, it's not a big problem that GNU ELPA uses a different
> workflow from MELPA, but, speaking for myself, it would be good if
> the ELPA README (or some other document) would contain a few
> paragraphs explaining the differences and would cover the steps
> involved in such a way that they make sense for someone with a
> less-than-stellar understanding of git.
I agree. I encourage the people who manage ELPA to do this.
> With MELPA, I put my code in a publicly accessible repo
> that I create myself, on a service of my own choosing,
> and then tell MELPA where to look for it.
Is there any reason we should not do this on ELPA?
If the repo that ELPA copies from is fully under the control
of the developer of that package, I don't see that it
matters greatly whether the developer installs
changes into that package via ELPA directly, or into some
other repo which then gets copied wholesale to ELPA.
ELPA managers, does the act of installing directly into ELPA give us
an opportunity to make sure something is being handled right?
> (in my case Github)
If only the developer uses that repo system, we don't
have to be concerned with what system it is.
But if other contributors are going to be directed
to that other repo system, we would want it not to be Github.
(See https://gnu.org/software/repo-criteria.html.)
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-11 22:57 ` Richard Stallman
@ 2017-07-12 0:40 ` Stefan Monnier
2017-07-12 16:13 ` Richard Stallman
0 siblings, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-12 0:40 UTC (permalink / raw)
To: emacs-devel
> ELPA managers, does the act of installing directly into ELPA give us
> an opportunity to make sure something is being handled right?
I think the difference is pretty significant, yes.
If we pull from other repositories:
- maintainers of the package will not be reminded that the package is
also in GNU ELPA (and should hence adhere to a copyright assignment
policy).
- While the repository may be under the sole control of the package
maintainer when the package is added to GNU ELPA, that can and will
evolve over time, completely outside of our control.
- There is no easy way for us (Emacs maintainers) to install fixes to
adapt to changes in Emacs. More specifically, it needs to be done by
hand package-by-package, by submitting a patch and hoping the upstream
maintainer is still listening.
- Handling old unmaintained packages is more trouble.
- We won't get elpa-diffs email, where we have the opportunity to give
advice on coding style and have a minimum amount of review of the code
we end up distributing.
Basically it would turn GNU ELPA into a pure distribution site, with
very little control over what we distribute, including the copyright
status of what we distribute.
The only real difference with MELPA would be that we could check that
each file comes with the proper GPLv3+ blurb. Not sure if it would be
worth the trouble.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Adding advisory notification for non-ELPA package.el downloads
2017-07-12 0:40 ` Stefan Monnier
@ 2017-07-12 16:13 ` Richard Stallman
0 siblings, 0 replies; 72+ messages in thread
From: Richard Stallman @ 2017-07-12 16:13 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> - maintainers of the package will not be reminded that the package is
> also in GNU ELPA (and should hence adhere to a copyright assignment
> policy).
> - While the repository may be under the sole control of the package
> maintainer when the package is added to GNU ELPA, that can and will
> evolve over time, completely outside of our control.
> - There is no easy way for us (Emacs maintainers) to install fixes to
> adapt to changes in Emacs. More specifically, it needs to be done by
> hand package-by-package, by submitting a patch and hoping the upstream
> maintainer is still listening.
> - Handling old unmaintained packages is more trouble.
One way to prevent these problems is by insisting they give the Emacs
maintainers administrative access to the real package repository.
Then we could install notices about legal papers, take action if
non-signers have write access, install fixes, and handling old
unmaintained packages with little more trouble than they are now.
> - We won't get elpa-diffs email, where we have the opportunity to give
> advice on coding style and have a minimum amount of review of the code
> we end up distributing.
That would be a loss, but can we install another system to send diff
mail? It could operate on a clone of the real package repository.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads)
2017-07-08 14:57 ` Clément Pit-Claudel
2017-07-09 3:04 ` Yann Hodique
2017-07-10 20:43 ` Joost Kremers
@ 2017-07-11 16:04 ` Stefan Monnier
2017-07-12 1:26 ` Improving GNU ELPA Clément Pit-Claudel
2017-07-16 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Jonas Bernoulli
2 siblings, 2 replies; 72+ messages in thread
From: Stefan Monnier @ 2017-07-11 16:04 UTC (permalink / raw)
To: emacs-devel
> for inclusion. Getting into ELPA requires subtle git invocations that end
> up mashing up the history of your project with that of tens of others, while
> fearing to break the entire ELPA repo because of a missing copyright line
> in a test file.
> And ELPA makes maintaining the package more painful, too: picking out the
> commits made by others and copying them on your personal repo requires
> further arcane git invocations — same for importing new commits from your
> personal repo. And of course you lose other MELPA goodies, like getting
> download statistics.
While most of the above only applies to the case where you put your
package as a "subtree" rather than an "external", I can't say that the
criticism is unfair.
And I indeed think that if we want to expand the use of ELPA, the
proverbial someone should first work on the elpa.gnu.org infrastructure.
It's all a simple matter of writing scripts, really, so help is very
welcome.
I know of the following:
- when someone commits to elpa.git we get an elpa-diffs email which
I used to then forward to the corresponding package maintainer.
This forwarding is currently broken because of changes to my
email server. This should really be done in elpa.gnu.org instead of
iro.umontreal.ca anyway, so I don't intend to fix the old setup.
- elpa.gnu.org should be notified (e.g. via the elpa-diffs thingy)
whenever a commit is made to an elpa package, and should then build
the corresponding package (if the version was changed). Currently, we
just rebuild the world blindly twice a day, which is both more costly
and adds a ~6h delay. More importantly, this will make the handling
of "externals" just as efficient as "subtrees", so it will scale
a lot better.
- once that's in place, we could also consider supporting "one
repository per package" rather than "one branch per package".
- we have the web-server log, so we could provide download stats.
Publishing on GNU ELPA is inevitably more work than on MELPA:
- you need to sign paperwork.
- we don't want to fetch from non-GNU servers, so we need the maintainer
to push to elpa.git explicitly.
- we want the elpa.git code to be writable by "Emacs maintainers", so
the package's maintainer will sometimes have to deal with commits made
outside of his control.
But we could tilt the balance the other way. The way I see GNU ELPA,
it doesn't just provide package distribution but also package hosting,
so we could maybe move towards a gitea/gogs/gitlab/younameit system
for it. We could add some wiki or some way for users to vote up/down
and add comments to each package, ...
IOW, elpa.gnu.org needs some tender love from someone who understands
the web. So far I've been doing most of the maintenance and I don't
understand the web, really.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-11 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Stefan Monnier
@ 2017-07-12 1:26 ` Clément Pit-Claudel
2017-07-12 2:19 ` Stefan Monnier
2017-07-16 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Jonas Bernoulli
1 sibling, 1 reply; 72+ messages in thread
From: Clément Pit-Claudel @ 2017-07-12 1:26 UTC (permalink / raw)
To: emacs-devel
On 2017-07-11 12:04, Stefan Monnier wrote:
> - we don't want to fetch from non-GNU servers, so we need the maintainer
> to push to elpa.git explicitly.
Not really (I think you hint at this a bit later): if the FSF hosts a gitlab instance, or any sort of (multi-repo) git hosting, then developers could just mirror their repos to that instance.
And in fact we already have this. ELPA could work just like MELPA, but restricting the package source to Savannah. Then publishing to ELPA would be just like MELPA, except for having to mirror to Savannah from time to time.
Clément.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-12 1:26 ` Improving GNU ELPA Clément Pit-Claudel
@ 2017-07-12 2:19 ` Stefan Monnier
2017-07-12 23:17 ` Nicolas Petton
2017-07-13 19:18 ` Etienne Prud’homme
0 siblings, 2 replies; 72+ messages in thread
From: Stefan Monnier @ 2017-07-12 2:19 UTC (permalink / raw)
To: emacs-devel
>> - we don't want to fetch from non-GNU servers, so we need the maintainer
>> to push to elpa.git explicitly.
>
> Not really (I think you hint at this a bit later): if the FSF hosts a gitlab
> instance, or any sort of (multi-repo) git hosting, then developers could
> just mirror their repos to that instance.
Indeed, by "elpa.git" I really meant "some repository under our
control". Currently it's elpa.git, but that could be expanded.
> And in fact we already have this. ELPA could work just like MELPA, but
> restricting the package source to Savannah. Then publishing to ELPA would
> be just like MELPA, except for having to mirror to Savannah from time
> to time.
Note that allowing any package on Savannah would already be quite
different, since people without copyright papers have write access to it
(and we'd lose the write access for Emacs maintainers, as well as the
elpa-diffs reviews, ...).
I guess it would be marginally better than allowing any package from
"anywhere" (e.g. when a package goes unmaintained, there's a process
that could allow us to get write access), but it would add the hurdle of
being accepted into Savannah, so I don't think it would eliminate enough
friction to make a significant difference.
Stefan
PS: BTW, to clarify my position: if it were up to me, I'd get rid of the
copyright assignment policy for GNU ELPA (and for Emacs as well,
while we're at it), but I'd keep the "locally hosted in a repository
to which we have write access, with commit-diffs".
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-12 2:19 ` Stefan Monnier
@ 2017-07-12 23:17 ` Nicolas Petton
2017-07-13 2:03 ` Stefan Monnier
2017-07-13 19:18 ` Etienne Prud’homme
1 sibling, 1 reply; 72+ messages in thread
From: Nicolas Petton @ 2017-07-12 23:17 UTC (permalink / raw)
To: Stefan Monnier, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 379 bytes --]
Stefan Monnier <monnier@iro.umontreal.ca> writes:
Salut Stefan,
> PS: BTW, to clarify my position: if it were up to me, I'd get rid of the
> copyright assignment policy for GNU ELPA (and for Emacs as well,
> while we're at it)
Je voudrais comprendre pourquoi tu penses ça. Tu peux m'expliquer ? (ou
répondre sur la mailing-list si tu préfères).
Nico
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-12 23:17 ` Nicolas Petton
@ 2017-07-13 2:03 ` Stefan Monnier
2017-07-13 2:07 ` Stefan Monnier
0 siblings, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-13 2:03 UTC (permalink / raw)
To: Nicolas Petton; +Cc: emacs-devel
>> PS: BTW, to clarify my position: if it were up to me, I'd get rid of the
>> copyright assignment policy for GNU ELPA (and for Emacs as well,
>> while we're at it)
> Je voudrais comprendre pourquoi tu penses ça.
> Tu peux m'expliquer ?
Je ne pense pas que ça en vaut la peine: le gain est négligeable
comparé au coût.
> (ou répondre sur la mailing-list si tu préfères).
Je ne pense pas que ce soit utile d'en discuter, parce que la position
de Richard est ferme là dessus à ma connaissance (et c'est bien trop mineur
pour mériter un fork).
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-12 2:19 ` Stefan Monnier
2017-07-12 23:17 ` Nicolas Petton
@ 2017-07-13 19:18 ` Etienne Prud’homme
2017-07-13 22:07 ` Phillip Lord
1 sibling, 1 reply; 72+ messages in thread
From: Etienne Prud’homme @ 2017-07-13 19:18 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
> PS: BTW, to clarify my position: if it were up to me, I'd get rid of the
> copyright assignment policy for GNU ELPA (and for Emacs as well,
> while we're at it), but I'd keep the "locally hosted in a repository
> to which we have write access, with commit-diffs".
For one thing we can all agree that the bureaucracy isn’t what we would
expect for free (libre) software. Free software should be easy to
modify and contribute.
Given that the process has been criticized as been both hard to
understand and burdensome for new contributors, we need to find a
solution for newcomers to understand the reason and process of doing
such things.
I think people are right in saying that a text file and a legal paper
describing the need for copyright assignment is not sufficient. We
really need a way to describe the process in a simple and clear
interface. That’s what I see is most needed in either Emacs or ELPA.
So here’s my proposal:
Making a web application for describing the need and the process of the
paperwork. I mean by that a simple 3-4 clicks process.
1. show major reasons why we ask that.
2. a menu list to choose the country the person lives in. Depending on
the country requirements, we would show how to make a valid copyright
assignment.
2a. if the country allow to filling an online form, show a form to
assign copyright to the FSF.
2b. if the country allow copyright assignment with a signature, allow
the user to sign electronically (either using mouse or signature
picture). I’ve signed a Non Disclosure Agreement using my mouse
in the past for a US company.
2c. if the country doesn’t allow electronic signature, allow printing
the document and explaining how to scan it (some people have no
idea a phone can do the job).
2d. if the country does require paper with ink, automatically generate
the document to be printed and signed. Also display information
on how to post it to the copyright holder.
3. validate the information to send and that the employer would allow
such thing. In case the work might be done on the company’s time,
ask a confirmation from the company (similar to step 2).
4. confirm the copyright assignment.
4a. if no signature is needed, confirm to the user the copyright
assignment.
4b. if a signature is needed, we might need to verify it. I know some
countries don’t require it.
4c. make an assignment ticket in case we need material paper. Once we
receive, we will notify the user.
All of those things could be done from the web browser (and also from
Emacs). We could make a web application for that that could be used by
other projects. A copyright assignment could be done in 5min.
That was my two cons cells.
--
Etienne
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-13 19:18 ` Etienne Prud’homme
@ 2017-07-13 22:07 ` Phillip Lord
0 siblings, 0 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-13 22:07 UTC (permalink / raw)
To: Etienne Prud’homme; +Cc: Stefan Monnier, emacs-devel
Etienne Prud’homme <e.e.f.prudhomme@gmail.com> writes:
> Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> PS: BTW, to clarify my position: if it were up to me, I'd get rid of the
>> copyright assignment policy for GNU ELPA (and for Emacs as well,
>> while we're at it), but I'd keep the "locally hosted in a repository
>> to which we have write access, with commit-diffs".
>
> Making a web application for describing the need and the process of the
> paperwork. I mean by that a simple 3-4 clicks process.
A web interface with an current status and easy navigation would be a
great addition, I think.
> 3. validate the information to send and that the employer would allow
> such thing. In case the work might be done on the company’s time,
> ask a confirmation from the company (similar to step 2).
It's irrelevant when the work is done unfortunately. If you are employed
as a programmer, then a priori your employer has a strong claim on the
copyright of any code you right.
So, you have to get a disclaimer. This is one of those things that can
take quite a while, especially if you work for a big company.
> All of those things could be done from the web browser (and also from
> Emacs). We could make a web application for that that could be used by
> other projects. A copyright assignment could be done in 5min.
It's worth a try for sure!
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads)
2017-07-11 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Stefan Monnier
2017-07-12 1:26 ` Improving GNU ELPA Clément Pit-Claudel
@ 2017-07-16 16:04 ` Jonas Bernoulli
2017-07-16 17:11 ` Improving GNU ELPA Stefan Monnier
1 sibling, 1 reply; 72+ messages in thread
From: Jonas Bernoulli @ 2017-07-16 16:04 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
I think we should keep requiring authors to push to and pull from Elpa,
that is not really the issue. The issue as I see it is that doing so is
not as easy as:
git pull elpa
git push elpa
Instead one has to do something like (provided one does actually care
about the history in both the "personal" and the Elpa repository staying
clean).
* Integrating Elpa changes.
git fetch elpa
git filter-branch
git branch -f elpa &&
git filter-branch -f --subdirectory-filter "packages/$package" --commit-filter '
# One could use "--prune-empty" instead, but this script is better.
test $# = 1 && test -z "$(git ls-tree $1)" && skip_commit "$1" && exit
args="$@"
tree="$1"
shift
while test -n "$1"
do
shift
test "$tree" = $(git rev-parse "$1^{tree}") && map "$1" && exit
shift
done
git commit-tree $args' elpa
So I think the focus should be on enabling "one repository per package"
instead of making Elpa pull. If pushing to Elpa was as easy as for normal
Git repositories, then people would not mind.
Jonas
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-16 16:04 ` Improving GNU ELPA (was: Adding advisory notification for non-ELPA package.el downloads) Jonas Bernoulli
@ 2017-07-16 17:11 ` Stefan Monnier
2017-07-16 17:28 ` Jonas Bernoulli
0 siblings, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-16 17:11 UTC (permalink / raw)
To: emacs-devel
> git fetch elpa
> git filter-branch
That's only for the "subtree" packages. You can use an "external"
package, in which case the package has its own branch.
> So I think the focus should be on enabling "one repository per package"
One repository per package would be a bit more convenient in some cases,
admittedly, but one branch per package is not that bad.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-16 17:11 ` Improving GNU ELPA Stefan Monnier
@ 2017-07-16 17:28 ` Jonas Bernoulli
2017-07-17 16:46 ` Phillip Lord
2017-07-17 18:26 ` Stefan Monnier
0 siblings, 2 replies; 72+ messages in thread
From: Jonas Bernoulli @ 2017-07-16 17:28 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> git fetch elpa
>> git filter-branch
>
> That's only for the "subtree" packages. You can use an "external"
> package, in which case the package has its own branch.
>
>> So I think the focus should be on enabling "one repository per package"
>
> One repository per package would be a bit more convenient in some cases,
> admittedly, but one branch per package is not that bad.
That works for me, and I suspect for many others too.
I was somehow under the impression that "subtree" packages were
preferred, and "external" packages only recommended for big packages
and maintainers who refused to use the subtree approach.
Since "one branch per package" works mostly (*) like "one repository
per package", I don't think teaching Elpa to pull is a good idea.
The downsides of doing that have already been discussed and as long
as one goes with the "subtree" option, I don't see the need.
*: git remote add -t externals/<package> --no-tags elpa git://...
vs.
git remote add elpa git://...
Cheers,
Jonas
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-16 17:28 ` Jonas Bernoulli
@ 2017-07-17 16:46 ` Phillip Lord
2017-07-17 18:26 ` Stefan Monnier
1 sibling, 0 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-17 16:46 UTC (permalink / raw)
To: Jonas Bernoulli; +Cc: Stefan Monnier, emacs-devel
Jonas Bernoulli <jonas@bernoul.li> writes:
> Stefan Monnier <monnier@iro.umontreal.ca> writes:
>
>>> git fetch elpa
>>> git filter-branch
>>
>> That's only for the "subtree" packages. You can use an "external"
>> package, in which case the package has its own branch.
>>
>>> So I think the focus should be on enabling "one repository per package"
>>
>> One repository per package would be a bit more convenient in some cases,
>> admittedly, but one branch per package is not that bad.
>
> That works for me, and I suspect for many others too.
I have used a branch for my packages so that it (mostly) remains as
simple as git pull/git push.
It does bring some added complexity, as the git pull is a potential
merge. In the case of magit, this is not going to be a problem as you
know how to use git well: you can avoid the merge if you want or deal
with it if you want. For others, it might be a little harder. It is why
I think ELPA should be modified by PRs where an upstream exists. Having
a branch makes this easier also.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-16 17:28 ` Jonas Bernoulli
2017-07-17 16:46 ` Phillip Lord
@ 2017-07-17 18:26 ` Stefan Monnier
2017-07-17 21:04 ` Richard Stallman
1 sibling, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-17 18:26 UTC (permalink / raw)
To: Jonas Bernoulli; +Cc: emacs-devel
> I was somehow under the impression that "subtree" packages were
> preferred, and "external" packages only recommended for big packages
> and maintainers who refused to use the subtree approach.
It's up to the package's maintainer to decide.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-17 18:26 ` Stefan Monnier
@ 2017-07-17 21:04 ` Richard Stallman
2017-07-17 21:21 ` Stefan Monnier
0 siblings, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-17 21:04 UTC (permalink / raw)
To: Stefan Monnier; +Cc: jonas, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> > I was somehow under the impression that "subtree" packages were
> > preferred, and "external" packages only recommended for big packages
> > and maintainers who refused to use the subtree approach.
> It's up to the package's maintainer to decide.
People have presented complicated workflows, saying those are required
to install any patch in ELPA, and that this makes using ELPA a pain.
Those did seem so complicated that it would be a pain in the neck to
do this.
Are those complicated workflows for "subtree" packages only?
Does using an "external" package avoid the problem?
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-17 21:04 ` Richard Stallman
@ 2017-07-17 21:21 ` Stefan Monnier
2017-07-18 10:08 ` Phillip Lord
2017-07-18 14:16 ` Richard Stallman
0 siblings, 2 replies; 72+ messages in thread
From: Stefan Monnier @ 2017-07-17 21:21 UTC (permalink / raw)
To: emacs-devel
> Are those complicated workflows for "subtree" packages only?
Yes (and only if you use a separate upstream).
> Does using an "external" package avoid the problem?
Yes,
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-17 21:21 ` Stefan Monnier
@ 2017-07-18 10:08 ` Phillip Lord
2017-07-18 13:35 ` Stefan Monnier
2017-07-18 14:18 ` Richard Stallman
2017-07-18 14:16 ` Richard Stallman
1 sibling, 2 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-18 10:08 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> Are those complicated workflows for "subtree" packages only?
>
> Yes (and only if you use a separate upstream).
>
>> Does using an "external" package avoid the problem?
>
> Yes,
Mostly.
With dash, I can push to elpa, but not to upstream. So, changes occuring
to dash on ELPA, have to be pulled onto a branch, turned into a PR for
dash.
If I could push to upstream, it would be simpler, but still require
merges.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 10:08 ` Phillip Lord
@ 2017-07-18 13:35 ` Stefan Monnier
2017-07-18 16:17 ` Phillip Lord
2017-07-18 14:18 ` Richard Stallman
1 sibling, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-18 13:35 UTC (permalink / raw)
To: emacs-devel
> If I could push to upstream, it would be simpler, but still require
> merges.
AFAIU, what you mean by "merges" is simply the result of changes being
made both to the github repository and to the elpa.git repository.
It's unrelated to how the copy of dash kept on the gnu.org side is
stored (a subtree, or a separate branchm or a separate repository) as
long as it can be modified on the gnu.org side.
Right?
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 13:35 ` Stefan Monnier
@ 2017-07-18 16:17 ` Phillip Lord
0 siblings, 0 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-18 16:17 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> If I could push to upstream, it would be simpler, but still require
>> merges.
>
> AFAIU, what you mean by "merges" is simply the result of changes being
> made both to the github repository and to the elpa.git repository.
> It's unrelated to how the copy of dash kept on the gnu.org side is
> stored (a subtree, or a separate branchm or a separate repository) as
> long as it can be modified on the gnu.org side.
>
> Right?
I think so, yes. I've never used subtrees. Orphan branches in a repo are
essentially the same as a separate repo except that they share a
namespace for branches and tags. So, I guess, with a separate repo you
could do things like make a feature branch and then PR for this
upstream.
But in terms of use, not modifying the gnu.org side (except in
exceptional circumstances) would make the use of ELPA with an upstream
repo easier. ELPA would, effectively, operate like Jonas' emacsmirror;
there in case the upstream disappeared.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 10:08 ` Phillip Lord
2017-07-18 13:35 ` Stefan Monnier
@ 2017-07-18 14:18 ` Richard Stallman
2017-07-18 16:23 ` Phillip Lord
1 sibling, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-18 14:18 UTC (permalink / raw)
To: Phillip Lord; +Cc: monnier, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> With dash, I can push to elpa, but not to upstream. So, changes occuring
> to dash on ELPA, have to be pulled onto a branch, turned into a PR for
> dash.
The reason I say we should have admin access to the real repository
is to avoid problem situations like this one.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 14:18 ` Richard Stallman
@ 2017-07-18 16:23 ` Phillip Lord
2017-07-19 3:31 ` Richard Stallman
0 siblings, 1 reply; 72+ messages in thread
From: Phillip Lord @ 2017-07-18 16:23 UTC (permalink / raw)
To: Richard Stallman; +Cc: monnier, emacs-devel
Richard Stallman <rms@gnu.org> writes:
> [[[ To any NSA and FBI agents reading my email: please consider ]]]
> [[[ whether defending the US Constitution against all enemies, ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> > With dash, I can push to elpa, but not to upstream. So, changes occuring
> > to dash on ELPA, have to be pulled onto a branch, turned into a PR for
> > dash.
>
> The reason I say we should have admin access to the real repository
> is to avoid problem situations like this one.
As I said, it doesn't avoid the problem, it just changes the nature of
that problem. As Stefan has said, at the moment, dealing with these
issues is, anyway, consider the problem of the upstream person. The
presence of push rights changes nothing if you do not use them.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 16:23 ` Phillip Lord
@ 2017-07-19 3:31 ` Richard Stallman
2017-07-19 22:54 ` Phillip Lord
0 siblings, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-19 3:31 UTC (permalink / raw)
To: Phillip Lord; +Cc: monnier, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> As I said, it doesn't avoid the problem, it just changes the nature of
> that problem.
I have a hunch that "the problem" you are talking about is not the
same problem. I can't verify this, because you tallk about "the
problem" tersely in the abstract, without stating concretely what
problem you mean. But I am pretty sure it's not the one I am trying
to avoid.
As Stefan has said, at the moment, dealing with these
> issues is, anyway, consider the problem of the upstream person.
I would describe that as the "easy way out". You consider it a good
option and recommend it as a solution, but I see it as opening a can
of worms. Thus, for me it is "the problem" and I am looking for how
we can _avoid_ it.
> The
> presence of push rights changes nothing if you do not use them.
Alas, I don't follow -- that is rather terse, so I don't understand
the point. I am not sure whether I would agree or disagree, if I
understood.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-19 3:31 ` Richard Stallman
@ 2017-07-19 22:54 ` Phillip Lord
0 siblings, 0 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-19 22:54 UTC (permalink / raw)
To: Richard Stallman; +Cc: monnier, emacs-devel
Richard Stallman <rms@gnu.org> writes:
> [[[ To any NSA and FBI agents reading my email: please consider ]]]
> [[[ whether defending the US Constitution against all enemies, ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> > As I said, it doesn't avoid the problem, it just changes the nature of
> > that problem.
>
> I have a hunch that "the problem" you are talking about is not the
> same problem. I can't verify this, because you tallk about "the
> problem" tersely in the abstract, without stating concretely what
> problem you mean. But I am pretty sure it's not the one I am trying
> to avoid.
Specifically, that I cannot push to dash on github which is the main
repository. This is not a big deal, I just haven't asked for it.
>
> As Stefan has said, at the moment, dealing with these
> > issues is, anyway, consider the problem of the upstream person.
>
> I would describe that as the "easy way out". You consider it a good
> option and recommend it as a solution, but I see it as opening a can
> of worms. Thus, for me it is "the problem" and I am looking for how
> we can _avoid_ it.
>
> > The
> > presence of push rights changes nothing if you do not use them.
>
> Alas, I don't follow -- that is rather terse, so I don't understand
> the point. I am not sure whether I would agree or disagree, if I
> understood.
So, the issue is this:
Assume we have a package (like dash) which is maintained and developed
in some external git repo.
I think, ELPA would be easier to use if it just pulled directly and
automatically from this external git repo. If the Emacs maintainers want
to update that package, they should use PRs to the upstream. Commit or
push rights on upstream are not necessary. This is enough, for most
cases, and is also easy for the upstream developer. This is also how
MELPA runs, so clearly it can work in practice.
There are emergencies that we might concieve of where a change needs to
be made to ELPA immediately, today, without any delay. In these
circumstances, a copy of the project history would be available in the
ELPA repository. Changes could be made there, with the knowledge that
the upstream package would need to do something to reincorporate these
emergency changes. MELPA has a similar policy for switching upstream.
This requires almost no software (just something to run the pull), no
changes to ELPA, just a change in policy. In response, ELPA becomes a
little more frictionless, a little more convienient for contributors.
Going round in circles here, so I stop.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-17 21:21 ` Stefan Monnier
2017-07-18 10:08 ` Phillip Lord
@ 2017-07-18 14:16 ` Richard Stallman
2017-07-18 14:39 ` Stefan Monnier
1 sibling, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-18 14:16 UTC (permalink / raw)
To: Stefan Monnier; +Cc: rms, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> > Are those complicated workflows for "subtree" packages only?
> Yes (and only if you use a separate upstream).
Using a separate upstream can be ok, if we ensure proper rules are
followed, to avoid difficulties.
What are the current rules for using a separate upstream
in ELPA?
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 14:16 ` Richard Stallman
@ 2017-07-18 14:39 ` Stefan Monnier
2017-07-18 16:20 ` Phillip Lord
0 siblings, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-18 14:39 UTC (permalink / raw)
To: emacs-devel
> What are the current rules for using a separate upstream
> in ELPA?
There are no real rules, here, other than the fact that elpa.git may be
modified by us directly, so if the maintainer decides to keep the
"upstream" elsewhere it's his responsibility to deal with the fallout
[ We try to help with that by automatically sending her an email with
the diffs that have been installed, tho this automatic forwarding is
currently broken, as mentioned earlier in this thread:
> - when someone commits to elpa.git we get an elpa-diffs email which
> I used to then forward to the corresponding package maintainer.
> This forwarding is currently broken because of changes to my
> email server. This should really be done in elpa.gnu.org instead of
> iro.umontreal.ca anyway, so I don't intend to fix the old setup.
Help would be very warmly welcome here. ]
More generally: it's not ideas that are missing, it's people helping
improve the setup.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 14:39 ` Stefan Monnier
@ 2017-07-18 16:20 ` Phillip Lord
2017-07-18 17:26 ` Stefan Monnier
0 siblings, 1 reply; 72+ messages in thread
From: Phillip Lord @ 2017-07-18 16:20 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> What are the current rules for using a separate upstream
>> in ELPA?
>
> There are no real rules, here, other than the fact that elpa.git may be
> modified by us directly, so if the maintainer decides to keep the
> "upstream" elsewhere it's his responsibility to deal with the fallout
This bit I don't like!
> [ We try to help with that by automatically sending her an email with
> the diffs that have been installed, tho this automatic forwarding is
> currently broken, as mentioned earlier in this thread:
>
> > - when someone commits to elpa.git we get an elpa-diffs email which
> > I used to then forward to the corresponding package maintainer.
> > This forwarding is currently broken because of changes to my
> > email server. This should really be done in elpa.gnu.org instead of
> > iro.umontreal.ca anyway, so I don't intend to fix the old setup.
>
> Help would be very warmly welcome here. ]
>
> More generally: it's not ideas that are missing, it's people helping
> improve the setup.
What sort of commits do you do locally? Would scripting something to
branch, and do git-request-pull to the upstream be a substitute?
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 16:20 ` Phillip Lord
@ 2017-07-18 17:26 ` Stefan Monnier
2017-07-19 22:59 ` Phillip Lord
0 siblings, 1 reply; 72+ messages in thread
From: Stefan Monnier @ 2017-07-18 17:26 UTC (permalink / raw)
To: emacs-devel
>> There are no real rules, here, other than the fact that elpa.git may be
>> modified by us directly, so if the maintainer decides to keep the
>> "upstream" elsewhere it's his responsibility to deal with the fallout
> This bit I don't like!
You're not alone, so in general we should try to avoid it.
> What sort of commits do you do locally?
Not sure what you mean by "locally". Do you mean, what kinds of commits
do we want to install directly into elpa.git (for those cases where the
upstream is elsewhere)?
Typically things like incorrect copyright notices or compilation breakage.
> Would scripting something to branch, and do git-request-pull to the
> upstream be a substitute?
Nowadays, most of time I send a patch via email to the maintainer rather
than committing directly. It's more tedious but since I now do much less
janitorial work on elpa.git code it's OK.
Stefan
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-18 17:26 ` Stefan Monnier
@ 2017-07-19 22:59 ` Phillip Lord
2017-07-24 2:54 ` Richard Stallman
0 siblings, 1 reply; 72+ messages in thread
From: Phillip Lord @ 2017-07-19 22:59 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>>> There are no real rules, here, other than the fact that elpa.git may be
>>> modified by us directly, so if the maintainer decides to keep the
>>> "upstream" elsewhere it's his responsibility to deal with the fallout
>> This bit I don't like!
>
> You're not alone, so in general we should try to avoid it.
>
>> What sort of commits do you do locally?
>
> Not sure what you mean by "locally". Do you mean, what kinds of commits
> do we want to install directly into elpa.git (for those cases where the
> upstream is elsewhere)?
Yes, precisely so.
> Typically things like incorrect copyright notices or compilation breakage.
Does ELPA not check for the copyright? I.e. if it's incorrect, it will
be wrong in the git repo only and not in the distributed ELPA package.
>> Would scripting something to branch, and do git-request-pull to the
>> upstream be a substitute?
>
> Nowadays, most of time I send a patch via email to the maintainer rather
> than committing directly. It's more tedious but since I now do much less
> janitorial work on elpa.git code it's OK.
janitorial work is always tedious!
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-19 22:59 ` Phillip Lord
@ 2017-07-24 2:54 ` Richard Stallman
2017-07-24 12:26 ` Phillip Lord
0 siblings, 1 reply; 72+ messages in thread
From: Richard Stallman @ 2017-07-24 2:54 UTC (permalink / raw)
To: Phillip Lord; +Cc: monnier, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> > Typically things like incorrect copyright notices or compilation breakage.
> Does ELPA not check for the copyright? I.e. if it's incorrect, it will
> be wrong in the git repo only and not in the distributed ELPA package.
We could make ELPA check that files have the correct copyright notices.
We could also make it check that they have the correct license notices.
It would be useful to implement sending us warnings for that.
Would anyone like to implement this?
However, the crucial thing is not what the file SAYS about copyright,
but what the actual facts are about the copyright. We take care of
that by getting copyright assignments. Once that is done, if a notice
in a file is inaccurate, all we need to do is correct it.
--
Dr Richard Stallman
President, Free Software Foundation (gnu.org, fsf.org)
Internet Hall-of-Famer (internethalloffame.org)
Skype: No way! See stallman.org/skype.html.
^ permalink raw reply [flat|nested] 72+ messages in thread
* Re: Improving GNU ELPA
2017-07-24 2:54 ` Richard Stallman
@ 2017-07-24 12:26 ` Phillip Lord
0 siblings, 0 replies; 72+ messages in thread
From: Phillip Lord @ 2017-07-24 12:26 UTC (permalink / raw)
To: Richard Stallman; +Cc: monnier, emacs-devel
Richard Stallman <rms@gnu.org> writes:
> [[[ To any NSA and FBI agents reading my email: please consider ]]]
> [[[ whether defending the US Constitution against all enemies, ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> > > Typically things like incorrect copyright notices or compilation breakage.
>
> > Does ELPA not check for the copyright? I.e. if it's incorrect, it will
> > be wrong in the git repo only and not in the distributed ELPA package.
>
> We could make ELPA check that files have the correct copyright notices.
> We could also make it check that they have the correct license notices.
> It would be useful to implement sending us warnings for that.
>
> Would anyone like to implement this?
It already does this.
Incorrect copyright notices are nothing urgent, since they need not go
live to elpa.gnu.org -- they will be present only in git. So not an
urgent need for changes.
Phil
^ permalink raw reply [flat|nested] 72+ messages in thread