This might be a good question for @tim.holy . So I had written a package in python to process some geospatial images–raster files. The package had a nice CLI and everything. The problem was, the python geospatial libraries are a really big mess when it comes to cross-platform installation, etc. Because the python geospatial libraries are wrappers for C and C++ libraries (GDAL, OGR, etc.) in the background, I could not write a package in python that would run on Linux, Mac, and Windows; the compilation of the C and C++ libraries was too fragile. Perhaps there are ways to do it, but I could not figure them out.
I thought about using Julia as the guts of the package instead of the python geospatial. It seems like the Julia geospatial packages are better able to compile on different platforms–even though the julia package also rely on the same C and C++ libraries as python.
BUT, the limitation is that no so many of the users that I am targeting know julia, and the python CLI frameworks are more mature than the present julia CLI frameworks. For example the Click
CLI in python support grouping commands into subgroups for a nice interface–but I could not find something similar in the current julia CLI frameworks. So I was wondering how to wrap a julia library in a python package? I was hoping to avoid having to install a full julia implementation on the user’s machine, but it could be okay if that is required? And finally, then would I use pip
as the package manager, or conda
or is one better than the other for a mixed julia/python package. My original package was written using conda
which was better for geospatial stuff–but still ultimately would not compile across platforms.
If anyone has a suggestion or comment, all are welcome.