Bug#1100674: Subject: pkg-perl-tools: please stop Suggesting: cdbs

Alexandre Detiste alexandre.detiste at gmail.com
Tue Aug 19 07:26:45 BST 2025


I let the dust a little rest before replying. So far so good.

Le jeu. 14 août 2025, 14:24, gregor herrmann <gregoa at debian.org> a écrit :

> On Tue, 12 Aug 2025 21:07:46 +0200, Alexandre Detiste wrote:
>
> Let's have a look:
>
> > diff --git a/lib/Debian/PkgPerl/Util.pm b/lib/Debian/PkgPerl/Util.pm
> > index c670425..a51d9c9 100644
> > --- a/lib/Debian/PkgPerl/Util.pm
> > +++ b/lib/Debian/PkgPerl/Util.pm
>

Indeed, maybe some proprietary tooling import this library, no need to
needlessly break their workflow

Now for the other cases:
>
> > diff --git a/examples/mass-commit b/examples/mass-commit
> > index 5ccb3a8..5f5e945 100755
> > --- a/examples/mass-commit
> > +++ b/examples/mass-commit
> > @@ -11,7 +11,6 @@
> >
> > set -eu
> >
> > -CDBS=0
> > DEBUG=0
> >
> > usage() {
> > @@ -20,7 +19,6 @@ usage() {
> >     echo
> >     echo "  Parameters:"
> >     echo "  -h    help"
> > -    echo "  -c    exclude CDBS packages"
> >     echo "  -d    debug / dry-run"
> >     exit 0
> > }
> > @@ -56,9 +54,6 @@ die() {
> >
> > while getopts cdh OPT; do
> >     case "$OPT" in
> > -        c)
> > -            CDBS=1
> > -            ;;
> >         d)
> >             DEBUG=1
> >             ;;
> > @@ -79,9 +74,6 @@ for PKG in $(ls -1d */ | sed -e 's:/$::') ; do
> >     dh_testdir  || { skip "$PKG doesn't look like a debian package.";
> > continue; }
> >     [ -d .git ] || { skip "No .git directory in $PKG."; continue; }
> >     git checkout master
> > -    if [ "$CDBS" = "1" ] ; then
> > -        grep -q cdbs debian/control && { skip "Skipping CDBS package
> > $PKG."; continue; }
> > -    fi
> >
> >     # start real work
> >     # ADJUSTME start
> > diff --git a/scripts/new-upstream b/scripts/new-upstream
> > index f72db5e..0067777 100755
> > --- a/scripts/new-upstream
> > +++ b/scripts/new-upstream
> > @@ -115,7 +115,6 @@ foreach (@newupstream) {
> >         unless -f $controlfile;
> >     my $control       = Dpkg::Control::Info->new($controlfile);      #
> > Dpkg::Control object
> >     my $build_depends = $control->get_source()->{'Build-Depends'};   #
> string!
> > -    my $cdbs          = $build_depends =~ /cdbs/m;
> >
> >     # categorize new upstream releases
> >     my $pkg = {
> > @@ -127,13 +126,12 @@ foreach (@newupstream) {
> >     push @{ $new_categorized->{'ignore-version'} }, $pkg if
> $ignore_version;
> >     push @{ $new_categorized->{'waits-for'} },      $pkg if $waits_for;
> >     push @{ $new_categorized->{'problem'} },        $pkg if $problem;
> > -    push @{ $new_categorized->{'cdbs'} },           $pkg if $cdbs;
> >     push @{ $new_categorized->{'default'} },        $pkg
> > -        unless ( $ignore_version or $waits_for or $problem or $cdbs );
> > +        unless ( $ignore_version or $waits_for or $problem );
> >
> > }
> >
> > -my @categories = (qw/default cdbs problem ignore-version waits-for/);
> > +my @categories = (qw/default problem ignore-version waits-for/);
> > foreach (@categories) {
> >     my $category = $_;
> >     next unless defined( $new_categorized->{$category} );
>

For historical reasons both examples/mass-commit and dpt-new-upstream
> either allow one to or unconditionally special-case packages using
> cdbs. The resaon for this is that there was a strong correlation
> between preference for using cdbs and preference for using specific
> other packaging styles, and it made sense (to me) to exempt them from
> routine updates and common changes. -- Not sure if this still is the
> case but OTOH this special casing also doesn't cause any harm and is
> no active promotion of cdbs. -- On yet another other hand :) if there
> are (soon) no more cdbs packages it also has no function within the
> team anymore.


The goal is that soonish the only packages left using CDBS will be the one
from the Haskell monorepo.

They use their own tooling for mass-changes.

The other CDBS-using packages have been mostly neglected for a very long
time and need a complete overall.

So I think this has no function for Debian as a whole. If they were
proprietary mass user of CDBS I d be sorry for them but they have two more
years from now to adapt.

I m myself a mass user of little known of dh-cruft (writen in Perl) in my
own proprietary Debian derivative, so this kind of scenario is not totaly
impossible... but well.

The cleansing of old Python libraries in Debian did broke some external
Calibre plugins, that happens all the time. A well curated distribution
should lead the way and don't encourage users to depends forever on
abandonned tech.

Have a nice day
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-perl-maintainers/attachments/20250819/b0ac6618/attachment.htm>


More information about the pkg-perl-maintainers mailing list