Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Allow manifest artifacts to omit the C and U cards, because otherwise there are some historical manifest artifacts in Fossil itself that will not parse, and there may be similar artifacts in other repositories. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
b3ccc4bf34a525a4d8563ab3119a08bd |
User & Date: | drh 2018-08-07 18:53:46.516 |
Context
2018-08-07
| ||
20:11 | Use the Windows _wspawnv() interface with the _P_NOWAIT option to start a separate backoffice process whenever necessary. Add the backoffice-logfile setting for monitoring backoffice operation. ... (check-in: 2583cae1 user: drh tags: trunk) | |
18:53 | Allow manifest artifacts to omit the C and U cards, because otherwise there are some historical manifest artifacts in Fossil itself that will not parse, and there may be similar artifacts in other repositories. ... (check-in: b3ccc4bf user: drh tags: trunk) | |
18:30 | Improvements to the way backoffice is launched, especially on unix where it now runs in a separate process using fork(). Also fix some minor bugs in other parts of the system that were found while testing backoffice. ... (check-in: 4180dc6b user: drh tags: trunk) | |
Changes
Changes to src/manifest.c.
︙ | ︙ | |||
123 124 125 126 127 128 129 | ** Allowed and required card types in each style of artifact */ static struct { const char *zAllowed; /* Allowed cards. Human-readable */ const char *zRequired; /* Required cards. Human-readable */ } manifestCardTypes[] = { /* Allowed Required */ | | > > | 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | ** Allowed and required card types in each style of artifact */ static struct { const char *zAllowed; /* Allowed cards. Human-readable */ const char *zRequired; /* Required cards. Human-readable */ } manifestCardTypes[] = { /* Allowed Required */ /* CFTYPE_MANIFEST 1 */ { "BCDFNPQRTUZ", "DZ" }, /* Wants to be "CDUZ" ----^^^^ ** but we must limit for historical compatibility */ /* CFTYPE_CLUSTER 2 */ { "MZ", "MZ" }, /* CFTYPE_CONTROL 3 */ { "DTUZ", "DTUZ" }, /* CFTYPE_WIKI 4 */ { "DLNPUWZ", "DLUWZ" }, /* CFTYPE_TICKET 5 */ { "DJKUZ", "DJKUZ" }, /* CFTYPE_ATTACHMENT 6 */ { "ACDNUZ", "ADZ" }, /* CFTYPE_EVENT 7 */ { "CDENPTUWZ", "DEWZ" }, /* CFTYPE_FORUM 8 */ { "DGHINPUWZ", "DUWZ" }, |
︙ | ︙ | |||
990 991 992 993 994 995 996 | } } if( x.z<x.zEnd ) SYNTAX("extra characters at end of card"); /* If the artifact type has not yet been determined, then compute ** it now. */ if( p->type==0 ){ | > | > > > | 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 | } } if( x.z<x.zEnd ) SYNTAX("extra characters at end of card"); /* If the artifact type has not yet been determined, then compute ** it now. */ if( p->type==0 ){ if( p->zComment!=0 || p->nFile>0 || p->nParent>0 ){ p->type = CFTYPE_MANIFEST; }else{ p->type = CFTYPE_CONTROL; } } /* Verify that no disallowed cards are present for this artifact type */ m = manifest_card_mask(manifestCardTypes[p->type-1].zAllowed); if( seenCard & ~m ){ sqlite3_snprintf(sizeof(zErrBuf), zErrBuf, "%c-card in %s", maskToType(seenCard & ~m), |
︙ | ︙ | |||
1117 1118 1119 1120 1121 1122 1123 | ** errors. If the N argument is given, run the parsing N times. */ void manifest_test_parse_cmd(void){ Manifest *p; Blob b; int i; int n = 1; | | > | 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 | ** errors. If the N argument is given, run the parsing N times. */ void manifest_test_parse_cmd(void){ Manifest *p; Blob b; int i; int n = 1; db_find_and_open_repository(0,0); verify_all_options(); if( g.argc!=3 && g.argc!=4 ){ usage("FILENAME"); } blob_read_from_file(&b, g.argv[2], ExtFILE); if( g.argc>3 ) n = atoi(g.argv[3]); for(i=0; i<n; i++){ Blob b2; |
︙ | ︙ |