Re: jessie release goal: verbose build logs

2013-11-13 Thread Stéphane Glondu
Le 14/06/2013 15:19, Timo Juhani Lindfors a écrit :
 This doesn't really help when trying to diagnose things, and even for 
 successful
 builds it's valuable to have the complete build log, including the parts how 
 the
 upstream build system is called from the Debian packaging.
 
 This is a useful goal. However, since fixing many different source
 packages is a lot of work I recently explored some alternative
 approaches. For example, with systemtap we can simply log all execve()
 invocations complete with timing information and end up with fully
 structured build logs.
 
 Here's example output from the proof of concept from a few years ago:
 
 http://lindi.iki.fi/lindi/structured-buildlogs/logs/hello-2.6-1_amd64.build

How do you do that exactly?


Cheers,

-- 
Stéphane


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/52837b52.4030...@debian.org



Re: jessie release goal: verbose build logs

2013-11-13 Thread Timo Juhani Lindfors
Stéphane Glondu glo...@debian.org writes:
 http://lindi.iki.fi/lindi/structured-buildlogs/logs/hello-2.6-1_amd64.build

 How do you do that exactly?

Can't remember the exact details but you can get the script with

git clone http://lindi.iki.fi/lindi/git/structured-buildlogs.git/


-Timo


--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/848uwshwfm@sauna.l.org



Re: jessie release goal: verbose build logs

2013-08-20 Thread Ian Jackson
(Resending; first copy failed due to MIME non-8-bit-cleanliness damage.)

Joey Hess writes (Re: jessie release goal: verbose build logs):
 I've attached a simple proof of concept you can try it out with building
 your own packages.  For example:
 
dpkg-buildpackage | ssh
 
 (The implementation needs to be improved; it should read both stdout and
 stderr and multiplex them properly. And it should check if stdout is not
 to a TTY, and if so avoid munging the build log output. The only other
 problem is that `make` outputs the lines it runs to stderr and so those
 continue to pollute the build display.)

I like the idea, but you need to make this an adverbial command, not a
pipe thing.  This is so that if you _aren't_ \r-mangling, you can pass
dpkg-buildpackage the same actual fd for both stdin and stdout, so
that the interleaving of stdout and stderr is correct.

Ian.


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/21011.33534.616618.445...@chiark.greenend.org.uk



Re: jessie release goal: verbose build logs

