Tom Mueller (pkg-discuss) wrote: > Please see inline. > Nicholas Solter wrote: >> I have a few more questions on dependencies, while we're on the topic: >> >> Suppose a package A has a require dependency on package B (branch) >> version X. Consider the following scenarios: >> >> 1. If neither A nor B is installed, and the user installs A, B will >> also be installed. If X is the highest version of B in the repo, then >> I presume version X will be installed. Are there any scenarios where a >> lower version of B would actually be installed? (say if B is part of >> an incorporation that's at a lower version, or some other scenario)? >> > If at least version X can't be installed, then that's an error and the > install of B will fail. >> 2. If there is a higher version (X+1) of B in the repo, and the user >> installs A then will version X or version X+1 of B be installed? >> > Version X. See issue 5015. > >> 3. Suppose A and B (version X) are installed on the cluster. Now >> suppose there's a version X+1 of B in the repo. Will the user be >> allowed to pkg install version X+1 of B even though it violates the >> version dependency specifies by A? >> > Yes. The type=require dependency specifies a minimum version, not an > exact version. So installing version X+1 doesn't violate the version > dependency. >> 4. Same scenario as 3, but suppose the user runs image-update. Will >> this upgrade B to version X+1 even though that violates the version >> dependency? >> > Yes. But as above, it doesn't violate the version dependency. >> General question: Is there any way to specify that a package depends >> on a version range (including an open-ended range on either side)? >> > The type=require is supposed to be a minimum dependency, but as > described in issue 5015 and 5016, it doesn't permit all possible cases > yet. The incorporate dependency is a min and max dependency. There > isn't any maximum-only dependency specification. Maybe that is what > type=exclude is supposed to do. Bart? >
Thanks, Tom. My understanding is that incorporate is only an optional dependency, though. Is there any way to get a required dependency with both a max and a min? Thanks, Nick > Tom > > >> Thanks, >> Nick >> _______________________________________________ >> pkg-discuss mailing list >> [email protected] >> http://mail.opensolaris.org/mailman/listinfo/pkg-discuss >> > _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
