[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#28185] [PATCH] build: emacs-build-system: Make the install phase mo
From: |
Ludovic Courtès |
Subject: |
[bug#28185] [PATCH] build: emacs-build-system: Make the install phase more helpful. |
Date: |
Tue, 29 Aug 2017 23:46:00 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Hello!
Christopher Baines <address@hidden> skribis:
> On Tue, 29 Aug 2017 11:55:08 +0530
> Arun Isaac <address@hidden> wrote:
>
>> Christopher Baines writes:
>>
>> > Modify the install phase to detect when nothing has been installed,
>> > and error if this happens. This is preferable to continuing, and
>> > allowing the next phase to fail.
>> >
>> > Also, when nothing can be found to be installed, print out each
>> > file that was considered, along with the regular expressions that
>> > were used to include and exclude it.
>> >
>> > * gnu/build/emacs-build-system.scm (install-file?): Add additional
>> > error checking and logging.
>> > ---
>> > guix/build/emacs-build-system.scm | 45
>> > ++++++++++++++++++++++++++++----------- 1 file changed, 32
>> > insertions(+), 13 deletions(-)
>>
>> I feel that this adds a lot of complexity (lines of code) to the
>> emacs-build-system checking for an error that can be quite easily
>> identified and fixed otherwise.
>>
>> WDYT? Maybe, others can comment on this as well.
>
> In my personal experience, I didn't find this easy to identify and fix.
> For packaging emacs-minitest, I ended up writing this to pin down why
> the emacs-build-system wasn't installing the key file.
>
> I think validating that something has been installed is really
> important, as otherwise the later phases fail in a very unclear way.
>
> The extra functionality about explaining why each file hasn't been
> installed is useful for debugging, and I agree that it adds significant
> complexity.
I agree. I’m guessing you wrote this after spending a while debugging a
build, despite being experienced with Guix, which to me suggests that
this is a welcome improvement, in spite of the extra complexity.
> But, I'd like for packaging emacs things to be really easy in the
> general case, and I think making the build system more helpful when it
> fails is one way to improve this. I wouldn't like to expect that you'd
> need to read the implementation of the build system, or add in your own
> debugging code just to package a emacs module.
Sounds reasonable.
To me this looks like a step in the right direction.
Thanks,
Ludo’.
PS: Thanks Arun for pinging me. :-)