Bug#1041758: libcudf-dev is not installable due to bogus janitor change

2023-07-23 Thread Sven Joachim
On 2023-07-23 10:57 +0300, Adrian Bunk wrote:

> On Sun, Jul 23, 2023 at 09:03:24AM +0200, Sven Joachim wrote:
>> On 2023-07-23 09:37 +0300, Adrian Bunk wrote:
>>
 > I haven't checked whether the replacement package names are correct,
>> > but the = dependences hardcoded in debian/control are clearly wrong.
>>
>> Hardcoding a dependency on libtinfo6 is also wrong, but libncurses-dev
>> is indeed the successor of libncurses5-dev.
>
> I think the root cause is that the janitor did an automatic and
> incorrect replacement based on the transitional package in buster:
>
> Package: libncurses5-dev
> Version: 6.1+20181013-2+deb10u2
> Depends: libtinfo6 (= 6.1+20181013-2+deb10u2), libncurses-dev (= 
> 6.1+20181013-2+deb10u2)
>
> libncurses5-dev depending on libtinfo6 might be unnecessary since
> libncurses-dev already depends on it, but that doesn't make it bogus.

That dependency was created by dh_link, since
/usr/share/doc/libncurses5-dev was a symlink to libtinfo6.  I could have
used libncurses-dev as target of the symlink instead and thereby avoid a
direct dependency on libtinfo6 at the cost of slightly complicating
debian/rules, but that is moot now.

> Using = dependencies in a transitional package is unusual but not
> incorrect when these packages are built from the same source package.

Again, the /usr/share/doc symlink forced a strict dependency anyway.

> The dependency of libncurses5-dev could therefore likely be simplified to
>   Depends: libncurses-dev

That is correct.

> but the problem is seems to that the janitor does not have a sanity check
> to refuse a replacement.
>
> I see two bugs in the janitor here:
>
> 1. >= or >> dependencies in the replacement are OK, = dependencies are not.
> <= or << dependencies should likely also be refused since they should
> be checked by a human.
>
> 2. Dependencies on two packages are usually a package split, automatic
> replacement works but might often be wrong for the different reason that
> it creates too many dependencies.

Agreed.

Cheers,
   Sven



Bug#1041758: libcudf-dev is not installable due to bogus janitor change

2023-07-23 Thread Adrian Bunk
On Sun, Jul 23, 2023 at 09:03:24AM +0200, Sven Joachim wrote:
> On 2023-07-23 09:37 +0300, Adrian Bunk wrote:
> 
> > Package: libcudf-dev
> > Version: 0.10-1
> > Severity: serious
> > X-Debbugs-Cc: team+jani...@tracker.debian.org
> >
> > The following packages have unmet dependencies:
> >  libcudf-dev : Depends: libtinfo6 (= 6.1+20181013-2+deb10u2) but 
> > 6.4+20230625-1 is to be installed
> >Depends: libncurses-dev (= 6.1+20181013-2+deb10u2) but 
> > 6.4+20230625-1 is to be installed
> >
> > This is due to:
> >
> > https://salsa.debian.org/ocaml-team/cudf/-/merge_requests/2
> >
> > cudf (0.10-1) unstable; urgency=medium
> > ...
> >   [ Debian Janitor ]
> > ...
> >* Remove constraints unnecessary since buster (oldstable):
> >  + libcudf-dev: Replace dependency on transitional package 
> > libncurses5-dev
> >with replacement libtinfo6 (= 6.1+20181013-2+deb10u2), 
> > libncurses-dev (=
> >6.1+20181013-2+deb10u2) in Depends.
> > ...
> >
> >
> > I haven't checked whether the replacement package names are correct,
> > but the = dependences hardcoded in debian/control are clearly wrong.
> 
> Hardcoding a dependency on libtinfo6 is also wrong, but libncurses-dev
> is indeed the successor of libncurses5-dev.

I think the root cause is that the janitor did an automatic and 
incorrect replacement based on the transitional package in buster:

Package: libncurses5-dev
Version: 6.1+20181013-2+deb10u2
Depends: libtinfo6 (= 6.1+20181013-2+deb10u2), libncurses-dev (= 
6.1+20181013-2+deb10u2)

libncurses5-dev depending on libtinfo6 might be unnecessary since 
libncurses-dev already depends on it, but that doesn't make it bogus.

Using = dependencies in a transitional package is unusual but not 
incorrect when these packages are built from the same source package.

The dependency of libncurses5-dev could therefore likely be simplified to
  Depends: libncurses-dev
but the problem is seems to that the janitor does not have a sanity check
to refuse a replacement.

I see two bugs in the janitor here:

1. >= or >> dependencies in the replacement are OK, = dependencies are not.
<= or << dependencies should likely also be refused since they should 
be checked by a human.

2. Dependencies on two packages are usually a package split, automatic
replacement works but might often be wrong for the different reason that 
it creates too many dependencies. 

> Cheers,
>Sven

cu
Adrian



Bug#1041758: libcudf-dev is not installable due to bogus janitor change

2023-07-23 Thread Sven Joachim
On 2023-07-23 09:37 +0300, Adrian Bunk wrote:

> Package: libcudf-dev
> Version: 0.10-1
> Severity: serious
> X-Debbugs-Cc: team+jani...@tracker.debian.org
>
> The following packages have unmet dependencies:
>  libcudf-dev : Depends: libtinfo6 (= 6.1+20181013-2+deb10u2) but 
> 6.4+20230625-1 is to be installed
>Depends: libncurses-dev (= 6.1+20181013-2+deb10u2) but 
> 6.4+20230625-1 is to be installed
>
> This is due to:
>
> https://salsa.debian.org/ocaml-team/cudf/-/merge_requests/2
>
> cudf (0.10-1) unstable; urgency=medium
> ...
>   [ Debian Janitor ]
> ...
>* Remove constraints unnecessary since buster (oldstable):
>  + libcudf-dev: Replace dependency on transitional package libncurses5-dev
>with replacement libtinfo6 (= 6.1+20181013-2+deb10u2), libncurses-dev 
> (=
>6.1+20181013-2+deb10u2) in Depends.
> ...
>
>
> I haven't checked whether the replacement package names are correct,
> but the = dependences hardcoded in debian/control are clearly wrong.

Hardcoding a dependency on libtinfo6 is also wrong, but libncurses-dev
is indeed the successor of libncurses5-dev.

Cheers,
   Sven



Bug#1041758: libcudf-dev is not installable due to bogus janitor change

2023-07-22 Thread Adrian Bunk
Package: libcudf-dev
Version: 0.10-1
Severity: serious
X-Debbugs-Cc: team+jani...@tracker.debian.org

The following packages have unmet dependencies:
 libcudf-dev : Depends: libtinfo6 (= 6.1+20181013-2+deb10u2) but 6.4+20230625-1 
is to be installed
   Depends: libncurses-dev (= 6.1+20181013-2+deb10u2) but 
6.4+20230625-1 is to be installed

This is due to:

https://salsa.debian.org/ocaml-team/cudf/-/merge_requests/2

cudf (0.10-1) unstable; urgency=medium
...
  [ Debian Janitor ]
...
   * Remove constraints unnecessary since buster (oldstable):
 + libcudf-dev: Replace dependency on transitional package libncurses5-dev
   with replacement libtinfo6 (= 6.1+20181013-2+deb10u2), libncurses-dev (=
   6.1+20181013-2+deb10u2) in Depends.
...


I haven't checked whether the replacement package names are correct,
but the = dependences hardcoded in debian/control are clearly wrong.