Duplicate entry
- Dominant language
- Python
- Stars
- 7.5k
- Forks
- 424
- PR merge metrics
- No merged PRs in 30d
Description
`pipreqs --print` output:
```
backoff==2.2.1
Flask==2.3.2
Flask_Cors==3.0.10
gql==3.4.1
openai==0.27.6
PyJWT==2.8.0
PyJWT==2.8.0
pymongo==4.3.3
python-dotenv==1.0.0
PyYAML==6.0.1
PyYAML==6.0.1
Requests==2.31.0
scipy==1.11.1
tiktoken==0.4.0
waitress==2.1.2
Werkzeug==2.3.6
```
meanwhile:
```
> pip freeze
aiohttp==3.8.5
aiosignal==1.3.1
async-timeout==4.0.2
attrs==23.1.0
backoff==2.2.1
blinker==1.6.2
certifi==2023.7.22
charset-normalizer==3.2.0
click==8.1.6
dnspython==2.4.1
Flask==2.3.2
Flask-Cors==3.0.10
frozenlist==1.4.0
gql==3.4.1
graphql-core==3.2.3
idna==3.4
itsdangerous==2.1.2
Jinja2==3.1.2
MarkupSafe==2.1.3
multidict==6.0.4
numpy==1.25.2
openai==0.27.6
PyJWT==2.8.0
pymongo==4.3.3
python-dotenv==1.0.0
PyYAML==6.0.1
regex==2023.6.3
requests==2.31.0
scipy==1.11.1
six==1.16.0
tiktoken==0.4.0
tqdm==4.65.0
urllib3==2.0.4
waitress==2.1.2
Werkzeug==2.3.6
yarl==1.9.2
```
tried using `pipreqs --clean requirements.txt --force`, but it actually does not clean it
Contributor guide
Research direction
Reproduce the duplicate PyJWT and PyYAML output with `pipreqs --print`, then test `pipreqs --clean requirements.txt --force` against the shown requirements file. Trace the implementations of `--print` and `--clean` to determine why duplicate entries remain, and verify that the cleaned output contains each requirement only once without changing unrelated entries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100