Closed norci closed 3 years ago
Yeah, looks like it's failing cause I accidentally updated the docs manifest to not use a relative path for the Impute version. I don't know why that didn't error when the change was introduced... :/ Should be an easy fix though. I don't think removing the [compat]
section is the correct answer. Can you provide a list of packages that are holding back the Flux / CUDA versions?
I'm not sure which one restrict the versions of Flux. this is the reproduce steps:
(@v1.5) pkg> add Flux,CUDA
Resolving package versions...
Updating `C:\Users\zhexu\.julia\environments\v1.5\Project.toml`
[052768ef] + CUDA v2.3.0
[587475ba] + Flux v0.11.2
(@v1.5) pkg> add Impute
Resolving package versions...
Updating `C:\Users\zhexu\.julia\environments\v1.5\Project.toml`
[052768ef] ↓ CUDA v2.3.0 ⇒ v1.3.3
[587475ba] ↓ Flux v0.11.2 ⇒ v0.11.1
[f7bf1975] + Impute v0.6.0
Updating `C:\Users\zhexu\.julia\environments\v1.5\Manifest.toml`
[4fba245c] - ArrayInterface v2.14.4
[ab4f0b2a] - BFloat16s v0.1.0
[fbb218c0] + BSON v0.2.6
[336ed68f] + CSV v0.7.10
[052768ef] ↓ CUDA v2.3.0 ⇒ v1.3.3
[324d7699] + CategoricalArrays v0.8.3
[adafc99b] + CpuId v0.2.2
[124859b0] + DataDeps v0.7.4
[a93c6f00] + DataFrames v0.22.1
[864edb3b] ↓ DataStructures v0.18.8 ⇒ v0.17.20
[b4f34e82] + Distances v0.9.2
[587475ba] ↓ Flux v0.11.2 ⇒ v0.11.1
[59287772] + Formatting v0.4.2
[0c68f7d7] ↓ GPUArrays v6.1.2 ⇒ v5.2.1
[61eb1bfa] ↓ GPUCompiler v0.8.3 ⇒ v0.6.1
[cd3eb016] + HTTP v0.8.19
[0e44f5e4] - Hwloc v1.0.3
[615f187c] - IfElse v0.1.0
[f7bf1975] + Impute v0.6.0
[83e8ac13] + IniFile v0.5.0
[41ab1584] + InvertedIndices v1.0.0
[c8e1da08] + IterTools v1.3.0
[929cbde3] ↓ LLVM v3.4.0 ⇒ v2.0.0
[bdcacae8] ↓ LoopVectorization v0.9.3 ⇒ v0.8.26
[739be429] + MbedTLS v1.0.3
[356022a1] + NamedDims v0.2.29
[b8a86587] + NearestNeighbors v0.4.8
[2dfb63ee] + PooledArrays v0.5.3
[08abe8d2] + PrettyTables v0.10.1
[21efa798] + SIMDPirates v0.8.26
[476501e8] ↓ SLEEFPirates v0.6.0 ⇒ v0.5.5
[6c6a2e73] - Scratch v1.0.3
[91c51154] + SentinelArrays v1.2.16
[2913bbd2] ↓ StatsBase v0.33.2 ⇒ v0.32.2
[856f2bd8] + StructTypes v1.1.0
[ab02a1b2] + TableOperations v0.2.1
[3d5dd08c] ↓ VectorizationBase v0.13.8 ⇒ v0.12.33
[9fa8497b] + Future
(@v1.5) pkg> add CUDA@2
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package DataFrames [a93c6f00]:
DataFrames [a93c6f00] log:
├─possible versions are: [0.11.7, 0.12.0, 0.13.0-0.13.1, 0.14.0-0.14.1, 0.15.0-0.15.2, 0.16.0, 0.17.0-0.17.1, 0.18.0-0.18.4, 0.19.0-0.19.4, 0.20.0-0.20.2, 0.21.0-0.21.8, 0.22.0-0.22.1] or uninstalled
├─restricted by compatibility requirements with StatsBase [2913bbd2] to versions: [0.19.1-0.19.4, 0.20.0-0.20.2, 0.21.0-0.21.8, 0.22.0-0.22.1] or uninstalled
│ └─StatsBase [2913bbd2] log:
│ ├─possible versions are: [0.24.0, 0.25.0, 0.26.0, 0.27.0, 0.28.0-0.28.1, 0.29.0, 0.30.0, 0.31.0, 0.32.0-0.32.2, 0.33.0-0.33.2] or uninstalled
│ └─restricted by compatibility requirements with Flux [587475ba] to versions: 0.33.0-0.33.2
│ └─Flux [587475ba] log:
│ ├─possible versions are: [0.4.1, 0.5.0-0.5.4, 0.6.0-0.6.10, 0.7.0-0.7.3, 0.8.0-0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.0-0.11.2] or uninstalled
│ ├─restricted to versions * by an explicit requirement, leaving only versions [0.4.1, 0.5.0-0.5.4, 0.6.0-0.6.10, 0.7.0-0.7.3, 0.8.0-0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.0-0.11.2]
│ ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [0.4.1, 0.5.0-0.5.4, 0.6.0-0.6.10, 0.7.0-0.7.3, 0.8.0-0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.2] or uninstalled, leaving only versions: [0.4.1, 0.5.0-0.5.4, 0.6.0-0.6.10, 0.7.0-0.7.3, 0.8.0-0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.2]
│ │ └─CUDA [052768ef] log:
│ │ ├─possible versions are: [0.1.0, 1.0.0-1.0.2, 1.1.0, 1.2.0-1.2.1, 1.3.0-1.3.3, 2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0] or uninstalled
│ │ ├─restricted to versions 2 by an explicit requirement, leaving only versions [2.0.0-2.0.2, 2.1.0, 2.2.0-2.2.1, 2.3.0]
│ │ └─restricted by compatibility requirements with Flux [587475ba] to versions: [2.1.0, 2.2.0-2.2.1, 2.3.0]
│ │ └─Flux [587475ba] log: see above
│ ├─restricted by compatibility requirements with NNlib [872c559c] to versions: [0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.0-0.11.2] or uninstalled, leaving only versions: [0.8.3, 0.9.0, 0.10.0-0.10.4, 0.11.2]
│ │ └─NNlib [872c559c] log:
│ │ ├─possible versions are: [0.3.2, 0.4.0-0.4.3, 0.5.0, 0.6.0-0.6.6, 0.7.0-0.7.7] or uninstalled
│ │ ├─restricted by compatibility requirements with Flux [587475ba] to versions: [0.3.2, 0.4.0-0.4.3, 0.5.0, 0.6.0-0.6.6, 0.7.0-0.7.7]
│ │ │ └─Flux [587475ba] log: see above
│ │ ├─restricted by compatibility requirements with CUDA [052768ef] to versions: [0.6.5-0.6.6, 0.7.0-0.7.7]
│ │ │ └─CUDA [052768ef] log: see above
│ │ └─restricted by compatibility requirements with Flux [587475ba] to versions: 0.7.0-0.7.7
│ │ └─Flux [587475ba] log: see above
│ └─restricted by compatibility requirements with Adapt [79e6a3ab] to versions: 0.11.0-0.11.2 or uninstalled, leaving only versions: 0.11.2
│ └─Adapt [79e6a3ab] log:
│ ├─possible versions are: [0.3.0-0.3.1, 0.4.0-0.4.2, 1.0.0-1.0.1, 1.1.0, 2.0.0-2.0.2, 2.1.0, 2.2.0, 2.3.0] or uninstalled
│ ├─restricted by compatibility requirements with Flux [587475ba] to versions: [0.3.0-0.3.1, 0.4.0-0.4.2, 1.0.0-1.0.1, 1.1.0, 2.0.0-2.0.2, 2.1.0, 2.2.0, 2.3.0]
│ │ └─Flux [587475ba] log: see above
│ └─restricted by compatibility requirements with CUDA [052768ef] to versions: [2.2.0, 2.3.0]
│ └─CUDA [052768ef] log: see above
└─restricted by compatibility requirements with Impute [f7bf1975] to versions: [0.15.0-0.15.2, 0.16.0, 0.17.0-0.17.1, 0.18.0-0.18.4] — no versions left
└─Impute [f7bf1975] log:
├─possible versions are: [0.1.0-0.1.1, 0.2.0, 0.3.0, 0.4.0, 0.5.0-0.5.1, 0.6.0] or uninstalled
├─restricted to versions * by an explicit requirement, leaving only versions [0.1.0-0.1.1, 0.2.0, 0.3.0, 0.4.0, 0.5.0-0.5.1, 0.6.0]
└─restricted by compatibility requirements with StatsBase [2913bbd2] to versions: [0.1.0-0.1.1, 0.2.0] or uninstalled, leaving only versions: [0.1.0-0.1.1, 0.2.0]
└─StatsBase [2913bbd2] log: see above
Looks like the latest version of Flux only supports StatsBase 0.33. Looking at the diff I don't think the breaking changes should impact Impute.jl, that should be another simple update.
With the extra commit on #97 it seems to work.
(Impute) pkg> add CUDA@2
Updating registry at `~/.julia/registries/General`
Updating git-repo `git@github.com:JuliaRegistries/General.git`
Updating registry at `~/.julia/registries/Invenia`
Updating git-repo `git@gitlab.invenia.ca:invenia/PackageRegistry.git`
Resolving package versions...
Installed BFloat16s ──── v0.1.0
Installed TimerOutputs ─ v0.5.7
Installed GPUCompiler ── v0.8.3
Installed GPUArrays ──── v6.1.2
Installed LLVM ───────── v3.5.1
Installed CUDA ───────── v2.3.0
Updating `~/repos/invenia/Impute.jl/Project.toml`
[052768ef] + CUDA v2.3.0
Updating `~/repos/invenia/Impute.jl/Manifest.toml`
[621f4979] + AbstractFFTs v0.5.0
[79e6a3ab] + Adapt v2.3.0
[ab4f0b2a] + BFloat16s v0.1.0
[fa961155] + CEnum v0.4.1
[052768ef] + CUDA v2.3.0
[ffbed154] - DocStringExtensions v0.8.3
[e30172f5] - Documenter v0.26.0
[e2ba6199] + ExprTools v0.1.3
[0c68f7d7] + GPUArrays v6.1.2
[61eb1bfa] + GPUCompiler v0.8.3
[b5f81e59] - IOCapture v0.1.1
[929cbde3] + LLVM v3.5.1
[1914dd2f] + MacroTools v0.5.6
[872c559c] + NNlib v0.7.7
[6c6a2e73] + Scratch v1.0.3
[a759f4b9] + TimerOutputs v0.5.7
log: https://github.com/invenia/Impute.jl/runs/1540506417?check_suite_focus=true
The problem is, the package versions in https://github.com/invenia/Impute.jl/Project.toml#L22 are too old.
so the other packages, such as Flux, CUDA, are restricted to an old version too, which contain bugs (have been fixed in new versions).
I don't know how to fix this CI error. what about remove all the entries in the
[compat]
section? https://github.com/norci/Impute.jl/commit/34b86d6ef8960ed0dfdf35257381605cfa62e07d