Fossil SCM

branch/generated-tkt-mimetype

3 years, 10 months ago by george

When a ticket is created or modified Fossil extends BACKLINK table with the links extracted from the J-cards of the [ticket change artifact] (/doc/2022-05-18/www/fileformat.wiki#tktchng). That extraction requires the knowledge of which markup is used.

Previously Fossil derived this information solely from the value of J-card [named "mimetype"]1, which was considered only if a regular "mimetype" column was defined in TICKET or TICKETCHNG table.

This branch adds the ability to specify mimetypes using GENERATED "mimetype" columns.
It implements the following rules:

  1. If either TICKET or TICKETCHNG table has a regular (not generated) "mimetype" column, then traditional processing is applied (as schetched in the beginning).

  2. Otherwise: if just one of the above tables has generated "mimetype" column then the generated value in the corresponding row is used.

  3. Otherwise: if just one of two generated values is not NULL then that value is used for all fields.

  4. Otherwise (when both generated values are not NULL):

    • all fields that are defined in the TICKETCHNG table are processed using mimetype from the TICKETCHNG table;
    • the rest fields (that are specific to TICKET table) are processed using mimetype from the TICKET table.

If a NULL value has to be interpreted as mimetype it works as Fossil-Wiki. That also applies to the case when "mimetype" column is missing in both TICKET and TICKETCHNG.

See forum thread 40c1208a0f84 for rationale and discussion.


  1. Here and further the naming "mimetype" is case-sensitive. Presumably due to performance considerations. 

Keyboard Shortcuts

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