lightly-ai/lightly

Mypy and numpy incompatible through `make install-dev`

Open

#2,015 opened on Aug 4, 2026

 (7 comments) (0 reactions) (0 assignees)Python (337 forks)auto 404
enhancementgood first issuehelp wantedpackage

Repository metrics

Stars
 (3,775 stars)
PR merge metrics
 (PR metrics pending)

Description

I had the issue that make install-dev installed a numpy 2.x.x version, which was incompatible with our pinned mypy version in pyproject.toml. We should move to a lockfile approach like in LightlyTrain and clean up the dependency handling overall while we're at it.

  • unpin the mypy version, and instead use >= operator
  • create make lock command in the Makefile with a pinned EXCLUDE_NEWER_DATE inside the Makefile, so that the lock does not constantly change
  • use uv run --frozen in all the make commands instead of python
  • move dev optional dependencies to a uv group instead (dependency-groups), so that the dev group is not actually distributed via PyPI
  • update the CONTRIBUTING.md file to reflect the workflow changes (no need to activate the virtual env anymore)
  • update any agent files (CLAUDE.md etc.) to instruct the agent to always use uv run --frozen instead of python

If anyone would like to work on this (or parts of it; we can also split this into sub-issues), let me know!

Contributor guide