|
Included and Excluded deltas in CSSCThe Problem: Lack of InformationIncluded, excluded and ignored deltas are, taken together, probably the single most complicated feature of SCCS. Some documentation exists in the form of the SCCS manual pages, but this has not proven sufficient to make re-implementing this feature very easy. The principal remaining problem is the fact that it's not clear to me how these feautures are supposed to work. The real problem here is that we need to understand how these features are supposed to work before we can implement them for CSSC; this issue is the single remaining problem preventing progress towards a stable release of CSSC.The Current SituationThe current situation, as of CSSC version 0.12alpha.pl0, is that we believe that included and probably excluded deltas in existing SCCS files are correctly handled by CSSC. However, although CSSC has a test suite, it is not nearly comprehensive enough in this area, and so this area of the functionality may not yet be completely correct.
The situation is a lot less clear with regard to the
What you can do to helpOne way of answering this question is to carefully examine how the genuine SCCS suite behaves. An investigation of this type could have several possible outputs, all very useful for CSSC :-
Once we have a solid understanding of the functionality which we are trying to reproduce, actually writing the code will be quite simple. If you think that you might be able to work on this kind of thing, please let me know; such help would be very useful indeed! Tools Available to help with the jobThe shell scripttestutils/compare_gets.sh which comes
with the CSSC distribution is an easy way to check that SCCS and CSSC
interpret a particular SCCS file in the same way. This means that a
simple way to verify that CSSC correctly implements included and
excluded deltas is to create a small set of torture test files, which
between them exhibit all the possible combinations :-
Once you have created these files, the next task would be to modify
the
The above pretty much covers everything that needs to be done for the
read-only case. The read-write case would do almost exactly the same
thing as the modified version of |
|
Powered By
|