Skip to content

ArgumentError due to compiled cache file clashing during cp operation  #36621

@JeffreySarnoff

Description

@JeffreySarnoff

I am getting this error frequently as I edit a development branch on github and then pkg> add ErrorfreeArithmetic#fix and then (in a new REPL) using it. The very good news is that the message is helpfully specific (see below) so I can remedy the situation. The issue is that Julia appears to know what needs to be done and the only file in jeopardy is a .ji file which autoregenerates if missing.

Why not rename (somehow move) that file to _.ji.1 or whatever and proceed without involving me? If the old file is kept, then Pkg.gc() pbly should cull it.

julia> using ErrorfreeArithmetic
[ Info: Precompiling ErrorfreeArithmetic [90fa49ef-747e-5e6f-a989-263ba693cf1a]
ERROR: ArgumentError: 'C:\Users\jas\.julia\compiled\v1.6\ErrorfreeArithmetic\nMLcX_1H60c.ji' exists. `force=true` is required to remove 'C:\Users\jas\.julia\compiled\v1.6\ErrorfreeArithmetic\nMLcX_1H60c.ji' before copying.
Stacktrace:
 [1] checkfor_mv_cp_cptree(src::String, dst::String, txt::String; force::Bool)
   @ Base.Filesystem .\file.jl:308
 [2] cp(src::String, dst::String; force::Bool, follow_symlinks::Bool)
   @ Base.Filesystem .\file.jl:345
 [3] rename(src::String, dst::String)
   @ Base.Filesystem .\file.jl:898
 [4] compilecache(pkg::Base.PkgId, path::String)
   @ Base .\loading.jl:1341
 [5] _require(pkg::Base.PkgId)
   @ Base .\loading.jl:1030
 [6] require(uuidkey::Base.PkgId)
   @ Base .\loading.jl:928
 [7] require(into::Module, mod::Symbol)
   @ Base .\loading.jl:923
julia> versioninfo()
Julia Version 1.6.0-DEV.378
Commit c76960224f (2020-07-06 08:44 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_NUM_THREADS = 8

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions