Login
History of src/fsl_content.c of 9e72b41cdc661546
Login

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

History of file src/fsl_content.c at check-in 9e72b41cdc661546

2024-09-24
21:37
Some insignificant internal touchups. file: [90bc73f5f4] check-in: [76751c68a6] user: stephan branch: trunk, size: 46849
21:13
Add --private flag to f-ci. It seems to work, too. file: [d8b34cab25] check-in: [f511d7e632] user: stephan branch: trunk, size: 46815
15:43
Extend fsl_mtime_of_manifest_file() to be able to return the mtime of any artifact type if given a file ID of 0 or less. Simplify its internal impl a bit. file: [ced809c946] check-in: [71fbbe959b] user: stephan branch: trunk, size: 46817
2024-09-16
17:41
More work towards moving fsl_cx-specific pieces of fsl_db internals into fsl_cx-side hooks. file: [d508bc26c2] check-in: [7fce228983] user: stephan branch: db-hooks, size: 46876
2022-01-03
19:38
Added a "hard cached" fsl_stmt for fsl_content_blob(), shaving a few allocs and a small bit of memory from a rebuild. file: [2a3a2adc77] check-in: [a7de183cd0] user: stephan branch: trunk, size: 46880
2021-12-27
15:00
When performing a fsl_db rollback, clear the associated fsl_cx's manifest- and blob-content caches in order to ensure that they do not contain any RIDs which are part of the being-rolled-back transaction. Remove fsl_cx::cache::deltaIds as it was determined that the recursion involving that cache could have broken things (but, rather curiously, had not done so thus far). Might want to revisit that cache someday and account for the new effective tail of the array on each recursion. file: [53ac70b055] check-in: [35dca27909] user: stephan branch: trunk, size: 47638
2021-12-26
13:45
Constness tweaks. file: [a8c778981a] check-in: [006fbfb455] user: stephan branch: trunk, size: 48165
2021-12-21
20:21
Removed the fossil- name prefix from include/fossil-scm/*.h. file: [5b1cecad23] check-in: [43a9bea8d5] user: stephan branch: trunk, size: 48153
2021-12-17
18:35
Minor constness tweaks. Added a note about how fsl_repo_rebuild() handles corruption such as that reported at [https://fossil-scm.org/forum/forumpost/f4cc31863179f843]. Removed a completed TODO comment. file: [b41f3bb2ee] check-in: [9886240dfc] user: stephan branch: trunk, size: 48174
2021-12-14
08:55
Ported in a variant of the temp-filename generation bits from fossil because it's needed for the next merge steps. file: [b1dc1983a4] check-in: [dd3acff665] user: stephan branch: trunk, size: 48168
05:23
More work on the merge API port. Still lots to do. file: [d9edd30457] check-in: [7d626b574d] user: stephan branch: trunk, size: 48221
2021-11-30
22:40
Changed several internal temp tables to use (create if not exists/delete) instead of (create/drop) in the hope of proactively avoiding locking issues. This will slightly increase long-term memory usage for certain long-running apps but should ease locking pains for those same apps. file: [4abfc3083b] check-in: [cbaafebf22] user: stephan branch: trunk, size: 48240
2021-11-29
15:06
Don't drop and create fsl_compute_ancestors if it already exists. To workaround some locking issues in fnc, don't always drop and recreate the temp fsl_compute_ancestors table; instead, check for existence and only create when needed. Also, as per /chat discussion with stephan@, if the table exists, DELETE FROM to ensure we don't mix state between versions. file: [068637b27a] check-in: [009bc1ff55] user: mark branch: trunk, size: 48106
2021-11-20
20:42
Microscopic internal tweaks. file: [8c9e26f64e] check-in: [eb3baaaa2f] user: stephan branch: trunk, size: 48023
18:43
Fixed a one-too-many statement-steps bug which somehow passed on my NUC machine but failed on my pi4. file: [32893b5f10] check-in: [3e2c083d80] user: stephan branch: trunk, size: 47959
17:43
Reworked how the caching is handled for several of the very-frequently-prepared SQL statements, cutting the fsl_repo_rebuild() time by more than half (within 100ms of fossil's own speed, with the minor caveat that we don't yet rebuild tickets). A non-debug build of f-rebuild can now rebuild this repo in 900-odd milliseconds, and a debug build in roughly twice that. A non-debug build can rebuild fossil's own repo in 44s, down from 111s (but still almost twice what fossil itself needs). Edit: LOL, it turns out that the tremendous speed was due to a bug fixed in [3e2c083d8014a0fa]. Now it's back to approximately the speed it was before this checkin. Oh, well. file: [76312852da] check-in: [9f3a868d35] user: stephan branch: trunk, size: 47973
15:02
Cut number of rebuild allocations by another 15k via refactoring of fsl_buffer_uncompress() to be smarter about reusing the output buffer's memory, plus much more modest gains via addition of a cached buffer for building and applying deltas. file: [27cafc7a72] check-in: [88757e5411] user: stephan branch: trunk, size: 48044
13:27
Doc additions. Testing out minor optimizations in fsl_buffer_uncompress(). file: [d765a1ccfe] check-in: [643a270839] user: stephan branch: trunk, size: 48256
12:09
Shaved another 11.5k allocations off of rebuild (of the libfossil repo) by caching the chain of blob delta children IDs and applying the external buffer approach to fsl_content_blob()'s pre-uncompress result. file: [6548858393] check-in: [e9d92f12a6] user: stephan branch: trunk, size: 48220
10:16
Added semantics for safely directing fsl_buffer instances to use "external" memory (owned elsewhere, possibly const), using copy-on-write if any API would modify such buffers. This mimics a feature of fossil(1)'s Blob class but implements it differently. Applied this feature to low-hanging fruit in fsl_repo_rebuild(), reducing the number of allocations for rebuilding the libfossil repo by 10048 (not coincidentally exactly the same as the number of deltas in the repo). file: [18c16d2b03] check-in: [d6ace632d7] user: stephan branch: trunk, size: 47275
2021-11-18
16:10
Diverse minor internal cleanups. file: [95ee9489c6] check-in: [c46efd6b8d] user: stephan branch: trunk, size: 47180
13:56
Swapped order of fsl_buffer_copy() args to be more conventional (target first). file: [bb2f99df9c] check-in: [dee39f687e] user: stephan branch: trunk, size: 47006
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: [3c4ce05e9a] check-in: [2b136fe2e7] user: stephan branch: trunk, size: 47006
09:04
Internal API renaming: fsl__acache ==> fsl__bccache. file: [aa1a53d75e] check-in: [7aaf02031e] user: stephan branch: trunk, size: 46961
08:44
Added some internal hit/miss metrics to the fsl_content_get() cache. file: [3442ca3af4] check-in: [754e28ea1e] user: stephan branch: trunk, size: 46872
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: [b85e75bab1] check-in: [83917b7b45] user: stephan branch: trunk, size: 46791
2021-10-26
11:25
More work on f-rebuild. Added fcli_setup_v2(). file: [c5ef94aa77] check-in: [14cebaaa7e] user: stephan branch: trunk, size: 46754
2021-10-21
17:42
A pile of constness and char-as-bool tweaks in the db API. file: [b3e51a94df] check-in: [d571c6f692] user: stephan branch: trunk, size: 45902
2021-10-16
13:28
More work on porting over merge infrastructure. file: [45a7f278fd] check-in: [bc66e6a73a] user: stephan branch: trunk, size: 45951
2021-10-06
21:23
Initial port of annotate/praise op is working but final results differ considerably from fossil's, so leaving it in a branch for now. The selected range of versions match, but the end results do not. file: [b4d8a35327] check-in: [150bb5b77c] user: stephan branch: port-annotate, size: 45897
2021-06-06
12:41
Internal doc and spacing tweaks. file: [2ff6713a38] check-in: [8015c8a698] user: stephan branch: trunk, size: 45821
07:30
Removed some dead code. Minor internal doc touchups. file: [ae8b6cf719] check-in: [1fff00e7c7] user: stephan branch: trunk, size: 45954
2021-04-13
07:33
More work on the fsl_deck_derive()-related bits. Internal API modernization in fsl_content_put_ex(). file: [5c5b1f4376] check-in: [64b07ff5a8] user: stephan branch: deck-reworking, size: 45858
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: [f3d6658853] check-in: [7c05e9d44f] user: stephan branch: trunk, size: 46214
15:05
Refactored how the checkin manifest R-card is calculated, to simplify recalculating and verifying it from higher-level code. Renamed f-mfparse to f-aparse. Renamed fsl_hash_types_t to fsl_hash_types_e for naming consistency. file: [e76eef9920] check-in: [81cbf6794f] user: stephan branch: trunk, size: 45852
08:33
Doc updates, some char-to-bool API signature updates, and renamed a deeply internal API func. file: [80a97edcdc] check-in: [6a6b5d1e43] user: stephan branch: trunk, size: 45852
2021-03-15
04:25
Globally renamed _checkout to _ckout, as some of these names are getting a bit long. file: [edead98a86] check-in: [bc9e88ee2c] user: stephan branch: trunk, size: 45849
2021-03-12
19:31
The hashing routines were responsible for the unexpected buffer resizing, as they were explicitly resizing their output buffers to fit. file: [8135f1cd5d] check-in: [06f5974d60] user: stephan branch: cx-scratchpad-rework, size: 45861
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: [d29c9cf724] check-in: [01c1cff578] user: stephan branch: cx-scratchpad-rework, size: 45962
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: [10132d0315] check-in: [6bdb294442] user: stephan branch: trunk, size: 46024
2021-03-10
08:25
Renamed the 'F2' F-card temporary porting name back to F. file: [293c418670] check-in: [63e886fff0] user: stephan branch: f-card-array, size: 46016
06:20
Lib compiles now but the f-apps, and maybe the other language bindings, are still out of date. Lol - that means i can't check this in with f-ci. file: [3590773c6d] check-in: [e484d5f96e] user: stephan branch: f-card-array, size: 46018
06:02
Initial work on refactoring fsl_deck::F from an array of pointers to an array of objects to speed up (potentially drastically) artifact parsing by cutting F-card (de)allocations by 99% or more. Does not yet compile. file: [2ef752f2cc] check-in: [725c13c0d0] user: stephan branch: f-card-array, size: 46017
2021-03-08
13:23
Renamed FSL_CANSWER_xxx to FSL_CRESPONSE_xxx. Changed some queries from cached to non-cached. Added /*__func__()*/ to the end of many queries to make them easy to track down via sqlite trace output. file: [0b5b4259b7] check-in: [c8b25fe30f] user: stephan branch: trunk, size: 46022
11:14
Initial go at a new interactive confirmation API (not yet connected to checkout op). Removed a functionally-duplicated API. Added __func__() to some cached SQL statements in order to simplify tracking their origin (though this keeps those statements from being reused across multiple functions). file: [f08655d6f6] check-in: [9a6bb6834f] user: stephan branch: trunk, size: 46198
2021-03-05
07:52
fsl_content_put_ex() automatically rejects any blobs over a certain size (close to 2GB) for compatibility with fossil, which has a hard-coded limit of 2GB via its use of int-sized numbers for all ranges and access to blobs. fsl_buffers may exceed that, but such blobs may not be put into the db, lest we add something to the repo which will cause on OOM error for fossil. file: [3f148c281d] check-in: [633bf431cd] user: stephan branch: trunk, size: 45640
2021-03-04
15:12
Minor internal cleanups. Corrected hash handling of fsl_repo_import_blob(). file: [951f117210] check-in: [5e448f56bb] user: stephan branch: trunk, size: 44853
14:27
Added FSL_RC_MISSING_INFO. Minor internal doc cleanups and API result value changes. Reworked how fsl_cx_hash_buffer() returns when its alternative hash option conflicts with the current hash policy. file: [b474606f6e] check-in: [d1428d5a93] user: stephan branch: trunk, size: 44853
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: [a8921415f7] check-in: [0584c1b6e2] user: stephan branch: trunk, size: 44770
2021-03-01
16:21
Arguably a typo fix in the new header. Thank goodness for stream editors. file: [6165f9adf1] check-in: [386316db07] user: stephan branch: trunk, size: 44770
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: [9310f0dfbf] check-in: [fa5fb24496] user: stephan branch: trunk, size: 44762
2021-02-28
04:15
Generic cleanups, char-to-bool conversions. Moved fsl_acache bits into their own file. Shrunk a couple of struct sizes. file: [cad5d847f6] check-in: [7c8b025221] user: stephan branch: trunk, size: 45013
2021-02-25
10:14
Removed a TODO and applied upstream change [fossil:dad521bb06757a7f]. file: [72b3f1cc0d] check-in: [998358d8fe] user: stephan branch: trunk, size: 47910
08:22
Some API renaming. Modified how fsl_deck_parse() determines the deck's RID/UUID. Introduced fsl_repo_blob_lookup(). file: [5907a332a2] check-in: [467b9e1c18] user: stephan branch: trunk, size: 48279
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: [1ca61bce9f] check-in: [4dde2be3b0] user: stephan branch: trunk, size: 48053
2021-02-22
05:20
More char-to-bool conversions. file: [5d6001865a] check-in: [6360bb6d8f] user: stephan branch: trunk, size: 47885
04:41
As a precaution against changes made in [7800a90d1699] and [ddf4ac0df508], fsl_content_deltify() is now explicity a no-op if asked to deltify a phantom. file: [830c34d798] check-in: [3affea2904] user: stephan branch: trunk, size: 47878
2021-02-21
16:52
Ported in fsl_search_doc_touch() from fossil and call it at the appropriate points in the crosslinking steps, but it's disabled because one of the queries mysteriously fails with 'SQL logic error' when run from this context (but works fine in the fossil shell). Some more char-to-bool conversions. file: [76881b050a] check-in: [5a3d4bceb3] user: stephan branch: trunk, size: 46766
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: [bade16b4ce] check-in: [8728796601] user: stephan branch: trunk, size: 46751
2021-02-19
00:05
Ported in post-dephantomization bits, but they are untested for lack of phantoms (which generally only appear via the sync process). file: [6aa6628921] check-in: [2ab8c86b3d] user: stephan branch: trunk, size: 46751
2021-02-15
18:38
Updated the symbolic-name-to-rid code to bring it more in line with fossil's and ported in some closely-related behaviors. file: [d8edad6661] check-in: [55f8d321d2] user: stephan branch: trunk, size: 43002
03:24
Renamed src/fsl_content.c → src/content.c. Renamed src/fsl_XYZ.c to src/XYZ.c. f-checkin vfile dump now includes renames. file: [e33a5ff875] check-in: [ed3183170a] user: stephan branch: trunk, size: 42982
2021-02-12
22:09
libfossil is now C99, rather than C89, per discussion at [https://fossil.wanderinghorse.net/r/libfossil-forum/forumpost/e02ff0e8d0]. fsl_int{16,32,64}_t have been replaced by the standard uint{16,32,64}_t, FSL_xxx_T_PFMT/SFMT replaced with PRIx32 and friends, and auto.def now checks for -std=c99 capability (but that check could probably be done differently/improved). fsl_int_t and fsl_uint_t are retained, as they're more about documentation/intent than fixed sizes. file: [e33a5ff875] check-in: [ee070353b9] user: stephan branch: trunk, size: 42982
07:41
Header file reorgs. file: [679429e616] check-in: [c1681af460] user: stephan branch: trunk, size: 42990
2021-02-11
18:38
Moved around and tinkered with some of the hash policy code. Added f-new --hash option to set the policy when creating a new repo. file: [53e2e2b913] check-in: [dec0670fb2] user: stephan branch: trunk, size: 42914
2021-02-10
15:46
Minor doc updates and improved a case of error propagation. file: [8868f11246] check-in: [88f850cd66] user: stephan branch: trunk, size: 42908
2021-02-09
05:06
Implemented FSL_HPOLICY_SHUN_SHA1. file: [91f05ec080] check-in: [9418c5e60f] user: stephan branch: trunk, size: 42876
00:18
Updated license text in almost all C/H to claim copyright while attributing all of the files as heavily derived from DRH's work. file: [5b78f5f5fe] check-in: [631fb3f69a] user: stephan branch: trunk, size: 42745
2021-02-08
23:47
Renamed the hash length constants. file: [f4f610f4dc] check-in: [0c9a6d3644] user: stephan branch: trunk, size: 42703
23:32
Added deck support for forum posts, except that crosslinking them is currently unimplemented (requires more infrastructure). file: [9f18601bc5] check-in: [b0ac77411e] user: stephan branch: sha3-port, size: 42723
20:35
Ported in more of the fossil(1) hashing-related infrastructure. file: [cb987e247a] check-in: [033d78f03f] user: stephan branch: sha3-port, size: 42727
16:03
Baby steps towards dual sha1/sha3 support. This does not yet compile but i'm nervous about losing work done so far. It's been painless but tedious, which is not bad, all things considered. file: [93824a1e27] check-in: [240701a6ec] user: stephan branch: sha3-port, size: 41061
2021-02-07
14:31
Globally replaced http://... URLs with https://.... Most of them probably still work, too. file: [79001d752c] check-in: [6af7b3b7c8] user: stephan branch: trunk, size: 40831
2014-10-01
07:58
minor; a warning is issued by gcc when it couldn't figure out if a variable might be used before it is initialized. It is not, so I redundantly initialized it to avoid the warning. file: [ee5d236060] check-in: [2a1b0091d2] user: dave branch: feech-dave-msvcsupport001, size: 40830
2014-05-07
15:45
Fixed a leaked hash value (thanks, valgrind). file: [ae78167855] check-in: [1cac4980c3] user: stephan branch: trunk, size: 40826
2014-04-06
12:33
Added an assertion. file: [68343bdf2d] check-in: [5b43c10b4e] user: stephan branch: trunk, size: 40793
2014-04-03
16:43
Renamed fsl_repo_filename_fnid() to fsl_repo_filename_fnid2(), kept it internal, and added fsl_repo_filename_fnid() as a simplified form safe for general-purpose client-side use. file: [093459af34] check-in: [f18878c6b4] user: stephan branch: trunk, size: 40753
2014-03-28
21:33
All sorts of minor warning fixes revealed by compiling the amalgamation in Qt Creator. fsl_delta.c is not warning-free yet b/c my attempts to fix the signedness complaints have broken it. file: [c45d6b3199] check-in: [cb99e115a4] user: stephan branch: trunk, size: 40752
19:45
added some untested code to play with later. file: [3cba68e536] check-in: [35f5b6a5e2] user: stephan branch: trunk, size: 40740
2014-03-27
20:25
Added the untested fsl_card_F_content() utility function. Possibly YAGNI. file: [4aedb7981c] check-in: [4bd5798ec4] user: stephan branch: trunk, size: 36353
2014-03-26
14:27
Converted some statements to cached statements. Fixed a cached statement which was caching dynamic values. file: [d1b11e75dd] check-in: [3b4f033e82] user: stephan branch: trunk, size: 35589
2014-03-13
18:20
A round of minor cleanups before some refactoring. file: [e8b8e3de0b] check-in: [2bba3a248f] user: stephan branch: trunk, size: 35446
2014-03-09
18:32
more work on the checkin bits. the wrong leaf problem still lurks but winding down for the night. file: [bf3269f97c] check-in: [2bf52dd2ea] user: stephan branch: trunk, size: 35060
2014-03-08
18:29
Lots more tinkering with the checkin stuff. About to try a different F-list generation algo, though, because the ported-in one has historical baggage due to the enforced ordering of names in how it generates the manifest. file: [202da763b3] check-in: [1a0ee6b693] user: stephan branch: trunk, size: 35017
2014-02-28
17:47
s/fsl_content_get_by_sym/fsl_content_get_sym/ file: [ac1e75bf2b] check-in: [da5546e2c8] user: stephan branch: trunk, size: 35004
2014-02-23
11:24
fsl_mtime_of_manifest_file() now accepts a 0 fileId to fetch the time of the manifest. zip-repo now sets the root dir time to that of the manifest. file: [b217673163] check-in: [90f3f7bd40] user: stephan branch: trunk, size: 35007
2014-02-14
18:20
added a maintenance note. file: [dbe4a8becb] check-in: [275c7ce0fa] user: stephan branch: trunk, size: 34558
10:36
Reordered some arguments. Implemented fsl_repo_extract(), which will be the basis of checkout-like behaviours. file: [2d17e2f35e] check-in: [e713b48c83] user: stephan branch: trunk, size: 34307
09:05
Globally changes the API docs from fossil/sqlite-style '**' to Doxygen-friendly format because the extra stars hinder writability/changability and require an extra filter at the doxygen-processing level. file: [4a7cde46b2] check-in: [a2cbd2e343] user: stephan branch: trunk, size: 33855
2014-02-10
18:29
Consolidated FSL_ATYPE_xxx and FSL_CATYPE_xxx into FSL_CATYPE_xxx, replaced fsl_atype_t with fsl_catype_t. file: [45a5f796b4] check-in: [c0ca757a66] user: stephan branch: trunk, size: 33855
2014-02-03
19:38
another round of minor internal tweaks. file: [52e07f068f] check-in: [5a477d1471] user: stephan branch: trunk, size: 33854
2014-02-02
17:38
minor code pretty-up. file: [8654ca39c0] check-in: [4ea8cdd758] user: stephan branch: trunk, size: 33581
14:20
Another round of minor cleanups and doc fixes. Added fsl_input_f_buffer(), based on new fsl_buffer::cursor member (needed for other reasons), so buffers can now be input streams. file: [7af7c41283] check-in: [7aa94e7ce8] user: stephan branch: trunk, size: 33586
00:10
Implemented fsl_mtime_of_manifest_file(), another piece in the checkout-file puzzle. However, libfossil now requires sqlite 3.8.3+. file: [a142996350] check-in: [706f8bfe62] user: stephan branch: trunk, size: 33076
2014-01-29
20:38
Minor API renamings and tinkering in fsl_content_put_ex(). file: [1b1aaec0cf] check-in: [8e0b7eeb54] user: stephan branch: trunk, size: 31171
17:10
A number of minor tweaks (e.g. more cached statements), refactoring of fsl_cx internals. file: [6b0a2ec34f] check-in: [1d59e4291a] user: stephan branch: untested-tinkering, size: 30541
2014-01-28
22:43
some untested tinkering i need to back up. file: [447f6beecf] check-in: [26374bba60] user: stephan branch: untested-tinkering, size: 30441
2014-01-26
17:02
Minor internal cleanups. Filled out (untested) part of fsl_content_put_ex() which fills out phantom blobs. file: [5653485735] check-in: [937ff93e3f] user: stephan branch: trunk, size: 30134
2013-09-19
20:46
fsl_content_put_ex() now adds all saved content to the UNSENT table. Once we have sync/import support that will need to be togglable. file: [51c4231192] check-in: [01159e5323] user: stephan branch: trunk, size: 29887
2013-09-11
22:08
Added some assertions, reminders, docs. One minor optimization. file: [48b3b760b1] check-in: [580bb9c789] user: stephan branch: trunk, size: 29443
18:43
Added more "proactive superfluous casts" to protect 32-bit environments from the 64-bit int/va_list weirdness. Minor doc additions. file: [f0182afdcf] check-in: [a6ca6422d5] user: stephan branch: trunk, size: 29092
2013-09-10
12:04
minor error handling/propagating cleanup. file: [382fd7c781] check-in: [96e7d5d0c8] user: stephan branch: trunk, size: 29097
2013-09-08
17:40
Added SQL functions: FSL_USER(), FSL_CONTENT(), FSL_SYM2RID(). Undid part of the previous fsl_buffer_compress() optimization because it cannot help us much for the real use cases and complicates the code. More proactive int casting for va_list bits. file: [e0295bfc9c] check-in: [f9e0b1801f] user: stephan branch: trunk, size: 29041
14:54
Minor error reporting cleanup. file: [f8fd0b63e5] check-in: [a037bbce03] user: stephan branch: trunk, size: 28964
13:21
Added some preemtive casts for the sake of 32-bit safety. file: [974fbe207b] check-in: [aa1bdee81e] user: stephan branch: trunk, size: 28828
2013-09-02
21:26
cosmetic func signature change. file: [5a94f2e461] check-in: [d1924d6fe1] user: stephan branch: trunk, size: 28106
2013-09-01
14:04
Lots of API name shortenings. Added fsl_content_get_by_sym(). file: [7e5b010506] check-in: [80945ffca3] user: stephan branch: trunk, size: 28104
2013-08-31
13:02
Doc additions, minor error reporting cleanups. file: [b6fb45b621] check-in: [8f05724070] user: stephan branch: trunk, size: 27798
2013-08-26
21:02
minor error reporting cleanups. file: [205209ecf7] check-in: [7d9a27739a] user: stephan branch: trunk, size: 27815
17:34
minor cleanups/reformatting. fixed a potential endless loop in some untested code. file: [a8cc332671] check-in: [9cac575a31] user: stephan branch: trunk, size: 27722
2013-08-25
11:39
More API renamings. Moved some card-related code from internal to public APIs. Added foreach iterator for F-cards. Added basic f-ls app. file: [9c68eed099] check-in: [e0963e92ca] user: stephan branch: trunk, size: 27479
09:12
API renamings (shortenings) and minor API simplifications. Doc updates, some work on making the R-card optional. file: [71d69414a0] check-in: [c0752c60c2] user: stephan branch: trunk, size: 27257
2013-08-22
22:28
minor bugfixes, more manifest parsing validation, and more docs. file: [d00de0bb74] check-in: [0d5225a61b] user: stephan branch: trunk, size: 27382
18:26
Ported in the "verify before commit" code, which ensures that all new content can be extracted from the db before it commits the transaction doing the adding. Fixed a memlink in fsl_repo_tag_symbol(). Added fsl_deck_save() and refactored fsl_repo_tag_rid() to use it. file: [9798f4fc67] check-in: [57107f6bd2] user: stephan branch: trunk, size: 27366
13:44
fsl_internal.h ==> fossil-internal.h file: [99e43b3629] check-in: [2cae867331] user: stephan branch: trunk, size: 26783
2013-08-20
20:02
More work on crosslinking, minor refactoring/code movement. Added f-event test app. file: [f070dec84b] check-in: [06179ab0e6] user: stephan branch: trunk, size: 26780
2013-08-18
17:14
more steps on the road to porting add_mlink() and its dependents friends. file: [c6bdcd30ac] check-in: [4bf94ef630] user: stephan branch: trunk, size: 27556
01:31
Added deck baseline file iteration and reworked R-card calc to use it. Works for baselines but i am seeing a delta-application bug in a specific tcl commit, but it is not yet clear where my bug is there (the repo passes all integrity tests, so the bug is on my end). Added error-reporting forms of delta application routines. Started porting in some of the filename table funcs. file: [eecd973fea] check-in: [f94ea8a168] user: stephan branch: trunk, size: 27621
2013-08-17
18:33
Can now load and clean up baseline manifests, but finding one is a neat trick - the core fossil repo does not contain a single B card. Luckily the tcl repo them. file: [d09e9771d3] check-in: [2d13c82663] user: stephan branch: trunk, size: 27399
12:29
fixed a signed/unsigned comparison broken by recent refactoring (thank you, clang). file: [23ecf7044c] check-in: [82aa53e714] user: stephan branch: trunk, size: 27135
11:11
a round of minor cleanups, doc additions, and build tweaks. Build/config modified to allow more variants of c99/long long, to simplify testing of portability-related problems. i expect the xxx_PFMT changes to possibly break on 32-bit platforms. (Edit: didn't break :) file: [fbbf95266a] check-in: [f739758c74] user: stephan branch: trunk, size: 27148
2013-08-16
20:04
Added fsl_deck_unshuffle() to sort any lists which need it and to calculate the R-card (that card works now). Fixed a memleak in fsl_acache_clear. A bit of API renaming and refactoring. file: [1bc477e7ca] check-in: [6dc5c4ab76] user: stephan branch: trunk, size: 27814
06:09
Fixed some backwards math which would have broken fsl_repo_content_deltify() were we far enough along to test that routine. file: [13cb426583] check-in: [58b7c76e31] user: stephan branch: trunk, size: 28144
01:42
Ported in wiki manifest crosslinking. Untested - lacking some bits needed to test it. file: [4f7c44e76e] check-in: [1221ecaa56] user: stephan branch: trunk, size: 28147
2013-08-13
13:17
Renamed header files from fossil/*.h to fossil-scm/*.h, to avoid any potential confusion with the fossil FS or other fossils out there. file: [1cce57c398] check-in: [99a4a0ff23] user: stephan branch: trunk, size: 25080
2013-08-12
16:57
Fixed a bad ptr-to-int conversion error which did not show up on x64. file: [3a46613f55] check-in: [b84a7ad549] user: stephan branch: trunk, size: 25076
14:01
Fixed wrong tag names output in crosslink-generated messages, caused by copy-paste porting of code with different semantics :/. Other minor cleanups. Added --dry-run to f-tag. file: [5a5b206159] check-in: [6f131086fc] user: stephan branch: trunk, size: 25077
01:57
Fixed would-have-been memleak in fsl_acache_expire_oldest(). Ported fsl_repo_content_new() (back) to cached queries. That routine is still untested, though. Doc fixed. file: [e6c1db4869] check-in: [0646f85f40] user: stephan branch: trunk, size: 25018
01:33
converted another statement to a cached one, analog to fossil(1). file: [320b19adc2] check-in: [6a1a173c20] user: stephan branch: trunk, size: 24269
01:11
Experimenting with cached vs uncached queries. Fixed numeric type in fsl_stmt_get_blob(). Ported in fsl_repo_content_make_public(). file: [40f24cea37] check-in: [7a8d48b273] user: stephan branch: trunk, size: 24252
2013-08-11
19:35
Fixed fsl_pq_insert() to INCREASE the use count, not DECREASE it. Tag saving seems to be more or less complete, including crosslinking for the basic (tag-related) bits. file: [de3a6693e7] check-in: [d4ec89c216] user: stephan branch: trunk, size: 21925
15:42
More skeleton work on manifest crosslinking. file: [61b5bba5c6] check-in: [a95132ac5c] user: stephan branch: trunk, size: 21408
13:17
Ported in fsl_repo_content_undelta() and fsl_repo_shun_artifacts(). Added a public API and tests for the fsl_db::beforeCommit triggers. A number of minor additions, cleanups, and fixes. file: [745ae9eaad] check-in: [ab3f72ce6c] user: stephan branch: trunk, size: 21435
10:35
Ported in content_new() as fsl_repo_content_new(). Added a prepared statement caching mechanism similar to db_static_prepare() (but without the statics). file: [cee33b0017] check-in: [0c18f5b486] user: stephan branch: trunk, size: 18588
2013-08-10
22:37
more tinkering with the manifest bits. file: [d52d811561] check-in: [fbd57c5781] user: stephan branch: trunk, size: 17003
21:20
Started work on manifest crosslinking, but only skeleton code is in place. Time for the dog walk... file: [da56452d53] check-in: [5b89c04e9b] user: stephan branch: trunk, size: 16877
19:51
Got content_get() ported in as fsl_repo_content_get(). That was an adventure. file: [0d22da9987] check-in: [7790ed0962] user: stephan branch: trunk, size: 16670
15:13
Minor milestone: saving of a tag is working and the tag appears on the appropriate artifact, but manifest crosslinking of the saved content is missing. i am not sure what side effects that might lead to. file: [cb9bfbacc4] check-in: [b565897af8] user: stephan branch: trunk, size: 12509
14:45
Ported in content_mark_available() as fsl_cx_content_mark_available(). One more small piece of the larger Manifest puzzle. file: [c54473782a] check-in: [ec67d2b8b9] user: stephan branch: trunk, size: 12509
12:42
cleanups and fixes to the previous commit. s/fsl_stmt_prepare/fsl_db_prepare/g. file: [85e02ecacd] check-in: [9f47dbd75d] user: stephan branch: trunk, size: 11318
11:47
More db infrastructure for the content-save process. Started work on fsl_cx_content_put(), but it's a beast and is missing parts. file: [07e1e3fcee] check-in: [ed6df55bda] user: stephan branch: trunk, size: 11322
09:41
added missing license headers. file: [92be2fb934] check-in: [9a383b82a7] user: stephan branch: trunk, size: 5218
2013-08-09
18:59
Doc additions, minor API renamings. file: [d550c030dd] check-in: [d011e3345f] user: stephan branch: trunk, size: 4528
18:38
Ported in the low-level content cache bits. Fixed CANCEL tag cards to not output their value. file: [9b56d8e4c1] check-in: [76c3b5a830] user: stephan branch: trunk, size: 4509
2013-08-08
16:32
Renamed fsl_content.c → src/fsl_content.c. moved main sources into src/. moved fsl_internal.h to include/fossil. file: [2346dfd0d9] check-in: [dd9401360d] user: stephan branch: autosetup, size: 1837
2013-08-06
18:53
Added: Started porting in the content.c/bag.c bits because they are needed before i can continue with manifest crosslinking. Added some missing documentation for the config.h bits. file: [2346dfd0d9] check-in: [425b5509f1] user: stephan branch: trunk, size: 1837