[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Opt-out or Opt-in vebose build logs Re: jessie release goal: verbose build logs



On 13 August 2013 14:36, Joey Hess <joeyh@debian.org> wrote:
> Dmitrijs Ledkovs wrote:
>> Is there any reason this hasn't been applied yet?
>> Can I NMU this, as debhelper is marked as LowNMU package.
>
> Not for reasons such as allowing patches like this.
>

Ok.

> Making all builds verbose by default has both advantages and
> disadvantages.
>

I agree, there should be a way to toggle this.

> The disadvantages include making builds possibly so noisy that when one
> runs them during daily work, once ignores all output. Including
> important compiler warnings.
>

We have build log analyzers running for the build logs. And the
important compiler warnings (errors) fail the build.
If we make this opt-in, we will fail to achieve this goal. As when one
is debugging a failed build (e.g. the failure in the last hour of
webkit/qt/libreoffice compile on armhf porter box, or by hand
./debian/rules build) that's when one would start caring & wishing to
have the verbose output would have been set, but it would be too late.

The way I interpret this goal is to have the build logs verbose by
default and/or opt-out.

Making this opt-in, will need many machines modified - potentially all
the builders / CI integration. It's not just about Debian buildd
network, but anyone who rebuilds debian packages or derives from
Debian. Including all the ways people integrate and build debian
packages.

> (This is the same reason why it's a bad idea to let a codebase
> accumulate a lot of compiler warnings!)
>
> I'd be ok with DH_VERBOSE enabling the verbose behavior, and the buildds
> could then enable it.
>

I'm against re-using DH_VERBOSE variable:

* DH_VERBOSE has explicit meaning to control output of dh_* commands.
DH_VEBOSE=1 should print how/what dh_auto_* commands invokes. It
should not change the commands it invokes.

* this debian goal is not debhelper/cdbs/etc specific, but
helper/build-system agnostic.

How about a new DEB_BUILD_OPTION="silent" which opts into silent build
log? Does that sound reasonable.

For a policy change, I am hoping to mandatory require verbose build by
default, and optionally supporting DEB_BUILD_OPTION="silent".

Regards,

Dmitrijs.


Reply to: