New BSD licensed CVS replacement for OpenBSD
Jeferey Bakins writes "In an effort, by Jean-Francois Brousseau (jfb@openbsd.org), to rid the OpenBSD CVS tree of GPL'ed licensed code, OpenCVS is now officially part of the OpenBSD project.
For more details, see the OpenCVS homepage;
http://www.openbsd.org/opencvs/"
I'm all for developers choosing their own license, and I'll for making sure that license incompatibilities don't cause problems for software developers.
However, we're talking about a tool you use for development, not something that is traditionally integrated into an application. CVS is a solid piece of software, and Subversion fixes many of the minor issues with CVS, and if those aren't your cup of tea, there are a number of other interesting version management tools (darcs, arch, bitkeeper, etc).
Considering all of that, do we really need a CVS clone, where the only difference is the license?
Especially when development of CVS has essentially ceased, other than bug/security fixes, and there are superior alternatives being developed (even the CVS developers will readily admit that CVS has architectural deficiencies that can really only be solved by a design, which is why most of them have moved on to other versioning tools).
So, I'm left wondering. . . why? Why bother doing this? What exactly does this achieve? I mean, if the guy writing this gets his rocks off on reimplementing somewhat obsolete applications, then more power to him, but I can't help but think that he could find something more rewarding than this.
Topher
It is not a debate.
"do what thou wilt" is the OpenBSD creed and the GPL is incompatible with that, what's your problem ?
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
One step at a time. Their use of CVS is deeply ingrained at the moment. Rewriting a well-understood tool is one thing. Designing and implementing a new source-control tool is a much larger, riskier task.
Then is Open BSD going to stop using GCC ? I mean, GCC is GPL so it is using GPL software to create their system, right ?
UPS Sucks
I think the article summary is somewhat misleading, the front page of the project claims that OpenCVS is a result of the ongoing security vulnerabilities in the existing CVS project, which has grown stagnant:
The OpenCVS project was started after discussions regarding the latest GNU CVS vulnerabilities that came out. Although CVS is widely used, its development has been mostly stagnant in the last years and many security issues have popped up, both in the implementation and in the mechanisms.
Of course, I'm not going to be stupid enough to deny that there is a great probablity that another unwritten motivating factor was to use a non-GPL licensed piece of software. But, I think time has proven that while OpenBSD may not be a very useable distribution from a common desktop end-user standpoint, a lot of very good portable, secure code has come out of the project. Since I have to continue to run CVS servers for some of the projects I host I look forward to a secure portable CVS server that I can be more confident in.
the point of opencvs isn't to randomly replace GPL'd code, but to provide a different implementation, that is free of bugs and security issues. he's also working on other features to make cvs server better, and more secure.
You should really look at CVS code before saying something like that... it's mostly impossible to fix anything down there.
and there are also some good reasons not to switch to subversion.
You say it's the same developers as CVS ? well, big surprise, they produced another half-finished piece of software.
When what you care about is not extended functionality, but robustness and speed, cvs does not fit the bill. Neither does subversion.
Umm. No. That's not what it's about at all. Lets correct the mistakes now, shall we?
1) There was no OpenCVS until the OpenBSD project noticed some major security vulnerabilities posted to bugtraq in GNU CVS.
2) The reason why OpenCVS was written was to provide a more secure client/server package than what the [now stagnant] GNU CVS project is currently providing. It has nothing to do with GPL vs BSD, infact the OpenBSD project is all about what RMS calls "free software".
So basically the Slashdot editors posted a troll to the front page. Beautiful.
OpenBSD will stop using GCC when the Tendra Project has reached a satisfactory level of maturity. The OpenBSD team work under the premise that GPLed items are 'free enough for them' until a replacement can be found, just like Linus works under the same premise (see Bitkeeper).
There's more to it than that, though. BSDs run on a "least surprise" tactic, whereby major systems shouldn't change unless there is something REALLY wrong. The BSDs have all used CVS right from the early versions, and can still be fetched this way. If any of them were to drop CVS support for Subversion, for instance, users would have to adapt, and with the significant user base of BSD, that's quite a disruption.
An honest question: Can Subversion import a CVS history and all branches and everything else relevant without any need for hand-hacking? Because when you want to migrate decades of source to a new system and keep it in working order, you don't want to have to mangle every file by hand. If Subversion does this then it's not entirely impractical to implement it - but since the biggest TRIVIAL (can be fixed without disrupting user base's expectations) problems in CVS can be fixed with a compatible re-write, it makes sense to do it that way. In this regard I congratulate OpenBSD on yet another brilliant and far overdue idea.
Sam ty sig.
arch is a different beast altogether (and because of that much more complex) and not finished yet.
svn is still too new for some people to trust it implicitely. cvs is tried and true. a lot of folks will be using it for a long time to come. at least until they feel confidant enough in the alternatives.
don't forget there's lots of people out there who are used to cvs and have come to accept it. just like you're used to the limitations of the networking protocols TCP/IP, SMTP, etc. which are currently known to have problems but there's too much invested in them right now to just switch on a dime. change takes time. the openbsd folks understand this apparently. their solutions so far have been not to reinvent the wheel from scratch but to try and fix it as much as humanly possible. for that i'm grateful!
gcc isn't perfect, but it isn't nearly as annoyingly bad as some of the other stuff we have to use. More importantly, it doesn't have to deal with untrusted network data (like cvs does).
A BSD licensed cc would be nice, but an absolute crapload of work - especially renovating all those programs and ports that depend on gccisms (some of which are perfectly reasonable)