Hi, I’m in desperate need of help: I don’t even know where to start.
I’m developing this package https://github.com/sergio-santos-group/ProtoSyn.jl/tree/dev
(I’m linking to the dev branch, this is what I’m trying to merge to the master branch).
However, I’m not the GitHub owner (it’s my supervisor who has recently left the academia, so contact with him has been limited. This may be important later on).
As you can probably see, I have a docs folder full with documentation. Everything runs ok on my machine, I can build the documentation. However, when running through Travis CI (you can check the travis.yml), I get some errors and the documentation is not uploaded. From previous releases, we already have a gh-pages branch, which I tried to update manually (by pushing the build folder to this branch), but that didn’t update the documentation webpage. Another “weird” aspect of my package is that it connects to Python packages using PyCall.jl. In this case, it’s the torchani package, I tried setting up a conda environment to download all Python-side dependencies automatically, see the protosyn.yml file in the project’s GitHub page.
I can share the big Travis CI log, if that helps, but I’ll just paste here some of the important parts (I think they’re important …):
- Conda creates environment from file OK, activates it.
- Python imports the
torchanilibrary OK (downloads ANI parameters, this is a “first step” when usingtorchanifor the first time):
$ python -c "import torchani; torchani.models.ANI2x()"
Downloading ANI model parameters ...
- The
before_installbuild of PyCall.jl works OK:
$ julia -e 'using Pkg; Pkg.add.(["PyCall"]);Pkg.build("PyCall");using PyCall;println("Python for Julia $(PyCall.python) ver. $(PyCall.pyversion)")'
(... installs all dependencies ...)
Python for Julia /home/travis/.julia/conda/3/bin/python ver. 3.9.13
- It seems that the PyCall.jl is pointing torwards the correct python (from the previously built conda environment).
Problem 1:
If I just run this (as previously described), I get an error stating that, when developing the docs, ProtoSyn can’t find torchani. Well, to me it seems like PyCall is pointing torwards the correct Python and that just doing python -c "import torchani; torchani.models.ANI2x()" during the before_install stage is able to find torchani just fine, from the conda environment. I have no idea why later, in the doc building step, it suddently can’t find the installed packages. Is there any extra setting I need to set? Perhaps re-load the conda env during this step, somehow?
Continuing …
I’m able to bypass this issue by adding this bit to the end of the PyCall.jl build step (described earlier):
run(`$(PyCall.python) -m pip install torch`);run(`$(PyCall.python) -m pip install torchani`)
I’m basically re-installing torch and torchani using pip. For some reason, Travis CI can now find this during the doc building step. Using this “trick”:
- Documenter.jl and ProtoSyn.jl (my package) load OK:
The command "julia --project=docs/ -e 'using Pkg; Pkg.add("Documenter"); Pkg.instantiate(); Pkg.develop(PackageSpec(path=pwd()))'" exited with 0.
- The next step (
julia --project=docs/ docs/make.jl) FAILS.
Problem 2:
Downloading ANI model parameters ...
free(): invalid pointer
signal (6): Aborted
in expression starting at none:0
gsignal at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
abort at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x7f603a3e5836)
unknown function (ip: 0x7f603a3ec8b9)
cfree at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_ZN4llvm2cl3optINS_15FunctionSummary23ForceSummaryHotnessTypeELb1ENS0_6parserIS3_EEED2Ev at /home/travis/julia/bin/../lib/julia/libLLVM-12jl.so (unknown line)
__cxa_finalize at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
__do_global_dtors_aux at /home/travis/julia/bin/../lib/julia/libLLVM-12jl.so (unknown line)
_fini at /home/travis/julia/bin/../lib/julia/libLLVM-12jl.so (unknown line)
unknown function (ip: 0x7f603a39f030)
exit at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
main at julia (unknown line)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x400808)
Allocations: 193211636 (Pool: 193157427; Big: 54209); GC: 171
/home/travis/.travis/functions: line 109: 7337 Aborted julia --project=docs/ docs/make.jl
The command "julia --project=docs/ docs/make.jl" exited with 134.
You can also check previous commits to see all the options I’ve already tried. Another problem that may be happening is failure to identify gen-keys, or something like that. As I’ve said, I don’t really have access to this GitHub repository settings …
Any idea on how to help me? Please?