Hi Marius,
Thanks. I did appreciate that video. It was helpful to understand the big picture and to use packages that work.
Unfortunately, my experience is that while some packages “just work”, others give still confusing error messages.
Further, I think that trying to add a package that’s not quite right can might prevent all your other packages from working.
I think I’ve figured out that I had two problems at once that made it difficult to tell when I was getting closer/farther.
One problem was an unregistered package that just provided a C library. I think that the package manager thought it hadn’t built properly, so it was preventing other packages from working right. Now I’ve created empty directories, an empty module, a build.jl script, etc. to convince the package manager that that package is “working”.
My next problem was that in trying to solve the strange error messages about Pkg and Libdl, I had tried adding to them to the REQUIRE file. But that appears to have made the problems worse. For the others who encoutner that problem, it seems that it can be solved by
julia
] dev [giturl]
In a shell, cd into dev/package directory
Remove Pkg and Libdl from the REQUIRE file.
Commit and push
Back in julia:
] update
] build
] precompile
Once you gett it working, commit and push, then you can free the dev version, and readd the now standard version of the package with “] add [giturl]”.
At that point, you have to hope that all the dependancies compile properly. Unfortunately, it seems that my use of JLD and DataArrays is preventing me from going farther in my testing.
I’ll probably get stumped again soon. So I think a tutorial about porting packages would be helpful.
It would also be useful to have someone provide an example workflow of how to maintain code that still works with v0.6.* while trying to gradually get it closer to working with v0.7.
I’ve just created a separate branch for my projects that I’m trying to port. But if it takes a while for other packages they depend on to be ported, then I fear that the changes to work with v0.7 might start to conflict with other development happening.
Cheers,
Eric