Baysor
Baysor copied to clipboard
Installation Issue
Hi @VPetukhov
When installing the Baysor by Building CLI application from source, I got the error: The manifest file you are using was most likely generated by a different version of Julia and is not compatible with this Julia version. More details are shown as follows:
Stacktrace: [1] load_urls(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:545 [2] #download_source#57 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:733 [inlined] [3] download_source @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:732 [inlined] [4] instantiate(ctx::Pkg.Types.Context; manifest::Nothing, update_registry::Bool, verbose::Bool, platform::Base.BinaryPlatforms.Platform, allow_build::Bool, allow_autoprecomp::Bool, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1408 [5] instantiate @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1325 [inlined] [6] #instantiate#252 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1321 [inlined] [7] instantiate() @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1321 [8] top-level scope @ none:1 make: *** [/home/anaconda3/envs/baysor/Baysor-0.5.2/bin/julia-1.6.4//../BaysorSysimage.so] Error 1
System information: Linux version 5.10.120-1.el7.x86_64 (rpmbuild@compile-rh7) (gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2), GNU ld version 2.32-16.el7) #1
I would really appreciate it if you could help or give some advice.
Best YW
@BoomStarcuc , Julia updated their Manifest language in version 1.7, so when I recompiled it under the version, the support for lower versions was dropped. Sorry for that, but you either need to install Julia 1.7 or use an older version of Baysor: Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))
Hi, @VPetukhov
Thank you for your information!!!
After installing Julia 1.6.0 and then running the command '''Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))''', I got the errors as follows:
julia > Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))
Cloning git-repo https://github.com/hms-dbmi/Baysor.git
Updating git-repo https://github.com/hms-dbmi/Baysor.git
ERROR: Did not find rev 0.5.1 in repository
Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:55 [2] (::Pkg.Types.var"#44#45"{Pkg.Types.Context, Pkg.Types.PackageSpec, String})(repo::LibGit2.GitRepo) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:634 [3] with(f::Pkg.Types.var"#44#45"{Pkg.Types.Context, Pkg.Types.PackageSpec, String}, obj::LibGit2.GitRepo) @ LibGit2 /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/LibGit2/src/types.jl:1150 [4] handle_repo_add!(ctx::Pkg.Types.Context, pkg::Pkg.Types.PackageSpec) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:619 [5] handle_repos_add!(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:686 [6] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:177 [7] add @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:148 [inlined] [8] add(pkgs::Vector{Pkg.Types.PackageSpec}; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:73 [9] add @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:72 [inlined] [10] #add#20 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:69 [inlined] [11] add(pkg::Pkg.Types.PackageSpec) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:69 [12] top-level scope @ REPL[4]:1
I also try other commands,like ''Pkg.add(PackageSpec(url="https://github.com/kharchenkolab/Baysor.git", rev="0.5.1"))" and "Pkg.add([PackageSpec(name="UMAP", rev="0.5.1"), PackageSpec(url="https://github.com/kharchenkolab/Baysor.git")])", which did not work. Could you give some advice?
Thank you very much again.
Best YW
Hi, @VPetukhov
The version of Baysor 0.5.2 with Julia 1.7.3 works for me. Thank you for your help!!!
Best YW
Hi, @VPetukhov
I successfully run the command.
baysor run -i 50 --force-2d --num-cells-init 20 -s 14 -c /configs/iss.toml -o ./output_no_dapi ./data/pciSeq_3-3.csv
But when I want to visualize cell borders using -p, I got errors as follows:
[22:31:10] Info: Plot diagnostics ERROR: LoadError: UndefRefError: access to undefined reference Stacktrace: [1] getproperty @ ./Base.jl:42 [inlined] [2] show @ ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis.jl:1205 [inlined] [3] show_delim_array(io::IOContext{IOBuffer}, itr::Tuple{NamedTuple{(:font,), Tuple{String}}, typeof(Makie.initialize_block!), Makie.Axis}, op::Char, delim::Char, cl::Char, delim_one::Bool, i1::Int64, n::Int64) @ Base ./show.jl:1244 [4] show_delim_array @ ./show.jl:1229 [inlined] [5] show(io::IOContext{IOBuffer}, t::Tuple{NamedTuple{(:font,), Tuple{String}}, typeof(Makie.initialize_block!), Makie.Axis}) @ Base ./show.jl:1262 [6] _show_default(io::IOBuffer, x::Any) @ Base ./show.jl:413 [7] show_default @ ./show.jl:396 [inlined] [8] show @ ./show.jl:391 [inlined] [9] print(io::IOBuffer, x::MethodError) @ Base ./strings/io.jl:35 [10] print_to_string(::MethodError, ::Vararg{Any}) @ Base ./strings/io.jl:144 [11] string(::MethodError, ::String) @ Base ./strings/io.jl:185 [12] macro expansion @ ./logging.jl:360 [inlined] [13] run_cli(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:170 [14] run_cli() @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:137 [15] top-level scope @ ~/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3 in expression starting at /home/jcl3689/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3
caused by: MethodError: no method matching initialize_block!(::Makie.Axis; font="Helvetica") Closest candidates are: initialize_block!(::Makie.Axis; palette) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis.jl:168 got unsupported keyword argument "font" initialize_block!(::Makie.Colorbar) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/colorbar.jl:81 got unsupported keyword argument "font" initialize_block!(::Makie.Axis3) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis3d.jl:3 got unsupported keyword argument "font" ... Stacktrace: [1] kwerr(::NamedTuple{(:font,), Tuple{String}}, ::Function, ::Makie.Axis) @ Base ./error.jl:163 [2] block(::Type{Makie.Axis}, ::Makie.Figure; bbox::Nothing, kwargs::Base.Pairs{Symbol, Any, NTuple{10, Symbol}, NamedTuple{(:title, :xticksvisible, :yticksvisible, :xticklabelsize, :yticklabelsize, :xlabel, :ylabel, :xlabelpadding, :ylabelpadding, :font), Tuple{String, Bool, Bool, Int64, Int64, String, String, Int64, Int64, String}}}) @ Makie ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks.jl:403 [3] ##993 @ ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks.jl:279 [inlined] [4] plot_num_of_cells_per_iterarion(tracer::Dict{Symbol, Any}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/data_processing/plots.jl:155 [5] (::Baysor.var"#329#330"{NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, Nothing, DataFrames.DataFrame, Vector{Int64}, Dict{Symbol, Any}})(io::IOStream) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:162 [6] open(::Baysor.var"#329#330"{NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, Nothing, DataFrames.DataFrame, Vector{Int64}, Dict{Symbol, Any}}, ::String, ::Vararg{String}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./io.jl:330 [7] open @ ./io.jl:328 [inlined] [8] plot_diagnostics_panel(df_res::DataFrames.DataFrame, assignment::Vector{Int64}, tracer::Dict{Symbol, Any}, args::Dict{String, Any}; clust_res::NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, comp_segs::Nothing) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:142 [9] save_segmentation_results(bm_data::Baysor.BmmData{3}, gene_names::Vector{String}, args::Dict{String, Any}; mol_clusts::NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, comp_segs::Nothing, prior_polygons::Vector{Matrix{Float64}}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:412 [10] run_cli_main(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:481 [11] run_cli(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:152 [12] run_cli() @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:137 [13] top-level scope @ ~/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3
I also looked for some solutions for this error, but it did not work. Should I install old version of Baysor 0.5.1 to try it? If so, could you tell me the correct julia command for old version of baysor 0.5.1
@BoomStarcuc , Julia updated their Manifest language in version 1.7, so when I recompiled it under the version, the support for lower versions was dropped. Sorry for that, but you either need to install Julia 1.7 or use an older version of Baysor:
Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))
Sorry for your inconvenience. I am new for julia, so I really appreciate if you could give me some help or advice?
Best YW
Hi, @VPetukhov
The version of Baysor 0.5.2 with Julia 1.7.3 works for me. Thank you for your help!!!
Best YW
Hello! What system are you using? MacOS or Linux system? And which version is the system?
Please, see the response in https://github.com/kharchenkolab/Baysor/issues/59 . Should be resolved in v0.6.0.