Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Record fractional seconds for artifact times. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
722d7cac97d5a67c225e97fa0c722d92 |
| User & Date: | drh 2011-01-07 16:20:02.448 |
References
|
2011-01-10
| ||
| 08:20 | • Ticket [2ee159304e] Error in timeline (armv5tel-linux) showing events status still Open with 1 other change artifact: 7e851ce73b user: anonymous | |
Context
|
2011-01-07
| ||
| 16:20 | Merge the experimental export speed enhancement into trunk. check-in: 7aaa2aa417 user: drh tags: trunk | |
| 16:20 | Record fractional seconds for artifact times. check-in: 722d7cac97 user: drh tags: trunk | |
|
2011-01-05
| ||
| 18:41 | Add the --ignore option to the "add" command and have "add" honor the "ignore-glob" setting. Ticket [f270321c0f74b354f05] check-in: be3d2154da user: drh tags: trunk | |
Changes
Changes to src/attach.c.
| ︙ | ︙ | |||
255 256 257 258 259 260 261 |
zComment = PD("comment", "");
while( fossil_isspace(zComment[0]) ) zComment++;
n = strlen(zComment);
while( n>0 && fossil_isspace(zComment[n-1]) ){ n--; }
if( n>0 ){
blob_appendf(&manifest, "C %F\n", zComment);
}
| | < | 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 |
zComment = PD("comment", "");
while( fossil_isspace(zComment[0]) ) zComment++;
n = strlen(zComment);
while( n>0 && fossil_isspace(zComment[n-1]) ){ n--; }
if( n>0 ){
blob_appendf(&manifest, "C %F\n", zComment);
}
zDate = date_in_standard_format("now");
blob_appendf(&manifest, "D %s\n", zDate);
blob_appendf(&manifest, "U %F\n", g.zLogin ? g.zLogin : "nobody");
md5sum_blob(&manifest, &cksum);
blob_appendf(&manifest, "Z %b\n", &cksum);
rid = content_put(&manifest, 0, 0, 0);
manifest_crosslink(rid, &manifest);
db_end_transaction(0);
|
| ︙ | ︙ | |||
335 336 337 338 339 340 341 |
blob_zero(&manifest);
for(i=n=0; zFile[i]; i++){
if( zFile[i]=='/' || zFile[i]=='\\' ) n = i;
}
zFile += n;
if( zFile[0]==0 ) zFile = "unknown";
blob_appendf(&manifest, "A %F %F\n", zFile, zTarget);
| | < | 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 |
blob_zero(&manifest);
for(i=n=0; zFile[i]; i++){
if( zFile[i]=='/' || zFile[i]=='\\' ) n = i;
}
zFile += n;
if( zFile[0]==0 ) zFile = "unknown";
blob_appendf(&manifest, "A %F %F\n", zFile, zTarget);
zDate = date_in_standard_format("now");
blob_appendf(&manifest, "D %s\n", zDate);
blob_appendf(&manifest, "U %F\n", g.zLogin ? g.zLogin : "nobody");
md5sum_blob(&manifest, &cksum);
blob_appendf(&manifest, "Z %b\n", &cksum);
rid = content_put(&manifest, 0, 0, 0);
manifest_crosslink(rid, &manifest);
db_end_transaction(0);
|
| ︙ | ︙ |
Changes to src/branch.c.
| ︙ | ︙ | |||
82 83 84 85 86 87 88 |
blob_zero(&branch);
if( pParent->zBaseline ){
blob_appendf(&branch, "B %s\n", pParent->zBaseline);
}
zComment = mprintf("Create new branch named \"%h\"", zBranch);
blob_appendf(&branch, "C %F\n", zComment);
zDate = date_in_standard_format(zDateOvrd ? zDateOvrd : "now");
| < | 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
blob_zero(&branch);
if( pParent->zBaseline ){
blob_appendf(&branch, "B %s\n", pParent->zBaseline);
}
zComment = mprintf("Create new branch named \"%h\"", zBranch);
blob_appendf(&branch, "C %F\n", zComment);
zDate = date_in_standard_format(zDateOvrd ? zDateOvrd : "now");
blob_appendf(&branch, "D %s\n", zDate);
/* Copy all of the content from the parent into the branch */
for(i=0; i<pParent->nFile; ++i){
blob_appendf(&branch, "F %F", pParent->aFile[i].zName);
if( pParent->aFile[i].zUuid ){
blob_appendf(&branch, " %s", pParent->aFile[i].zUuid);
|
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
560 561 562 563 564 565 566 |
/*
** zDate should be a valid date string. Convert this string into the
** format YYYY-MM-DDTHH:MM:SS. If the string is not a valid date,
** print a fatal error and quit.
*/
char *date_in_standard_format(const char *zInputDate){
| | > > > | | > < < < | 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 |
/*
** zDate should be a valid date string. Convert this string into the
** format YYYY-MM-DDTHH:MM:SS. If the string is not a valid date,
** print a fatal error and quit.
*/
char *date_in_standard_format(const char *zInputDate){
char *zDate;
zDate = db_text(0, "SELECT strftime('%%Y-%%m-%%dT%%H:%%M:%%f',%Q)",
zInputDate);
if( zDate[0]==0 ){
fossil_fatal(
"unrecognized date format (%s): use \"YYYY-MM-DD HH:MM:SS.SSS\"",
zInputDate
);
}
return zDate;
}
/*
** Create a manifest.
*/
static void create_manifest(
|
| ︙ | ︙ |
Changes to src/event.c.
| ︙ | ︙ | |||
282 283 284 285 286 287 288 |
char *zDate;
Blob cksum;
int nrid;
blob_zero(&event);
db_begin_transaction();
login_verify_csrf_secret();
blob_appendf(&event, "C %F\n", zComment);
| | < | 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 |
char *zDate;
Blob cksum;
int nrid;
blob_zero(&event);
db_begin_transaction();
login_verify_csrf_secret();
blob_appendf(&event, "C %F\n", zComment);
zDate = date_in_standard_format("now");
blob_appendf(&event, "D %s\n", zDate);
free(zDate);
zETime[10] = 'T';
blob_appendf(&event, "E %s %s\n", zETime, zEventId);
zETime[10] = ' ';
if( rid ){
char *zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
|
| ︙ | ︙ |
Changes to src/info.c.
| ︙ | ︙ | |||
1464 1465 1466 1467 1468 1469 1470 |
if( P("apply") ){
Blob ctrl;
char *zNow;
int nChng = 0;
login_verify_csrf_secret();
blob_zero(&ctrl);
| | < | 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 |
if( P("apply") ){
Blob ctrl;
char *zNow;
int nChng = 0;
login_verify_csrf_secret();
blob_zero(&ctrl);
zNow = date_in_standard_format("now");
blob_appendf(&ctrl, "D %s\n", zNow);
db_multi_exec("CREATE TEMP TABLE newtags(tag UNIQUE, prefix, value)");
if( zNewColor[0]
&& (fPropagateColor!=fNewPropagateColor || strcmp(zColor,zNewColor)!=0)
){
char *zPrefix = "+";
if( fNewPropagateColor ){
|
| ︙ | ︙ |
Changes to src/tag.c.
| ︙ | ︙ | |||
292 293 294 295 296 297 298 |
"invalid tag name \"%s\" - might be confused with"
" a hexadecimal artifact ID",
zTagname
);
}
#endif
zDate = date_in_standard_format(zDateOvrd ? zDateOvrd : "now");
| < | 292 293 294 295 296 297 298 299 300 301 302 303 304 305 |
"invalid tag name \"%s\" - might be confused with"
" a hexadecimal artifact ID",
zTagname
);
}
#endif
zDate = date_in_standard_format(zDateOvrd ? zDateOvrd : "now");
blob_appendf(&ctrl, "D %s\n", zDate);
blob_appendf(&ctrl, "T %c%s%F %b",
zTagtype[tagtype], zPrefix, zTagname, &uuid);
if( tagtype>0 && zValue && zValue[0] ){
blob_appendf(&ctrl, " %F\n", zValue);
}else{
blob_appendf(&ctrl, "\n");
|
| ︙ | ︙ |
Changes to src/tkt.c.
| ︙ | ︙ | |||
427 428 429 430 431 432 433 | int i; int rid; Blob tktchng, cksum; login_verify_csrf_secret(); zUuid = (const char *)pUuid; blob_zero(&tktchng); | | < | 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 |
int i;
int rid;
Blob tktchng, cksum;
login_verify_csrf_secret();
zUuid = (const char *)pUuid;
blob_zero(&tktchng);
zDate = date_in_standard_format("now");
blob_appendf(&tktchng, "D %s\n", zDate);
free(zDate);
for(i=0; i<nField; i++){
if( azAppend[i] ){
blob_appendf(&tktchng, "J +%s %z\n", azField[i],
fossilize(azAppend[i], -1));
}
|
| ︙ | ︙ | |||
1027 1028 1029 1030 1031 1032 1033 |
}
/* now add the needed artifacts to the repository */
blob_zero(&tktchng);
{ /* add the time to the ticket manifest */
char *zDate;
| | < | 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 |
}
/* now add the needed artifacts to the repository */
blob_zero(&tktchng);
{ /* add the time to the ticket manifest */
char *zDate;
zDate = date_in_standard_format("now");
blob_appendf(&tktchng, "D %s\n", zDate);
free(zDate);
}
/* append defined elements */
for(i=0; i<nField; i++){
char *zValue;
|
| ︙ | ︙ |
Changes to src/wiki.c.
| ︙ | ︙ | |||
303 304 305 306 307 308 309 |
int nrid;
blob_zero(&wiki);
db_begin_transaction();
if( isSandbox ){
db_set("sandbox",zBody,0);
}else{
login_verify_csrf_secret();
| | < | 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 |
int nrid;
blob_zero(&wiki);
db_begin_transaction();
if( isSandbox ){
db_set("sandbox",zBody,0);
}else{
login_verify_csrf_secret();
zDate = date_in_standard_format("now");
blob_appendf(&wiki, "D %s\n", zDate);
free(zDate);
blob_appendf(&wiki, "L %F\n", zPageName);
if( rid ){
char *zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
blob_appendf(&wiki, "P %s\n", zUuid);
free(zUuid);
|
| ︙ | ︙ | |||
476 477 478 479 480 481 482 |
pWiki = manifest_get(rid, CFTYPE_WIKI);
if( pWiki ){
blob_append(&body, pWiki->zWiki, -1);
manifest_destroy(pWiki);
}
blob_zero(&wiki);
db_begin_transaction();
| | < | 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 |
pWiki = manifest_get(rid, CFTYPE_WIKI);
if( pWiki ){
blob_append(&body, pWiki->zWiki, -1);
manifest_destroy(pWiki);
}
blob_zero(&wiki);
db_begin_transaction();
zDate = date_in_standard_format("now");
blob_appendf(&wiki, "D %s\n", zDate);
blob_appendf(&wiki, "L %F\n", zPageName);
if( rid ){
char *zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
blob_appendf(&wiki, "P %s\n", zUuid);
free(zUuid);
}
|
| ︙ | ︙ | |||
798 799 800 801 802 803 804 |
fossil_fatal("no such wiki page: %s", zPageName);
}
if( rid!=0 && isNew ){
fossil_fatal("wiki page %s already exists", zPageName);
}
blob_zero(&wiki);
| | < | 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 |
fossil_fatal("no such wiki page: %s", zPageName);
}
if( rid!=0 && isNew ){
fossil_fatal("wiki page %s already exists", zPageName);
}
blob_zero(&wiki);
zDate = date_in_standard_format("now");
blob_appendf(&wiki, "D %s\n", zDate);
free(zDate);
blob_appendf(&wiki, "L %F\n", zPageName );
if( rid ){
zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
blob_appendf(&wiki, "P %s\n", zUuid);
free(zUuid);
|
| ︙ | ︙ |
Changes to www/fileformat.wiki.
| ︙ | ︙ | |||
126 127 128 129 130 131 132 | space and newline, no other whitespace characters are allowed in the check-in comment. Nor are any unprintable characters allowed in the comment. A manifest must have exactly one D-card. The sole argument to the D-card is a date-time stamp in the ISO8601 format. The date and time should be in coordinated universal time (UTC). | | | > | 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | space and newline, no other whitespace characters are allowed in the check-in comment. Nor are any unprintable characters allowed in the comment. A manifest must have exactly one D-card. The sole argument to the D-card is a date-time stamp in the ISO8601 format. The date and time should be in coordinated universal time (UTC). The format one of: <blockquote> <i>YYYY</i><b>-</b><i>MM</i><b>-</b><i>DD</i><b>T</b><i>HH</i><b>:</b><i>MM</i><b>:</b><i>SS</i><br> <i>YYYY</i><b>-</b><i>MM</i><b>-</b><i>DD</i><b>T</b><i>HH</i><b>:</b><i>MM</i><b>:</b><i>SS</i><b>.</b><i>SSS</i> </blockquote> A manifest has zero or more F-cards. Each F-card identifies a file that is part of the check-in. There are one, two, three, or four arguments. The first argument is the pathname of the file in the check-in relative to the root of the project file hierarchy. No ".." or "." directories are allowed |
| ︙ | ︙ |