Subject: bug#60923: closed (Re: bug#60923: 29.0.60; package-vc-install: Allow specifying directories)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 01 Mar 2023 14:04:02 +0000

Your bug report

#60923: 29.0.60; package-vc-install: Allow specifying directories

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
60923: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60923
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#60923: 29.0.60; package-vc-install: Allow specifying directories
From: Philip Kaludercic <[email-masked]>
To: Mohammed Sadiq <[email-masked]>
Cc: [email-masked]
Date: Wed, 01 Mar 2023 14:03:02 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Mohammed Sadiq <[email-masked]> writes:

> On 2023-02-14 21:29, Philip Kaludercic wrote:
>> But perhaps I am misunderstanding you.  What would be the point of
>> removing the files from the installation directory?
>
> My need was to avoid letting the code in test files never available
> in Emacs (as defuns and such are not namespace separated, functions
> written in tests may confuse with other functions)
>
> But given that the entire source including the vc history is kept
> as such, I don't think removing the file is for this purpose is
> worth.

OK, I'll go ahead and mark the report as done then?

>>>> package.el already supports ignoring the contents of a .elpaignore
>>>> file,
>>>> but all that does is remove a few files from the byte-compilation
>>>> process.
>>> I tried installing pareedit, and it doesn't seem to work. I tried:
>>> emacs --batch --eval='(package-vc-install
>>> "https://github.com/emacsmirror/paredit.git")'
>> (Is there a reason you specified a URL instead of the package?)
>
> I just chose the URL of a popular project that has a .elpaignore file.

The reason I was asking is that you could have also invoked
`package-vc-install' using just a symbol, and it would have used the
default specification that the package archive (in this case NonGNU
ELPA) also uses to build the package:

  (package-vc-install 'paredit)

>>>                                                      Also, since
>>> it is installed, I'm able to access functions like
>>> `paredit-test-failed'.
>> Just like that or after loading the file?
>
> After loading the file.  `paredit-test-failed` is no big problem.
> But some projects may define functions like `load-test-file` etc,
> which may not be obvious where the function is defined unless the
> documentation or its code is inspected.
>
> But anyway, as suggested, I don't think it's worth to have a way to
> remove specified files as the entire vc history is cloned and kept
> locally.  So please close the issue.

Package-vc is just an alternative backend for package, the loading is
still taken care of by package.el.  And if the package doesn't autoload
these definitions, then they shouldn't appear.  One could contact the
maintainer and suggest them to be more hygienic in regard to tests or
other miscellaneous files, but considering that hacking on packages is
one of the main use-cases of package-vc, it shouldn't be prevented.

> Sorry for the delayed response.  I was away last month.

No problem, I hope I could help :).

> cheers,
> Mohammed Sadiq

-- 
Philip Kaludercic

Subject: 29.0.60; package-vc-install: Allow specifying directories
From: Mohammed Sadiq <[email-masked]>
To: [email-masked]
Date: Wed, 18 Jan 2023 09:54:41 +0530
List-Id: <debbugs-submit.debbugs.gnu.org>

When installing packages from vc, I want to ignore some directories (eg:
tests directory). I would like package-vc-install to have an option to
accept list of directories to ignore or include (eg: if source is in src
subdirectory)

In GNU Emacs 29.0.60 (build 6, x86_64-pc-linux-gnu, GTK+ Version
  3.24.36, cairo version 1.16.0) of 2023-01-17 built on purism
Repository revision: e8c77d9abda9c5c48de546a4ff667ffdf3d27c94
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 
11.0.12101005
System Description: Debian GNU/Linux bookworm/sid