davidssmith / DCEMRI.jl

DCE MRI analysis in Julia
Other
37 stars 16 forks source link

Update for Julia 0.7/1.0 #44

Closed notZaki closed 5 years ago

notZaki commented 6 years ago

Changes:

One unresolved issue is that the new Pkg3 broke the optional PyPlot that was introduced in PR #40. In the past, Julia didn't check whether a used package was mentioned in REQUIRE, but it does now. Things work fine if PyPlot isn't installed, but if PyPlot is installed, then an error is thrown because DCEMRI tries to load PyPlot without mentioning it as a dependency. The new TOML-based configuration might make it possible to define optional dependencies, but I'm not up to speed on its workings.

The are other upstream warnings, mostly related to MAT.jl. The tests only pass on Julia 0.7 for now (at least for me), because 1.0 makes the warnings lethal.

davidssmith commented 6 years ago

I originally extracted LevMarq because I wanted to simplify the interface and not have to worry about upstream changes to LsqFit, which was not so stable when I first starting using Julia. It is probably ok to switch to it as a dependency now.

Looks like there is a problem with MAT.jl in the Travis build? Is there another way to load MAT files? Perhaps with JLD or JLD2?

notZaki commented 6 years ago

The travis build is failing to build HDF5 for this PR, but the same branch builds fine for me. Not sure what's going on there.

MAT.jl just has deprecation warnings, which should get fixed in the near future. Not sure if JLD would work. Another alternative is Matlab.jl but that requires a licensed installation of Matlab.


Additional changes:

davidssmith commented 6 years ago

I'm going to wait until MAT is updated, then if all passes, I'll merge. Thanks for the patch!

davidssmith commented 6 years ago

What do you think about removing MAT support entirely and taking the input as HDF5?

notZaki commented 6 years ago

Removing .mat support would be disruptive for those that have already written code for passing/receiving .mat files to/from Julia. Though there's nothing wrong with additional support for HDF5 files.

There's still some activity going on with MAT, so it's a matter of time. Seems the 0.6->0.7/1.0 transition was too abrupt.