Skip to content

pip-sync 7.0.0 reinstalls packages due to case difference #1918

@sshishov

Description

@sshishov

Description

pip-sync 7.0.0 reinstalls all packages which have non-lowercase letters in their names

For instance in *.in and *.txt files we have the following data:

django

and

django==4.2.0
  ...

When we run pip sync, it will uninstall and install django because in pip-freeze the same package mentioned as Django

Environment Versions

Required Information
OS Type MacOs/Linux
Python version: $ python -V Python 3.11.4
pip version: $ pip --version: pip 23.2 from /home/user/venv/lib/python3.11/site-packages/pip (python 3.11)
pip-tools version: $ pip-compile --version pip-compile, version 7.0.0

Steps to replicate

  1. Create *.in file with django requirement
  2. Compile requirements to generate *.txt file
  3. Run pip-sync on the txt file
  4. Run pip-sync on the txt file again

Expected result

The output should be Everything up-to-date

Actual result

The requirement is reinstalled every time you run pip-sync

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is not working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions