Skip to content

Cannot build package with Julia 1.5 after saving manifest with Julia 1.6 #2289

@eschnett

Description

@eschnett

I have a project where I ran Pkg.update() with Julia Version 1.6.0-DEV.1722, and committed the resulting Manifest.toml. This fails during CI when I test the package with Julia 1.5 or Julia 1.4. The error is

ERROR: AssertionError: sourcepath !== nothing

in the julia-actions/julia-buildpkg@v1 step. The complete output is available at https://github.com/eschnett/SimplexPoly.jl/runs/1533491897. This error occurs in Pkg.

The complete backtrace is

13
Stacktrace:
14
 [1] is_package_downloaded at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:1670 [inlined]
15
 [2] JuliaLang/julia#12 at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:113 [inlined]
16
 [3] _all(::Pkg.Operations.var"#12#13"{Pkg.Types.Context}, ::Array{Pkg.Types.PackageSpec,1}, ::Colon) at ./reduce.jl:828
17
 [4] #all#638 at ./reducedim.jl:735 [inlined]
18
 [5] all at ./reducedim.jl:735 [inlined]
19
 [6] is_instantiated at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:113 [inlined]
20
 [7] instantiate(::Pkg.Types.Context; manifest::Nothing, update_registry::Bool, verbose::Bool, platform::Pkg.BinaryPlatforms.Linux, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:828
21
 [8] instantiate(::Pkg.Types.Context) at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:795
22
 [9] build(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Bool) at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:838
23
 [10] build(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; verbose::Bool, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:745
24
 [11] #build#69 at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:67 [inlined]
25
 [12] build(; name::Nothing, uuid::Nothing, version::Nothing, url::Nothing, rev::Nothing, path::Nothing, mode::Pkg.Types.PackageMode, subdir::Nothing, kwargs::Base.Iterators.Pairs{Symbol,Bool,Tuple{Symbol},NamedTuple{(:verbose,),Tuple{Bool}}}) at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:80
26
 [13] top-level scope at none:1

I notice that the automatically installed transitive dependencies are very different with Julia 1.5 and Julia 1.6. Julia 1.6 says this during Pkg.update():

  [0dad84c5] + ArgTools
  [56f22d72] + Artifacts
  [8ba89e20] - Distributed
  [f43a241f] + Downloads
  [b27032c2] + LibCURL
  [ca575930] + NetworkOptions
  [fa267f1f] + TOML
  [a4e569a6] + Tar
  [deac9b47] + LibCURL_jll
  [29816b5a] + LibSSH2_jll
  [c8ffd9c3] + MbedTLS_jll
  [14a3606d] + MozillaCACerts_jll
  [83775a58] + Zlib_jll
  [8e850ede] + nghttp2_jll

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions