This is an old revision of the document!
About the project
During this summer I'll try to help the csup-project (http://mu.org/~mux/csup.html). My main objective is to implement cvs-mode support.
2005-08-31 23:10BR Guess it will be late until I can go to sleep tonight. Somehow I completly missed that those stupid RCS strings can contain binary data and so I have to adapt the code. My luck is that the MAEKAWA Masahide (the cvsync-guy) thought about this and so I only need to change the output part. However, this includes the evil GetText-function :(. So, guess I'll put some more MP3s in my playlist and grab another cup of coffee…
2005-08-31 12:10BR Time is almost up. Yesterday I started to test csup's RCS file support, and as expected I discovered several bugs. The integration is not perfect, there are still many flags that are not considered and there is no special checksum calculation for RCS files (this should be easy though). Error handling is far from perfect not to mention the messages that are printed. They are only somewhere near CVSup as long as everything is fine. This evening I'll generate a patch so an adventuresome soul can try this stuff out :).
2005-08-28 00:50BR I made some changes to the API and implemented and tested newphrase support. I did not yet find the time to adapt the datastructures to not expose “invalid” (=not updated during edit) values. I'm not sure if I should adapt CVSup's model of entering placeholder deltas or if it would be easier to use a private and a public datastructure… Tomorrow I should have a closer look into this keyword expansion thingy and then it would be time to start integrating all into csup. This will almost certainly result in additional API changes.
2005-08-26 14:20BR I just finished implementing the reverse diff part and could produce a valid file equal to the one that rcs produced :). However, there are still memory leaks I've to track down and some “unnice” structures I want to change. After that I'll try to adapt some of the datastructures in the parsercode of cvsync so the API doesn't expose to much values that are only needed during parsing.
2005-08-25 14:30BR
The implementation of the writer part made some progress. GetText is now implemented except for the support to get reverse diffs. That's what I'll do next. I have run some rudimentary tests with deleting away revisions, branches and they seemed to work okay (= produced the same output as `rcs -oREV`).
2005-08-17 16:50BR I'm in the middle of implementing RCS-file support. I took the parser from cvsync (http://www.cvsync.org/). It did save me a little bit of typing. However, updating the file seems to be done quite different in cvsync and CVSup, so I have to adapt the data model of cvsync's RCS-file as close to CVSup as necessary. To make the API similar to the one CVSup has I'm writing an adaption layer. Rigth now most of the routines for updating the file are finished. But writing this data to a file seems to be everything else than easy from what I can tell by looking at CVSup's ToWr-func…
2005-08-09 23:50BR I've made another patch available at http://iserver.hta.fhz.ch/~iamathys/cvsmode_2005-08-09.patch.gz. It fixes a bug in handling binary data when complete files are received and files can now be updated using rsync-algorithm. However, right now there is a problem if the rsync'd file is dead (in Attic).
2005-08-09 11:35BR The current patch is available at http://iserver.hta.fhz.ch/~iamathys/cvsmode.patch.gz. It supports cvsmode, but in a quite inefficient way: It fetches always the complete file, no diffs or anything. That's because the important support for understanding RCS-files is still missing.
About my Person
My Name ist Christoph Mathys and I am a 23 year old guy from Switzerland {flag-ch} who was lucky enough to be selected for the summer of tax^wcode program. I just finished the 3rd year of studies at the university of applied sciences in Luzern (http://www.hta.fhz.ch/).