Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Listing versions in REQUIRE #14

Closed
dmbates opened this issue Nov 3, 2014 · 3 comments
Closed

Listing versions in REQUIRE #14

dmbates opened this issue Nov 3, 2014 · 3 comments

Comments

@dmbates
Copy link
Contributor

dmbates commented Nov 3, 2014

I think your version specification in the REQUIRE file should be more vague. As it stands, installing Mamba causes downgrading of other packages.

julia> Pkg.add("Mamba")
INFO: Cloning cache of Mamba from git://github.com/brian-j-smith/Mamba.jl.git
INFO: Downgrading Color: v0.3.10 => v0.3.8
INFO: Downgrading Distributions: v0.5.8 => v0.5.6
INFO: Installing Graphs v0.4.3
INFO: Installing Mamba v0.3.7
INFO: Downgrading PDMats: v0.3.0 => v0.2.5
INFO: Removing Compat v0.1.0
INFO: Package database updated
INFO: METADATA is out-of-date — you may not have the latest version of Mamba
INFO: Use `Pkg.update()` to get the latest versions of your packages
@goedman
Copy link

goedman commented Nov 4, 2014

Brian,

Not sure if it helps, but this is what I see on my system (very similar to what you concluded 10 days ago):

If I update Mamba’s REQUIRE to contain:

julia 0.3 0.4-
Calculus
Compose
Distributions
Gadfly
Graphs
PDMats
StatsBase
Color 0.3 0.3.9

Mamba still works with below 2 sets of warnings, but upgrading Color remains a problem as it prevents Mamba (and other packages I guess) to run.

This afternoon I did bump Stan.jl to v”0.1.0” and it now uses Mamba’s analysis tools. Jags.jl will follow later this week.

Regards,
Rob

Pkg.pin(“Color”, v”0.3.9”)

julia> include("/Users/rob/.julia/v0.3/Mamba/doc/examples/rats.jl")
MCMC Simulation of 10000 Iterations x 2 Chains...

exception on 1: ERROR: convert has no method matching convert(::Type{FloatingPoint}, ::Int64)
in convert at base.jl:13
in next! at /Users/rob/.julia/v0.3/Mamba/src/progress.jl:21
in mcmc_worker! at /Users/rob/.julia/v0.3/Mamba/src/model/mcmc.jl:76
in anonymous at multi.jl:660
in run_work_thunk at multi.jl:621
in remotecall_fetch at multi.jl:694
in remotecall_fetch at multi.jl:709
in anonymous at task.jl:1365
ERROR: type MethodError has no field model
in mcmc_master! at /Users/rob/.julia/v0.3/Mamba/src/model/mcmc.jl:50
in mcmc at /Users/rob/.julia/v0.3/Mamba/src/model/mcmc.jl:37
in include at /Applications/Julia-0.3.2.app/Contents/Resources/julia/lib/julia/sys.dylib
in include_from_node1 at /Applications/Julia-0.3.2.app/Contents/Resources/julia/lib/julia/sys.dylib
while loading /Users/rob/.julia/v0.3/Mamba/doc/examples/rats.jl, in expression starting on line 129

Pkg.pin(“PDMats”, v”0.3.1”)

