aboutcode-org / aboutcode-org/scancode-toolkit

cannot import name 'TypedDict' from 'typing'

Open
#3,246 4 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
2.6k
Forks
791
Avg merge
1d 12h
Merged PRs (30d)
5

Description

### Description

> Please leave a brief description of the bug or feature request:
It occurs the error with python3.7.15 environment.
```
========================================================================
ERROR: UNABLE TO IMPORT SCANCODE PLUGINS.
Check your installation configuration (setup.py) or re-install/re-configure ScanCode.
The following plugin(s) are referenced and cannot be loaded/imported:
cannot import name 'TypedDict' from 'typing' (/home/worker/.pyenv/versions/3.7.15/lib/python3.7/typing.py)
========================================================================
Traceback (most recent call last):
File "/home/worker/.pyenv/versions/3.7.15/bin/scancode", line 5, in
from scancode.cli import scancode
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/scancode/cli.py", line 126, in
raise e
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/scancode/cli.py", line 113, in
plugin_classes, plugin_options = PluginManager.load_plugins()
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/plugincode/__init__.py", line 196, in load_plugins
mgr_setup = manager.setup()
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/plugincode/__init__.py", line 222, in setup
raise e
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/plugincode/__init__.py", line 220, in setup
self.manager.load_setuptools_entrypoints(entrypoint)
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/pluggy/_manager.py", line 287, in load_setuptools_entrypoints
plugin = ep.load()
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 208, in load
module = import_module(match.group('module'))
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/summarycode/plugin_consolidate.py", line 24, in
from summarycode import copyright_tallies
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/summarycode/copyright_tallies.py", line 14, in
import fingerprints
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/__init__.py", line 1, in
from fingerprints.fingerprint import fingerprint
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/fingerprint.py", line 6, in
from fingerprints.types import replace_types
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/types/__init__.py", line 5, in
from fingerprints.types.replacer import get_replacer, NormFunc
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/types/replacer.py", line 6, in
from fingerprints.types.data import TYPES
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/types/data.py", line 2, in
from fingerprints.types.common import TypesList
File "/home/worker/.pyenv/versions/3.7.15/lib/python3.7/site-packages/fingerprints/types/common.py", line 2, in
from typing import TypedDict, List
ImportError: cannot import name 'TypedDict' from 'typing' (/home/worker/.pyenv/versions/3.7.15/lib/python3.7/typing.py)
```

### How To Reproduce

> Tell us how to reproduce the issue.
1. Create a python 3.7.15 environment with pyenv or global python configuration.
2. Install the scancode with the command 'pip install scancode-toolkit'.
3. Run the scancode 'scancode -v'.
![image](https://user-images.githubusercontent.com/50347670/218347924-6b5686f6-744f-456b-9a54-56b862a0f86b.png)

### System configuration

> For bug reports, it really helps us to know:

* What OS are you running on? (Windows/MacOS/Linux) **Linux**
* What version of scancode-toolkit was used to generate the scan file? **31.2.4**
* What installation method was used to install/run scancode? (pip/source download/other) **pip**

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.