Reputation: 2239
Is there a way to see what package versions are available with conda? I am getting an error with jupyter but it was working before. Something like yolk?
Upvotes: 169
Views: 352053
Reputation: 3364
conda list <pattern>
works too.
(base) root@fb7969c44a12:/# conda list jupyterlab
# packages in environment at /opt/conda:
#
# Name Version Build Channel
beatrix-jupyterlab 2023.46.184821 pypi_0 pypi
jupyterlab 3.6.3 pypi_0 pypi
jupyterlab-git 0.41.0 pypi_0 pypi
jupyterlab-lsp 4.0.1 pypi_0 pypi
jupyterlab-server 2.22.0 pypi_0 pypi
jupyterlab-widgets 3.0.7 pypi_0 pypi
jupyterlab_pygments 0.2.2 pyhd8ed1ab_0 conda-forge
Upvotes: 3
Reputation: 1
Can find all version of Anaconda Conda installation package here: Anaconda_Conda_package
If you have conda installed and want to install different version of conda:
conda install conda=<CONDA_PKG_VERSION>
For example:
conda install conda=23.1.0
Upvotes: 0
Reputation: 6841
To trim down the long and slowly loading conda search
output to just the (latest) version(s) appropriate for your environment, you can use MatchSpec filters, as documented here in conda Github repo
For example to get all available builds of scikit-learn
pre-compiled for Python 3.11 from the free conda-forge
channel, run this in your Linux terminal:
$ conda search "conda-forge/linux-64::scikit-learn=[build=py311*]"
Loading channels: done
# Name Version Build Channel
scikit-learn 1.1.3 py311h3b52e38_1 conda-forge
scikit-learn 1.2.0 py311h67c5ca5_0 conda-forge
scikit-learn 1.2.1 py311h67c5ca5_0 conda-forge
scikit-learn 1.2.2 py311h103fc68_1 conda-forge
scikit-learn 1.2.2 py311h67c5ca5_0 conda-forge
scikit-learn 1.2.2 py311hc009520_2 conda-forge
scikit-learn 1.3.0 py311hc009520_0 conda-forge
scikit-learn 1.3.1 py311hc009520_0 conda-forge
Note that the most recent version is placed at the bottom of the list (they are sorted in chronological order), so it can be found using tail -n1
, e.g.:
$ conda search "conda-forge/linux-64::scikit-learn=[build=py311*]" | tail -n1 | awk '{print $2}'
1.3.1
Cautions:
using version
for narrowing down major and/or minor version is risky, because version=1.*.*
would miss versions such as 1.1
or 1
,
setting architecture (using subdir
key) to linux-64
can miss some useful Linux 64-bit packages, if they are stored in the noarch
folder instead of linux-64
,
for some packages an older version of Python may be required (e.g. up to 3.9 for the "deprecated" notebook
).
Upvotes: 6
Reputation: 16581
To control specific channels, use -c
option. For example:
conda search -c conda-forge jupyterlab
The above will also search in the channels listed in .condarc
, so to avoid that (and get results faster) one can use --override-channels
:
conda search -c conda-forge --override-channels jupyterlab
To only show versions above a specific release, use "{package}>={release}"
. For example:
conda search -c conda-forge "jupyterlab>=3.5"
Note that some shells (esp. Windows) do not like single quotes, so using double quotes is safer.
Finally, if you intend to use the output in a program, to avoid parsing the results one can use --json
:
conda search -c conda-forge --override-channels --json "jupyterlab>=3.6"
This will return:
{
"jupyterlab": [
{
"arch": null,
"build": "pyhd8ed1ab_0",
"build_number": 0,
"channel": "https://conda.anaconda.org/conda-forge/noarch",
"constrains": [],
"depends": [
"ipython",
"jinja2 >=2.1",
"jupyter_core",
"jupyter_server >=1.16.0,<3",
"jupyter_server_ydoc >=0.6.0,<0.7.0",
"jupyter_ydoc >=0.2.2,<0.3",
"jupyterlab_server >=2.19,<3",
"nbclassic",
"notebook <7",
"packaging",
"python >=3.7",
"tomli",
"tornado >=6.1.0"
],
"fn": "jupyterlab-3.6.0-pyhd8ed1ab_0.conda",
"license": "BSD-3-Clause",
"license_family": "BSD",
"md5": "1a9cd36192678fc2175145c9103b95ff",
"name": "jupyterlab",
"noarch": "python",
"package_type": "noarch_python",
"platform": null,
"sha256": "66da471830af4f5a7baa6229240c9dfe0fcc43bf20cc576067dab742bf5ec02e",
"size": 5827178,
"subdir": "noarch",
"timestamp": 1675350928375,
"url": "https://conda.anaconda.org/conda-forge/noarch/jupyterlab-3.6.0-pyhd8ed1ab_0.conda",
"version": "3.6.0"
},
{
"arch": null,
"build": "pyhd8ed1ab_0",
"build_number": 0,
"channel": "https://conda.anaconda.org/conda-forge/noarch",
"constrains": [],
"depends": [
"ipython",
"jinja2 >=2.1",
"jupyter_core",
"jupyter_server >=1.16.0,<3",
"jupyter_server_ydoc >=0.6.0,<0.7.0",
"jupyter_ydoc >=0.2.2,<0.3",
"jupyterlab_server >=2.19,<3",
"nbclassic",
"notebook <7",
"packaging",
"python >=3.7",
"tomli",
"tornado >=6.1.0"
],
"fn": "jupyterlab-3.6.1-pyhd8ed1ab_0.conda",
"license": "BSD-3-Clause",
"license_family": "BSD",
"md5": "c7de31a5b57a9fc1aa4d3fb9993819c6",
"name": "jupyterlab",
"noarch": "python",
"package_type": "noarch_python",
"platform": null,
"sha256": "8f7d234af44356633f8d418ed3001e814215ff09cedbec9583e3fb10fb7cc5e2",
"size": 5354015,
"subdir": "noarch",
"timestamp": 1675434565845,
"url": "https://conda.anaconda.org/conda-forge/noarch/jupyterlab-3.6.1-pyhd8ed1ab_0.conda",
"version": "3.6.1"
}
]
}
Upvotes: 11
Reputation: 5970
To get the version of certain package you can filter it by grep
Like:
$ conda list | grep tensorflow
Result:
tensorflow 2.2.0 mkl_py36h5a57954_0
tensorflow-base 2.2.0 mkl_py36hd506778_0
tensorflow-estimator 2.2.0 pyh208ff02_0
Upvotes: 9
Reputation: 141
If you know the name of the package you want to install search for all available versions of it. eg. for package pandas you will do the following
conda search pandas
and then install the version you want using
conda install pandas=1.0.2
Upvotes: 13
Reputation: 2492
To search for a specific package, use: conda search -f <package_name>
. For example, based on the question, to search all versions for "jupyter" package, you'll do: conda search -f jupyter
. This will only return information about packages named "jupyter" exactly.
Source: https://docs.conda.io/projects/conda/en/latest/commands/search.html
Upvotes: 195
Reputation: 1848
To list packages that are installed on your anaconda machine
conda list
This is to list all packages available for anaconda
conda search
Upvotes: 50
Reputation: 400
As an addendum, you can use the output of conda search
to fine-tune the version of the package you need installed. E.g. in the list from the 'nasica88', there are three albaster 0.7.7 versions available with with different python versions. If you require e.g. albaster 0.7.7 with python 3.4, you install it as following:
$> conda install albaster=0.7.7=py34_0
So, the second =
sign is your friend here.
Upvotes: 23
Reputation: 1205
You can just type "conda search" which will give you something like the following.
$ conda search
Fetching package metadata .........
affine 2.0.0 py27_0 defaults
2.0.0 py35_0 defaults
2.0.0 py36_0 defaults
alabaster 0.7.3 py27_0 defaults
0.7.3 py34_0 defaults
0.7.7 py27_0 defaults
0.7.7 py34_0 defaults
0.7.7 py35_0 defaults
0.7.9 py27_0 defaults
Upvotes: 74