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

Re: Bug#1085942: librust-lazy-regex-dev: Provide the librust-lazy-regex+$feature-dev packages



Thanks for the clarification Jonas. I still struggle to see the logic in it (at least as it would apply to the default feature, I could make sense out of it for other features), but there's no point in arguing. As a Debian developer you have, of course, absolute freedom over how you decide to manage your own packages.

> but also I don't see that I am stopping you from such practice: Simply declare an equally nonsense dependency *without* including feature - e.g. like this:
>
> Depends: librust-lazy-regex-dev (>= 2)

You are not, but 'Depends: librust-lazy-regex-dev (>= 2)' is not a thing at this time, with current tooling, unless manually overriding d/control, which comes with extra burden for the maintainers (read this as: I'm not going to ask it to the maintainers as the outcome of this discussion). debcargo automatically Depends on 'librust-lazy-regex+default-dev (>= 2)'. Such tooling is based on the policy that the Rust Team has set for the Provides field of Rust library packages [1], which requires (as in "MUST") those packages to be provided as virtual packages.

Given that

> I am arguing that if the Rust team wants to bind to "whatever API lazy-regex throws at it for any arbitrary major version of the crate", then I will not take part of that nonsense

please close this bug as won't fix unless you have a reason not to.


To the Rust Team: please note that because of the packaging choice of not providing unversioned feature packages (not even for the default feature), with the current tooling, depending on lazy-regex as 'lazy-regex = ">=2"' or similar in Cargo.toml -- that is, only using the major version and with the intention of also picking up higher major versions -- is utterly useless within debcargo-conf. The transition will have to proceed by touching all 13 packages in debcargo-conf that depend on librust-lazy-regex-dev [2], instead of the two that currently have a versioned dependency.



[1] https://rust-team.pages.debian.net/book/policy.html#provides-field
[2] E.g. using 'lazy-regex = "=3"' in Cargo.toml and uploading to experimental instead of only triggering binNMUs when appropriate.


Reply to: