Julia’s Project.toml environments have been designed with the benefit of hindsight, solving many of conda/virtualenv/pip’s pain points.Įdit 2: If you need a version multiplexer for the language, not just a package manager for the libraries in the language, juliaup is a pretty good solution, similar to rustup.Īs a developer and Geo-data scientist, I’m well-versed in Python and R. That works ok for python, but generally, it is a pretty hacky solution with severe overhead, not supported by other languages (maybe they have crammed R into it too). Virtualenv is a mostly python-focused notion, enabled by copying most of your python distribution to a separate folder and dynamically changing most of your PATH variables. But for the above reasons you will probably not find many people interested in helping with your setup.Įdit: I am pretty sure you are wrong about your claim that conda has language-agnostic virtual environments. Lastly, of course you can simply disregard this advice and use conda or build your own extension. This is a good enough reason to pick an idiomatic tool for Julia instead of cramming it into conda. Moreover, it is indeed true that installing binary dependencies is much more difficult with pip or conda than with Pkg (I am saying this as someone that loves python and has been using it since version 2.5). Learn the idiomatic way to do package management for the given language.ĭisregarding why the idioms exist is probably why you received such a hostile set of responses Just do not use apt for python management or conda for julia management – it is an experience that will only cause problems. But that effort pays off immensely compared to the effort of cramming one of these package managers as a solution for another language. It takes effort to learn how to use them idiomatically. Each one of these tools is designed with particular goal in mind. And I enjoy using cargo for Rust, apt for Debian sysadmin, and Pkg for Julia. I have mostly enjoyed using pip/virtualenv in python (never really perceived conda as better). Pkg also has a Conda REPL mode extension, I really would check out if what’s already there doesn’t work for you. You can also call to or from e.g R, and RCall.jl has an R REPL mode. In both cases you use Julia’s Pkg to install Julia packages, directly in the former case or I guess indirectly with that JuliaPkg, in that latter case. It will automatically download a suitable version of Julia if required. JuliaCall manages its Julia dependencies using JuliaPkg. If you want Python to be your main language, and to call Julia, then that’s also possible, again with the same “PythonCall” package, sort of, as then with its JuliaCall Python module, and: If you really need to install Julia with Conda then it’s possible as Karpinski mentioned and the latest (for now) 1.8.2 is there. You can use Julia as you main language and Python with PythonCall.jl (and/or P圜all.jl) and it uses Conda (or actually its clone mamba) to take care of Python dependencies. ![]() ![]() ![]() The problem is that I don’t want to use only Julia. In the meantime, if not being able to use Conda to manage Julia packages makes Julia too much of a hassle for you, that’s ok, no one is forcing you to use it (I hope) use it if it seems worth it to you. If you’re interested in this I would suggest opening an issue with Conda asking them to add support for Julia packages. But that work is entirely on the Conda end, not the Julia end. However, if someone from the Conda community were to teach Conda how to manage Julia’s package layout and could bridge the way the two systems manage binary dependencies, that would be great. Both of these would be very challenging to make Conda work with-the systems simply take very different approaches to installing and managing things. Julia also has a sophisticated system for pre-building and providing binary dependencies in a cross-platform, reproducible way that seems hard to integrate with Conda. Julia supports installing and managing multiple versions of the same package at the same time and using them from different lightweight environments. Using Conda to install and manage Julia packages, on the other hand, definitely isn’t workable. If you use Conda to install Julia and find that is out of date or broken, please file issues with Conda. There seem to be some delay on that end making new versions available and sometimes their builds are misconfigured, which is why we don’t recommend it. Using Conda to install Julia itself is fine and already works.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |