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

Re: [Dose-devel] Make ocaml-best-compilers non-virtual



Hi ,

On Fri, Nov 04, 2016 at 01:32:50AM +0200, Johannes Schauer wrote:

> Consider the following EDSP input which represents the core of the situation we
> are talking about:
> 
> --%<--------------------------------------------------
> Request: EDSP 0.5
> Install: sbuild-build-depends-ocamlbuild-dummy:amd64
> Strict-Pinning: no
> 
> Package: sbuild-build-depends-ocamlbuild-dummy
> Architecture: amd64
> Version: 0.invalid.0
> APT-ID: 52830
> APT-Pin: 500
> Depends: ocaml-best-compilers (>= 4.03.0)
> 
> Package: ocaml-native-compilers
> Architecture: amd64
> Version: 4.03.0-5
> APT-ID: 53875
> APT-Pin: 1
> Provides: ocaml-best-compilers (= 4.03.0-5)
> 
> Package: ocaml-native-compilers
> Architecture: amd64
> Version: 4.02.3-7+b1
> APT-ID: 34663
> APT-Pin: 500
> Provides: ocaml-best-compilers
> -->%--------------------------------------------------
> 
> With the above in /tmp/dump.edsp I get:
> 
> $ apt-cudf -v --solver=aspcud -c "-removed,-changed,-new" /tmp/dump.edsp
> Install: 34663
> Package: ocaml-native-compilers
> Version: 4.02.3-7+b1
> Architecture: amd64
> 
> Install: 52830
> Package: sbuild-build-depends-ocamlbuild-dummy
> Version: 0.invalid.0
> Architecture: amd64

thanks for having investigated that. I can imagine what happenend: The 
semantics of CUDF says that a virtual package without a version
satisfies a dependency on it with *any* version constraint, that is
a virtual package without a version can be thought of as having any
possible version.

That explains to me why the translation to CUDF is that way: it simply
mirrors the semantics of CUDF.

Now, whether this is a bug or not is difficult to say. We don't have any
document that specifies what is supposed to happen in this situation.
I am not sure whether the current behaviour of apt should be taken as
the final word.

-Ralf.


Reply to: