DataArrays.jl icon indicating copy to clipboard operation
DataArrays.jl copied to clipboard

Julia v0.7 compatibility

Open nico202 opened this issue 7 years ago • 9 comments

Hi, trying to install this on julia v0.7 and getting lot of warnings + errors. Last commit might address this, is it possible to tag a relase and update uncurated.jl? Thanks

nico202 avatar Jun 17 '18 23:06 nico202

Unfortunately I still get an error when loading even on master. Apparently Femtocleaner will soon be working, which should fix most deprecations. Then we'll need somebody to fix the more serious errors.

nalimilan avatar Jun 18 '18 09:06 nalimilan

Though note that DataArrays shouldn't really be needed on 0.7 since Array{Union{T,Missing}} is fast (though maybe not always as fast as DataArray{T}).

nalimilan avatar Jun 18 '18 09:06 nalimilan

@nalimilan thanks. I wanted to try Queryverse on 0.7, so maybe I'd just have to wait for them to fix it and tag the release

nico202 avatar Jun 18 '18 10:06 nico202

RCall.jl still depends on DataArrays.jl. I don't know if they plan to move away from DataArrays.jl or not. It would be quite nice to have RCall.jl on 0.7 sooner, rather than later, if updating DataArrays.jl is straightforward. Anything I can do to help? Precompiling DataArrays.jl generates various deprecation warnings, which I can live with, but it errors on "ipermute!! not defined". Maybe the second ! is just a typo?

phaverty avatar Jun 27 '18 16:06 phaverty

It's not a typo, it's just been renamed to Base.invpermute!! in 0.7. A PR using the new name when VERSION >= v"0.7.0-DEV.3173" would be welcome.

nalimilan avatar Jun 27 '18 16:06 nalimilan

RCall.jl still depends on DataArrays.jl. I don't know if they plan to move away from DataArrays.jl or not.

They should. Perhaps a PR to RCall would be even better, moving it to using Array{Union{T,Missing}} instead of DataArray{T}. I'd be happy to review that.

ararslan avatar Jun 27 '18 21:06 ararslan

RCall should definitely make the switch (and IIRC it already supports Array{Union{T,Missing}}), but it should probably continue depending on DataArray for a while just for compatibility (i.e. just to accept such arrays).

nalimilan avatar Jun 27 '18 21:06 nalimilan

I guess the part which will require the most work to port is src/broadcast.jl. That won't be trivial to do.

nalimilan avatar Jun 28 '18 17:06 nalimilan

It looks like RCall may just drop DataArrays for 0.7, since it already supports Array{Union{T,Missing}}. Please see their issue 247. That seems like a nice, tidy solution. 0.7 seems like a good time for a bit of breakage.

phaverty avatar Jun 28 '18 20:06 phaverty