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

RFC: Changing default source tarball ignores



Hi!

In #735377, Peter Green makes a good case of why ignoring (at least)
object files is not a good default for source packages, mentioning:

 * inconsitency between 1.0 and >= 2.0 formats, creating surprise.
 * if they need to be shipped, they are silently ignored, which makes
   their absence non-obvious.
 * if not, these should really be taken care of by the clean target.

As mentioned on the bug report, I've to agree with that, and in
addition I see, at least these other problems:

 * the current list of object patterns is very incomplete anyway.
 * removing just one of the patterns, makes keeping up with the
   default list very annoying.

I've not been particularly happy with the regex and pattern ignore
option behaviours either. First I'm going to try to improve these,
by adding something like «--tar-(un)ignore-type=vcs,backup» or
similar, a way to unignore specific wildcards with something like
«--tar-unignore=*.git», and probably a way to completely reset the
ignores for 1.17.7.

But, if people do not have strong reasons against, I'd like to remove
the following object related wildcards from the default tar-ignore set
as well:

  *.a
  *.la
  *.o
  *.so
  *.deps

but obviously that might cause regressions if packages do not properly
cleanup the source tree. This could affect tarballs for 3.0 (native)
sources, or the debian/ packaging tarballs for 3.0 (quilt) sources.
In principle, I'd not expect much breakage, but it would be nice to
know beforehand, ideally by an archive-wide rebuild. I supposed it
would be enough to build every binary package, clean the source, and
then build the source packages, and compare any file list differences.
Would any one volunteer? Peter? At least to do the build, I can easily
provide modified dpkg packages, and the recipes for the check, I guess.

Thanks,
Guillem


Reply to: