I hate to have to say "RTFM" about this so often, but see
http://docs.julialang.org/en/release-0.4/manual/strings/#version-number-literals.
The trailing dash means including prereleases of the given version.
(Considering how unintuitive this is we should probably transition to
something clearer when we redesign Pkg.) The first number given is an
inclusive lower bound, and if a second number is given then it's an
exclusive upper bound.
I see a few packages applying upper bounds to ForwardDiff, and a few to
MathProgBase and ReverseDiffSparse. I may have missed something (were these
taken from METADATA or the package directory? It should be the former,
sorry if I didn't say as much - METADATA can be changed after-the-fact but
tagged package content can't) but those don't look like they would conflict.
On Tuesday, September 6, 2016 at 10:03:27 AM UTC-7, Tim Wheeler wrote:
>
> I wrote the script and put the output in the attached file.
>
> I assume that the '-' at the end of a dep is an upperbound?
>
> On Tuesday, September 6, 2016 at 9:35:46 AM UTC-7, Tim Wheeler wrote:
>>
>> Ok, will do!
>>
>> On Tuesday, September 6, 2016 at 9:31:25 AM UTC-7, Tony Kelman wrote:
>>>
>>> There's a bug somewhere with that error message, I've seen it points at
>>> the wrong package. If we can come up with a reproducible test case here
>>> it'll help for fixing the bug and making that message more useful.
>>>
>>> It's almost certainly not Compat (I don't think anyone has ever added an
>>> upper bound to a Compat dependency). Perhaps loop over Pkg.installed() and
>>> display the contents of the REQUIRE file for the specific tags you have
>>> currently installed, see who is upper-bounding each other? We do need
>>> better tools for debugging this kind of thing to make it easier to figure
>>> out what the dependency resolver is doing, which bound constraints are
>>> active etc.
>>>
>>>
>>> On Tuesday, September 6, 2016 at 9:25:53 AM UTC-7, Tim Wheeler wrote:
>>>>
>>>> Okay - I removed GaussianMixtures and now it is complaining about
>>>> Compat.
>>>>
>>>> ERROR: unsatisfiable package requirements detected: no feasible version
>>>> could be found for package: Compat
>>>>
>>>> I wrote a script to run through all package REQUIRE files and print out
>>>> the Compat line, if any. None of these found anything specifying an
>>>> upper-bound.
>>>>
>>>> I would like to find the offending packages. Is there a good way to go
>>>> about doing this?
>>>>
>>>> Thank you.
>>>>
>>>> ArgParse: Compat 0.7.3
>>>> ArrayViews: Compat
>>>> AutomotiveDrivingModels: Compat 0.8
>>>> AxisAlgorithms: Compat 0.8
>>>> BayesNets: Compat
>>>> BinDeps: Compat 0.8.4
>>>> Blink: Compat 0.8.6
>>>> Blosc: Compat 0.8
>>>> BufferedStreams: Compat 0.8.4
>>>> Cairo: Compat 0.8.0
>>>> Calculus: Compat 0.4.0
>>>> Codecs: Compat 0.7.20
>>>> Colors: Compat 0.8.0
>>>> Compose: Compat 0.8.0
>>>> Conda: Compat 0.8
>>>> ConjugatePriors: Compat 0.4.0
>>>> Contour: Compat 0.8.0
>>>> DataArrays: Compat 0.8.6
>>>> DataFrames: Compat 0.8
>>>> Debug: Compat
>>>> Discretizers: Compat
>>>> Distances: Compat 0.8.4
>>>> Distributions: Compat 0.4.0
>>>> Docile: Compat 0.7.1
>>>> FastAnonymous: Compat
>>>> FileIO: Compat 0.7.19
>>>> FixedPointNumbers: Compat 0.7.14
>>>> FixedSizeArrays: Compat 0.8.7
>>>> Formatting: Compat
>>>> ForwardDiff: Compat 0.8.6
>>>> Gadfly: Compat 0.8.5
>>>> Glob: Compat
>>>> Graphs: Compat 0.7.16
>>>> Gtk: Compat 0.8.0
>>>> GtkUtilities: Compat 0.7.16
>>>> GZip: Compat 0.8.0
>>>> HDF5: Compat 0.8.0
>>>> Hexagons: Compat
>>>> Hiccup: Compat 0.8.2
>>>> HttpCommon: Compat 0.7.20
>>>> HttpParser: Compat 0.7.20
>>>> HttpServer: Compat 0.7.16
>>>> IJulia: Compat 0.7.20
>>>> ImageMagick: Compat 0.7.7
>>>> Images: Compat 0.8.4
>>>> ImageView: Compat 0.4.6
>>>> IniFile: Compat 0.7.4
>>>> Interact: Compat 0.7
>>>> Interpolations: Compat 0.8.0
>>>> Ipopt: Compat 0.8.0
>>>> Iterators: Compat
>>>> JLD: Compat 0.8.0
>>>> JSON: Compat 0.8.4
>>>> JuMP: Compat 0.8.6
>>>> KernelDensity: Compat
>>>> LaTeXStrings: Compat 0.8.0
>>>> Lazy: Compat 0.8.0
>>>> LegacyStrings: Compat 0.8.4
>>>> Libz: Compat 0.8.0
>>>> LightXML: Compat 0.8.3
>>>> Lint: Compat 0.8.2
>>>> Loess: Compat 0.8.4
>>>> MacroTools: Compat
>>>> MathProgBase: Compat 0.7.13
>>>> MbedTLS: Compat 0.8.0
>>>> MLBase: Compat
>>>> MultivariateStats: Compat 0.8.4
>>>> Mustache: Compat 0.7.18
>>>> NBInclude: Compat 0.7.9
>>>> Nettle: Compat 0.8.0
>>>> NLopt: Compat 0.8
>>>> Optim: Compat 0.8.4
>>>> ParserCombinator: Compat 0.7.12
>>>> PDMats: Compat
>>>> PGFPlots: Compat 0.8.0
>>>> PlotlyJS: Compat 0.7.16
>>>> Plots: Compat
>>>> PositiveFactorizations: Compat 0.8.4
>>>> ProfileView: Compat 0.8.0
>>>> PyCall: Compat 0.7.1
>>>> PyPlot: Compat 0.4
>>>> Ratios: Compat
>>>> RDatasets: Compat
>>>> Reactive: Compat
>>>> Reel: Compat
>>>> Requests: Compat 0.8.0
>>>> ReverseDiffSparse: Compat 0.8.6
>>>> SHA: Compat 0.7.9
>>>> Showoff: Compat
>>>> SIUnits: Compat
>>>> SortingAlgorithms: Compat 0.8.4
>>>> StatsBase: Compat 0.8.4
>>>> StatsFuns: Compat 0.7.18
>>>> Sundials: Compat
>>>> SymPy: Compat 0.4
>>>> TexExtensions: Compat
>>>> TextWrap: Compat 0.7.15
>>>> TikzGraphs: Compat
>>>> TikzPictures: Compat 0.8.0
>>>> Tk: Compat 0.4.6
>>>> URIParser: Compat 0.8.0
>>>> VideoIO: Compat 0.8.7
>>>> WebSockets: Compat 0.7.16
>>>> Winston: Compat 0.4.4
>>>> WoodburyMatrices: Compat
>>>> Zlib: Compat
>>>> ZMQ: Compat 0.8.0
>>>>
>>>>
>>>>
>>>> On Tuesday, September 6, 2016 at 8:40:37 AM UTC-7, Chris Rackauckas
>>>> wrote:
>>>>>
>>>>> Maybe one of its dependencies has a maximum version requirement?
>>>>>
>>>>> On Tuesday, September 6, 2016 at 8:38:01 AM UTC-7, Tim Wheeler wrote:
>>>>>>
>>>>>> Okay, this is a little weird.
>>>>>>
>>>>>> If I run the following it looks like the culprit is a dirty package:
>>>>>>
>>>>>> julia> Pkg.checkout("Distributions")
>>>>>> INFO: Checking out Distributions master...
>>>>>> INFO: Pulling Distributions latest master...
>>>>>> WARNING: Distributions is fixed at 0.10.1+ conflicting with
>>>>>> requirement for GaussianMixtures: [0.0.0,0.10.0)
>>>>>>
>>>>>> The weird thing is that the REQUIRE file for GaussianMixtures does
>>>>>> not mention the 0.10.1+
>>>>>>
>>>>>> julia 0.3
>>>>>> Clustering
>>>>>> Distributions
>>>>>> PDMats
>>>>>> Compat
>>>>>> JLD
>>>>>>
>>>>>> Where does that come from?
>>>>>>
>>>>>>
>>>>>> On Tuesday, September 6, 2016 at 8:31:44 AM UTC-7, Tim Wheeler wrote:
>>>>>>>
>>>>>>> Hi Julia Users,
>>>>>>>
>>>>>>> I just noticed something a little weird. I am using Distributions.jl
>>>>>>> (great package btw) in Julia 0.4.6 on Ubuntu, and it is listed in
>>>>>>> Pkg.status() as a required package:
>>>>>>>
>>>>>>> Distributions 0.8.9
>>>>>>>
>>>>>>> I checked on METADATA and on the Distributions.jl github - there is
>>>>>>> a more recent version. In fact, there are several more recent versions.
>>>>>>>
>>>>>>> I ran Pkg.update(), which updated some things but did not change
>>>>>>> Distributions.jl. Am I missing something? Is there some package that
>>>>>>> requires Distributions be less-than-current?
>>>>>>>
>>>>>>> Thank you,
>>>>>>> -Tim
>>>>>>>
>>>>>>