From: utzoo!decvax!harpo!npois!cbosgd!mark Newsgroups: net.news Title: a thought on distributing news updates Article-I.D.: cbosgd.2372 Posted: Sat Jun 19 14:25:30 1982 Received: Sun Jun 20 03:46:43 1982 >From cbosg!harpo!uwvax!solomon Sat Jun 19 09:30:46 1982 Date: 19-Jun-82 09:30:46-EDT (Sat) The problem with diff -e is that it's highly un-robust for a variety of reasons including local mods, transmission errors, confusion over what is the correct version to apply them to, etc., etc., etc. Here, off the top of my head, is an idea of a better way: Every so often (say every twenty or thirty lines) include a "comment" line (/* */ for C, .\" for nroff, etc.) with some sort of special flag and information such as the name of the file, a version number (perhaps ala sccs), and a line number (or block number: see below). The special flag should be something unlikely to begin a comment, and the lines should be added by a program that checks that there isn't already a comment that could be confused with a flag. These flag lines break the file up into blocks. Changes could then be distributed as specifications of which blocks to replace and what to replace them with. The line numbers or block numbers should use some sort of "Dewey decimal" numbering system, so that changes never affect the numbers of existing blocks (say, replace block 55 by blocks 55, 55.1, 55.2, etc). I'm actually making this up as I type it. Here's some more discussion: The flag lines should be frequent enough that a change can be performed by only replacing a few lines. An extreme possibility is to "number" EVERY line with a comment, but that might unnecessarily clutter the source (and increase its size). There should be a version number at the start of every file (perhaps the SCCS format could be followed; but remember: not everyone using netnews has the SCCS software, so just use the format, not the programs) and that number should be updated WHENEVER the file is updated. The flag lines strictly only need the "block number", but a little extra info might be useful for robustness. If you think this idea might be interest to a wider audience, feel free to relay it to net.news. I don't have the time to write the programs require just now, but perhaps somebody else will like the idea and write such a program. Regards, Marvin