Improved installation for diffeqpy and similar packages

Here is an alternative, more user friendly, packaging of diffeqpy. (diffeqpy allows calling DifferentialEquations.jl from Python):

If you use diffeqpy, please give this a try. It is meant to avoid things like this (unanswered) request for help on discourse.

diffeq_julia delegates managing Julia and it’s packages to julia_project and find_julia. The latter two packages handle searching for julia, downloading julia, installing Julia packages, detecting when there is a libpython conflict and offering to solve it (for instance by using a depot specific to the python package), automatically compiling a system image, automatically using a system image.

I went to great lengths to make if fully automatic and customizable. For example: I have managed to ask all possible questions at once place in installation rather than three places each separated by a few minutes of work. You can avoid all questions by setting environment variables.

This system targets not people who are curious about Julia, but rather people and orgs for whom the answer to every question is “more python”. But, it should be convenient for anyone in the remaining set of measure zero.

I have opened an issue suggesting incorporating this system into diffeqpy.

EDIT: I have also opened a PR to diffeqpy that makes the changes described above.

Any reason to not just replace the diffeqpy code with it? I’d be willing to scrap it for this better thing.

I think it would be a great idea. What I’m looking for here is exposure to people who might want to test it before it gets into diffeqpy. Also, to advertise a real application of find_julia and julia_project , in the hope of finding other projects that might use them as well. I originally wrote it for another project which I hope to opensource soon.

I’ll open a PR soon. Although as I said elsewhere, it could use a review from someone with more experience in the byzantine world of python packaging.

EDIT: A PR has been opened.