Troubleshooting#
This page details some common issues and their respective workarounds. For Anaconda installation or technical support options, visit our support offerings page.
403 error#
Cause#
A 403 errors is a generic Forbidden error issued by a web server in the event the client is forbidden from accessing a resource.
The 403 error you are receiving may look like the following:
Collecting package metadata (current_repodata.json): failed
UnavailableInvalidChannel: The channel is not accessible or is invalid.
channel name: pkgs/main
channel url: https://repo.anaconda.com/pkgs/main
error code: 403
You will need to adjust your conda configuration to proceed.
Use `conda config --show channels` to view your configuration's current state,
and use `conda config --show-sources` to view config file locations.
There are several reasons a 403 error could be received:
There are a few possible reasons for receiving this error:
The user has misconfigured their channels in their configuration (for example, the secure location where the token is stored was accidentally deleted (most common)
A firewall or other security device or system is preventing user access (second most common)
We are blocking their access because of a potential terms of service violation (third most common)
Solution#
First, run the following to undo your configuration:
conda config --remove-key default_channels
Next, install or upgrade the conda-token tool:
conda install --freeze-installed conda-token
Lastly, re-apply the token and configuration settings:
# Replace <TOKEN> with your token conda token set <TOKEN>
If this doesn’t resolve the issue, Anaconda recommends consulting our Terms of Service error page.
HTTP 000 CONNECTION FAILED#
If you receive this error message, first run the following command:
conda config --set ssl_verify false
Then, run the following to install conda-token
:
conda install conda-token -n base
Lastly, run the following to ensure the token verification step ignores SSL errors:
# Replace <TOKEN> with your token
conda token set --no-ssl-verify <TOKEN>
You may see the following warning, though this is to be expected:
/Users/<USER_NAME>/Applications/miniconda3/lib/python3.7/site-packages/urllib3/connectionpool.py:1020: InsecureRequestWarning: Unverified HTTPS request is being made to host 'repo.anaconda.cloud'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
Environment creation failing due to policy filter#
Cause#
Implementing strict policy filters with no exceptions can cause essential package dependencies to be filtered out of your repository. Without these packages, commands like conda create --name <ENV_NAME> python=3.10
will fail.
If you are attempting to create a new environment, but your build is failing due to package conflicts or unavailable packages, it’s likely due to your IT team’s strict policy filter. You can request that package exceptions can be added to a policy filter, but you’ll need to know which packages are causing problems first.
Solution#
To perform this test, you’ll need a channel that has no policy filter applied to it. Create the channel in your organization and name it quarantine
. Once created, add it to your .condarc
file. For help adding a channel to your .condarc
file, see Channels.
With your quarantine channel created and added to your .condarc
file, you can run the following command:
# Replace <ENV_NAME> with a test environment name (this is not permanent)
# Replace <CHANNEL> with your channel name
conda create --name <ENV_NAME> -c <CHANNEL> -c quarantine python=3.10 --dry-run
Note
If you have your channel alias set in your .condarc
, you can use just the channel name with the -c
(channel) argument. If you do not, you can use the full channel URL. You can copy the channel URL from your Channels page. For more information on setting your channel alias, see Using the .condarc conda config file.
For example, if you are trying to test building an environment from the snakes channel, the command would be:
conda create --name test_environment -c snakes -c quarantine python=3.10 --dry-run
Caution
The ordering of snakes
and quarantine
is essential. Conda will attempt to solve the environment in the order the channels are listed, so quarantine
must be listed last.
Your return will look like this:
## Package Plan ##
environment location: /Users/<USER>/opt/anaconda3/envs/test_env
added / updated specs:
- python=3.10
The following packages will be downloaded:
package | build
---------------------------|-----------------
openssl-1.1.1t | hca72f7f_0 3.3 MB quarantine
pip-23.0.1 | py310hecd8cb5_0 2.6 MB quarantine
python-3.10.11 | h218abb5_2 13.1 MB quarantine
setuptools-66.0.0 | py310hecd8cb5_0 1.2 MB snakes
sqlite-3.41.2 | h6c40b1e_0 1.2 MB snakes
tzdata-2023c | h04d1e81_0 116 KB snakes
wheel-0.38.4 | py310hecd8cb5_0 66 KB snakes
xz-5.4.2 | h6c40b1e_0 372 KB snakes
------------------------------------------------------------
Total: 22.0 MB
The following NEW packages will be INSTALLED:
bzip2 snakes/osx-64::bzip2-1.0.8-h1de35cc_0
ca-certificates snakes/osx-64::ca-certificates-2023.01.10-hecd8cb5_0
libffi snakes/osx-64::libffi-3.4.2-hecd8cb5_6
ncurses snakes/osx-64::ncurses-6.4-hcec6c5f_0
openssl quarantine/osx-64::openssl-1.1.1t-hca72f7f_0
pip quarantine/osx-64::pip-23.0.1-py310hecd8cb5_0
python quarantine/osx-64::python-3.10.11-h218abb5_2
readline snakes/osx-64::readline-8.2-hca72f7f_0
setuptools snakes/osx-64::setuptools-66.0.0-py310hecd8cb5_0
sqlite snakes/osx-64::sqlite-3.41.2-h6c40b1e_0
tk snakes/osx-64::tk-8.6.12-h5d9f67b_0
tzdata snakes/noarch::tzdata-2023c-h04d1e81_0
wheel snakes/osx-64::wheel-0.38.4-py310hecd8cb5_0
xz snakes/osx-64::xz-5.4.2-h6c40b1e_0
zlib snakes/osx-64::zlib-1.2.13-h4dc903c_0
DryRunExit: Dry run. Exiting.
Packages that were retrieved from the quarantine
channel are the packages that need to be considered for exceptions in the policy filter.