7 ms·
Anaconda 5.0 Released
- Redoubts 9y agohttps://docs.anaconda.com/anaconda/release-notes https://docs.anaconda.com/anaconda/release-notes
- skierscott 9y agoThis adds support for new compilers. This makes Dask (pure Python paralleization) run 20% faster https://twitter.com/mrocklin/status/923581208482721794 https://twitter.com/mrocklin/status/923581208482721794 according to Matthew Rocklin, the main developer
- kalefranz 9y agoEasy availability of gcc 7.2 on CentOS 6 is kind of a big deal.
- RayDonnelly 9y agoAs is (actually working, usable) clang 4.0.1 on macOS 10.9
- tavert 9y agoNot that big. A few minutes of following the instructions and you can build it in a docker container, post it as a tarball that anyone can use without needing the rest of miniconda to install.
- RayDonnelly 9y agoI don't think thats true. Our compilers are complete pseudo-cross compilers (i.e. with binutils, glibc, kernel headers and their own sysroot) that can be both hosted on and always target CentOS6. This means software built with them will run on CentOS6 and will not, by default, pick up your CentOS6-incompatible headers and libraries in /usr/include and /usr/lib respectively.
- tavert 9y agoNone of that requires conda to be able to do. Can also build in a chroot, without needing an unconventionally configured compiler, if you want to make your binaries redistributable - which is a requirement some users will have but not all. "Easy availability of gcc 7.2 on CentOS 6" doesn't require being able to build for centos 6 from something newer, docker or chroot tools are fine for that.
- sorenjan 9y ago> Spaces are no longer allowed in the installation path on Windows. Seems like a weird regression 16 years after Windows XP shipped with "My Documents". I used Anaconda for a while, but I've since moved back to CPython. Most packages install fine on Windows using pip now, and the ones that don't is just a download away from http://www.lfd.uci.edu/~gohlke/pythonlibs/ http://www.lfd.uci.edu/~gohlke/pythonlibs/. Using the standard Python distribution is also nicer because of the python launcher, and it makes .py files executable like .exe and .bat.
- rusk 9y ago> Seems like a weird regression 16 years after Windows XP shipped with "My Documents". Interesting though, that 6 years ago they reverted back to simply "Documents". In modern windows, essential user paths no longer need have spaces in them. The persistence of "Program Files" and the hilariously tricky "Program Files (x86)" are notable however.
- timthelion 9y agoWhat is wrong with spaces in file names? When my wife was doing research for her thesis she had all the papers she was citing named with the full title of the paper. Linux handled it fine, and it seemed utterly modern and natural to me.
- maxerickson 9y agoFor something like a programming language interpreter, it's just annoying. C:\Program Files\Python 3.0\ vs C:\bin\python3 (when I was using windows, I installed python in c:\bin because I knew I would be typing it quite a bit)
- timthelion 9y agoI don't know much about windows but does it not have a $PATH like in POSIX systems? I seem to remember that typing "run cmd.exe" worked without having to give the full path of "cmd.exe".
- monkmartinez 9y agoI love Anaconda. To me it is the most obvious way to do Python. If you don't know what is going on with your env exactly, just go to your Anaconda folder and investigate. I have done some pretty funky stuff just messing around and have never had problem. Great work!
- simonw 9y agoIf I'm fluent with virtualenv and already use it for all of my Mac OS X Python development, is there a reason I should still consider trying Anaconda?
- pletnes 9y agoIt ships with intel MKL optimizations for e.g numpy/sciy. That’s a lot of hassle to get working in a virtualenv, not to mention maintaining several! MKL is also multicore parallelized out of the box.
- stadeschuldt 9y agoIsn't that working on the Mac ootb as well? If I install numpy it links it against https://developer.apple.com/documentation/accelerate https://developer.apple.com/documentation/accelerate which is very close to MKL/OpenBLAS performance.
- pletnes 9y agoThere are also tons of other libs that apple don’t have equivalents for. E.g GDAL, libgfortran, and lots of others. Not sure if Accelerate is multicore ootb?
- nnq 9y agoYeah, it allows working with multiple Python versions fine, like not just 2 vs 3 like on modern Linuxes, but also having one virtualnenv use 2.4, another 2.7, another 3.6 etc. Couple this with good support for Windows too, and it's basically the only usable cross platform Python version manager... kind of sad all this functionality is not baked into core CPython's package, it would make language adoption 10x easier since "multiple python madness" is what trips newbies, especially if they use Windows or a Linux they don't administer themselves... Also nicely optimized precompiled stuff, again, for the benefit of new Windows users, for which anything that needs compiling anything has a 50% change of breaking.
- mwj 9y agoIf you use data science libraries like numpy, pandas etc then these rely on OS level packages like libgfortran and liblapack. Anaconda is a way to guarantee you are running a known stack from dev machine through to production. This is the key benefit IMO (as well as getting improving deploy times)
- deepsun 9y agoLast time I checked it didn't work with virtualenv. Does it now?
- kalefranz 9y agoYes. conda install -c conda-forge virtualenv That version is patched to fix previous incompatibilities.
- AlexeyBrin 9y agoAnaconda has his own mechanism to create a virtual environment. You use the conda command to create a new virtual environment: https://conda.io/docs/user-guide/tasks/manage-environments.html https://conda.io/docs/user-guide/tasks/manage-environments.h...
- kalefranz 9y agoRight. If you’re stuck on python virtualenv, you can use it if you want. Conda environments are more general. Light-weight environments for any language or runtime or aggregation of packages, not just python.
- nnq 9y agoIt's own environments mechanisms is even better: each environment can have it's own separate python version! The "miniconda" installer variant is something I even use in production when on the same server I need to run microservices one written fro Python 2.4, another for Pythn 2.7+, another for Python 3.3, another for Python 3.6+ etc. Really, anyone doing Python should embrace conda envs - they are awesome and allow skipping the entire "Python 2 or 3" useless discussion and replacing it with "just use whatever python you want", just specify it clearly... The whole "2 vs 3" incident would never even have existed if people people would've had something like Node's NVM or Ruby's RVM, and "conda envs" it's basically this, only that it combines support for its own special package formats with this.
- captainmuon 9y agoYou can do that with virtualenvs, too. `mkvirtualenv -p python3.6` for example. When you activate that virtualenv, it uses that interpreter version.
- makmanalp 9y agoVery excited for this. My go-to is still regular old pip and virtualenv, but I love anaconda for /not/ having to compile MKL / BLAS on my own in every new environment I use. Also check out the JupyterLab alpha which comes with this, which is very neat: https://channel9.msdn.com/Events/PyData/Seattle2017/BRK11 https://channel9.msdn.com/Events/PyData/Seattle2017/BRK11 (demo starts around 15:00)
- jatin2302 9y agoOoh. I really thought a new anaconda movie is coming.!!!
- milliams 9y agoI do like Anaconda and it's a really great way to easily get Python on the computers of the people I teach. However, I do have some problems with how they mess about with the Python ecosystem. If you read a tutorial on Python modules, it will tell you to `pip install`, create a venv etc. Anaconda have removed the ensurepip module (part of the standard library since 3.4) which is used during the venv creation to install pip. PEP 453 explicitly recommends that "Even if pip is made available globally by other means, do not remove the ensurepip module in Python 3.4 or later." to ensure that the `venv` module works as expected. The lack of an `ensurepip` module means that trying to create a venv with `python3 -m venv my_test_venv` gives an error of: Error: Command '['/home/milliams/my_test_venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1. People say that this is ok since `conda` is better but I don't want to have to teach my students the standard tools for Python module development only to have to say "except if you're using Anaconda...". Especially since the really shouldn't have to know what distribution they are using. It should be an implementation detail.
- spot 9y agoconda is the standard tool. tell your students to use it, not venv. problem solved.
- dschep 9y ago> conda is the standard tool. Since when? I was under the impression it's a data science focused alternative to the standard tools(pip, venv module, eventually pipenv).
- metalliqaz 9y agoIt's standard within Anaconda. I think the subtext is that if you have the students install Anaconda, they should use Anaconda tools. If you want standard python, then install standard python.
- ams6110 9y agoIf you're doing/teaching scientific computing with Python, it's widely used, if not "the" standard. Anaconda will almost certainly be available in any current scientific computing environment.
- afarrell 9y agoIs anyone using conda to manage environments with versions of other languages/runtimes? For a while, I was using it to maintain different nodejs and ruby runtimes and package-sets, but stopped around node 6.6.0, mostly because I never got efficient enough at creating packages to create conda packages for different ruby or packages other than the interpreters themselves. If anyone feels like it, you can run `conda create name=trycondanode --channel amfarrell nodejs=6.6.0`
- tavert 9y agoHave tried for C, C++, Fortran, Julia, and a bit of R. Too many pythonisms (and requiring a fairly heavyweight miniconda setup to run) for it to work naturally when you actively don't want to be using any python. I think the lackluster adoption by any other communities is evidence of "language independence" not working out as smoothly as claimed.