Aider-AI / aider

aider is AI pair programming in your terminal
https://aider.chat/
Apache License 2.0
20.87k stars 1.93k forks source link

Dependencies should be specify in range instead of pin to a minor version. #2000

Closed tcztzy closed 2 weeks ago

tcztzy commented 2 weeks ago

Issue

I try to install aider-chat with pxblat, both package pin urllib3 version in minor version if I want find a dependency tree both packages share same minor version urllib3, it will roll back to aider-chat==0.18.0

graph TD
    a["aider-chat==0.59.1"] --> b["urllib3==2.2.3"]
    c["pxblat==1.2.1"] --> d["urllib3==2.2.1"]
    d --> e["Don't match"]
    b --> e

if I want find a dependency tree both packages share same minor version urllib3, it will roll back to aider-chat==0.18.0

graph TD
    a["aider-chat==0.18.0"] --> b["urllib3==2.0.7"]
    c["pxblat==1.1.10"] --> b

Suggestion: use urllib3>=2.2.3 or urllib3>=2.2,<2.3 will alleviate this problem

Version and model info

No response

fry69 commented 2 weeks ago

Thank you for filing this issue.

aider is not designed to run along other Python modules in the same environment. Please install it in a separate environment with e.g. venv or pipx.

This document may be helpful -> https://aider.chat/docs/troubleshooting/imports.html

tcztzy commented 2 weeks ago

I appreciate your design, but is there any way to call aider as an agent in a multi-agent system?

See also: #976

fry69 commented 2 weeks ago

As far as I know it is not a design goal for aider to become an agent or agentic.

Paul thinks about aider to become more library friendly in the future though -> https://github.com/Aider-AI/aider/issues/1831#issuecomment-2381798371

But currently aider is a standalone interactive terminal application, which will break easily if you mess with its dependencies.