Hello Helmut,

> curl is transitioning from libssh2 to libssh.
> Since curl is required for
> architecture bootstrap, so will be libssh. That's significant, because
> you must be careful about your Build-Depends and avoid introducing
> cycles.

Ouch, that wasn't intended at all. There are currently no plans of
migrating to libssh.

We recently merged a commit[0] that would allow Ubuntu to remove its
delta due to the fact that they migrated to libssh already,

The changes don't affect Debian's curl binaries, since libssh is not
used in Debian's build. Though I didn't realise having it in
Build-Depends would pose a problem to bootstrap (which makes sense).

> Speaking of Build-Depends, libssh has some that are
> inappropriate for architecture bootstrap and needs to be updated. There
> are two aspects. For one thing, Build-Depends of packages involved in
> architecture bootstrap must be real. No virtual packages are allowed,
> because provides are computed at build-time and we have no way of
> figuring out which source package is going to build a binary package
> that provides a particular virtual package. This affects the libz-dev
> dependency. I suggest updating it to zlib1g-dev | libz-dev (i.e. telling
> the preferred provider). This leaves the full flexibility and avoids the
> issue with virtual packages. The other is excessive dependencies for
> testing. I figured that all of libcmocka-dev, openssh-client,
> openssh-server and python3:any are only required for running tests. As
> such, they can all be annotated <!nocheck>. Any dependency thus
> annotated becomes fully irrelevant to architecture bootstrap. In other
> words, you don't have to keep this bootstrap stuff in mind when you add
> test dependencies annotated with <!nocheck>. I'm attaching a patch for
> your convenience and hope it is going to be fine.

All of these changes sound like something we should do at some point
in time anyway, but we can surely revert the curl changes to allow
people to enjoy their holidays/end of the year.

> Given that the curl
> maintainers already added the libssh-dev dependency without consulting
> it first, there is urgency. Architecture bootstrap is presently broken
> for all architectures due to that change. Please upload the change
> quickly. If you lack the time to do it, I can NMU it.

I'm sorry you had to do this, Helmut, and I appreciate your descriptiveness.
I'm not familiar with how frequent people are doing architecture
bootstraps on Debian, so would you like me to revert that specific
change?
I can surely do it with no problem, I'm asking because you already
have a debdiff and now you might say it's ok to wait for an NMU
(again, I don't know how grave it would be to block bootstraping in
the meanwhile).

I also don't wanna give you more work than you already have, so if you
don't reply soon (+/-18h), I will go ahead with the revert (since this
is the safest approach).

[0] https://salsa.debian.org/debian/curl/-/merge_requests/12

Thank you,


--
Samuel Henrique <samueloph>

Reply via email to