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

Bug#516530: [unpack,reporting] support multiple sections



Russ Allbery wrote:
> 
> Oh, there was another patch in there on top of the previous one.  I'm
> used to that now, but that confused me previously.

Sorry for that.

> 
> However, now this patch doesn't apply at all.
> 
> error: patch failed: man/lintian.1:287
> error: man/lintian.1: patch does not apply
> error: patch failed: reporting/html_reports:517
> error: reporting/html_reports: patch does not apply
> error: patch failed: unpack/list-binpkg:85
> error: unpack/list-binpkg: patch does not apply
> error: patch failed: unpack/list-srcpkg:82
> error: unpack/list-srcpkg: patch does not apply
> error: patch failed: unpack/list-udebpkg:86
> error: unpack/list-udebpkg: patch does not apply
> 
> because of the renaming of section to area.  Could you rebase this patch
> on the current Git repository and resubmit it?

Sure, no problem.

> 
> In the process, I'd really rather not do this:
> 
> -.BR \-\-section " release"
> +.BR \-\-section " release[,release[,...]]"
>  When scanning for packages in the distdir, select only packages from
> -section
> +section(s)

Indeed, looks like I mixed all the names.

> 
> +my @packages =
> glob("$LINTIAN_ARCHIVEDIR/dists/$LINTIAN_DIST/{$LINTIAN_SECTION}/".
> +               "binary-$LINTIAN_ARCH/Packages");
> 
> I think this is a really weird use of glob, and this:
> 
> -    section      => $LINTIAN_SECTION,
> +    section      => join(', ', glob("{$LINTIAN_SECTION}")),
> 
> is particularly weird.  A comma-separated set of archive areas (which
> also aren't releases; the man page could use an update there as well) is
> a fine syntax, but let's not then treat that as a bash glob expression.

Ack.

> It's not that much harder to properly split apart the list of areas:
> 
>     my @areas = split(',', $areas);
>     my $base = "$LINTIAN_ARCHIVEDIR/dists/$LINTIAN_DIST";
>     my @packages = map { "$base/$_/binary-$LINTIAN_ARCH/Packages" }
>     @areas;
> 
> glob is not a frequently-used Perl function, and I think the above is a
> lot clearer and easier to understand than the glob version.  I expect
> glob to match files in the file system and only return matching files,
> and while that happens not to be the case for the {,} construct, it's
> really confusing to use glob for things where we want everything whether
> it exists in the file system or not.

I used glob because it was the simplest way to use brace expansion, but it's
ok, I will use split instead.

Cheers,
-- 
Raphael Geissert - Debian Maintainer
www.debian.org - get.debian.net





Reply to: