Package is not updating, but why?

I have a private package (which I cannot share) where DataFrames is not updating.
I cannot find any reason in the Project.toml file why it should be fixed to v1.3.6.

Should Pkg.status(; outdated=true) provide the reason why it is not updating?
As you can see below it does not say anything (except that 1.4.0 is available, but that is not being pulled).

This is no big issue, but if you have any idea how I can find out why it is not updating, let me know please.

julia>  Pkg.status(; outdated=true)
Project LLCalculationAgent v0.1.0
Status `C:\Users\bernhard.konig\Documents\Repositories\IneaGitRepoRootFolder\LLCalculationAgent\Project.toml`
⌃ [a93c6f00] DataFrames v1.3.6 (<v1.4.0)

(LLCalculationAgent) pkg> st
Project LLCalculationAgent v0.1.0
Status `C:\Users\bernhard.konig\Documents\Repositories\IneaGitRepoRootFolder\LLCalculationAgent\Project.toml`
  [fbe9abb3] AWS v1.77.0
  [1c724243] AWSS3 v0.10.1
  [336ed68f] CSV v0.10.4
⌃ [a93c6f00] DataFrames v1.3.6
  [ff294ebf] ExcelWriter v0.1.10 ``
  [4138dd39] JLD v0.13.2
  [033835bb] JLD2 v0.4.24
  [fde602d6] Mergepdfs v0.1.11 ``
  [69de0a69] Parsers v2.4.0
  [92933f4c] ProgressMeter v1.7.2
  [2913bbd2] StatsBase v0.33.21
  [f269a46b] TimeZones v1.9.0
  [3a884ed6] UnPack v1.0.2
  [228000da] XMLDict v0.4.1
  [ade2ca70] Dates
  [8bb1440f] DelimitedFiles
  [8ba89e20] Distributed
  [de0858da] Printf
Info Packages marked with ⌃ have new versions available and may be upgradable.

(LLCalculationAgent) pkg> up
    Updating registry at `C:\Users\bernhard.konig\.julia\registries\General.toml`
    Updating git-repo ``
    Updating git-repo ``
  No Changes to `C:\Users\bernhard.konig\Documents\Repositories\IneaGitRepoRootFolder\LLCalculationAgent\Project.toml`
  No Changes to `C:\Users\bernhard.konig\Documents\Repositories\IneaGitRepoRootFolder\LLCalculationAgent\Manifest.toml`

(LLCalculationAgent) pkg> 

@ REPL[12]:1

julia> versioninfo()
Julia Version 1.8.2
Commit 36034abf26 (2022-09-29 15:21 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 16 × 12th Gen Intel(R) Core(TM) i7-1270P
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, goldmont)
  Threads: 1 on 16 virtual cores
  LD_LIBRARY_PATH = c:/c_lib
  JULIA_EDITOR = "code"

Have you tried add DataFrames@1.4 explicitly? This often provides hints about what’s holding it back

Thanks. It seems to be related to Compat.
DataFrames wants Compat >= 4.2
But AWS wants Compat <= 3.46

(LLCalculationAgent) pkg> add DataFrames@1.4
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package Compat [34da2185]:
 Compat [34da2185] log:
 ├─possible versions are: 1.0.0-4.3.0 or uninstalled
 ├─restricted by compatibility requirements with DataFrames [a93c6f00] to versions: 4.2.0-4.3.0
 │ └─DataFrames [a93c6f00] log:
 │   ├─possible versions are: 0.11.7-1.4.0 or uninstalled
 │   ├─restricted to versions * by LLCalculationAgent [837fbea0], leaving only versions 0.11.7-1.4.0
 │   │ └─LLCalculationAgent [837fbea0] log:
 │   │   ├─possible versions are: 0.1.0 or uninstalled
 │   │   └─LLCalculationAgent [837fbea0] is fixed to version 0.1.0
 │   └─restricted to versions 1.4 by an explicit requirement, leaving only versions 1.4.0
 └─restricted by compatibility requirements with AWS [fbe9abb3] to versions: 3.0.0-3.46.0 — no versions left
   └─AWS [fbe9abb3] log:
     ├─possible versions are: 1.0.0-1.77.0 or uninstalled
     └─restricted to versions * by LLCalculationAgent [837fbea0], leaving only versions 1.0.0-1.77.0
       └─LLCalculationAgent [837fbea0] log: see above

Although I wonder why Pkg.status(outdated=true) did not report this by default.

(jl_wNcgNe) pkg> st -m --outdated
Status `/tmp/jl_wNcgNe/Manifest.toml`
⌃ [fbe9abb3] AWS v1.77.0 (<v1.78.0)
⌅ [34da2185] Compat v3.46.0 (<v4.3.0): AWS, Mocking # <---------------------
⌃ [a93c6f00] DataFrames v1.3.6 (<v1.4.1)
⌅ [08abe8d2] PrettyTables v1.3.1 (<v2.1.2): DataFrames

It does report it but to see Compat you need to make status show more than just the project deps.

1 Like

Thanks I did not know the -m option.
In my original code, st already shows me that its outdated. The outdated keyword additionally shows the new version.

I thought that some of the Pkg feedback told me that outdated should show the reason for it not being able to update. This is what irritated me. But the answers in this thread were all quite helpful and educating.

1 Like