PyCharm 2021.1 Help

Troubleshooting

While working with PyCharm, you might encounter some warning or error messages. This chapter provides the list of the known problem solutions and workarounds.

You can also find the recommendations for troubleshooting and performing basic diagnostics of your working environment.

Reported ProblemPossible causeSolution
Project Settings
A Python interpreter is marked as unsupported in the list of available interpreters in Preferences/Settings | Project | Python Interpreter.The Python version of the marked interpreter is outdated and it is not supported in PyCharmYou can delete the unsupported interpreter from the list of the available interpreters. For more information about the supported Python versions, see Python Support.
Code Editing
PyCharm Editor restricts code editing.You have installed the IdeaVim plugin and thus enabled the vim editing mode.

Deselect Vim Emulator on the Tools menu. See Using Vim Editor Emulation in PyCharm for more details.

Python code is not highlighted in the Editor.The PY files are associated with the text file format.

In the Settings/Preferences dialog Ctrl+Alt+S, navigate to Editor | File Types, select Text from the Recognized File Type list, select *.py from the File Name Patterns list, and click Remove.

Code Completion
Code completion action is not available.Power Save Mode is enabled.From the main menu, choose File and clear the Power Save Mode checkbox.
Your file doesn't reside in a content root, so it doesn't get the required class definitions and resources needed for code completion.Restructure your sources files.
A file containing classes and functions that you want to appear in the completion suggestions list is a plain text file.Reconsider and modify (if needed) the format of your source files.
Debugging
Cannot debug a Docker run/debug configuration; the Debug action is not available.PyCharm provides debugging for Python run/debug configurations.Configure a Docker-based interpreter and debug your Python script in a Docker container.
Python Debugger hangs when debugging Gevent code.Gevent compatibility mode is not enabled.

In the Settings/Preferences dialog Ctrl+Alt+S, navigate to Build, Execution, Deployment | Python Debugger and select the Gevent compatible checkbox.

Some import errors are reported in your PyQt code.PyQt is installed on the interpreter but is not imported in the application code.

In the Settings/Preferences dialog Ctrl+Alt+S, navigate to Build, Execution, Deployment | Python Debugger, and clear the PyQt compatible checkbox in the . This mode is enabled by default.

