On Fri, Oct 30, 2015 at 11:05 AM, Tom Breloff <[email protected]> wrote:
> Thanks... after reading through that again, let me adjust my scenario:
>
> Package A's require:
>
> julia 0.4
> C 0.1 0.2-
>
> Package B's require:
>
> julia 0.4
> C 0.3
>
> What version of C is installed?  Package A want any version 0.1.x, Package B
> wants any version 0.3.x or greater.  Who "wins"?

I'd be surprised if you don't get an error.

>
> On Fri, Oct 30, 2015 at 10:28 AM, Yichao Yu <[email protected]> wrote:
>>
>> On Fri, Oct 30, 2015 at 10:18 AM, Tom Breloff <[email protected]> wrote:
>> > I'm very confused about how Pkg resolution works in 0.4, and I couldn't
>> > find
>> > a definitive source of details.  If package A has the REQUIRE file:
>> >
>> > julia 0.4
>> > C 0.1
>> >
>>
>> This means version 0.1 or higher for C
>>
>> >
>> > and package B has the REQUIRE file:
>> >
>> > julia 0.4
>> > C 0.2
>> >
>>
>> This means version 0.2 or higher for C
>>
>> >
>> > which version of C is installed?  Does it change if you do a
>> > Pkg.add("C")?
>> > What determines which package "wins"?
>>
>> The latest available that is compatible with everything else.
>>
>> Note to specify the upper bound, use `C lower_version upper_version`
>>
>> >
>> > Bonus question: can someone point me to documentation on exactly what
>> > the
>> > plus/minus mean?  What's the difference between `0.1`, `0.1-`, and
>> > `0.1+`?
>>
>> - and + are for prerelease and build
>>
>> ```
>> julia> v"0.1-2+3".prerelease
>> (2,)
>>
>> julia> v"0.1-2+3".build
>> (3,)
>> ```
>>
>> >
>> > Bonus question: how does the logic change with the new package manager?
>> > (if
>> > at all)
>>
>> nothing
>>
>> >
>> > Bonus question: is there an open issue/PR that discusses potential
>> > future
>> > changes to METADATA and package management?
>> >
>> > Thanks!
>>
>> Ref
>> http://julia.readthedocs.org/en/latest/manual/packages/#require-speaks-for-itself
>
>

Reply via email to