unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#38140: ELPA needs a standard mechanism for single-package compilation
@ 2019-11-08 22:24 Raffael Stocker
  2020-01-18 10:45 ` Stefan Kangas
  0 siblings, 1 reply; 6+ messages in thread
From: Raffael Stocker @ 2019-11-08 22:24 UTC (permalink / raw)
  To: 38140


To compile a single ELPA package for tests or during development, it is
currently necessary to clone/pull the whole elpa.git.  This is wasteful
if only a single package is of interest.  ELPA should have a standard
mechanism that allows (pulling/)compiling/testing etc. of single
packages.  I request that such a mechanism be implemented.

Greetings,
        Raffael





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38140: ELPA needs a standard mechanism for single-package compilation
  2019-11-08 22:24 bug#38140: ELPA needs a standard mechanism for single-package compilation Raffael Stocker
@ 2020-01-18 10:45 ` Stefan Kangas
  2020-01-18 15:30   ` Raffael Stocker
  0 siblings, 1 reply; 6+ messages in thread
From: Stefan Kangas @ 2020-01-18 10:45 UTC (permalink / raw)
  To: Raffael Stocker; +Cc: 38140

Raffael Stocker <r.stocker@mnet-mail.de> writes:

> To compile a single ELPA package for tests or during development, it is
> currently necessary to clone/pull the whole elpa.git.  This is wasteful
> if only a single package is of interest.  ELPA should have a standard
> mechanism that allows (pulling/)compiling/testing etc. of single
> packages.  I request that such a mechanism be implemented.

I don't think we want to split up elpa.git into many small ones to
support this use case, since the other side of the coin is that it
would make the job harder for the ELPA maintainers.

If you really want this, you could try "git clone --filter", but I'm
not sure if the GNU repositories are configured to allow for that.

Note also that there is already the possibility in ELPA to use an
external repository.  This is optional and only used when there is a
specific need though, IIUC.

Best regards,
Stefan Kangas

PS. The repository is only 174 MB on my disk, which IMO is not that
much in this day and age.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38140: ELPA needs a standard mechanism for single-package compilation
  2020-01-18 10:45 ` Stefan Kangas
@ 2020-01-18 15:30   ` Raffael Stocker
  2020-01-18 16:55     ` Stefan Kangas
  2020-11-28 18:50     ` Stefan Monnier
  0 siblings, 2 replies; 6+ messages in thread
From: Raffael Stocker @ 2020-01-18 15:30 UTC (permalink / raw)
  To: Stefan Kangas; +Cc: 38140, Stefan Monnier


(I cc'ed Stefan Monnier, as the bug report was on his request.)

Stefan Kangas writes:

> Raffael Stocker <r.stocker@mnet-mail.de> writes:
>
>> To compile a single ELPA package for tests or during development, it is
>> currently necessary to clone/pull the whole elpa.git.  This is wasteful
>> if only a single package is of interest.  ELPA should have a standard
>> mechanism that allows (pulling/)compiling/testing etc. of single
>> packages.  I request that such a mechanism be implemented.
>
> I don't think we want to split up elpa.git into many small ones to
> support this use case, since the other side of the coin is that it
> would make the job harder for the ELPA maintainers.

I agree.

> If you really want this, you could try "git clone --filter", but I'm
> not sure if the GNU repositories are configured to allow for that.

This is not so much about the amount of data.  The problem is that a
full "make" takes quite long (at least on my fairly slow machine) and
the output pertaining to the package of interest is easily overlooked.
I think it would be fine to do a "git clone" of the full repo but then a
"make <package>" or something to check compilation of just one package
in an otherwise clean worktree.  AFAIK this is not possible with the
current setup.

The idea is to have an easy and standard way of checking that a package
builds correctly.

> Note also that there is already the possibility in ELPA to use an
> external repository.  This is optional and only used when there is a
> specific need though, IIUC.

Yes, but does this solve the problem with making only one package?

Regards,
        Raffael





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38140: ELPA needs a standard mechanism for single-package compilation
  2020-01-18 15:30   ` Raffael Stocker
@ 2020-01-18 16:55     ` Stefan Kangas
  2020-11-28 18:50     ` Stefan Monnier
  1 sibling, 0 replies; 6+ messages in thread
From: Stefan Kangas @ 2020-01-18 16:55 UTC (permalink / raw)
  To: Raffael Stocker; +Cc: 38140, Stefan Monnier

Raffael Stocker <r.stocker@mnet-mail.de> writes:

> The idea is to have an easy and standard way of checking that a package
> builds correctly.

Thank you, that is indeed quite different from cloning the repository.
This feature request now makes much more sense.  I agree that we
should be able to build and run tests for individual packages.

Best regards,
Stefan Kangas





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38140: ELPA needs a standard mechanism for single-package compilation
  2020-01-18 15:30   ` Raffael Stocker
  2020-01-18 16:55     ` Stefan Kangas
@ 2020-11-28 18:50     ` Stefan Monnier
  2021-04-21 22:28       ` Stefan Kangas
  1 sibling, 1 reply; 6+ messages in thread
From: Stefan Monnier @ 2020-11-28 18:50 UTC (permalink / raw)
  To: Raffael Stocker; +Cc: 38140, Stefan Kangas

I just pushed to elpa.git a change to `GNUmakefile` which shouild make
it so you can

    make packages/<mypkg>

and it will only compile the ELisp files of <mypkg> (it also updates
the `<pkg>-pkg.el` and `<pkg>-autoloads.el` along the way, so it
also does the job needed for the package to be "ready to use" by
`package-activate`).


        Stefan






^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38140: ELPA needs a standard mechanism for single-package compilation
  2020-11-28 18:50     ` Stefan Monnier
@ 2021-04-21 22:28       ` Stefan Kangas
  0 siblings, 0 replies; 6+ messages in thread
From: Stefan Kangas @ 2021-04-21 22:28 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 38140, Raffael Stocker

tags 38140 fixed
close 38140
thanks

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> I just pushed to elpa.git a change to `GNUmakefile` which shouild make
> it so you can
>
>     make packages/<mypkg>
>
> and it will only compile the ELisp files of <mypkg> (it also updates
> the `<pkg>-pkg.el` and `<pkg>-autoloads.el` along the way, so it
> also does the job needed for the package to be "ready to use" by
> `package-activate`).

I'm therefore closing this bug report.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-04-21 22:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-08 22:24 bug#38140: ELPA needs a standard mechanism for single-package compilation Raffael Stocker
2020-01-18 10:45 ` Stefan Kangas
2020-01-18 15:30   ` Raffael Stocker
2020-01-18 16:55     ` Stefan Kangas
2020-11-28 18:50     ` Stefan Monnier
2021-04-21 22:28       ` Stefan Kangas

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).