On środa 12 marzec 2003 01:23 pm, Lars Gullik Bjønnes wrote: > Kuba Ober <[EMAIL PROTECTED]> writes: > > I'll have a look at aegis. > > At first glance it seems to be similar to BitKeeper? What are the > differences? (And why doesn't Linus want to use aegis?) > > I'll go through the documentation.
Probably because Aegis, although a very cleanly and understanably coded project, is essentially one man's work for most part. If something happens to Peter Miller (<insert your favourite divine being> forbid), Aegis becomes (at least for a while) a project without maintainer, and without architect's support. I guess Linus had to use something that has strong commercial backing, and I understand that decision. And, because Bitkeeper has a company behind it (rather than a single person in case of Aegis), the requests for improvements and fixes can be integrated quicker. Although Aegis is open source and GPL, it's still currently being developed mainly by one person. One of the reasons why it may be unpopular is that Peter hates recursive make :), and rightly so. He wrote a very educational article why recursive make is harmful. I hate recursive make too, so I don't use it :). I guess that it's hard for people who are used to autotools and recursive makefiles the autotools generate to understand that there are better things to do with life than hunting brokenness which is handled all right by simpler and more powerful tools (as in automake+gmake replaced by cook). My guesstimate is that projects of LyX's size and developer diversity, if moved from CVS and automake (let's leave autoconf in for the time being, it's needed for some stuff) over to Aegis and Cook, can save about 5% of recurring developer time, after a short "adjustment" period of a 2-3 months, when productivity might suffer while people get used to better tools and forget limitations of the previous tools ;-). Personally, I'm lucky not to need autoconf for my projects (I build on latest RedHat and on Windows only), so I'm just using cook and Aegis, and it works fine for both linux and windows builds. Windows builds need some wine trickery, but once you do it and put into scripts, with Aegis multiplatform support it becomes a breeze. Aegis will even tell you that say an integration build succeeded on Linux/GCC platform but failed on Windows platform, and then you're back to workarounds for your not-so-favourite Windows compiler :). Oh, I use BCC55, so I'm not complaining too much -- it was much worse with VC6. Cheers, Kuba Ober