Login
All files named ”f-apps/f-parseparty.c”
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for f-apps/f-parseparty.c

2026-07-28
15:06
New borrowed-buffer reuse metrics. Refinements in buffer management in the (un)compress routines, hopefully for clarity. file: ea995e9a88 check-in: [566eff4e98] user: stephan branch: buffer-borrow, size: 15191
11:43
Zero-initialize the aforementioned new metrics (just dumb luck it didn't assert before) and add a reusable buffer to fsl_mlink_add(). Metrics show it being reused but not holding any memory at metrics-dump time, which is highly suspect because the couple of places which use it do not clear it. Thought this was checked in half an hour ago, so we're not yet done: A slight semantics change in fsl_deck_parse(): it now guarantees only to fsl_buffer_reuse() its src buffer if it does not take it over. It no longer deallocates that buffer. Insofar as i can find in this tree, including fnc, that broke only a single test which specifically asserted for the previous behaivior. file: f19180811b check-in: [2e8a0fc755] user: stephan branch: buffer-borrow, size: 14775
2025-08-21
22:51
Simplify the fsl_timer API. file: 904298596e check-in: [82646cc1fa] user: stephan branch: trunk, size: 14465
2025-08-20
15:56
Remove deprecated SPDX-ArtifactOfProjectName header. file: 862b11c153 check-in: [31bb2bd4bf] user: stephan branch: trunk, size: 14405
2025-08-10
00:58
Globally rename foo_transaction_bar() to foo_txn_bar(). file: 351ac3fd26 check-in: [03da2e699b] user: stephan branch: savepoints, size: 14445
2025-07-26
11:16
Add general SCM-related processing timer to fsl_xfer_metrics. Rename fsl_timer_state to fsl_timer. file: dce7d057a4 check-in: [7ea72e9c97] user: stephan branch: trunk, size: 14485
2025-06-20
10:18
Minor internal optimizations in buffer.c. file: 7a56740c98 check-in: [23f2839b77] user: stephan branch: trunk, size: 14509
2025-05-31
09:33
Re-add -Wextra -pedantic CC flags, and work out its complaints across many files, but they're disabled without the --pedantic flag because they break with the upstream fnc.c and sqlite3.c. file: 0ae68ec228 check-in: [84ef1197c3] user: stephan branch: trunk, size: 14508
2025-04-11
12:30
Add documented-but-missing -r flag to f-parseparty.c. file: 8d82c04118 check-in: [1a27ee61a6] user: stephan branch: trunk, size: 14493
2024-11-22
09:16
Myriad miniscule modifications - space removals. file: 61298802b9 check-in: [8a3bc44c30] user: brickviking branch: trunk, size: 14491
2024-09-16
20:34
Remove the fsl_db::f (fsl_cx*) member. This touches a lot of code lines but was not anywhere near as invasive as expected. file: a040c031ab check-in: [f00a5025f5] user: stephan branch: db-hooks, size: 14496
2021-12-30
05:37
Replaced f-apps fcli_setup() calls with fcli_setup_v2(). file: fa289191d5 check-in: [313b59841e] user: stephan branch: trunk, size: 14499
2021-12-21
20:38
Corrected f-apps broken by previous checkin. file: 6ab3bd5150 check-in: [5427afd00d] user: stephan branch: trunk, size: 14531
2021-12-04
07:39
Internal restructuring of crosslink callback handling, such that registered listeners are called at a later phase for ticket artifacts. This should allow client-side listeners to overwrite timeline entries for tickets without too much hassle (that wasn't possible at all before this change). file: 9007d9abaf check-in: [8349911eb6] user: stephan branch: trunk, size: 14615
06:36
(Finally) implemented ticket crosslinking. file: b6429d5125 check-in: [d8e8c16cc4] user: stephan branch: trunk, size: 14511
2021-11-19
09:40
Added some of the missing bits for crosslinking tickets. Still more to do, though. file: 9b18031af1 check-in: [94e7cd6207] user: stephan branch: trunk, size: 14859
08:10
Diverse generic internal and doc cleanups. file: 46a86c51c7 check-in: [06f92b7689] user: stephan branch: trunk, size: 14874
2021-11-18
09:44
Moved cache metrics dumps into fcli API. Told f-rebuild to skip the ticket tables for the time being (since we do not yet crosslink those). Added FSL_CX_F_BLOB_CACHE flag to enable/disable blob cache. Discovered that f-rebuild causes unexpected failures in downstream apps like f-sanity and f-resolve. file: 2674b1175f check-in: [2b136fe2e7] user: stephan branch: trunk, size: 14930
09:04
Internal API renaming: fsl__acache ==> fsl__bccache. file: 72f4205556 check-in: [7aaf02031e] user: stephan branch: trunk, size: 15352
08:44
Added some internal hit/miss metrics to the fsl_content_get() cache. file: 414c9f79be check-in: [754e28ea1e] user: stephan branch: trunk, size: 15324
2021-11-02
23:52
Mass renaming of many internal APIs from fsl_X to fsl__X (two underscores) and several adjacent const cleanups. file: 9e52f2b68a check-in: [83917b7b45] user: stephan branch: trunk, size: 15064
14:09
Further tweaking of buffer memory ownership for fsl_deck_parse(). Minor adjacent tweaking. file: b5eebefba8 check-in: [7948748ba0] user: stephan branch: trunk, size: 15062
00:21
More work on rebuild and adjacent code. Removed 'restrict' keyword from fsl_strlcpy() and fsl_strlcat() because they break in C++ compilation mode. Renamed fsl_guess_user_name() to fsl_user_name_guess() (consistency) and added fsl_cx_user_guess(). file: 7011a17a51 check-in: [3bcb631b4f] user: stephan branch: trunk, size: 14650
2021-11-01
21:25
More work on f-rebuild and related crosslinking bits. file: 084a37a04e check-in: [8c51e45f8f] user: stephan branch: trunk, size: 14636
2021-10-20
13:16
f-parseparty: fixed an assert broken by the fsl_deck refactoring and added --dry-run flag. file: f5eb77b742 check-in: [c1390fe2f8] user: stephan branch: remove-deck-uuid, size: 14573
13:11
Removed fsl_deck::uuid and the fsl_deck_parse() step which tries to map its inputs to an existing db record. While convenient for downstream code, it's a huge performance hit. Checking in to a branch for f-parseparty speed testing compared to the current trunk. file: 7dd8e7f2e0 check-in: [1dc391289c] user: stephan branch: remove-deck-uuid, size: 14351
2021-04-05
10:23
Minor generic cleanups in fcli and related app-side code. file: fe250f080f check-in: [c62ffa1046] user: stephan branch: trunk, size: 14420
2021-04-04
04:58
f-apps: use fcli_cx() instead of accessing fcli.f directly. file: 61c079a0b6 check-in: [9c7cf37828] user: stephan branch: trunk, size: 14374
2021-03-27
05:13
Added f-ci --user-override flag. (We'll test it with this checkin.) A couple pedantic casts for the sake of variadic arg handling. file: 42d6fd03a1 check-in: [aeae018f92] user: steeeeve branch: trunk, size: 14371
2021-03-26
20:00
Added a flag to enable/disable the fsl_cx manifest cache. f-parseparty now uses that flag and now clears out the leaf table before re-crosslinking checkins (noting that crosslinking checkins without crosslinking tags may lead to different leaf list results). file: b74bdf5220 check-in: [1da8255567] user: stephan branch: manifest-cache, size: 14382
07:17
Initial go at a manifest cache similar to fossil's, except that we don't use malloc'd fsl_deck instances. This shaves almost a full second off of (f-parseparty -t c -c -q) and has a hit rate of almost exactly 1 in 3 during that party, but it now accounts for more than half of sizeof(fsl_cx). file: 8add031151 check-in: [6bb1262768] user: stephan branch: manifest-cache, size: 13988
04:08
Added more timing info to f-parseparty. file: c0b8bd3058 check-in: [a955308062] user: stephan branch: trunk, size: 13828
2021-03-24
18:12
Added semi-configurable cache limits in fsl_acache and activated the fsl_cx::arty cache used by fsl_content_get(). That halves the time needed to run f-parseparty with crosslinking on 2003 checkins but it's still dog slow compared to fossil's rebuild (which does approximately the same thing). file: e6e6936ddd check-in: [7c05e9d44f] user: stephan branch: trunk, size: 13130
2021-03-15
03:28
f-parseparty now deletes tags related to things it's going to crosslink before it starts working. Added a missing transaction. file: bb3a805110 check-in: [dd742d955b] user: stephan branch: trunk, size: 12632
2021-03-12
17:26
Completely reworked how fsl_cx manages scratch buffers but it's leading, rather inexplicably, to double the number of allocs and memory use in f-sanity. Checking in due to paranoia of losing this work. file: 000eb1cb3f check-in: [01c1cff578] user: stephan branch: cx-scratchpad-rework, size: 10190
2021-03-11
15:29
Added fsl_deck_clean2(). Minor iprovements in f-parseparty, most notably to run the leaf rebuild after crosslinking checkins and/or tags, to avoid having (only sometimes) incorrect is-leaf markings (the reason why that happens, and whether it's an actual mistake or a side-effect of unfortunate parse ordering) is unclear). Other trivial internal cleanups. file: fa65bd5f66 check-in: [6bdb294442] user: stephan branch: trunk, size: 10188
2021-03-10
17:36
Minor fcli API usage modernization. file: 85448d023b check-in: [c04ce8aaf1] user: stephan branch: trunk, size: 7359
2021-03-03
11:42
Renamed fsl_buffer_reset() to fsl_buffer_reuse() to try to reduce the confusion between its semantics contrasted with fsl_buffer_clear(). file: dff4aa7630 check-in: [0584c1b6e2] user: stephan branch: trunk, size: 7453
2021-03-01
16:21
Arguably a typo fix in the new header. Thank goodness for stream editors. file: 473dfbf8d6 check-in: [386316db07] user: stephan branch: trunk, size: 7453
15:46
Replaced the overwhelming majority of license headers with the new project-standard one. Left a few as they were for files which were imported essentially unchanged from Fossil or, in the case of SHA1/SHA3/MD5 bits, other 3rd-party sources. file: 3731fbf836 check-in: [fa5fb24496] user: stephan branch: trunk, size: 7445
2021-02-28
04:57
fcli now uses its own FCLI_RC_HELP, instead of hijacking FSL_RC_BREAK, to indicate that --help was triggered. file: d7e3038ef9 check-in: [d0edf4583f] user: stephan branch: trunk, size: 7379
2021-02-27
14:29
Finished porting the f-apps to the new CLI handling bits. Replaced fcli::appHelp with what was formerly fcli::appHelp2. file: 5be3978683 check-in: [ca464b5b74] user: stephan branch: trunk, size: 7376
07:08
More CLI flag subsystem porting and license header swapping. file: af2a233c9b check-in: [c94a3b0d0e] user: stephan branch: trunk, size: 7377
06:56
More CLI flag subsystem porting. file: 3994780e72 check-in: [96957a63d7] user: stephan branch: trunk, size: 7687
2021-02-26
14:04
Reworking how fcli flag handling is done. file: 2dcb79d0ad check-in: [dad2f76f30] user: stephan branch: fcli-flag-rework, size: 7606
04:57
A workaround for the plink count mismatch between libf/fossil crosslinking. This gets the plink counts correct (fixing fossil's ability to run 'blame'), but why this workaround is needed is unclear. A couple char-to-bool API conversions. file: 234dc56172 check-in: [a9332967a7] user: stephan branch: trunk, size: 7600
2021-02-25
08:22
Some API renaming. Modified how fsl_deck_parse() determines the deck's RID/UUID. Introduced fsl_repo_blob_lookup(). file: 31d06a0f99 check-in: [467b9e1c18] user: stephan branch: trunk, size: 7597
2021-02-24
04:04
Brought checkin crosslinking up to date wrt fossil (whew) and it appears to work: deleting the mlink/plink entries and running f-parseparty -c seems to do the right thing. Fixed a couple mis-handled cases of cherrypick crosslinking and mis-setting of the fsl_card_Q::type field in fsl_deck_parse(). file: d48765d062 check-in: [4dde2be3b0] user: stephan branch: trunk, size: 7556
2021-02-23
23:55
Internal doc tweaks. file: a49c48ac09 check-in: [c7e7b6cf73] user: stephan branch: trunk, size: 7402
19:45
Hardened deck validation for certain special cases, in particular at output-time. file: d2d7851a8d check-in: [a392b75868] user: stephan branch: trunk, size: 7198
2021-02-21
15:10
Renamed FSL_CATYPE... (CA=Control Artifact) to FSL_SATYPE... (SA=Structural Artifact) so that they correspond to the terms as set out by the fossil file format docs. file: 99aee95623 check-in: [8728796601] user: stephan branch: trunk, size: 6990
2021-02-14
02:41
Added f-parseparty --skip-unknown flag and have crosslink failure honor the fail-fast setting. file: eee907e3a6 check-in: [a8af06d834] user: stephan branch: trunk, size: 6990
02:26
Improved (slightly) an error report when crosslinking a checkin fails because the content for the P-card artifact cannot be found or is a phantom. file: 03a5628d8c check-in: [88947dfafc] user: stephan branch: trunk, size: 6715
01:38
Renamed fsl_tag_rid() to fsl_tag_an_rid() to help avoid confusion with fsl_tag_id(), which does something much different. Split the crosslinkers into core/timeline-update bits. Fixed a reallocation bug in the crosslink callback list. Added --crosslink option to f-parseparty. Enabled output of empty P-card on checkin manifests with no parents (initial checkin) to please f-mfparse tests (empty P's are harmless, just slightly unsightly). file: 55f2f1fd59 check-in: [63893e6c12] user: stephan branch: trunk, size: 6547
2021-02-12
04:37
Fix 'uninitialized use' of rc variable when default switch is hit. file: 4cab5ada4b check-in: [32d545fd62] user: mark branch: trunk, size: 5473
2021-02-11
19:13
Completely reimplemented ownership semantics of fcli argument/flag memory, greatly simplifying app-side management of those. Now fcli sticks all of them in fcli_fax() so that their lifetime is predictable and managed, so clients no longer have to free them. file: ea11a29dc7 check-in: [4307886eab] user: stephan branch: trunk, size: 5469
06:14
Improved fsl_mf_parse() artifact type guessing to eliminate an over-zealous type classification. Implemented the technote swapped P/N-cards bug workaround from the main fossil tree. f-parseparty now includes UUIDs of failed parses and can now parse the whole core fossil (and forum) artifact collection without any errors. file: a9966cab5d check-in: [88060bfb9b] user: stephan branch: trunk, size: 5491
04:42
Added f-parseparty --types=... flag to select types of artifacts to test. file: f4ce0b8f68 check-in: [c0a6cc5b55] user: stephan branch: trunk, size: 5274
00:16
Added: Added f-parseparty, which parses all of the artifacts in a repo, and uncovered a serious manifest parsing bug in fossil(1) as a side effect. Fixed a memory ownership bug when manifest parsing fails, which led to a double-free. Related adjacent touchups. file: de616b480e check-in: [0163960ce0] user: stephan branch: trunk, size: 4059