Login
Timeline
Login

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

85 check-ins using file bindings/s2/shell_extend.c version 1f5ef795f6

2021-12-03
04:49
Removed a large swath of assigned-but-unused code in the v1 HTML sbs diff generator, as detected by clang 13. Reported by Mark via /chat. check-in: 5a433bf878 user: stephan tags: trunk
04:03
Removed an unused var from fsl_delta_create2(), reported by clang 13 via Mark. Worked around what appears to be a clang 13 bug in (mis)detecting another var as unused. check-in: 351cd03fa3 user: stephan tags: trunk
03:52
Experimentally change the journal_mode to OFF for the main (temp) DB, noting that we don't actually store anything in that db handle - it's only used as an ATTACH point for the other dbs. Added a note about being able to rename the MAIN db, which might be useful in eliminating the current middle-man MAIN db (barring one corner case for the global config db). check-in: 76d7f8f4eb user: stephan tags: trunk
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. check-in: cbaafebf22 user: stephan tags: trunk
18:13
Internal fsl_db cleanups related to [17cc186e16351f5]. No public API changes. check-in: ddc1efaeb8 user: stephan tags: trunk
17:24
Added fsl_db-level internal infrastructure to be able to catch the a potential OOM worked around in [11a6a98c81d1] and report it properly. Updated that fix to use the new infrastructure and distinguish between real and fake OOM. check-in: 17cc186e16 user: stephan tags: trunk
16:35
Fix bug in annotate logic when file has insufficient history. When the file being annotated has less than the minimum three versions, one of the passes returns a null from the SQL query, which gets falsely reported as an OOM due to an empty strdup(). Check for this case before passing to strdup() and return. check-in: 11a6a98c81 user: mark tags: trunk
15:43
Added fsl__cx_clear_cached_stmt() to forcibly clear ALL cached fsl_stmt handles held by a fsl_cx and use that from fsl_repo_rebuild() to ensure that the cache is cleared before beginning work. This is a hypothetical/proactive fix for a problem which has not yet been seen in the wild but seems very likely, given recent locking issues reported by Mark. Branching this for now because i cannot reproduce similar locking problems which fsl_repo_rebuild() should hypothetically trigger without this addition. Leaf check-in: f9d39435cf user: stephan tags: clear-cached-stmt
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. check-in: 009bc1ff55 user: mark tags: trunk
06:52
Fix comparison typo that clobbered requested version. The fsl_card_F_ckout_mtime() doc suggests that the current checkout will only be used if the rid of the passed in version is 0; however, the typo forced all rids greater than or equal to 0 to be overridden with the checkout version. check-in: 0031d2f466 user: mark tags: trunk
2021-11-23
20:10
f-ciwoco: do not require any F-cards if the deck is explicitly a new root DAG entry. check-in: 35c58dd98d user: stephan tags: trunk
17:11
Latest upstream fnc. check-in: cc967df182 user: stephan tags: trunk
17:10
Merged in trunk. One of these days i'll get around to finishing this major TODO. One of these days. check-in: fef2c50c9d user: stephan tags: port-merge
16:22
Added --no-ignore-glob/-i flag to f-ciwoco and check input names against ignore-glob if that flag is not provided. check-in: c4783e49fc user: stephan tags: trunk
03:27
Improved fsl_reserved_fn_check()'s handling of the manifest setting. Added fsl_reserved_fn_check() to f-ciwoco. Made wet-run the default in f-ciwoco. Replaced some magic values with their corresponding enum entry references. Removed a long-since-implemented TODO note. check-in: 09094cea7b user: stephan tags: trunk
2021-11-22
21:01
Re-added some f-apps bins builds which were inadvertently removed by refactoring yesterday. check-in: 95b7a9b1ac user: stephan tags: trunk
18:36
Rename -r/--revision flag to -v/--version in f-annotate, f-ciwoco, and f-extract, for consistency. check-in: c2f30ec71a user: stephan tags: trunk
11:37
Deduplicated some fcli code. Added a TODO. Fixed f-extract.c header comment. check-in: 3e76615a5e user: stephan tags: trunk
11:25
Removed some implemented TODOs, minor tweaks to internal fcli flag handling and help text. check-in: 61f51619a3 user: stephan tags: trunk
05:31
Added f-extract tool, per suggestion in [https://fossil-scm.org/forum/forumpost/fcca51d3eb2757f7|fossil forum post fcca51d3eb2757f7]. check-in: f7fdf3db10 user: stephan tags: trunk
03:30
Added --strip-prefix flag to f-ciwoco. check-in: 2b9e57ba87 user: stephan tags: trunk
2021-11-21
17:08
ciwoco: do a proactive empty-filename check to avoid an assert in downstream code. check-in: 891e3e9392 user: stephan tags: trunk
16:56
Fixed removal of ./ prefix on filenames. check-in: 31cbe6348b user: stephan tags: trunk
16:21
Moved fsl_branch_of_rid() into the public API. Added several new options to f-ciwoco. check-in: 2b33b91772 user: stephan tags: trunk
14:37
Added missing entries to f-apps/index.md. Added a f-ciwoco TODO. check-in: 03ba20cfd1 user: stephan tags: trunk
14:23
Added initial versino of the f-ciwoco app. Several minor API tweaks, including changing semantics of NULL args to fsl_deck_save() and the return semantics of fcli_fax(). check-in: 618d1b864a user: stephan tags: trunk
10:02
Constness tweaks. Added a fsl_is_simple_pathname() check to fsl_deck_F_set_content(). check-in: e45da773a8 user: stephan tags: trunk
09:53
Slightly faster fsl_strlen() impl. check-in: c955e93fe5 user: stephan tags: trunk
04:26
Remove dated comment from the annotate API options doc. stephan@ implemented the timer-based limit option to the annotate operation in [35b8297bc34b]. check-in: 70ee710a3d user: mark tags: trunk
2021-11-20
20:42
Microscopic internal tweaks. check-in: eb3baaaa2f user: stephan tags: trunk
18:43
Fixed a one-too-many statement-steps bug which somehow passed on my NUC machine but failed on my pi4. check-in: 3e2c083d80 user: stephan tags: trunk
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. check-in: 9f3a868d35 user: stephan tags: trunk
16:24
When fsl_deck_parse() loads a wiki page, it now takes over the content buffer. check-in: 183eafa6fe user: stephan tags: trunk
16:17
Corrected wiki-listing queries to skip over tags named wiki-... which are not actually wiki pages. Constness cleanups. check-in: 23c2d4d185 user: stephan tags: trunk
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. check-in: 88757e5411 user: stephan tags: trunk
13:27
Doc additions. Testing out minor optimizations in fsl_buffer_uncompress(). check-in: 643a270839 user: stephan tags: trunk
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. check-in: e9d92f12a6 user: stephan tags: trunk
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). check-in: d6ace632d7 user: stephan tags: trunk
04:19
Added all: target to doc/Makefile to avoid bogus warning about ../compile_commands being up to date. check-in: e184a894bf user: stephan tags: trunk
2021-11-19
11:15
Tightented the lexical sorting check of T-tags in fsl_deck_parse2(). check-in: 710313321a user: stephan tags: trunk
09:40
Added some of the missing bits for crosslinking tickets. Still more to do, though. check-in: 94e7cd6207 user: stephan tags: trunk
08:10
Diverse generic internal and doc cleanups. check-in: 06f92b7689 user: stephan tags: trunk
05:58
Pedantic sorting of f-xxx Makefile entries. check-in: 309428781c user: stephan tags: trunk
05:50
Moved fsl_repo_rebuild() into the public API and added some new state to fsl_rebuild_step and new metrics to f-rebuild. Rebuild adds a few more entries in the event table than fossil does (investigation is TODO) but otherwise seems to behave. check-in: c389ae9908 user: stephan tags: trunk
01:14
Removed the cosmetic ^C output from fcli's sigaction handler so as to not mess up fnc's screen state. check-in: f5a53adcb9 user: stephan tags: trunk
2021-11-18
18:03
Tighten up the interruption flag handling and fcli's inclusion (or not) of sigaction(). check-in: 2c0147b596 user: stephan tags: trunk
17:40
Proof-of-concept handling of SIGINT via fsl_cx_interrupt() by way of fcli. Currently only honored by fsl_repo_rebuild() but "should" eventually be honored by any unusually-long-running operations. check-in: 2a405470c0 user: stephan tags: trunk
16:31
A workaround for an as-yet-unexplained case of an attempt to rebuild the same artifict twice. Shows up on my pi4 but not my x86 system. check-in: 242c38c7b2 user: stephan tags: trunk
16:10
Diverse minor internal cleanups. check-in: c46efd6b8d user: stephan tags: trunk
15:04
f-rebuild seems to work but needs more testing before moving it into the library. check-in: 45126ee491 user: stephan tags: trunk
15:04
Seem to have resolved a 'conditional jump depends on uninitialized values' valgrind error in the stripping of the PGP envelope from artifacts. check-in: 2552547fd7 user: stephan tags: trunk
14:08
Doc tweaks. check-in: c332af042a user: stephan tags: trunk
14:08
When resolving symbolic names root:XYZ and we cannot find a branch name, use 'trunk' as the default instead of reporting a misleading OOM. check-in: e36985cf3f user: stephan tags: trunk
13:56
Swapped order of fsl_buffer_copy() args to be more conventional (target first). check-in: dee39f687e user: stephan tags: trunk
13:47
Added an is-interrupted flag for fsl_cx as a way to interrupt long-running operations but it is not yet being applied anywhere. check-in: 74aab40d54 user: stephan tags: trunk
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. check-in: 2b136fe2e7 user: stephan tags: trunk
09:04
Internal API renaming: fsl__acache ==> fsl__bccache. check-in: 7aaf02031e user: stephan tags: trunk
08:44
Added some internal hit/miss metrics to the fsl_content_get() cache. check-in: 754e28ea1e user: stephan tags: trunk
07:58
More work on fsl_repo_rebuild(). It seems to work, with the caveat that ticket crosslinking is mostly unimplemented (and will remain so for the foreseeable future), but it's dog, dog slow (about 1/10th of fossil's speed). Needs more testing before moving from f-rebuild.c into the library. check-in: ae8d020e4f user: stephan tags: trunk
04:03
Latest upstream fnc. check-in: 3761d0a9c8 user: stephan tags: trunk
04:01
wh-common.tcl addition from cwal tree. check-in: cb8b907d31 user: stephan tags: trunk
2021-11-16
05:40
Cosmetic test header tweak. check-in: 8a6835b3d9 user: stephan tags: trunk
05:40
-rdynamic flag patch from cwal tree. check-in: 27ed9ad786 user: stephan tags: trunk
05:39
Another appendf() string length fix for NULL %Q. check-in: cf2b9bb0f2 user: stephan tags: trunk
04:54
fsl_appendf() precision length fix for SQL formatting. check-in: 025041fc9d user: stephan tags: trunk
03:36
Merged in trunk. check-in: 604fe76cfe user: stephan tags: port-merge
2021-11-13
04:13
Fixed HTML decoding (%T appendf specifier) range problem reported at [https://fossil-scm.org/forum/forumpost/cb564acd01] and fix adjacent string-length bugs. check-in: 70f66a328d user: stephan tags: trunk
2021-11-11
09:49
Fixed two semi-incorrect compiler warnings about potentially (but not) uninitialized vars. check-in: 000005d8be user: stephan tags: trunk
2021-11-10
06:00
Added fsl_configs_XYZ() APIs, which provided features similar to fsl_config_XYZ() but enable checking multiple config sources in an order specified by the caller. check-in: 8d7b8f50c4 user: stephan tags: trunk
04:21
Constness tweaks. check-in: 230fa9f678 user: stephan tags: trunk
03:53
When detaching a db from a fsl_cx, only clear the it-is-attached state if detaching succeeds. check-in: 66923b26f0 user: stephan tags: trunk
2021-11-09
14:27
Tracked down and documented the locking error Mark was experiencing: we cannot detach while any stepped-but-not-reset-or-finalized statements are active. check-in: 3bff6eddc1 user: stephan tags: trunk
13:29
Linked list iteration fixes for the previous commit. check-in: c9b2992de4 user: stephan tags: trunk
12:44
Removed incorrect if() blocks which caused repo/ckout/config db strings to not get cleared in some cases. check-in: 09a6b48de5 user: stephan tags: trunk
11:48
When detaching a db role, finalize any cached statements which are known (or believed) to be mapped to that role to avoid that detaching fails due to a lock held by opened statements. check-in: d00587179e user: stephan tags: trunk
2021-11-08
10:20
fsl_config_open() is now a no-op if passed a NULL/empty file name and a global config is already opened. Reordered some internals calls to hit expected if/else cases earlier. check-in: 4e81e07c57 user: stephan tags: trunk
2021-11-03
03:15
Removed some dangling debug output from f-revert. check-in: a8c009d569 user: stephan tags: trunk
02:51
f-revert can now report an error when it is passed an unmanaged file name. It now requires, however, passing in the new name, instead of the original name, when reverting a rename. Removed f-revert's dependency on fossil-internal.h. check-in: 7dd883be5e user: stephan tags: trunk
02:28
Oops. check-in: d4074d8d33 user: stephan tags: trunk
00:07
Another constness tweak, a doc fix, and added a TODO to f-revert. check-in: af29e33252 user: stephan tags: trunk
2021-11-02
23:52
Mass renaming of many internal APIs from fsl_X to fsl__X (two underscores) and several adjacent const cleanups. check-in: 83917b7b45 user: stephan tags: trunk
23:47
Corrected a repeated build rule in bindings/cpp. check-in: 3ea6f73e5d user: stephan tags: trunk
14:09
Further tweaking of buffer memory ownership for fsl_deck_parse(). Minor adjacent tweaking. check-in: 7948748ba0 user: stephan tags: trunk
04:11
Corrected decls for fsl_strlXXX() (only did the impls last time but the compiler didn't catch it because the data types were the same). check-in: 95019d819c user: stephan tags: trunk
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(). check-in: 3bcb631b4f user: stephan tags: trunk