2013-08-18 Thread Raphael Hertzog
On Wed, 14 Aug 2013, Guillem Jover wrote:
 Definitely, and planned (#476221) to be fixed pretty soon. But the
 problem is that this can not be enabled by default (only through an
 option initially, until the upper layers rely on a dpkg-buildpackage
 with such option and use it) because the different tools might fight
 over the file and might either truncate it or write duplicate data,
 etc. Using a different path might be an issue for builds producing
 huge log files.

Great to see that you want to take care of this, but can you let us know
how you plan to let dpkg-buildpackage cooperate with the upper layer tools
to have a full log file that can be added to .changes?

If we don't care about adding it to .changes, then it's trivial,
dpkg-buildpackage can just ignore the file, but otherwise we need
some way to transfer the control of the log file or something similar.

The requirements IMO is to have the start of the log from the upper layer
(i.e. sbuild setup of build dependencies) but also have the log properly
closed at the time dpkg-buildpackage runs dpkg-genchanges, because once
it has been added to the .changes it should not be further modified
obviously.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Discover the Debian Administrator's Handbook:
→ http://debian-handbook.info/get/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130818155954.gb7...@x230-buxy.home.ouaza.com



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

2013-08-15 Thread Joey Hess
Dmitrijs Ledkovs wrote:
 We have build log analyzers running for the build logs.

Checking heuristically for problems you know about does not help find
the class of problems you don't know about yet.

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

I don't see how it could seem reasonable if you've read my message and
followed my reasoning.

-- 
see shy jo


signature.asc
Description: Digital signature


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

2013-08-15 Thread Matthias Klose
Am 13.08.2013 21:10, schrieb Adam Borowski:
 So I guess it would be best to put the threshold at automated vs
 human-supervised builds.  What about setting the flag per-tool rather than
 per-deployment?  For example, pbuilder would default to verbose (as you
 can't restart builds) while dpkg-buildpackage in the absence of inherited
 settings would default to terse.
 
 This way we'd be spared the spam during development.

If you want to go this road, then it would be per use-case, not per tool.  When
looking at a QA maintained package, or looking at an unfixed RC issue in a
package I do not maintain, I want to have as much information as possible.
Filtering this information on my own is an easy task, however trying to figure
out how to make a build to print all information usually takes a bit longer.  So
probably the package maintainer likes the terse build logs too, but he is
usually the one who can make them terse without any effort.  However people
occasionally looking at a package are much better served with a complete build 
log.

Working all the time with dpkg-buildpackage, so even there the default should be
the one which is the most useful for the majority of use cases.

  Matthias


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/520c9fab.5060...@debian.org



Re: jessie release goal: verbose build logs

2013-08-15 Thread Raphael Hertzog
Hi,

On Tue, 13 Aug 2013, Russ Allbery wrote:
 debuild, pbuilder, and related packages currently use
 ../package_version_arch.build for this output.  Maybe the
 lower-level build architecture should take over maintaining that log file
 instead and those tools should be modified to assume that's already
 happening and move that log file around like the other build products?

While I agree that dpkg-buildpackage should have that feature, it's also
clear that those higher level tools have their output of their own that is
likely to be interesting as well. I really want the build log to include
the installation of the build dependencies for instance.

So there should be some coordination between both levels. Maybe the
higher level tools could hand over a file descriptor for the build log
that they started filling before calling dpkg-buildpackage.

Also if we use the same .build extensions for dpkg-buildpackage there will
need to have some sort of transition to ensure all other tools creating
those are correctly cooperating with dpkg-buildpackage.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Discover the Debian Administrator's Handbook:
→ http://debian-handbook.info/get/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130815101620.ga11...@x230-buxy.home.ouaza.com



Re: jessie release goal: verbose build logs

2013-08-14 Thread Guillem Jover
Hi!

On Tue, 2013-08-13 at 15:16:49 -0700, Russ Allbery wrote:
 Joey Hess jo...@debian.org writes:
  Also it could save the whole log to someplace when minimizing the
  console output, to refer back to. Perhaps ../$package_$version.buildlog
  (which gets a step closer to including that in the dsc and uploading
  local build logs..)
 
 debuild, pbuilder, and related packages currently use
 ../package_version_arch.build for this output.  Maybe the
 lower-level build architecture should take over maintaining that log file
 instead and those tools should be modified to assume that's already
 happening and move that log file around like the other build products?

Definitely, and planned (#476221) to be fixed pretty soon. But the
problem is that this can not be enabled by default (only through an
option initially, until the upper layers rely on a dpkg-buildpackage
with such option and use it) because the different tools might fight
over the file and might either truncate it or write duplicate data,
etc. Using a different path might be an issue for builds producing
huge log files.

Thanks,
Guillem


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130814091907.ga31...@gaara.hadrons.org



Re: jessie release goal: verbose build logs

2013-08-14 Thread Guillem Jover
Hi!

On Tue, 2013-08-13 at 22:08:34 +0200, Joey Hess wrote:
 At DebConf, Enrico came up with this idea: When the package is building
 with the display going to the console, something could intercept the
 stdout and convert \n to \r. Let stderr through untouched. The result
 would be a build that makes it *very* easy to focus on the warnings, while
 still providing a progress display of what is going on at any given
 moment in the build.

 I'd like to see dpkg-buildpackage modified to use something like this by
 default, because it would reduce the level of cruft we wade through
 (often up to our eyeballs) when building packages, and allow
 concentrating on what's important. At the same time, it allows adding as
 verbose output as we like and getting that saved in the build logs for
 when a detailed analysis is needed.

I'd probably be fine with something like this as an option in
dpkg-buildpackage, which ideally could be also enabled through its
future config file. But I'd really not be comfortable enabling it
by default, because this seems fragile and assumes upstream build
systems are sane and have consistent behavior, or the build might be
so fast you cannot see what's going on anyway compared to being able
to scroll back a bit (w/o reading the build log file).

Thanks,
Guillem


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130814105632.gb31...@gaara.hadrons.org



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

2013-08-14 Thread Thorsten Glaser
Adam Borowski kilobyte at angband.pl writes:

 Non-spammy builds are better for builds done by a human.

No.

They’re better for builds done by the developers of the upstream
software on their own systems where they know what they’re doing.

And even then, it’s a big maybe.

Every other human is a packager or porter (in a broad sense… if
I install Linux From Scratch then compile something I want to use
on it, I’m one), and those *require* verbose output, e.g. to verify
that the buildsystem didn’t eat $CFLAGS.

I can live with an optional 'silent' build option, but I personally
think everyone – especially(!) the package maintainers – should have
no need to use it.

bye,
//mirabilos


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/loom.20130814t173844-...@post.gmane.org



Re: jessie release goal: verbose build logs

2013-08-13 Thread Dmitrijs Ledkovs
On 17 June 2013 23:58, Dmitrijs Ledkovs x...@debian.org wrote:
 tags 680686 patch
 thanks

 On 14 June 2013 12:35, Matthias Klose d...@debian.org wrote:

  - Fix debhelper not passing --disable-silent-rules by default.
#680686
I think cdbs already does this.

 Patch attached for autoconf dh build system. cmake dh build system
 seems to be already enabling verbose makefiles.


Is there any reason this hasn't been applied yet?
Can I NMU this, as debhelper is marked as LowNMU package.
The patch itself is a trivial one-liner and fixes a Jessie release goal.
The bug report itself was filed a little over one year ago.

Regards,

Dmitrijs.


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/canbhluij3-_x_fe0dq6v2nu7duma9gfsh_ze7yeogit9abf...@mail.gmail.com



Re: jessie release goal: verbose build logs

2013-08-13 Thread Joey Hess
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.

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

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

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

-- 
see shy jo


signature.asc
Description: Digital signature


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

2013-08-13 Thread Dmitrijs Ledkovs
On 13 August 2013 14:36, Joey Hess jo...@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.


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/canbhlujxxzznj6tbmwvosrgra4jbdaa2oxtqi6futyf7t7z...@mail.gmail.com



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

2013-08-13 Thread Julien Cristau
[why oh why are you breaking threading?]

On Tue, Aug 13, 2013 at 19:51:52 +0200, Dmitrijs Ledkovs wrote:

 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.
 
I don't see how.  Either dpkg-buildpackage -nc or re-running
debian/rules build with the option set would give you what you want.

Cheers,
Julien


signature.asc
Description: Digital signature


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

2013-08-13 Thread Dmitrijs Ledkovs
On 13 August 2013 19:59, Julien Cristau jcris...@debian.org wrote:
 [why oh why are you breaking threading?]

 On Tue, Aug 13, 2013 at 19:51:52 +0200, Dmitrijs Ledkovs wrote:

 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.

 I don't see how.  Either dpkg-buildpackage -nc or re-running
 debian/rules build with the option set would give you what you want.

For well behaved build-systems that would only show flags for the yet
to compile object, where the bug might be in the flags/libs used for
the already compiled objects. (i don't have an example here, something
like mixing with/without -fPIC but we get warnings which objects are
at fault anyway)

For less behaved build-systems this may cause a reconfigure and
restart the whole build. Which is suboptimal.

In the past there have been random bugs / build failures which are not
reproducible on re-runs (but I've yet to see one which depended on
build-flags, unless one gets different flags =/ on reruns which
wouldn't know about)

In controlled environments, one doesn't get to re-run a build, as the
instances are stripped-down and destroyed on build failure E.g. all
the jenkins instances running debian package builds, PPAs,
auto-package-tests, automated cross-builders. One would have to modify
each and every deployment of those...

Somehow we lived fine with verbose build-logs, until automake silent
rules and a few other build-systems started to become more silent. I
can understand the appeal of silent builds for upstream developers,
but it makes zero sense for a distribution or package maintainers or
our downstream.

Regards,

Dmitrijs.


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CANBHLUi1+Q8PVTJF2TvhGKBLQh-y=elhrzpuv-7ntjlypch...@mail.gmail.com



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

2013-08-13 Thread Adam Borowski
On Tue, Aug 13, 2013 at 08:30:16PM +0200, Dmitrijs Ledkovs wrote:
 In controlled environments, one doesn't get to re-run a build, as the
 instances are stripped-down and destroyed on build failure E.g. all
 the jenkins instances running debian package builds, PPAs,
 auto-package-tests, automated cross-builders. One would have to modify
 each and every deployment of those...
 
 Somehow we lived fine with verbose build-logs, until automake silent
 rules and a few other build-systems started to become more silent. I
 can understand the appeal of silent builds for upstream developers,
 but it makes zero sense for a distribution or package maintainers or
 our downstream.

Non-spammy builds are better for builds done by a human.
Spammy builds work around the inability to restart on a failure in automated
builds.

Trying to spot an irregularity can be really hard visually if you have half
a page of switches per every file.  With a terse build like:
  CC foo
  CC bar
  CC baz
  CC quux
  LD blah
any messages stand out.  And if a failure does happen, it's a matter of,
typically, make V=y.

Too bad you don't have this option on a buildd.

So I guess it would be best to put the threshold at automated vs
human-supervised builds.  What about setting the flag per-tool rather than
per-deployment?  For example, pbuilder would default to verbose (as you
can't restart builds) while dpkg-buildpackage in the absence of inherited
settings would default to terse.

This way we'd be spared the spam during development.

-- 
ᛊᚨᚾᛁᛏᚣ᛫ᛁᛊ᛫ᚠᛟᚱ᛫ᚦᛖ᛫ᚹᛖᚨᚲ


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130813191008.ga...@angband.pl



Re: jessie release goal: verbose build logs

2013-08-13 Thread Joey Hess
Joey Hess wrote:
 Making all builds verbose by default has both advantages and
 disadvantages.
 
 The disadvantages include making builds possibly so noisy that when one
 runs them during daily work, once ignores all output. Including
 important compiler warnings.
 
 (This is the same reason why it's a bad idea to let a codebase
 accumulate a lot of compiler warnings!)

At DebConf, Enrico came up with this idea: When the package is building
with the display going to the console, something could intercept the
stdout and convert \n to \r. Let stderr through untouched. The result
would be a build that makes it *very* easy to focus on the warnings, while
still providing a progress display of what is going on at any given
moment in the build.

I've attached a simple proof of concept you can try it out with building
your own packages.  For example:

   dpkg-buildpackage | ssh

(The implementation needs to be improved; it should read both stdout and
stderr and multiplex them properly. And it should check if stdout is not
to a TTY, and if so avoid munging the build log output. The only other
problem is that `make` outputs the lines it runs to stderr and so those
continue to pollute the build display.)

I'd like to see dpkg-buildpackage modified to use something like this by
default, because it would reduce the level of cruft we wade through
(often up to our eyeballs) when building packages, and allow
concentrating on what's important. At the same time, it allows adding as
verbose output as we like and getting that saved in the build logs for
when a detailed analysis is needed.

-- 
see shy jo
#!/usr/bin/perl
$|=1;
my $width=$ENV{COLUMNS} || 80;
while () {
chomp;
print substr($_, 0, $width - 1).(  x ($width - 1 - length $_)).\r;
}


signature.asc
Description: Digital signature


Re: jessie release goal: verbose build logs

2013-08-13 Thread Joey Hess
Joey Hess wrote:
 (The implementation needs to be improved; it should read both stdout and
 stderr and multiplex them properly. And it should check if stdout is not
 to a TTY, and if so avoid munging the build log output. The only other
 problem is that `make` outputs the lines it runs to stderr and so those
 continue to pollute the build display.)

Also it could save the whole log to someplace when minimizing the
console output, to refer back to. Perhaps ../$package_$version.buildlog
(which gets a step closer to including that in the dsc and uploading
local build logs..)

-- 
see shy jo


signature.asc
Description: Digital signature


Re: jessie release goal: verbose build logs

2013-08-13 Thread Russ Allbery
Joey Hess jo...@debian.org writes:
 Joey Hess wrote:

 (The implementation needs to be improved; it should read both stdout
 and stderr and multiplex them properly. And it should check if stdout
 is not to a TTY, and if so avoid munging the build log output. The only
 other problem is that `make` outputs the lines it runs to stderr and so
 those continue to pollute the build display.)

 Also it could save the whole log to someplace when minimizing the
 console output, to refer back to. Perhaps ../$package_$version.buildlog
 (which gets a step closer to including that in the dsc and uploading
 local build logs..)

debuild, pbuilder, and related packages currently use
../package_version_arch.build for this output.  Maybe the
lower-level build architecture should take over maintaining that log file
instead and those tools should be modified to assume that's already
happening and move that log file around like the other build products?

-- 
Russ Allbery (r...@debian.org)   http://www.eyrie.org/~eagle/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87siyd6xta@windlord.stanford.edu



Re: jessie release goal: verbose build logs

2013-07-05 Thread Matthias Klose
This is now documented at
http://wiki.debian.org/ReleaseGoals/VerboseBuildLogs


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/51d6afef.8060...@debian.org



Re: jessie release goal: verbose build logs

2013-06-22 Thread Michael Tautschnig
 On 14/06/2013 13:49, Wookey wrote:
  +++ Matthias Klose [2013-06-14 13:35 +0200]:
  Much more often than I do like it, I see bug reports for the toolchain just
  pointing to a build log.  Then looking at the build log, you often just see
 
   CC ...
   CCLD ... (sometimes even colorized)
 
 [...]
  I'll second this. Like Doko, I've spent way too much time recently(ish)
  staring at build-logs. The short-form build logs are often useless for
  working out why something isn't working, or comparing successful
  native builds with failed cross builds, for example.
 Same as Wookey. This would save me some time working on the analysis of
 rebuilds with clang.
 

Late, but still: I am also very much in favour of this, as the lack of full
command lines has already caused quite a bit of overhead in my experiments with
our goto-cc compiler infrastructure.

Best,
Michael



pgp8GGKBTjSqy.pgp
Description: PGP signature


Re: jessie release goal: verbose build logs

2013-06-17 Thread gregor herrmann
On Fri, 14 Jun 2013 14:14:39 +0200, Jakub Wilk wrote:

 - File and track issues for packages not enabling verbose builds.
 https://buildd.debian.org/~brlink/bytag/W-compiler-flags-hidden.html
 
 I attached a dd-list for the lazy. But note that false positives
 are possible, especially when building in parallel.
 
 Debian Perl Group pkg-perl-maintain...@lists.alioth.debian.org
libconvert-binary-c-perl

Fixed and uploaded.

libhtml-template-pro-perl

False positive.

libwx-scintilla-perl

Fixed in git. 


Cheers,
gregor

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer  -  http://www.debian.org/
 `. `'  Member of VIBE!AT  SPI, fellow of the Free Software Foundation Europe
   `-   NP: Bruce Springsteen: I'm Goin' Down


signature.asc
Description: Digital signature


Re: jessie release goal: verbose build logs

2013-06-16 Thread Julien Cristau
On Fri, Jun 14, 2013 at 14:14:39 +0200, Jakub Wilk wrote:

 Debian X Strike Force debia...@lists.debian.org
[long list]

Working on fixing these (adding --disable-silent-rules) as I update
them.  Will take a while though...

Cheers,
Julien


signature.asc
Description: Digital signature


jessie release goal: verbose build logs

2013-06-14 Thread Matthias Klose
Much more often than I do like it, I see bug reports for the toolchain just
pointing to a build log.  Then looking at the build log, you often just see

 CC ...
 CCLD ... (sometimes even colorized)

This doesn't really help when trying to diagnose things, and even for successful
builds it's valuable to have the complete build log, including the parts how the
upstream build system is called from the Debian packaging.

Verbose build logs allow to analyse package builds and give hints to more issues
regarding the build, especially for the hardening flags.  The lintian hardening
checks are incomplete, because they rely on the inspection of the generated
binaries, which may be incomplete especially for many plugins or dynamically
loadable extensions.

So I'm proposing for jessie:

 - File and track issues for packages not enabling verbose builds.
   https://buildd.debian.org/~brlink/bytag/W-compiler-flags-hidden.html

 - Fix debhelper not passing --disable-silent-rules by default.
   #680686
   I think cdbs already does this.

 - Fix debhelper to show how the upstream build system is called.
   #680687
   As an alternative buildds could run with DEB_BUILD_OPTIONS=verbose

 - Change Debian policy to recommend or require verbose build logs.
   #628515

This is not rocket science, but allows for almost free additional QA.  Size of
the build logs shouldn't be an issue, but if it is, I'm considering to disable
compiler warning and errors messages by default, unless
DEB_BUILD_OPTIONS=verbose is set.

  Matthias


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/51bb0006.4080...@debian.org



Re: jessie release goal: verbose build logs

2013-06-14 Thread Wookey
+++ Matthias Klose [2013-06-14 13:35 +0200]:
 Much more often than I do like it, I see bug reports for the toolchain just
 pointing to a build log.  Then looking at the build log, you often just see
 
  CC ...
  CCLD ... (sometimes even colorized)
 
 This doesn't really help when trying to diagnose things, and even for 
 successful
 builds it's valuable to have the complete build log, including the parts how 
 the
 upstream build system is called from the Debian packaging.

 So I'm proposing for jessie:
 
  - File and track issues for packages not enabling verbose builds.
https://buildd.debian.org/~brlink/bytag/W-compiler-flags-hidden.html
 
  - Fix debhelper not passing --disable-silent-rules by default.
#680686
I think cdbs already does this.
 
  - Fix debhelper to show how the upstream build system is called.
#680687
As an alternative buildds could run with DEB_BUILD_OPTIONS=verbose
 
  - Change Debian policy to recommend or require verbose build logs.
#628515

I'll second this. Like Doko, I've spent way too much time recently(ish)
staring at build-logs. The short-form build logs are often useless for
working out why something isn't working, or comparing successful
native builds with failed cross builds, for example.

Wookey
-- 
Principal hats:  Linaro, Emdebian, Wookware, Balloonboard, ARM
http://wookware.org/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130614114927.gx14...@stoneboat.aleph1.co.uk



Re: jessie release goal: verbose build logs

2013-06-14 Thread Emilio Pozuelo Monfort
Hi,

On 14/06/13 13:35, Matthias Klose wrote:
 Much more often than I do like it, I see bug reports for the toolchain just
 pointing to a build log.  Then looking at the build log, you often just see
 
  CC ...
  CCLD ... (sometimes even colorized)
 
 This doesn't really help when trying to diagnose things, and even for 
 successful
 builds it's valuable to have the complete build log, including the parts how 
 the
 upstream build system is called from the Debian packaging.
 
 Verbose build logs allow to analyse package builds and give hints to more 
 issues
 regarding the build, especially for the hardening flags.  The lintian 
 hardening
 checks are incomplete, because they rely on the inspection of the generated
 binaries, which may be incomplete especially for many plugins or dynamically
 loadable extensions.
 
 So I'm proposing for jessie:
 
  - File and track issues for packages not enabling verbose builds.
https://buildd.debian.org/~brlink/bytag/W-compiler-flags-hidden.html
 
  - Fix debhelper not passing --disable-silent-rules by default.
#680686
I think cdbs already does this.

It has done so since version 0.4.62 from 2009.

  - Fix debhelper to show how the upstream build system is called.
#680687
As an alternative buildds could run with DEB_BUILD_OPTIONS=verbose
 
  - Change Debian policy to recommend or require verbose build logs.
#628515

Completely agreed on everything. I thought this was already a requirement.

 This is not rocket science, but allows for almost free additional QA.  Size of
 the build logs shouldn't be an issue, but if it is, I'm considering to disable
 compiler warning and errors messages by default, unless
 DEB_BUILD_OPTIONS=verbose is set.

If size is an issue, xz-compression could probably help a lot.

Cheers,
Emilio


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/51bb0535.1080...@debian.org



Re: jessie release goal: verbose build logs

2013-06-14 Thread Sylvestre Ledru
On 14/06/2013 13:49, Wookey wrote:
 +++ Matthias Klose [2013-06-14 13:35 +0200]:
 Much more often than I do like it, I see bug reports for the toolchain just
 pointing to a build log.  Then looking at the build log, you often just see

  CC ...
  CCLD ... (sometimes even colorized)

[...]
 I'll second this. Like Doko, I've spent way too much time recently(ish)
 staring at build-logs. The short-form build logs are often useless for
 working out why something isn't working, or comparing successful
 native builds with failed cross builds, for example.
Same as Wookey. This would save me some time working on the analysis of
rebuilds with clang.

Thanks
Sylvestre


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/51bb0507.5070...@debian.org



Re: jessie release goal: verbose build logs

2013-06-14 Thread Sune Vuorela
On 2013-06-14, Jakub Wilk jw...@debian.org wrote:
 I attached a dd-list for the lazy. But note that false positives are 
 possible, especially when building in parallel.

I've just sample-checked 4 packages I'm involved in and 100% of those
four I checked was false positives.

We need a better detection.

But beside that, I agree with wanting verbose build logs.

/Sune


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/slrnkrm2nj.j8.nos...@sshway.ssh.pusling.com



Re: jessie release goal: verbose build logs

2013-06-14 Thread Timo Juhani Lindfors
Matthias Klose d...@debian.org writes:
 This doesn't really help when trying to diagnose things, and even for 
 successful
 builds it's valuable to have the complete build log, including the parts how 
 the
 upstream build system is called from the Debian packaging.

This is a useful goal. However, since fixing many different source
packages is a lot of work I recently explored some alternative
approaches. For example, with systemtap we can simply log all execve()
invocations complete with timing information and end up with fully
structured build logs.

Here's example output from the proof of concept from a few years ago:

http://lindi.iki.fi/lindi/structured-buildlogs/logs/hello-2.6-1_amd64.build

Don't take me wrong, I don't intend to replace any of the existing
infrastructure, I'm simply exploring new ways to (ab)use systemtap :-)


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/84y5aczv7c@sauna.l.org



Re: jessie release goal: verbose build logs

2013-06-14 Thread Rene Engelhard
Hi,

I completely agree on the goal and disable silent rules where I notice them,
but:

On Fri, Jun 14, 2013 at 01:35:34PM +0200, Matthias Klose wrote:
  - Change Debian policy to recommend or require verbose build logs.
#628515

Change buildds.

Do we have autosiging now for all buildds? TTBOMK one ia64 buildd maintainer
doesn't want it, so buildd log size restrictions block bigger logs
(and that will happen e.g. for LO, bddt).

That's why LO does verbose on normal build and not-verbose on the buildds.

Regards,

Rene


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130614140840.ga26...@rene-engelhard.de



Re: jessie release goal: verbose build logs

2013-06-14 Thread Paul Gevers
Hi

I agree we need good build logs.

On 14-06-13 14:14, Jakub Wilk wrote:
 * Matthias Klose d...@debian.org, 2013-06-14, 13:35:
 So I'm proposing for jessie:

 - File and track issues for packages not enabling verbose builds.
 https://buildd.debian.org/~brlink/bytag/W-compiler-flags-hidden.html
 
 I attached a dd-list for the lazy. But note that false positives are
 possible, especially when building in parallel.

False positives also happen for other compilers, at least for Free
Pascal. AIUI, that is why I show up in that list.

Paul



signature.asc
Description: OpenPGP digital signature


Re: jessie release goal: verbose build logs

2013-06-14 Thread Bernhard R. Link
* Matthias Klose d...@debian.org [130614 13:36]:
 Verbose build logs allow to analyse package builds and give hints to more 
 issues
 regarding the build, especially for the hardening flags.  The lintian 
 hardening
 checks are incomplete, because they rely on the inspection of the generated
 binaries, which may be incomplete especially for many plugins or dynamically
 loadable extensions.

While I agree that a build log without compiler arguments is essentially
worthless, could we please not call something that is not too silent
verbose? Verbose is something that uses more words as necessary, while
compiler options are neccessary, without them users of the software
cannot get help in forums or channels when they have problems compiling
the software and with build logs porters can often hardly help if the
old buildd log contains no information.

Bernhard R. Link


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20130614223601.gb3...@client.brlink.eu