JuliaOptimalTransport / OptimalTransport.jl

Optimal transport algorithms for Julia
https://juliaoptimaltransport.github.io/OptimalTransport.jl/dev
MIT License
94 stars 8 forks source link

Compatibility Issues #96

Closed davibarreira closed 3 years ago

davibarreira commented 3 years ago

I was trying to install version 0.3.9 of our package, and I'm getting compatibility issues with UMAP.jl. Here is the error message:

(@v1.6) pkg> add UMAP
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package LsqFit [2fda8390]:
 LsqFit [2fda8390] log:
 ├─possible versions are: 0.5.0-0.12.0 or uninstalled
 ├─restricted by compatibility requirements with UMAP [c4f8c510] to versions: 0.6.0-0.11.0
 │ └─UMAP [c4f8c510] log:
 │   ├─possible versions are: 0.1.0-0.1.8 or uninstalled
 │   ├─restricted to versions * by an explicit requirement, leaving only versions 0.1.0-0.1.8
 │   └─restricted by compatibility requirements with Distances [b4f34e82] to versions: 0.1.6-0.1.8 or uninstalled, leaving only versions: 0.1.6-0.1.8
 │     └─Distances [b4f34e82] log:
 │       ├─possible versions are: 0.7.0-0.10.3 or uninstalled
 │       └─restricted to versions 0.9-0.10 by OptimalTransport [7e02d93a], leaving only versions 0.9.0-0.10.3
 │         └─OptimalTransport [7e02d93a] log:
 │           ├─possible versions are: 0.3.9 or uninstalled
 │           └─OptimalTransport [7e02d93a] is fixed to version 0.3.9
 ├─restricted by compatibility requirements with StatsBase [2913bbd2] to versions: [0.5.0-0.6.0, 0.11.0-0.12.0] or uninstalled, leaving only versions: [0.6.0, 0.11.0]
 │ └─StatsBase [2913bbd2] log:
 │   ├─possible versions are: 0.24.0-0.33.8 or uninstalled
 │   └─restricted to versions 0.33.8-0.33 by OptimalTransport [7e02d93a], leaving only versions 0.33.8
 │     └─OptimalTransport [7e02d93a] log: see above
 └─restricted by compatibility requirements with Distributions [31c24e10] to versions: uninstalled — no versions left
   └─Distributions [31c24e10] log:
     ├─possible versions are: 0.16.0-0.25.2 or uninstalled
     └─restricted to versions 0.25 by OptimalTransport [7e02d93a], leaving only versions 0.25.0-0.25.2
       └─OptimalTransport [7e02d93a] log: see above

Do any of you guys knows a way around this? I'm doing some work where I need to use both UMAP.jl and OptimalTransport.jl.

devmotion commented 3 years ago

It's explained at the bottom of the message: the problem is that LsqFit is not compatible with Distributions 0.25. It should be added to https://github.com/JuliaNLSolvers/LsqFit.jl/blob/2d3611f0e7bd506daf423f15c3e78e3feddd7fb0/Project.toml#L15.

devmotion commented 3 years ago

Relevant PR: https://github.com/JuliaNLSolvers/LsqFit.jl/pull/185

davibarreira commented 3 years ago

What about making OptimalTransport.jl compatible with 0.24? I think we set the compat to "0.25", but I don't remember if we indeed needed the latest version.

devmotion commented 3 years ago

I think 0.24 should work as well but it would be good to check if tests pass with 0.24.0 locally once before adding it to the compat section.

davibarreira commented 3 years ago

Thanks. It indeed works. I tested and submitted a PR.

devmotion commented 3 years ago

It should work with the latest release of OptimalTransport. However, one should really fix LsqFit.