Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make ROOT.jl Julia v1 compatible #15

Closed
Moelf opened this issue Sep 22, 2018 · 14 comments
Closed

Make ROOT.jl Julia v1 compatible #15

Moelf opened this issue Sep 22, 2018 · 14 comments

Comments

@Moelf
Copy link
Member

Moelf commented Sep 22, 2018

Also, inspired by https://github.com/scikit-hep/uproot/ , do you think it's possible to have Julia native ROOT io functionality?

edit: we have it now! https://github.com/tamasgal/UnROOT.jl

@oschulz
Copy link
Member

oschulz commented Sep 22, 2018

I definitely plan to make ROOT.jl run on Julia v0.7/v1.0 as soon as possible. But this depends on Cxx.jl, and that's not available on v0.7/v1.0 yet - @Keno told be that Cxx.jl will be ported soon, though.

@isentropic
Copy link

How is the issue going on? If possible I'd like to contribute if possible, this is definitely one of the major things that keeps me away from switching to Julia completely.

@oschulz
Copy link
Member

oschulz commented Oct 24, 2018

I feel you, I have some things that are held up by this myself ... I'm sure that Cxx.jl will be ported to Julia v1.0, but it seems to take a bit longer than expected. See JuliaInterop/Cxx.jl#390 and JuliaInterop/Cxx.jl#393. More people demonstrating a need for this may improve the priority of the Cxx.jl port.

@joliver92
Copy link

Hi @oschulz not sure if you saw but Keno's Cxx appears to have been updated for v1.0
Not sure what will need to be done but I guess you understand the package better than anyone =)

@oschulz
Copy link
Member

oschulz commented Nov 21, 2018

Yes, I saw - thanks, Keno!! Haven't tested it yet - apparently there's still something with the build to figure out. I may wait a few days until @Keno tags a new Cxx.jl release.

Then I'll have to port the modified Julia binary that allows ROOT's and Julia's LLVM to coexist to Julia v1.0 - I hope that won't be too hard, but no promises until I've tried. ;-)

@oschulz
Copy link
Member

oschulz commented Apr 30, 2019

A few days ago, a Julia-v1 compatible version of Cxx.jl was released. As soon as I can find some time, I'll try make ROOT.jl Julia-v1 compatible as well. I did a few quick tests, as usual, ROOT doesn't like to find Julia's LLVM instance in memory, so the special executable workaround will be necessary again.

@oschulz oschulz changed the title No longer works for new Julia 0.7 or 1.0 Make ROOT.jl Julia v1 compatible Apr 30, 2019
@oschulz
Copy link
Member

oschulz commented Apr 30, 2019

Also see #16.

@ShamrockLee
Copy link
Contributor

The code of a v1.3 compatible Cxx seems ready, and the PR by @Gnimuc would be made soon.
JuliaInterop/Cxx.jl#444

@oschulz
Copy link
Member

oschulz commented Dec 20, 2019

Yes! :-) I guess we still have to update ui.cc and build.jl though - want to try your hand on it, @ShamrockLee?

@ShamrockLee
Copy link
Contributor

@oschulz I was mistaken about some error messages. Sorry for bothering.

@oschulz
Copy link
Member

oschulz commented Dec 20, 2019

No worries, I'm very happy about you taking initiative here - I should have gotten on this a while ago, but was (and still am) blocked by work on other packages ...

@Moelf Moelf closed this as completed Aug 7, 2020
@oschulz
Copy link
Member

oschulz commented Aug 8, 2020

@Moelf , why did you close this?

@Moelf
Copy link
Member Author

Moelf commented Aug 8, 2020

I was cleaning my opened issues.

I think a C++ ROOT wrapper for Julia is not maintainable, maybe better use uproot wrapper or UnROOT.jl

(maybe the up coming RNTuple and librootio will save us too.

@oschulz
Copy link
Member

oschulz commented Aug 8, 2020

Ah, right :-)

I think a C++ wrapper would be mainainable if Cxx.jl wouldn't break with every new Julia version and the ROOT people would sort out the LLVM conflicts - but for now, I think you are right, UpROOT.jl and UnROOT.jl will be the better options.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants