Confused: MbedTLS broken on GitHub Actions with identical code

My CI tests fail consistently since today, even though no code changed. Comparing the manifests before and after, all dependencies have the same version.

The error is:

ERROR: LoadError: ArgumentError: Package MbedTLS does not have MbedTLS_jll in its dependencies:
- If you have MbedTLS checked out for development and have
  added MbedTLS_jll as a dependency but haven't updated your primary
  environment's manifest file, try `Pkg.resolve()`.
- Otherwise you may need to report an issue with MbedTLS
Stacktrace:
 [1] require(::Module, ::Symbol) at ./loading.jl:889
 [2] include at ./boot.jl:328 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1094
 [4] include(::Module, ::String) at ./Base.jl:31
 [5] top-level scope at none:2
 [6] eval at ./boot.jl:330 [inlined]
 [7] eval(::Expr) at ./client.jl:432
 [8] top-level scope at ./none:3
in expression starting at /home/runner/.julia/packages/MbedTLS/a1JFn/src/MbedTLS.jl:3

But MbedTLS.jl:3 does not import MbedTLS_jll at version 0.6.8.

However, MbedTLS.jl:3 at version 1.0.0 does import MbedTLS_jll! Does this mean that 1.0.0 was used to run the test, even though the Manifest states 0.6.8?

One difference that I can see between the two tests is that the succesful tests print Building MbedTLS, the failed tests do not.

I am confused - does anyone have tips for debugging this problem?

See https://github.com/JuliaLang/Pkg.jl/issues/1942. What happened is that GitHub suddenly starting sending the wrong files. It should have been worked around for now, so please retry CI and report back.

5 Likes