Indirect dependency "is required but does not seem to be installed" causing failure

A user of a package of mine is having trouble installing the package on a cluster to which I don’t have access. I’ve been working with him to simplify it and use clean environments. (Originally, this came up because he tried to install my python package, which uses juliacall to install things automatically, but we’ve narrowed it down.) He’s never gotten anything but failure, while I’ve never gotten anything but success. Unfortunately, this means that I can’t really come up with a reproducrer, but I’m hoping that maybe someone has run into a similar problem and could maybe give me some idea of anything to try.

Basically, when he tries to run

julia --project=$(mktemp -d) -E 'using Pkg; Pkg.add("PostNewtonian"); using PostNewtonian'

he gets this error:

Failed to precompile PostNewtonian [377afc40-5642-4616-8613-b7ebca523866] to "~/.julia/compiled/v1.10/PostNewtonian/jl_IwXxIB".
ERROR: LoadError: ArgumentError: Package MLStyle [d8e11817-5142-5d16-987a-aa16d5891078] is required but does not seem to be installed:
- Run `Pkg.instantiate()` to install all recorded dependencies.

But running instantiate doesn’t seem to change anything.

How is this possible? MLStyle isn’t even a direct dependency of PostNewtonian, so why should this happen? It looks like it’s used by Expronicon, which is used by SciMLBase, which is used by PostNewtonian. But shouldn’t it get installed automatically?

Is there some ~/.julia subdirectory I should advise him to just delete? This is his first encounter with Julia, so I’m feeling pretty bad about this.


He’s running Julia 1.10.4 (from juliaup) on x86_64-linux-gnu.

Full output
   Resolving package versions...
    Updating `/tmp/tmp.v0vuhf4GUN/Project.toml`
  [377afc40] + PostNewtonian v0.9.0
    Updating `/tmp/tmp.v0vuhf4GUN/Manifest.toml`
  [47edcb42] + ADTypes v1.6.1
  [621f4979] + AbstractFFTs v1.5.0
  [7d9f7c33] + Accessors v0.1.37
  [79e6a3ab] + Adapt v4.0.4
  [ec485272] + ArnoldiMethod v0.4.0
  [4fba245c] + ArrayInterface v7.12.0
  [4c555306] + ArrayLayouts v1.10.2
  [aae01518] + BandedMatrices v1.7.2
  [62783981] + BitTwiddlingConvenienceFunctions v0.1.6
  [fa961155] + CEnum v0.5.0
  [2a0fbf3d] + CPUSummary v0.2.6
  [d360d2e6] + ChainRulesCore v1.24.0
  [fb6a15b2] + CloseOpenIntervals v0.1.13
  [38540f10] + CommonSolve v0.2.4
  [bbf7d656] + CommonSubexpressions v0.3.0
  [f70d9fcc] + CommonWorldInvalidations v1.0.0
  [34da2185] + Compat v4.15.0
  [a33af91c] + CompositionsBase v0.1.2
  [2569d6c7] + ConcreteStructs v0.2.3
  [187b0558] + ConstructionBase v1.5.6
  [adafc99b] + CpuId v0.3.1
  [a8cc5b0e] + Crayons v4.1.1
  [717857b8] + DSP v0.7.9
  [9a962f9c] + DataAPI v1.16.0
  [82cc6244] + DataInterpolations v5.3.0
  [864edb3b] + DataStructures v0.18.20
  [e2d170a0] + DataValueInterfaces v1.0.0
  [2b5f629d] + DiffEqBase v6.151.5
  [163ba53b] + DiffResults v1.1.0
  [b552c78f] + DiffRules v1.15.1
  [a0c0ee7d] + DifferentiationInterface v0.5.9
  [ffbed154] + DocStringExtensions v0.9.3
  [497a8b3b] + DoubleFloats v1.4.0
  [4e289a0a] + EnumX v1.0.4
  [f151be2c] + EnzymeCore v0.7.7
  [d4d017d3] + ExponentialUtilities v1.26.1
  [e2ba6199] + ExprTools v0.1.10
