Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | For consistency, use the spelling 'descendant' for the noun usage. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
c9d3900367eb6e51ce4c524e93efed69 |
User & Date: | danield 2025-03-12 09:49:19 |
Context
2025-03-12
| ||
13:35 | For 'fossil diff', when --numstat is combined with --brief, show only the total row. ... (check-in: 37327906 user: danield tags: trunk) | |
09:49 | For consistency, use the spelling 'descendant' for the noun usage. ... (check-in: c9d39003 user: danield tags: trunk) | |
09:26 | Fix a hyperlink in the /timeline title. ... (check-in: 254dfbd2 user: danield tags: trunk) | |
Changes
Changes to src/graph.c.
︙ | ︙ | |||
82 83 84 85 86 87 88 | char *zBgClr; /* Background Color */ char zUuid[HNAME_MAX+1]; /* Check-in for file ID */ GraphRow *pNext; /* Next row down in the list of all rows */ GraphRow *pPrev; /* Previous row */ int idx; /* Row index. Top row is smallest. */ | | | 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | char *zBgClr; /* Background Color */ char zUuid[HNAME_MAX+1]; /* Check-in for file ID */ GraphRow *pNext; /* Next row down in the list of all rows */ GraphRow *pPrev; /* Previous row */ int idx; /* Row index. Top row is smallest. */ int idxTop; /* Direct descendant highest up on the graph */ GraphRow *pChild; /* Child immediately above this node */ u8 isDup; /* True if this is duplicate of a prior entry */ u8 isLeaf; /* True if this is a leaf node */ u8 isStepParent; /* pChild is actually a step-child. The thick ** arrow up to the child is dashed, not solid */ u8 hasNormalOutMerge; /* Is parent of at laest 1 non-cherrypick merge */ u8 timeWarp; /* Child is earlier in time */ |
︙ | ︙ |
Changes to src/timeline.c.
︙ | ︙ | |||
1379 1380 1381 1382 1383 1384 1385 | ** first check-in. If there are no check-ins in the decendent ** or ancestor set of check-in iFrom that match the tag, then ** return 0. */ static int timeline_endpoint( int iFrom, /* Starting point */ const char *zEnd, /* Tag we are searching for */ | | | 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 | ** first check-in. If there are no check-ins in the decendent ** or ancestor set of check-in iFrom that match the tag, then ** return 0. */ static int timeline_endpoint( int iFrom, /* Starting point */ const char *zEnd, /* Tag we are searching for */ int bForward /* 1: forwards in time (descendants) 0: backwards */ ){ int tagId; int endId = 0; Stmt q; int ans = 0; tagId = db_int(0, "SELECT tagid FROM tag WHERE tagname='sym-%q'", zEnd); |
︙ | ︙ | |||
1511 1512 1513 1514 1515 1516 1517 | } /* ** COMMAND: test-endpoint ** ** Usage: fossil test-endpoint BASE TAG ?OPTIONS? ** | | | | | 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 | } /* ** COMMAND: test-endpoint ** ** Usage: fossil test-endpoint BASE TAG ?OPTIONS? ** ** Show the first check-in with TAG that is a descendant or ancestor ** of BASE. The first descendant checkin is shown by default. Use ** the --backto to see the first ancestor checkin. ** ** Options: ** ** --backto Show ancestor. Others defaults to descendants. */ void timeline_test_endpoint(void){ int bForward = find_option("backto",0,0)==0; int from_rid; int ans; db_find_and_open_repository(0, 0); verify_all_options(); |
︙ | ︙ | |||
2353 2354 2355 2356 2357 2358 2359 | } } if( bSeparateDandP ){ int n = db_int(0, "SELECT count(*) FROM ok"); blob_reset(&desc); blob_appendf(&desc, "%d check-ins that are both ancestors of %z%h</a>" | | | 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 | } } if( bSeparateDandP ){ int n = db_int(0, "SELECT count(*) FROM ok"); blob_reset(&desc); blob_appendf(&desc, "%d check-ins that are both ancestors of %z%h</a>" " and descendants of %z%h</a>", n, href("%R/info?name=%h",zDPNameP),zDPNameP, href("%R/info?name=%h",zDPNameD),zDPNameD ); ridBackTo = 0; ridFwdTo = 0; }else{ |
︙ | ︙ | |||
2378 2379 2380 2381 2382 2383 2384 | }else{ blob_appendf(&desc, " back to %z%h</a>%s", href("%R/info?name=%h",zBackTo), zBackTo, bBackAdded ? " (not a direct anscestor)" : ""); if( ridFwdTo && zFwdTo ){ blob_appendf(&desc, " and up to %z%h</a>%s", href("%R/info?name=%h",zFwdTo), zFwdTo, | | | | 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 | }else{ blob_appendf(&desc, " back to %z%h</a>%s", href("%R/info?name=%h",zBackTo), zBackTo, bBackAdded ? " (not a direct anscestor)" : ""); if( ridFwdTo && zFwdTo ){ blob_appendf(&desc, " and up to %z%h</a>%s", href("%R/info?name=%h",zFwdTo), zFwdTo, bFwdAdded ? " (not a direct descendant)" : ""); } } }else if( ridFwdTo ){ if( nd==0 ){ blob_reset(&desc); blob_appendf(&desc, "Check-in %z%h</a> only (%z%h</a> does not follow it)", href("%R/info?name=%h",zBaseName), zBaseName, href("%R/info?name=%h",zFwdTo), zFwdTo); }else{ blob_appendf(&desc, " up to %z%h</a>%s", href("%R/info?name=%h",zFwdTo), zFwdTo, bFwdAdded ? " (not a direct descendant)":""); } } if( advancedMenu ){ style_submenu_checkbox("v", "Files", (zType[0]!='a' && zType[0]!='c'),0); } style_submenu_entry("n","Max:",4,0); timeline_y_submenu(1); |
︙ | ︙ |
Changes to src/update.c.
︙ | ︙ | |||
197 198 199 200 201 202 203 | if( tid==0 || !is_a_version(tid) ){ fossil_fatal("no such check-in: %s", g.argv[2]); } } } /* If no VERSION is specified on the command-line, then look for a | | | 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 | if( tid==0 || !is_a_version(tid) ){ fossil_fatal("no such check-in: %s", g.argv[2]); } } } /* If no VERSION is specified on the command-line, then look for a ** descendant of the current version. If there are multiple descendants, ** look for one from the same branch as the current version. If there ** are still multiple descendants, show them all and refuse to update ** until the user selects one. */ if( tid==0 ){ int closeCode = 1; compute_leaves(vid, closeCode); |
︙ | ︙ |
Changes to www/changes.wiki.
︙ | ︙ | |||
60 61 62 63 64 65 66 | <li> Accept the "Z" (Zulu-time) suffix on date arguments for the "ymd" and "yw" query parameters. <li> The new "min" query parameter, when added to a from=,to= query, collapses long runs of check-ins on the same branch into just end-points. <li> The p= and d= parameters an reference different check-ins, which case the timeline shows those check-ins that are both ancestors | | | 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | <li> Accept the "Z" (Zulu-time) suffix on date arguments for the "ymd" and "yw" query parameters. <li> The new "min" query parameter, when added to a from=,to= query, collapses long runs of check-ins on the same branch into just end-points. <li> The p= and d= parameters an reference different check-ins, which case the timeline shows those check-ins that are both ancestors of p= and descendants of d=. </ol> * Added the [/help?cmd=/clusterlist|/clusterlist page] for analysis and debugging * Fix a bug in [/help?cmd=patch|fossil patch create] that causes [/help?cmd=revert|fossil revert] operations that happened on individual files after a [/help?cmd=merge|fossil merge] to be omitted from the patch. |
︙ | ︙ |