julia> include("/Users/rob/.julia/v0.3/Mamba/doc/examples/rats.jl")
Warning: could not import PDMats.unwhiten_winv into PDMats2
Warning: could not import PDMats.unwhiten_winv! into PDMats2
Warning: New definition
whiten(PBDiagMat,Union(DenseArray{Float64,2},SubArray{Float64,2,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},SubArray{Float64,1,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/Mamba/src/distributions/pdmats2.jl:60
is ambiguous with:
whiten(AbstractPDMat,Union(DenseArray{Float64,2},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/PDMats/src/generics.jl:34.
To fix, define
whiten(PBDiagMat,Union(DenseArray{Float64,2},DenseArray{Float64,1}))
before the new definition.
Warning: New definition
whiten!(PBDiagMat,Union(DenseArray{Float64,2},SubArray{Float64,2,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},SubArray{Float64,1,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/Mamba/src/distributions/pdmats2.jl:65
is ambiguous with:
whiten!(AbstractPDMat,Union(DenseArray{Float64,2},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/PDMats/src/generics.jl:31.
To fix, define
whiten!(PBDiagMat,Union(DenseArray{Float64,2},DenseArray{Float64,1}))
before the new definition.
Warning: New definition
unwhiten(PBDiagMat,Union(DenseArray{Float64,2},SubArray{Float64,2,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},SubArray{Float64,1,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/Mamba/src/distributions/pdmats2.jl:69
is ambiguous with:
unwhiten(AbstractPDMat,Union(DenseArray{Float64,2},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/PDMats/src/generics.jl:35.
To fix, define
unwhiten(PBDiagMat,Union(DenseArray{Float64,2},DenseArray{Float64,1}))
before the new definition.
Warning: New definition
unwhiten!(PBDiagMat,Union(DenseArray{Float64,2},SubArray{Float64,2,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},SubArray{Float64,1,A<:DenseArray{T,N},I<:(Union(Int64,Range{Int64})...,)},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/Mamba/src/distributions/pdmats2.jl:74
is ambiguous with:
unwhiten!(AbstractPDMat,Union(DenseArray{Float64,2},DenseArray{Float64,1})) at /Users/rob/.julia/v0.3/PDMats/src/generics.jl:32.
To fix, define
unwhiten!(PBDiagMat,Union(DenseArray{Float64,2},DenseArray{Float64,1}))
before the new definition.

Pkg.pin(“Distributions”, v”0.5.8”)

Warning: Method definition minimum(Truncated{D<:Distribution{Univariate,S<:ValueSupport},S<:ValueSupport},) in module Distributions at /Users/rob/.julia/v0.3/Distributions/src/truncate.jl:29 overwritten in module Mamba at /Users/rob/.julia/v0.3/Mamba/src/distributions/methods.jl:107.
Warning: Method definition maximum(Truncated{D<:Distribution{Univariate,S<:ValueSupport},S<:ValueSupport},) in module Distributions at /Users/rob/.julia/v0.3/Distributions/src/truncate.jl:30 overwritten in module Mamba at /Users/rob/.julia/v0.3/Mamba/src/distributions/methods.jl:111.

Rob J. Goedman
[email protected]

On Nov 3, 2014, at 2:52 PM, Douglas Bates [email protected] wrote:

I think your version specification in the REQUIRE file should be more vague. As it stands, installing Mamba causes downgrading of other packages.

julia> Pkg.add("Mamba")
INFO: Cloning cache of Mamba from git://github.com/brian-j-smith/Mamba.jl.git
INFO: Downgrading Color: v0.3.10 => v0.3.8
INFO: Downgrading Distributions: v0.5.8 => v0.5.6
INFO: Installing Graphs v0.4.3
INFO: Installing Mamba v0.3.7
INFO: Downgrading PDMats: v0.3.0 => v0.2.5
INFO: Removing Compat v0.1.0
INFO: Package database updated
INFO: METADATA is out-of-date — you may not have the latest version of Mamba
INFO: Use Pkg.update() to get the latest versions of your packages

Reply to this email directly or view it on GitHub #14.

@brian-j-smith
Copy link
Owner

@dmbates - I agree about making the REQUIRE versions more general. As Rob noted, I am getting warnings right now with the latest versions of PDMats and Distributions. I hope to have those fixed and Mamba updated by this eventing.

BTW, do you all have interest in including other PDMat subtypes in your package? I currently have a (sparse matrix-based) block-diagonal subtype in my package. The code is at https://github.com/brian-j-smith/Mamba.jl/blob/master/src/distributions/pdmats2.jl. Maintaining the subtype in your package might make more sense. I am using it to construct normal distributions with block-diagonal covariance structures, as defined in the following links

BDiagNormal Code: https://github.com/brian-j-smith/Mamba.jl/blob/master/src/distributions/mvnormal.jl
Documentation: http://mambajl.readthedocs.org/en/latest/mcmc/distributions.html#index-2

@brian-j-smith
Copy link
Owner

PDMats and Distributions are no longer downgraded in the just-released version of Mamba (0.3.8).

There seems to be some interaction going on with Color 0.3.9 and julia that causes core functionality of the convert function to break, affecting conversion of integers to floats. See JuliaAttic/Color.jl#68 and #6. I don't think anyone has figured out the root cause of the issue yet. Once that is solved, I will remove my version bound on the package.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants