4 ms·
At one time I was part of a team of around 15 developers working on a PostScript engine, mostly written in C, and included hundreds of test scripts. It shipped
by 505 11y ago
At one time I was part of a team of around 15 developers working on a PostScript engine, mostly written in C, and included hundreds of test scripts. It shipped on a number of multi-function printers. We started on it around 2002. Today we might have used Git. We used http://aegis.sourceforge.net http://aegis.sourceforge.net, sadly stuck at SourceForge for the time being.
Aegis is notable for (by default) recording and enforcing code and test script review before permitting a commit. It has other virtues, and faults, and is no longer widely used, AFAICT. Reviews were treated as transactions, and the reviewer comments went into the project history. Also time spent on development, reviewing, resuming development after 'failed' reviews, and more.
The engine is mentioned in passing on https://www.eid.toshiba.com.au/n_news_detail.asp?news_id=8 https://www.eid.toshiba.com.au/n_news_detail.asp?news_id=8. It did a number of other page description languages as well.
We also used Aegis on a number of smaller projects.
- nickpsecurity 11y agoInteresting. You're the first person I've seen here that used it. It was the only one that meets most of Wheeler's requirements: http://www.dwheeler.com/essays/scm-security.html http://www.dwheeler.com/essays/scm-security.html So, was it a good tool compared to subversion or centralized git? Work fast and reliably enough? Not get in the way too much outside authorization checks? Just getting feedback on field use here.
- 505 11y agoI don't think I know enough about subversion or centralised git. Aegis was great for the first few years. For the main project, there was a perception that it was slow and unreliable. But a lot of us loved the transactional features and preservation of the timelines of comments for code review. Its management of test scripts was very very valuable. I'm not sure about your authorisation checks question. Maybe Aegis did get in the way. An afterthought about speed and reliability - Aegis is almost too configurable. For instance, it relies on a 'file history tool' per project; that can be SCCS, RCS, FHist, or anything that you can tell Aegis how to use. We used the somewhat obscure FHist. It has the advantage that it was written by the same person as Aegis, and so is extensively tested with it. Our project had the main repository sitting on an NFS server, and in later years around a dozen working on one or two changes at any one time, with those stored on each engineer's Linux workstation. That was slow and sometimes fragile, but we never really explored other confiration options. We accumulated hundreds of unit test scripts which had to pass on each integration. In retrospect we should have worked harder to retire or refactor the oldest ones. Having fewer or faster tests would have saved time and angst. Aegis' implementation is very dependent on the Unix security model. We thought about doing something to make it work on Windows, but quickly got discouraged. I don't know much about security, but I'd guess you'd be able to discover many. Sadly, Peter Miller, the originator and I guess owner of Aegis, died a few years ago. User and developer mailing lists were on the web last time I checked.
- nickpsecurity 11y agoThanks for the feedback. Interesting. The UNIX dependence was one of my main gripes. I had some workarounds but figured a clean-slate model or retrofit of cross-platform SCM was better. I still wanted to eventually meet and get insight from the author on such a project. Too bad he died. (sighs) Back to clean-slate or retrofit of alternative as I figure Aegis might be too complex to use for such a project if main mind behind it isn't available. Still, they get credit for doing a lot of things right.
- 505 11y agoYes. I might suggest you give one of the tutorials a try. He as several, depending on which tools you're more comfortable with. Creating a small project seemed to be quite a bit of work, and I think Peter realised this and put effort into the examples. You might also like his PDF on recursive Make, http://aegis.sourceforge.net/auug97.pdf http://aegis.sourceforge.net/auug97.pdf.