Hi all,
I need to make PyCall and PythonCall work in the same script, because I am using both PyPlot, and AtomsIOPython which depend on PyCall and PythonCall, respectively.
I followed the tips on the PythonCall page to force PyCall to use the same interpreter as PythonCall, that is:
using PythonCall
ENV["PYTHON"] = PythonCall.python_executable_path()
] build PyCall
Now, I am trying to be cleaner in my management of dependencies, so instead of using the default environment, I am using a local one, with:
] activate .
I need to redo the same thing, but in this case, the PythonCall Python interpreter will be located in the my local project directory: "<local-project>/.CondaPkg/env/bin/python"
.
I am still learning how do environments and packages are working in Julia. But as far as I’ve understood, since the packages are shared across different environments, if I rebuild PyCall with this interpreter, then it will be used everytime, and not just in my local environment.
So my question is:
- is it the case ? Did I understand correctly ?
- what is the idiomatic way of dealing with this ? In some way, I need to “vendor” PyCall locally in my environment, but I do not know how to do it.
- and side question, what would be the good practice to adopt with VCS ? I feel like I would not want to track with git the whole
.CondaPkg
directory because it contains binary files, but also I would like someone to reproduce my setup just by cloning the repo.
Thanks !