Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Add proper packaging? #2521

Closed
stone-w4tch3r opened this issue Dec 3, 2024 · 3 comments
Closed

[Feature] Add proper packaging? #2521

stone-w4tch3r opened this issue Dec 3, 2024 · 3 comments
Labels
question Further information is requested stale

Comments

@stone-w4tch3r
Copy link

stone-w4tch3r commented Dec 3, 2024

Issue

Currently aider is distributed via pip. While this is very convenient for developers, it can be problematic for users:

  1. It requires users to have a proper version of python installed. Issue Python 3.13 support #1984 shows that this threat is real. Moreover, handling multiple versions of python for compatibilty with aider is not straightforward, especially for users without serious python expertise
  2. This approach assumes that the user is familiar with python and it's packaging. While python is indeed a popular language, there are many software devs who use other platforms and have no experience with python. This is especially true for juniors/newbies who don't understand their own stack, let alone Python. Personally I (a c# dev) remember that when I tried first time to install some software from pip, it caused me to learn ubuntu packaging, virtual environments and finally I gave up on this idea.

So to make aider more user friendly we can package it with all required python versions and dependencies.

Currently I see two approaches, a simple and a complex one:

  • pre-download all dynamic dependencies into a final package
    • pros: simple build, minimal changes in existing code, usage of native formats like deb/exe/dmg
    • cons: bigger package size
  • package aider with isolated container-like runtime
    • pros: allows to download extensions dynamically and even auto update aider within same container
    • cons: AFAIK no cross-platform solution, more complex packaging process is needed

Your thoughts?

@paul-gauthier
Copy link
Collaborator

Thanks for trying aider and filing this issue.

How would you suggest achieving (1)?

For (2), aider is available via docker.

https://aider.chat/docs/install/docker.html

@github-actions github-actions bot added the question Further information is requested label Dec 3, 2024
Copy link

I'm labeling this issue as stale because it has been open for 2 weeks with no activity. If there are no additional comments, I will close it in 7 days.

Note: A bot script made these updates to the issue.

@github-actions github-actions bot added the stale label Dec 18, 2024
Copy link

I'm closing this issue because it has been stalled for 3 weeks with no activity. Feel free to add a comment here and we can re-open it. Or feel free to file a new issue at any time.

Note: A bot script made these updates to the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested stale
Projects
None yet
Development

No branches or pull requests

2 participants