Fossil SCM

Documented several special-case rules for certain cards as footnotes in the fileformat.wiki card summary table.

stephan 2021-02-22 06:48 trunk
Commit a3bfeb85213895eb4b5f53b2af5e9e79bee2cf19e599ce4385fbf0230304dd39
1 file changed +35 -19
--- www/fileformat.wiki
+++ www/fileformat.wiki
@@ -32,11 +32,11 @@
3232
with the global state.
3333
The local state is not composed of artifacts and is not intended to be enduring.
3434
This document is concerned with global state only. Local state is only
3535
mentioned here in order to distinguish it from global state.
3636
37
-<a name="names"></a>
37
+<a id="names"></a>
3838
<h2>1.0 Artifact Names</h2>
3939
4040
Each artifact in the repository is named by a hash of its content.
4141
No prefixes, suffixes, or other information is added to an artifact before
4242
the hash is computed. The artifact name is just the (lower-case
@@ -54,11 +54,11 @@
5454
5555
Prior to Fossil version 2.0, all names were formed from the SHA1 hash of
5656
the artifact. The key innovation in Fossil 2.0 was adding support for
5757
alternative hash algorithms.
5858
59
-<a name="structural"></a>
59
+<a id="structural"></a>
6060
<h2>2.0 Structural Artifacts</h2>
6161
6262
A structural artifact is an artifact with a particular format
6363
that is used to define the relationships between other artifacts in the
6464
repository.
@@ -100,11 +100,11 @@
100100
not how the artifacts are stored on disk. It is the artifact format that
101101
is intended to be enduring. The specifics of how artifacts are stored on
102102
disk, though stable, is not intended to live as long as the
103103
artifact format.
104104
105
-<a name="manifest"></a>
105
+<a id="manifest"></a>
106106
<h3>2.1 The Manifest</h3>
107107
108108
A manifest defines a check-in.
109109
A manifest contains a list of artifacts for
110110
each file in the project and the corresponding filenames, as
@@ -256,11 +256,11 @@
256256
consistent.
257257
258258
A sample manifest from Fossil itself can be seen
259259
[/artifact/28987096ac | here].
260260
261
-<a name="cluster"></a>
261
+<a id="cluster"></a>
262262
<h3>2.2 Clusters</h3>
263263
264264
A cluster is an artifact that declares the existence of other artifacts.
265265
Clusters are used during repository synchronization to help
266266
reduce network traffic. As such, clusters are an optimization and
@@ -282,11 +282,11 @@
282282
prior cards in the cluster. The <b>Z</b> card is required.
283283
284284
An example cluster from Fossil can be seen
285285
[/artifact/d03dbdd73a2a8 | here].
286286
287
-<a name="ctrl"></a>
287
+<a id="ctrl"></a>
288288
<h3>2.3 Control Artifacts</h3>
289289
290290
Control artifacts are used to assign properties to other artifacts
291291
within the repository.
292292
Allowed cards in a control artifact are as follows:
@@ -336,11 +336,11 @@
336336
artifact. The <b>Z</b> card is the usual required artifact checksum.
337337
338338
An example control artifacts can be seen [/info/9d302ccda8 | here].
339339
340340
341
-<a name="wikichng"></a>
341
+<a id="wikichng"></a>
342342
<h3>2.4 Wiki Pages</h3>
343343
344344
A wiki artifact defines a single version of a
345345
single wiki page.
346346
Wiki artifacts accept
@@ -380,11 +380,11 @@
380380
artifact that includes a <b>C</b> card.
381381
382382
An example wiki artifact can be seen
383383
[/artifact?name=7b2f5fd0e0&txt=1 | here].
384384
385
-<a name="tktchng"></a>
385
+<a id="tktchng"></a>
386386
<h3>2.5 Ticket Changes</h3>
387387
388388
A ticket-change artifact represents a change to a trouble ticket.
389389
The following cards are allowed on a ticket change artifact:
390390
@@ -426,11 +426,11 @@
426426
escapes defined for the <b>C</b> card of a manifest.
427427
428428
An example ticket-change artifact can be seen
429429
[/artifact/91f1ec6af053 | here].
430430
431
-<a name="attachment"></a>
431
+<a id="attachment"></a>
432432
<h3>2.6 Attachments</h3>
433433
434434
An attachment artifact associates some other artifact that is the
435435
attachment (the source artifact) with a ticket or wiki page or
436436
technical note to which
@@ -468,11 +468,11 @@
468468
469469
The <b>Z</b> card is the usual checksum over the rest of the attachment artifact.
470470
The <b>Z</b> card is required.
471471
472472
473
-<a name="event"></a>
473
+<a id="event"></a>
474474
<h3>2.7 Technical Notes</h3>
475475
476476
A technical note or "technote" artifact (formerly known as an "event" artifact)
477477
associates a timeline comment and a page of text
478478
(similar to a wiki page) with a point in time. Technotes can be used
@@ -536,11 +536,11 @@
536536
technote. The format of the <b>W</b> card is exactly the same as for a
537537
[#wikichng | wiki artifact].
538538
539539
The <b>Z</b> card is the required checksum over the rest of the artifact.
540540
541
-<a name="forum"></a>
541
+<a id="forum"></a>
542542
<h3>2.8 Forum Posts</h3>
543543
544544
Forum posts are intended as a mechanism for users and developers to
545545
discuss a project. Forum posts are like messages on a mailing list.
546546
@@ -611,11 +611,11 @@
611611
[#wikichng | wiki artifact].
612612
613613
The <b>Z</b> card is the required checksum over the rest of the artifact.
614614
615615
616
-<a name="summary"></a>
616
+<a id="summary"></a>
617617
<h2>3.0 Card Summary</h2>
618618
619619
The following table summarizes the various kinds of cards that appear
620620
on Fossil artifacts. A blank entry means that combination of card and
621621
artifact is not legal. A number or range of numbers indicates the number
@@ -722,11 +722,11 @@
722722
<td>&nbsp;</td>
723723
<td>&nbsp;</td>
724724
<td>&nbsp;</td>
725725
<td>&nbsp;</td>
726726
<td>&nbsp;</td>
727
-<td align=center><b>0-1</b></td>
727
+<td align=center><b>0-1</b><sup><nowiki>[4]</nowiki></sup></td>
728728
</tr>
729729
<tr>
730730
<td><b>I</b> <i>in-reply-to</i></td>
731731
<td>&nbsp;</td>
732732
<td>&nbsp;</td>
@@ -733,11 +733,11 @@
733733
<td>&nbsp;</td>
734734
<td>&nbsp;</td>
735735
<td>&nbsp;</td>
736736
<td>&nbsp;</td>
737737
<td>&nbsp;</td>
738
-<td align=center><b>0-1</b></td>
738
+<td align=center><b>0-1</b><sup><nowiki>[4]</nowiki></sup></td>
739739
</tr>
740740
<tr>
741741
<td><b>J</b> <i>name</i> ?<i>value</i>?</td>
742742
<td>&nbsp;</td>
743743
<td>&nbsp;</td>
@@ -799,11 +799,11 @@
799799
<td>&nbsp;</td>
800800
<td align=center><b>0-1</b></td>
801801
<td>&nbsp;</td>
802802
<td>&nbsp;</td>
803803
<td align=center><b>0-1</b></td>
804
-<td align=center><b>0-1</b></td>
804
+<td align=center><b>0-1</b><sup><nowiki>[5]</nowiki></sup></td>
805805
</tr>
806806
<tr>
807807
<td><b>Q</b> (<b>+</b>|<b>-</b>)<i>uuid</i> ?<i>uuid</i>?</td>
808808
<td align=center><b>0+</b></td>
809809
<td>&nbsp;</td>
@@ -823,18 +823,18 @@
823823
<td>&nbsp;</td>
824824
<td>&nbsp;</td>
825825
<td>&nbsp;</td>
826826
<td>&nbsp;</td>
827827
<tr>
828
-<td><b>T</b> (<b>+</b>|<b>*</b>|<b>-</b>)<i>tagname</i> <i>uuid</i> ?<i>value</i>?</td>
828
+<td><b>T</b> (<b>+</b>|<b>*</b>|<b>-</b>)<i>tagname</i> <i>uuid</i> ?<i>value</i>?<sup><nowiki>[1]</nowiki></sup></td>
829829
<td align=center><b>0+</b></td>
830830
<td>&nbsp;</td>
831
-<td align=center><b>1+</b></td>
831
+<td align=center><b>1+</b><sup><nowiki>[2]</nowiki></sup></td>
832832
<td>&nbsp;</td>
833833
<td>&nbsp;</td>
834834
<td>&nbsp;</td>
835
-<td align=center><b>0+</b></td>
835
+<td align=center><b>0+</b><sup><nowiki>[3]</nowiki></sup></td>
836836
<td>&nbsp;</td>
837837
</tr>
838838
<tr>
839839
<td><b>U</b> <i>username</i></td>
840840
<td align=center><b>1</b></td>
@@ -868,18 +868,34 @@
868868
<td align=center><b>1</b></td>
869869
<td align=center><b>1</b></td>
870870
</tr>
871871
</table>
872872
873
+Footnotes:
874
+
875
+1) T-card names may not be made up of only hexadecimal characters, as
876
+ they would be indistinguishable from a hash prefix.
877
+
878
+2) Tags in [#ctrl | Control Artifacts] may not be
879
+ self-referential. i.e. they may not start with <tt>*</tt>.
880
+
881
+3) Tags in [#event | Technotes] must be self-referential. i.e. they
882
+ must start with <tt>*</tt>.
883
+
884
+4) [#forum | Forum Posts] must have either one H-card or one
885
+ I-card, not both.
886
+
887
+5) [#forum | Forum Post] P-cards must have only a single parent
888
+ hash. i.e. they may not have merge parents.
873889
874
-<a name="addenda"></a>
890
+<a id="addenda"></a>
875891
<h2>4.0 Addenda</h2>
876892
877893
This section contains additional information which may be useful when
878894
implementing algorithms described above.
879895
880
-<a name="outofordercards"></a>
896
+<a id="outofordercards"></a>
881897
<h3>4.1 Relaxed Card Ordering Due To An Historical Bug</h3>
882898
883899
All cards of a structural artifact should be in lexicographical order.
884900
The Fossil implementation verifies this and rejects any structural
885901
artifact which has out-of-order cards. Futhermore, when Fossil is
886902
--- www/fileformat.wiki
+++ www/fileformat.wiki
@@ -32,11 +32,11 @@
32 with the global state.
33 The local state is not composed of artifacts and is not intended to be enduring.
34 This document is concerned with global state only. Local state is only
35 mentioned here in order to distinguish it from global state.
36
37 <a name="names"></a>
38 <h2>1.0 Artifact Names</h2>
39
40 Each artifact in the repository is named by a hash of its content.
41 No prefixes, suffixes, or other information is added to an artifact before
42 the hash is computed. The artifact name is just the (lower-case
@@ -54,11 +54,11 @@
54
55 Prior to Fossil version 2.0, all names were formed from the SHA1 hash of
56 the artifact. The key innovation in Fossil 2.0 was adding support for
57 alternative hash algorithms.
58
59 <a name="structural"></a>
60 <h2>2.0 Structural Artifacts</h2>
61
62 A structural artifact is an artifact with a particular format
63 that is used to define the relationships between other artifacts in the
64 repository.
@@ -100,11 +100,11 @@
100 not how the artifacts are stored on disk. It is the artifact format that
101 is intended to be enduring. The specifics of how artifacts are stored on
102 disk, though stable, is not intended to live as long as the
103 artifact format.
104
105 <a name="manifest"></a>
106 <h3>2.1 The Manifest</h3>
107
108 A manifest defines a check-in.
109 A manifest contains a list of artifacts for
110 each file in the project and the corresponding filenames, as
@@ -256,11 +256,11 @@
256 consistent.
257
258 A sample manifest from Fossil itself can be seen
259 [/artifact/28987096ac | here].
260
261 <a name="cluster"></a>
262 <h3>2.2 Clusters</h3>
263
264 A cluster is an artifact that declares the existence of other artifacts.
265 Clusters are used during repository synchronization to help
266 reduce network traffic. As such, clusters are an optimization and
@@ -282,11 +282,11 @@
282 prior cards in the cluster. The <b>Z</b> card is required.
283
284 An example cluster from Fossil can be seen
285 [/artifact/d03dbdd73a2a8 | here].
286
287 <a name="ctrl"></a>
288 <h3>2.3 Control Artifacts</h3>
289
290 Control artifacts are used to assign properties to other artifacts
291 within the repository.
292 Allowed cards in a control artifact are as follows:
@@ -336,11 +336,11 @@
336 artifact. The <b>Z</b> card is the usual required artifact checksum.
337
338 An example control artifacts can be seen [/info/9d302ccda8 | here].
339
340
341 <a name="wikichng"></a>
342 <h3>2.4 Wiki Pages</h3>
343
344 A wiki artifact defines a single version of a
345 single wiki page.
346 Wiki artifacts accept
@@ -380,11 +380,11 @@
380 artifact that includes a <b>C</b> card.
381
382 An example wiki artifact can be seen
383 [/artifact?name=7b2f5fd0e0&txt=1 | here].
384
385 <a name="tktchng"></a>
386 <h3>2.5 Ticket Changes</h3>
387
388 A ticket-change artifact represents a change to a trouble ticket.
389 The following cards are allowed on a ticket change artifact:
390
@@ -426,11 +426,11 @@
426 escapes defined for the <b>C</b> card of a manifest.
427
428 An example ticket-change artifact can be seen
429 [/artifact/91f1ec6af053 | here].
430
431 <a name="attachment"></a>
432 <h3>2.6 Attachments</h3>
433
434 An attachment artifact associates some other artifact that is the
435 attachment (the source artifact) with a ticket or wiki page or
436 technical note to which
@@ -468,11 +468,11 @@
468
469 The <b>Z</b> card is the usual checksum over the rest of the attachment artifact.
470 The <b>Z</b> card is required.
471
472
473 <a name="event"></a>
474 <h3>2.7 Technical Notes</h3>
475
476 A technical note or "technote" artifact (formerly known as an "event" artifact)
477 associates a timeline comment and a page of text
478 (similar to a wiki page) with a point in time. Technotes can be used
@@ -536,11 +536,11 @@
536 technote. The format of the <b>W</b> card is exactly the same as for a
537 [#wikichng | wiki artifact].
538
539 The <b>Z</b> card is the required checksum over the rest of the artifact.
540
541 <a name="forum"></a>
542 <h3>2.8 Forum Posts</h3>
543
544 Forum posts are intended as a mechanism for users and developers to
545 discuss a project. Forum posts are like messages on a mailing list.
546
@@ -611,11 +611,11 @@
611 [#wikichng | wiki artifact].
612
613 The <b>Z</b> card is the required checksum over the rest of the artifact.
614
615
616 <a name="summary"></a>
617 <h2>3.0 Card Summary</h2>
618
619 The following table summarizes the various kinds of cards that appear
620 on Fossil artifacts. A blank entry means that combination of card and
621 artifact is not legal. A number or range of numbers indicates the number
@@ -722,11 +722,11 @@
722 <td>&nbsp;</td>
723 <td>&nbsp;</td>
724 <td>&nbsp;</td>
725 <td>&nbsp;</td>
726 <td>&nbsp;</td>
727 <td align=center><b>0-1</b></td>
728 </tr>
729 <tr>
730 <td><b>I</b> <i>in-reply-to</i></td>
731 <td>&nbsp;</td>
732 <td>&nbsp;</td>
@@ -733,11 +733,11 @@
733 <td>&nbsp;</td>
734 <td>&nbsp;</td>
735 <td>&nbsp;</td>
736 <td>&nbsp;</td>
737 <td>&nbsp;</td>
738 <td align=center><b>0-1</b></td>
739 </tr>
740 <tr>
741 <td><b>J</b> <i>name</i> ?<i>value</i>?</td>
742 <td>&nbsp;</td>
743 <td>&nbsp;</td>
@@ -799,11 +799,11 @@
799 <td>&nbsp;</td>
800 <td align=center><b>0-1</b></td>
801 <td>&nbsp;</td>
802 <td>&nbsp;</td>
803 <td align=center><b>0-1</b></td>
804 <td align=center><b>0-1</b></td>
805 </tr>
806 <tr>
807 <td><b>Q</b> (<b>+</b>|<b>-</b>)<i>uuid</i> ?<i>uuid</i>?</td>
808 <td align=center><b>0+</b></td>
809 <td>&nbsp;</td>
@@ -823,18 +823,18 @@
823 <td>&nbsp;</td>
824 <td>&nbsp;</td>
825 <td>&nbsp;</td>
826 <td>&nbsp;</td>
827 <tr>
828 <td><b>T</b> (<b>+</b>|<b>*</b>|<b>-</b>)<i>tagname</i> <i>uuid</i> ?<i>value</i>?</td>
829 <td align=center><b>0+</b></td>
830 <td>&nbsp;</td>
831 <td align=center><b>1+</b></td>
832 <td>&nbsp;</td>
833 <td>&nbsp;</td>
834 <td>&nbsp;</td>
835 <td align=center><b>0+</b></td>
836 <td>&nbsp;</td>
837 </tr>
838 <tr>
839 <td><b>U</b> <i>username</i></td>
840 <td align=center><b>1</b></td>
@@ -868,18 +868,34 @@
868 <td align=center><b>1</b></td>
869 <td align=center><b>1</b></td>
870 </tr>
871 </table>
872
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
873
874 <a name="addenda"></a>
875 <h2>4.0 Addenda</h2>
876
877 This section contains additional information which may be useful when
878 implementing algorithms described above.
879
880 <a name="outofordercards"></a>
881 <h3>4.1 Relaxed Card Ordering Due To An Historical Bug</h3>
882
883 All cards of a structural artifact should be in lexicographical order.
884 The Fossil implementation verifies this and rejects any structural
885 artifact which has out-of-order cards. Futhermore, when Fossil is
886
--- www/fileformat.wiki
+++ www/fileformat.wiki
@@ -32,11 +32,11 @@
32 with the global state.
33 The local state is not composed of artifacts and is not intended to be enduring.
34 This document is concerned with global state only. Local state is only
35 mentioned here in order to distinguish it from global state.
36
37 <a id="names"></a>
38 <h2>1.0 Artifact Names</h2>
39
40 Each artifact in the repository is named by a hash of its content.
41 No prefixes, suffixes, or other information is added to an artifact before
42 the hash is computed. The artifact name is just the (lower-case
@@ -54,11 +54,11 @@
54
55 Prior to Fossil version 2.0, all names were formed from the SHA1 hash of
56 the artifact. The key innovation in Fossil 2.0 was adding support for
57 alternative hash algorithms.
58
59 <a id="structural"></a>
60 <h2>2.0 Structural Artifacts</h2>
61
62 A structural artifact is an artifact with a particular format
63 that is used to define the relationships between other artifacts in the
64 repository.
@@ -100,11 +100,11 @@
100 not how the artifacts are stored on disk. It is the artifact format that
101 is intended to be enduring. The specifics of how artifacts are stored on
102 disk, though stable, is not intended to live as long as the
103 artifact format.
104
105 <a id="manifest"></a>
106 <h3>2.1 The Manifest</h3>
107
108 A manifest defines a check-in.
109 A manifest contains a list of artifacts for
110 each file in the project and the corresponding filenames, as
@@ -256,11 +256,11 @@
256 consistent.
257
258 A sample manifest from Fossil itself can be seen
259 [/artifact/28987096ac | here].
260
261 <a id="cluster"></a>
262 <h3>2.2 Clusters</h3>
263
264 A cluster is an artifact that declares the existence of other artifacts.
265 Clusters are used during repository synchronization to help
266 reduce network traffic. As such, clusters are an optimization and
@@ -282,11 +282,11 @@
282 prior cards in the cluster. The <b>Z</b> card is required.
283
284 An example cluster from Fossil can be seen
285 [/artifact/d03dbdd73a2a8 | here].
286
287 <a id="ctrl"></a>
288 <h3>2.3 Control Artifacts</h3>
289
290 Control artifacts are used to assign properties to other artifacts
291 within the repository.
292 Allowed cards in a control artifact are as follows:
@@ -336,11 +336,11 @@
336 artifact. The <b>Z</b> card is the usual required artifact checksum.
337
338 An example control artifacts can be seen [/info/9d302ccda8 | here].
339
340
341 <a id="wikichng"></a>
342 <h3>2.4 Wiki Pages</h3>
343
344 A wiki artifact defines a single version of a
345 single wiki page.
346 Wiki artifacts accept
@@ -380,11 +380,11 @@
380 artifact that includes a <b>C</b> card.
381
382 An example wiki artifact can be seen
383 [/artifact?name=7b2f5fd0e0&txt=1 | here].
384
385 <a id="tktchng"></a>
386 <h3>2.5 Ticket Changes</h3>
387
388 A ticket-change artifact represents a change to a trouble ticket.
389 The following cards are allowed on a ticket change artifact:
390
@@ -426,11 +426,11 @@
426 escapes defined for the <b>C</b> card of a manifest.
427
428 An example ticket-change artifact can be seen
429 [/artifact/91f1ec6af053 | here].
430
431 <a id="attachment"></a>
432 <h3>2.6 Attachments</h3>
433
434 An attachment artifact associates some other artifact that is the
435 attachment (the source artifact) with a ticket or wiki page or
436 technical note to which
@@ -468,11 +468,11 @@
468
469 The <b>Z</b> card is the usual checksum over the rest of the attachment artifact.
470 The <b>Z</b> card is required.
471
472
473 <a id="event"></a>
474 <h3>2.7 Technical Notes</h3>
475
476 A technical note or "technote" artifact (formerly known as an "event" artifact)
477 associates a timeline comment and a page of text
478 (similar to a wiki page) with a point in time. Technotes can be used
@@ -536,11 +536,11 @@
536 technote. The format of the <b>W</b> card is exactly the same as for a
537 [#wikichng | wiki artifact].
538
539 The <b>Z</b> card is the required checksum over the rest of the artifact.
540
541 <a id="forum"></a>
542 <h3>2.8 Forum Posts</h3>
543
544 Forum posts are intended as a mechanism for users and developers to
545 discuss a project. Forum posts are like messages on a mailing list.
546
@@ -611,11 +611,11 @@
611 [#wikichng | wiki artifact].
612
613 The <b>Z</b> card is the required checksum over the rest of the artifact.
614
615
616 <a id="summary"></a>
617 <h2>3.0 Card Summary</h2>
618
619 The following table summarizes the various kinds of cards that appear
620 on Fossil artifacts. A blank entry means that combination of card and
621 artifact is not legal. A number or range of numbers indicates the number
@@ -722,11 +722,11 @@
722 <td>&nbsp;</td>
723 <td>&nbsp;</td>
724 <td>&nbsp;</td>
725 <td>&nbsp;</td>
726 <td>&nbsp;</td>
727 <td align=center><b>0-1</b><sup><nowiki>[4]</nowiki></sup></td>
728 </tr>
729 <tr>
730 <td><b>I</b> <i>in-reply-to</i></td>
731 <td>&nbsp;</td>
732 <td>&nbsp;</td>
@@ -733,11 +733,11 @@
733 <td>&nbsp;</td>
734 <td>&nbsp;</td>
735 <td>&nbsp;</td>
736 <td>&nbsp;</td>
737 <td>&nbsp;</td>
738 <td align=center><b>0-1</b><sup><nowiki>[4]</nowiki></sup></td>
739 </tr>
740 <tr>
741 <td><b>J</b> <i>name</i> ?<i>value</i>?</td>
742 <td>&nbsp;</td>
743 <td>&nbsp;</td>
@@ -799,11 +799,11 @@
799 <td>&nbsp;</td>
800 <td align=center><b>0-1</b></td>
801 <td>&nbsp;</td>
802 <td>&nbsp;</td>
803 <td align=center><b>0-1</b></td>
804 <td align=center><b>0-1</b><sup><nowiki>[5]</nowiki></sup></td>
805 </tr>
806 <tr>
807 <td><b>Q</b> (<b>+</b>|<b>-</b>)<i>uuid</i> ?<i>uuid</i>?</td>
808 <td align=center><b>0+</b></td>
809 <td>&nbsp;</td>
@@ -823,18 +823,18 @@
823 <td>&nbsp;</td>
824 <td>&nbsp;</td>
825 <td>&nbsp;</td>
826 <td>&nbsp;</td>
827 <tr>
828 <td><b>T</b> (<b>+</b>|<b>*</b>|<b>-</b>)<i>tagname</i> <i>uuid</i> ?<i>value</i>?<sup><nowiki>[1]</nowiki></sup></td>
829 <td align=center><b>0+</b></td>
830 <td>&nbsp;</td>
831 <td align=center><b>1+</b><sup><nowiki>[2]</nowiki></sup></td>
832 <td>&nbsp;</td>
833 <td>&nbsp;</td>
834 <td>&nbsp;</td>
835 <td align=center><b>0+</b><sup><nowiki>[3]</nowiki></sup></td>
836 <td>&nbsp;</td>
837 </tr>
838 <tr>
839 <td><b>U</b> <i>username</i></td>
840 <td align=center><b>1</b></td>
@@ -868,18 +868,34 @@
868 <td align=center><b>1</b></td>
869 <td align=center><b>1</b></td>
870 </tr>
871 </table>
872
873 Footnotes:
874
875 1) T-card names may not be made up of only hexadecimal characters, as
876 they would be indistinguishable from a hash prefix.
877
878 2) Tags in [#ctrl | Control Artifacts] may not be
879 self-referential. i.e. they may not start with <tt>*</tt>.
880
881 3) Tags in [#event | Technotes] must be self-referential. i.e. they
882 must start with <tt>*</tt>.
883
884 4) [#forum | Forum Posts] must have either one H-card or one
885 I-card, not both.
886
887 5) [#forum | Forum Post] P-cards must have only a single parent
888 hash. i.e. they may not have merge parents.
889
890 <a id="addenda"></a>
891 <h2>4.0 Addenda</h2>
892
893 This section contains additional information which may be useful when
894 implementing algorithms described above.
895
896 <a id="outofordercards"></a>
897 <h3>4.1 Relaxed Card Ordering Due To An Historical Bug</h3>
898
899 All cards of a structural artifact should be in lexicographical order.
900 The Fossil implementation verifies this and rejects any structural
901 artifact which has out-of-order cards. Futhermore, when Fossil is
902

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button