Login
Changes To home
Login

Changes to "home" between 2013-08-16 10:09:51 and 2013-08-16 10:24:58

32
33
34
35
36
37
38
39

40
41
42
43
44
45
46
32
33
34
35
36
37
38

39
40
41
42
43
44
45
46







-
+








There is nothing holy or sacred about this repo, so feel free to hack at will. Generally the quickest/most complete way to test changes it to add them to the th1ish script bindings (in <tt>[/finfo?name=th1ish/shell_extend.c|shell_extend.c]</tt>). If you prefer writing C-level tests, please add them to <tt>test.c</tt> in the top-level directory or to a new test app if you like. See <tt>FossilApp.c</tt> for a mini-framework to bootstrap new test apps and [f-tools] for examples which take that approach.


<h2>News</h2>

Notable changes (newest at the top)...
   *  20130816: <b>Milestone:</b> manifest parsing is more or less complete, covering the whole range of control artifact types. Strict validation is done (including the Z-card hash) to ensure that bogus manifests cannot be read. "Parsing," in this context means converting a raw Fossil manifest to a higher-level (OO) construct. That construct can then be output to a new manifest which is identical to the old one <em>except</em> that there are some caveats involving sub-hundredths-of-a-second precision loss in the round-trip timestamp conversion (but such round-trip manifests are useful only for testing/proof-of-concept, and are not needed in practice).
   *  20130816: <b>Milestone:</b> manifest parsing is more or less complete, covering the whole range of control artifact types. Strict validation is done (including the Z-card hash) to ensure that bogus manifests cannot be read (and the generator does the same at several different levels). "Parsing," in this context means converting a raw Fossil manifest to a higher-level (OO) construct. That construct can then be output to a new manifest which is identical to the old one, providing a 100% loss-less round-trip conversion. (Such round-trips are useful only for testing/proof-of-concept, and are not needed in practice.)
   *  20130815: the past couple days have seen many incremental additions to the manifest machinery. We can now "round-trip" some artifact types, parsing them into a high-level form and re-generating them from that high-level form.
   *  20130812: Started the [f-tools].
   *  20130811: Got "manifest crosslinking" of control artifact (tag changes) ported in.
   *  20130810: <b>Milestone:</b> the library [/info/70666e1c11|saved its first tag] today! (The timestamp of the tag was intentionally falsified for testing purposes.)
   *  20130808: Restructured source tree and ported build configuration process to [http://msteveb.github.io/autosetup/|autosetup] (because that's what Fossil uses). Existing build files (not the sources) still require GNU Make on a Unix platform, though. Many thanks to Steve Bennett (autosetup's author) for his assistance.
   *  20130804: ported in the symbol-to-uuid resolution bits from the main repo. These are what allow apps to use short-form UUIDs and symbolic names like "trunk," instead of having to use 40-byte UUIDs everywhere.
   *  20130803: most of the infrastructure for creating [http://fossil-scm.org/index.html/doc/trunk/www/fileformat.wiki|manifests and control artifacts] is in place, but we don't yet write them to the db.