Closed CorySimon closed 6 years ago
Oddly Pkg.checkout("GenomicFeatures")
gives ERROR: GenomicFeatures is not a git repo
.
When I checked out the latest version of IntervalTrees and BioSequences, using GenomicFeatures
yielded the error:
INFO: Precompiling module GenomicFeatures.
ERROR: LoadError: LoadError: too many parameters for type
Stacktrace:
[1] include_from_node1(::String) at ./loading.jl:569
[2] include(::String) at ./sysimg.jl:14
[3] include_from_node1(::String) at ./loading.jl:569
[4] include(::String) at ./sysimg.jl:14
[5] anonymous at ./<missing>:2
while loading /Users/csimon/.julia/v0.6/GenomicFeatures/src/intervalcollection.jl, in expression starting on line 39
while loading /Users/csimon/.julia/v0.6/GenomicFeatures/src/GenomicFeatures.jl, in expression starting on line 40
ERROR: Failed to precompile GenomicFeatures to /Users/csimon/.julia/lib/v0.6/GenomicFeatures.ji.
Stacktrace:
[1] compilecache(::String) at ./loading.jl:703
[2] _require(::Symbol) at ./loading.jl:490
[3] require(::Symbol) at ./loading.jl:398
I remember someone reported a very similar problem recently but I couldn't find it. In that case, clean install (e.g. moving the ~/.julia/v0.6 directory somewhere and then running Pkg.update(); Pkg.add("GenomicFeatures")
) solved the problem. I guess failing to install some package(s) results in a broken state somehow. This may due to a problem of Julia's package installer.
hmm, even on a completely fresh install of Julia v0.6, after installing Bio.jl
, I get:
ERROR: resolve is unable to satisfy package requirements.
The problem was detected when trying to find a feasible version
for package Libz.
However, this only means that package Libz is involved in an
unsatisfiable or difficult dependency relation, and the root of
the problem may be elsewhere.
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:48
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at ./pkg/entry.jl:499
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}) at ./pkg/entry.jl:479
edit(::Function, ::String, ::Base.Pkg.Types.VersionSet, ::Vararg{Base.Pkg.Types.VersionSet,N} where N) at ./pkg/entry.jl:30
(::Base.Pkg.Entry.##1#3{String,Base.Pkg.Types.VersionSet})() at ./task.jl:335
Stacktrace:
[1] sync_end() at ./task.jl:287
[2] macro expansion at ./task.jl:303 [inlined]
[3] add(::String, ::Base.Pkg.Types.VersionSet) at ./pkg/entry.jl:51
[4] add(::String) at ./pkg/entry.jl:78
[5] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() at ./pkg/dir.jl:36
[6] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, ::String) at ./file.jl:70
[7] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{String,N} where N) at ./pkg/dir.jl:36
[8] add(::String) at ./pkg/pkg.jl:117
Bio.jl is not supported on Julia 0.6 yet. I don't recommend installing it on Julia 0.6 environment.
Well, error still persists. After one ~year?
@KarolisM You are not the origional reporter of this error, and as @bicycle1885 points out, using Bio.jl was the issue, on julia 0.6 one should simply Pkg.add("BioSequences")
, and Pkg.add("GenomicFeatures")
, and then using BioSequences
, using GenomicFeatures
should work, after that point in the thread @CorySimon doesen't report back to say whether or not the issue persists when doing it that way.
@KarolisM Please provide copy and pasted snipped of how you installed relevant packages, and how you are using them in your script so that we may be of greater assistance :smile: and get to the bottom of this.
@BenJWard , in that way I can install GenomicFeatures
, but still, I need Bio
package for reading BAMs for example. The error that I get after trying to install Bio
:
Pkg.add("Bio")
ERROR: resolve is unable to satisfy package requirements.
The problem was detected when trying to find a feasible version
for package Compat.
However, this only means that package Compat is involved in an
unsatisfiable or difficult dependency relation, and the root of
the problem may be elsewhere.
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:48
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at ./pkg/entry.jl:499
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}) at ./pkg/entry.jl:479
edit(::Function, ::String, ::Base.Pkg.Types.VersionSet, ::Vararg{Base.Pkg.Types.VersionSet,N} where N) at ./pkg/entry.jl:30
(::Base.Pkg.Entry.##1#3{String,Base.Pkg.Types.VersionSet})() at ./task.jl:335
Stacktrace:
[1] sync_end() at ./task.jl:287
[2] macro expansion at ./task.jl:303 [inlined]
[3] add(::String, ::Base.Pkg.Types.VersionSet) at ./pkg/entry.jl:51
[4] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() at ./pkg/dir.jl:36
[5] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, ::String) at ./file.jl:70
[6] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{String,N} where N) at ./pkg/dir.jl:36
[7] add(::String) at ./pkg/pkg.jl:117
And vice versa, if I install Bio
and then try to add GenomicFeatures
:
Pkg.add("GenomicFeatures")
ERROR: resolve is unable to satisfy package requirements.
The problem was detected when trying to find a feasible version
for package Compat.
However, this only means that package Compat is involved in an
unsatisfiable or difficult dependency relation, and the root of
the problem may be elsewhere.
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:48
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at ./pkg/entry.jl:499
resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}) at ./pkg/entry.jl:479
edit(::Function, ::String, ::Base.Pkg.Types.VersionSet, ::Vararg{Base.Pkg.Types.VersionSet,N} where N) at ./pkg/entry.jl:30
(::Base.Pkg.Entry.##1#3{String,Base.Pkg.Types.VersionSet})() at ./task.jl:335
Stacktrace:
[1] sync_end() at ./task.jl:287
[2] macro expansion at ./task.jl:303 [inlined]
[3] add(::String, ::Base.Pkg.Types.VersionSet) at ./pkg/entry.jl:51
[4] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() at ./pkg/dir.jl:36
[5] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, ::String) at ./file.jl:70
[6] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{String,N} where N) at ./pkg/dir.jl:36
[7] add(::String) at ./pkg/pkg.jl:117
Currently I am still using Julia 0.5 with Bio, BioSequences packages. I am not sure if exact code is relevant. It simply reads bams, parse GFF3, creates intervals etc. So in principal, I cannot write in Julia 0.6, because there is no way to use GenomicFeatures
with Bio
at the moment. At least I don't know how to do that.
@KarolisM Ah right, you want to read BAM files.
Ok so let's say you upgrade to julia 0.6. Then you need to use BioJulia/BioAlignments.jl as it has BAM and SAM parsing for julia 0.6, as it's a format used for hts alignment.
BioJulia/GenomicFeatures is for annotation formats specifically, so your GFF3s and your intervals and so on.
So leave "Bio" for now, and with julia 0.6, use Pkg.add("GenomicFeatures")
and Pkg.add("BioAlignments")
(and perhaps Pkg.add("BioSequences")
if you're doing any sequence manipulation). Those packages have the funtionality you need. Hope that helps! Feel free to share any specific problems or code snippets you're having trouble with.
Thanks @BenJWard ! Most appreciated.
On Julia v0.6, I try
Pkg.add("GenomicFeatures")
, and get the following error: