Set of stable packages as part of julia release V1.6

Hi everyone,

I was playing around with different packages under Julia V1.6 and was pretty impressed with the big performance improvements so far. That is really great work! While installing some packages, I stumbled on the “gradient does not exist/not well-defined” error in Flux, apparently due to an older version.

After activating a separate environment, without other packages and installing the latest version of Flux (v0.12.1), it worked like a charm.

It seems some of the package(s) I was “playing around with” was/were causing a down-grade in the Flux.jl version. Is there

  1. A way to determine which package(s) caused the down-grade?
  2. A set of packages which are officially supported in a certain stable version with each major release of Julia?

To whom it may concern here is the Pkg.status in the “failing” (default) environment:

(@v1.6) pkg> status
      Status `~/.julia/environments/v1.6/Project.toml`
  [336ed68f] CSV v0.7.10
  [a93c6f00] DataFrames v0.21.8
  [587475ba] Flux v0.8.3
  [38e38edf] GLM v1.4.1
  [c43c736e] Genie v1.18.1
  [a93385a2] JuliaDB v0.13.0
  [438e738f] PyCall v1.92.3
  [0aa819cd] SQLite v1.1.4
  [2cb19f9e] StatsKit v0.3.0
  [24249f21] SymPy v1.0.42
  [0ae4a718] VegaDatasets v2.1.1
  [112f6efa] VegaLite v2.4.1

Thanks and Best regards
Antonio

Just do ]add Flux@0.12 to see which packages are incompatible.

That said it is generaly not a good idea to install all packages into the default environment - you should be using project specific environments with only those packages needed for what you’re actually doing to minimize compatibility issues.

8 Likes

Just to add to the @nilshg answer for those coming from other languages virtual environments… virtual environments in Julia are really cheap, in the sense that all they do is creating a couple of small files that list the environment “requirements” and the exact set of packages (and versions) to fulfil that requirements.
Packages however are not copied, and if the same version of a package is required only once, only one copy of such package/version exists (in the user’s .julia folder).

So… use virtual environments as much as you need !

3 Likes