⌅ [6b7a57c9] + Expronicon v0.8.5
  [7a1cc6ca] + FFTW v1.8.0
  [7034ab61] + FastBroadcast v0.3.5
  [9aa1b823] + FastClosures v0.3.2
  [eb9bf01b] + FastDifferentiation v0.3.15
  [442a2c76] + FastGaussQuadrature v1.0.2
  [29a986be] + FastLapackInterface v2.0.4
  [057dd010] + FastTransforms v0.16.4
  [1a297f60] + FillArrays v1.11.0
  [64ca27bc] + FindFirstFunctions v1.2.0
  [6a86dc24] + FiniteDiff v2.23.1
  [1fa38f19] + Format v1.3.7
  [f6369f11] + ForwardDiff v0.10.36
  [069b7b12] + FunctionWrappers v1.1.3
  [77dc65aa] + FunctionWrappersWrappers v0.1.3
  [46192b85] + GPUArraysCore v0.1.6
  [a8297547] + GenericFFT v0.1.6
  [14197337] + GenericLinearAlgebra v0.3.11
  [c145ed77] + GenericSchur v0.5.4
  [86223c79] + Graphs v1.11.2
  [3e5b6fbb] + HostCPUFeatures v0.1.17
  [0e44f5e4] + Hwloc v3.2.0
  [615f187c] + IfElse v0.1.1
  [d25df0c9] + Inflate v0.1.5
  [3587e190] + InverseFunctions v0.1.15
  [92d709cd] + IrrationalConstants v0.2.2
  [c8e1da08] + IterTools v1.10.0
  [82899510] + IteratorInterfaceExtensions v1.0.0
  [692b3bcd] + JLLWrappers v1.5.0
  [ef3ab10e] + KLU v0.6.0
  [ba0b0d4f] + Krylov v0.9.6
  [b964fa9f] + LaTeXStrings v1.3.1
  [23fbe1c1] + Latexify v0.16.4
  [10f19ff3] + LayoutPointers v0.1.17
  [5078a376] + LazyArrays v2.1.9
  [d3d80556] + LineSearches v7.2.0
  [7ed4a6bd] + LinearSolve v2.30.2
  [2ab3a3ac] + LogExpFunctions v0.3.28
  [bdcacae8] + LoopVectorization v0.12.171
  [d8e11817] + MLStyle v0.4.17
  [1914dd2f] + MacroTools v0.5.13
  [d125e4d3] + ManualMemory v0.1.8
  [bb5d69b7] + MaybeInplace v0.1.3
  [46d2c3a1] + MuladdMacro v0.2.4
  [d41bc354] + NLSolversBase v7.8.3
  [77ba4419] + NaNMath v1.0.2
  [8913a72c] + NonlinearSolve v3.13.1
  [6fe1bfb0] + OffsetArrays v1.14.1
  [bac558e1] + OrderedCollections v1.6.3
  [1dea7af3] + OrdinaryDiffEq v6.86.0
  [65ce6f38] + PackageExtensionCompat v1.0.2
  [d96e819e] + Parameters v0.12.3
  [f517fe37] + Polyester v0.7.15
  [1d0040c9] + PolyesterWeave v0.2.2
  [f27b6e38] + Polynomials v4.0.11
  [377afc40] + PostNewtonian v0.9.0
  [d236fae5] + PreallocationTools v0.4.22
  [aea7be01] + PrecompileTools v1.2.1
  [21216c6a] + Preferences v1.4.3
  [08abe8d2] + PrettyTables v2.3.2
  [92933f4c] + ProgressMeter v1.10.2
  [be4d8f0f] + Quadmath v0.5.10
  [0756cd96] + Quaternionic v1.5.2
  [988b38a3] + ReadOnlyArrays v0.2.0
  [3cdcf5f2] + RecipesBase v1.3.4
  [731186ca] + RecursiveArrayTools v3.26.0
  [f2c3362d] + RecursiveFactorization v0.2.23
  [189a3867] + Reexport v1.2.2
  [ae029012] + Requires v1.3.0
  [7e49a35a] + RuntimeGeneratedFunctions v0.5.13
  [94e857df] + SIMDTypes v0.1.0
  [476501e8] + SLEEFPirates v0.6.43
  [0bca4576] + SciMLBase v2.45.1
  [c0aeaf25] + SciMLOperators v0.3.8
  [53ae85a6] + SciMLStructures v1.4.1
  [efcf1570] + Setfield v1.1.1
  [727e6d20] + SimpleNonlinearSolve v1.11.0
  [699a6c99] + SimpleTraits v0.9.4
  [ce78b400] + SimpleUnPack v1.1.0
  [47a9eef4] + SparseDiffTools v2.19.0
  [0a514795] + SparseMatrixColorings v0.3.5
  [e56a9233] + Sparspak v0.3.9
  [276daf66] + SpecialFunctions v2.4.0
  [af6d55de] + SphericalFunctions v2.2.4
  [aedffcd0] + Static v1.1.1
  [0d7ed370] + StaticArrayInterface v1.5.1
  [90137ffa] + StaticArrays v1.9.7
  [1e83bf80] + StaticArraysCore v1.4.3
  [7792a7ef] + StrideArraysCore v0.5.7
  [892a3eda] + StringManipulation v0.3.4
  [2efcf032] + SymbolicIndexingInterface v0.3.26
  [3783bdb8] + TableTraits v1.0.1
  [bd369af6] + Tables v1.12.0
  [1c621080] + TestItems v1.0.0
  [8290d209] + ThreadingUtilities v0.5.2
  [a759f4b9] + TimerOutputs v0.5.24
  [c751599d] + ToeplitzMatrices v0.8.3
  [d5829a12] + TriangularSolve v0.2.1
  [410a4b4d] + Tricks v0.1.8
  [781d530d] + TruncatedStacktraces v1.4.0
  [3a884ed6] + UnPack v1.0.2
  [3d5dd08c] + VectorizationBase v0.21.70
  [19fa3120] + VertexSafeGraphs v0.2.0
  [f5851436] + FFTW_jll v3.3.10+0
  [34b6f7d7] + FastTransforms_jll v0.6.2+0
  [e33a78d0] + Hwloc_jll v2.11.1+0
  [1d5cc7b8] + IntelOpenMP_jll v2024.2.0+0
  [1d63c593] + LLVMOpenMP_jll v15.0.7+0
  [856f044c] + MKL_jll v2024.2.0+0
  [efe28fd5] + OpenSpecFun_jll v0.5.5+0
  [1317d2d5] + oneTBB_jll v2021.12.0+0
  [0dad84c5] + ArgTools v1.1.1
  [56f22d72] + Artifacts
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [8ba89e20] + Distributed
  [f43a241f] + Downloads v1.6.0
  [7b1f6079] + FileWatching
  [9fa8497b] + Future
  [b77e0a4c] + InteractiveUtils
  [4af54fe1] + LazyArtifacts
  [b27032c2] + LibCURL v0.6.4
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [ca575930] + NetworkOptions v1.2.0
  [44cfe95a] + Pkg v1.10.0
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA v0.7.0
  [9e88b42a] + Serialization
  [1a1011a3] + SharedArrays
  [6462fe0b] + Sockets
  [2f01184e] + SparseArrays v1.10.0
  [10745b16] + Statistics v1.10.0
  [4607b0f0] + SuiteSparse
  [fa267f1f] + TOML v1.0.3
  [a4e569a6] + Tar v1.10.0
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode
  [e66e0078] + CompilerSupportLibraries_jll v1.1.1+0
  [781609d7] + GMP_jll v6.2.1+6
  [deac9b47] + LibCURL_jll v8.4.0+0
  [e37daf67] + LibGit2_jll v1.6.4+0
  [29816b5a] + LibSSH2_jll v1.11.0+1
  [3a97d323] + MPFR_jll v4.2.0+1
  [c8ffd9c3] + MbedTLS_jll v2.28.2+1
  [14a3606d] + MozillaCACerts_jll v2023.1.10
  [4536629a] + OpenBLAS_jll v0.3.23+4
  [05823500] + OpenLibm_jll v0.8.1+2
  [bea87d4a] + SuiteSparse_jll v7.2.1+1
  [83775a58] + Zlib_jll v1.2.13+1
  [8e850b90] + libblastrampoline_jll v5.8.0+1
  [8e850ede] + nghttp2_jll v1.52.0+1
  [3f19e933] + p7zip_jll v17.4.0+2
        Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`
Precompiling project...
✗ Expronicon
✗ SciMLBase
✗ SciMLBase → SciMLBaseChainRulesCoreExt
✗ LinearSolve
✗ DiffEqBase
✗ DiffEqBase → DiffEqBaseChainRulesCoreExt
✗ SimpleNonlinearSolve
✗ LinearSolve → LinearSolveBandedMatricesExt
✗ LinearSolve → LinearSolveRecursiveArrayToolsExt
✗ SimpleNonlinearSolve → SimpleNonlinearSolveChainRulesCoreExt
✗ NonlinearSolve
✗ NonlinearSolve → NonlinearSolveBandedMatricesExt
✗ OrdinaryDiffEq
✗ PostNewtonian
10 dependencies successfully precompiled in 112 seconds. 187 already precompiled.

The following 1 direct dependency failed to precompile:

PostNewtonian [377afc40-5642-4616-8613-b7ebca523866]

Failed to precompile PostNewtonian [377afc40-5642-4616-8613-b7ebca523866] to "~/.julia/compiled/v1.10/PostNewtonian/jl_IwXxIB".
ERROR: LoadError: ArgumentError: Package MLStyle [d8e11817-5142-5d16-987a-aa16d5891078] is required but does not seem to be installed:
- Run `Pkg.instantiate()` to install all recorded dependencies.

He deleted ~/.julia/compiled/v1.10/PostNewtonian and tried again, and it worked. :person_shrugging: