nus-apr / auto-code-rover

A project structure aware autonomous software engineer aiming for autonomous program improvement. Resolved 30.67% tasks (pass@1) in SWE-bench lite with each task costs less than $0.7.
Other
2.37k stars 236 forks source link

License issue #18

Open casper-hansen opened 2 months ago

casper-hansen commented 2 months ago

Great work on your agent. What do you think about changing the license to something like MIT or Apache 2.0? Unfortunately, a lot of people will not be able to use this due to the GPL license.

image

jimwhite commented 2 months ago

I'm a big fan of GPL for OSS. The people who can't use GPL typically are making private changes that they will not being making OSS, so this seems a perfectly fine constraint. So the business/marketing perspective here is that since ACR is competing with closed commercial products, using GPL is both a competitive advantage/distinction and not aiding the opposition is pretty much common sense.

casper-hansen commented 2 months ago

The same reason that you want GPL, i.e. so that it stays open, is the same reason that many people cannot or will not contribute to the project. This is a fine trade-off if the sole purpose is to keep everything OSS, but it makes it incompatible with most companies that I have worked at because you cannot create anything specialized without having to open-source it, therefore ruining the idea of adopting it in the first place.

crhf commented 2 months ago

is the same reason that many people cannot or will not contribute to the project

I'm not sure. If contribution does not stay OSS, then people won't be able to use that contribution, will they?

casper-hansen commented 2 months ago

Any modification must be made public. So assuming that you just want to modify the work to adapt it for internal use, it must be made public. This is incompatible with most companies and would be a good reason to use SWE-Agent over AutoCodeRover.

hargup commented 2 months ago

Any modification must be made public. So assuming that you just want to modify the work to adapt it for internal use, it must be made public.

That's not how GPL works. You can make private/internal modifications to the code without releasing them in public. Only if you need to distribute it to others you need to release the code under GPL.

Distribution specifically means creating a package out of it and shipping to others. Even running modified non GPL copies of code rover on a server and giving it as a service is okay.

casper-hansen commented 2 months ago

Only if you need to distribute it to others you need to release the code under GPL.

This is the issue that I am referring to. Any distribution means the license activates, even if privately distributed. GPL is inescapable, hence the issue created here.