Debugging process is slow.Debugger stops not only when the process terminates with an exception but on each exception thrown (even though it was caught and didn't lead to the process termination).Clear the On raise checkbox in the Breakpoints dialog (Run | View Breakpoints).
The following error message appears on your first attempt to attach to a local process: ptrace: Operation not permitted.It a known issue for Ubuntu.Ensure that the kernel.yama.ptrace_scope kernel parameter is set to 0. You can temporary change its value with the command sudo sysctl kernel.yama.ptrace_scope=0 or set it permanently by adding the kernel.yama.ptrace_scope = 0 line to the /etc/sysctl.d/10-ptrace.conf file.
Cython Speedups

The following error message is shown:

Python.h: no such file or directory.

You lack header files and static libraries for Python dev.

Use your package manager to install header files and static libraries for Python dev system-wide.

For example, you can use the following commands:

  • for Python 2.x:

    sudo apt-get install python-dev

  • for Python 3.5:

    sudo apt-get install python3-dev

  • for Python 3.6:

    sudo apt-get install python3.6-dev

  • for Python 3.7:

    sudo apt-get install python3.7-dev

  • for Python 3.8:

    sudo apt-get install python3.8-dev

The following error message is shown:

Command 'gcc' failed with exit status 1.

You lack a C compiler.

Install a C compiler in order to build Cython extensions for the debugger.

You have already clicked the Install link
in the Cython speedup extensions notification
but PyCharm repeatedly prompts to install it.
You do not have permissions to write in the directories used by PyCharm.Check and modify your permissions.
Packaging
Package installation fails.pip is not available for a particular Python interpreter, or any of the installation requirements is not met.
  • If pip is not available, install it for the required Python interpreter (see the corresponding troubleshooting tip)

  • Consult product documentation for a specific package to ensure that it can be installed in your operating system and for the target Python interpreter. Also, check if any additional system requirements should be met.

Docker
Unable to connect to DockerDocker is not running, or your Docker connection settings are incorrect.

If you are using Docker for Windows, enable the Expose daemon on tcp://localhost:2375 without TLS option in the General section of your Docker settings.

If you are using Docker Toolbox, make sure that Docker Machine is running and its executable is specified correctly in the Settings/Preferences dialog Ctrl+Alt+S under Build, Execution, Deployment | Docker | Tools.

Docker-composer does not work on Ubuntu using unix socket settings.Docker-composer reports the following error:
docker.errors.TLSParameterError: Path to a certificate and key files must be provided through the client_config param. TLS configurations should map the Docker CLI client configurations.
  1. Open the project Settings/Preferences (Ctrl+Alt+S).

  2. Go to Build, Execution, Deployment | Docker.

  3. Select TCP socket.

  4. Enter unix:///var/run/docker.sock in the Engine API URL field.

When you try to pull an image, the following message is displayed:

Failed to parse dockerCfgFile: <your_home_dir>/.docker/config.json, caused by: ... {"credsStore":"wincred"}

Invalid Auth config file when using credsStore: http://github.com/docker-java/docker-java/issues/806

Go to <your_home_dir>/.docker directory and delete the config.json file.
Unable to use Docker ComposeDocker Compose executable is specified incorrectly.Specify Docker Compose executable in the Settings/Preferences dialog Ctrl+Alt+S under Build, Execution, Deployment | Docker | Tools
Unable to use port bindingsContainer ports are not exposed.Use the EXPOSE command in your Dockerfile
High CPU usage while connecting to Docker via services.When Hyper-V is selected as the backend for the Docker service on Windows, Hyper-V virtual disk files (.vhdx) are constantly scanned by the anti-virus software. This behavior leads to excessive consumption of CPU, even no container is running.Exclude Hyper-V virtual disk files from the anti-virus scan.
File Watchers
You might notice the following messages in the Preferences/Settings | Tools | File Watchers window.
Unknown Scope errorThe File Watcher uses a scope that is not defined in this project.Double-click the watcher and select an available scope or create a new one.
Not found errorThe project uses a global File Watcher that was removed.Delete the watcher from the list using the Remove button Remove or edit it to create a new global watcher with the same name.
Deployment

Error message when using SSH configurations:

Connection to <server> failed: SSH: invalid privatekey: [<key>. SSH: invalid privatekey: <key>
The RFC 4716 format for OpenSSH keys is not supported by PyCharm.

  • Add the private keys to ssh-agent using the ssh-add command (see more details at ssh.com)

  • Repeat the configuration step in the Add Python interpreter dialog.

  • Add the private keys to ssh-agent using the ssh-add command (see more details at ssh.com)

  • In the Settings/Preferences dialog Ctrl+Alt+S, select Build, Execution, Deployment | Deployment, then select your SFTP deployment configuration.

    Choose OpenSSH Config and authentication agent in the Authentication list.

The Profile command is not available in the Run menu.
  • This functionality is available only in the Professional edition of PyCharm.

  • The UML plugin that is bundled with PyCharm Professional has been disabled.

Check the edition of PyCharm and enable the UML plugin in the plugin settings.

In some cases, you might need to perform diagnostic steps to identify whether the problem occurs in PyCharm or in your working environment. Below is the list of the useful tips and tricks.

Troubleshooting Tips

Troubleshooting caseDiagnostic action

You are experiencing different behavior of your application when running it in PyCharm and in the Terminal window.

Run your script with the python version specified in the PyCharm project settings:

  1. In PyCharm, open the Settings dialog Ctrl+Alt+S, navigate to Project < project name> | Python Interpreter.

  2. Click Interpreter nearby the Python Interpreter field and select Show All.... The interpreter you use in your project will be selected in the list of the available interpreters.

  3. Click Edit interpreter and copy the path from the Interpreter path field.

  4. Now, run your script in the Terminal window using the copied path

    <copied python interpreter path> <path to the python script>\my_script.py.
    For example, C:\Python27\python.exe C:\Samples\my_script.py

  1. In PyCharm, open the Preferences dialog Ctrl+Alt+S, navigate to Project < project name> | Python Interpreter.

  2. Click Interpreter next to the Python Interpreter field and select Show All.... The interpreter you use in your project will be selected in the list of the available interpreters.

  3. Click Edit interpreter and copy the path from the Interpreter path field.

  4. Now, run your script in the Terminal window using the copied path

    <copied python interpreter path> <path to the python script>/my_script.py.
    For example, /Users/jetbrains/bin/python3 /Users/jetbrains/Samples/my_script.py

If the behavior of your application still differs, contact the support service pycharm-support@jetbrains.com

The required package is not installed for a particular Python interpreter.
A version of the package installed for a particular Python interpreter is outdated.

Run the following commands to install the required package:

<path to the python executable>\python.exe -mpip install '<package>'

For example,
C:\Python27\python.exe -mpip install 'Flask'

Once executed, these commands install the latest versions of the specified packages.

To install a particular version of the package, use the following expressions:

  • '<package>==<package_version>'– installs a specific version of the package

  • '<package>>=<package_version>'– installs a greater than the specified or later version of the package

  • '<package>~=<package_version>'– installs a version that is compatible with the specified version of the package

For example, the following command installs Flask compatible with the version 1.0.2:
C:\Python27\python.exe -mpip install 'Flask~=1.0.2'

<path to the python executable/python -mpip install '<package>'

For example,
/Users/jetbrains/anaconda3/bin/python -mpip install 'Flask'

Once executed, these commands install the latest versions of the specified packages.

To install a particular version of the package, use the following expressions:

  • '<package>==<package_version>'– installs a specific version of the package

  • '<package>>=<package_version>'– installs a greater than the specified or later version of the package

  • '<package>~=<package_version>'– installs a version that is compatible with the specified version of the package

For example, the following command installs Flask compatible with the version 1.0.2:
/Users/jetbrains/anaconda3/bin/python -mpip install 'Flask~=1.0.2'

When trying to install a package, you discover that pip is not available for a particular Python interpreter.

Try to bootstrap pip from the standard library:

<path to the python executable>\python.exe -m ensurepip --default-pip

For example,
C:\Python27\python.exe -m ensurepip --default-pip

<path to the python executable/python -m ensurepip --default-pip

For example,
/Users/jetbrains/anaconda3/bin/python -m ensurepip --default-pip

For more information about pip installation, refer to packaging.python.org

Last modified: 08 March 2021