Login
Timeline
Login

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

50 most recent check-ins that include changes to files matching 'src/*'

2024-10-31
23:48
Pull in upstream [fossil:f214aba4f5c4846de0e1] to fix an obscure assert() triggered by diffs with hundreds of thousands of lines. However, this fix leads to the same offending diff now causing an apparently hang in libfossil (still waiting after four minutes, whereas fossil diff took only 2s). That's to be investigated Real Soon Now. Leaf check-in: 203439be88 user: stephan tags: trunk
2024-10-19
15:11
Internal doc cleanups and API renaming. No functional changes. check-in: 742b1d61c2 user: stephan tags: trunk
2024-10-15
11:47
Add a comment about integrating [fossil:9919dfbbaa2019e7eb7b], which will require a Windows-using developer. check-in: fe4c22a0ba user: stephan tags: trunk
2024-10-12
18:43
fcli: move the cliFlags and appHelp members into fcli.config. Curiously, this does not affect any of the f-apps but will likely break any clients still using fcli_setup() instead of fcli_setup_v2() (they just need to add '.config' to those member accesses). check-in: b979896288 user: stephan tags: trunk
18:37
Part 1 of N of some restructuring of the fcli_t struct: consolidate fcli.clientFlags and fcli.config into fcli.config. check-in: 2f7bf3f7d0 user: stephan tags: trunk
15:22
Initial work on fcli_setup_v3(). Not yet sure if this will be a real thing. Closed-Leaf check-in: 5789a03da2 user: stephan tags: fcli_setup_v3
2024-09-28
00:31
Do not clear the fsl_cx error state in the db hooks, as that hides propagating info like a merge failure report. check-in: 08ed83fecc user: stephan tags: trunk
2024-09-26
16:27
EOL cleanups and fix an age-old stack overwrite discovered via Martin's QNX. Edit: the stack-overwrite of 18 bytes traces back to [896ea2a01b33de25]. check-in: f6812e43bd user: stephan tags: trunk
13:52
Initialize an uninited var exposed by gcc 4.x check-in: 04f3b7d2e3 user: stephan tags: trunk
2024-09-25
02:00
In fsl_checkin_commit(), be sure to propagate the privateness of content when the commit derives from a private checkin. This should have been part of [f511d7e63292]. check-in: 9eecc8a2be user: stephan tags: trunk
2024-09-24
21:37
Some insignificant internal touchups. check-in: 76751c68a6 user: stephan tags: trunk
21:13
Add --private flag to f-ci. It seems to work, too. check-in: f511d7e632 user: stephan tags: trunk
18:22
Comment and doc cleanups. check-in: 6c21831158 user: stephan tags: trunk
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. check-in: 71fbbe959b user: stephan tags: trunk
2024-09-23
10:43
include limits.h header for LONG_MAX on darwin While here, change buf->cursor precondition comparison check to ensure it is not greater than buf->used. It may be an unreachable state but we must guard it nonetheless. And expand getdelim() regress by covering the empty or end-of-buffer precondition path, and the no matching delimiter found in the stream path. check-in: 322452cb8b user: mark tags: trunk
2024-09-22
15:38
implement fsl_buffer_get{delim,line}() and regress test This API provides the same semantics as POSIX.1-2024 getdelim(3), which the fsl_buffer structure conveniently facilitates. A new regress test case is also added to f-sanity. Briefly discussed in /chat with Stephan. https://pubs.opengroup.org/onlinepubs/9799919799/functions/getdelim.html check-in: efb25dec6f user: mark tags: trunk
2024-09-21
01:27
zap deadstore via missing break statement in switch block I suspect this fallthrough attribute was incorrectly added to silence a compiler warning that was in this case warranted. We don't want to clobber c; `c = offset` is correct for SEEK_SET. Incidentally, this routine's regress test was not failing the SEEK_SET case[0] because bin->cursor is at 0 so the fallthrough to the SEEK_CUR case[1] equates to `c = 0 + offset`. As such this commit also reorders test cases for a more rigorous regresssion test of fsl_buffer_seek(). [0]: assert(0==fsl_buffer_seek(&bin, 0, FSL_BUFFER_SEEK_SET)); [1]: case FSL_BUFFER_SEEK_CUR: c = (int64_t)b->cursor + offset; break; check-in: 5d2f636c0c user: mark tags: trunk
2024-09-20
18:52
Fix a call to free() which should have been fsl_free(). check-in: 5474491f74 user: stephan tags: trunk
2024-09-18
18:52
Minor cleanups and doc tweaks. check-in: 2ee07f48f0 user: stephan tags: trunk
2024-09-16
23:03
EOL whitespace cleanups and simplify one silly code block. check-in: 2074b15145 user: stephan tags: trunk
22:31
Simplify fsl__cx_db_hook_transaction() a bit. check-in: 40d724d923 user: stephan tags: trunk
21:26
Merge db-hooks branch into trunk. Summary: eliminate the fsl_db class's hard dependency on the fsl_cx class via introduction of hooks which fsl_cx installs in its db instance. check-in: 8884282b35 user: stephan tags: trunk
21:22
Remove some debug output. Update some docs. Closed-Leaf check-in: ccd8bc3369 user: stephan tags: db-hooks
21:05
Docs and cleanups related to the new fsl_db hooks. check-in: a189336bdd user: stephan tags: db-hooks
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. check-in: f00a5025f5 user: stephan tags: db-hooks
17:41
More work towards moving fsl_cx-specific pieces of fsl_db internals into fsl_cx-side hooks. check-in: 7fce228983 user: stephan tags: db-hooks
17:06
More work on the db hooks. check-in: 12b3603cd3 user: stephan tags: db-hooks
16:02
Initial work on adding some hooks to the fsl_db API, the goal being to eliminate the hard dependency of fsl_cx in fsl_db internals. This compiles but is untested (not counting this commit, which will do at least a minimal test) but other matters require attention so this is being stashed for later development. check-in: 1c4ec95d75 user: stephan tags: db-hooks
12:21
Add --date-override and --allow-older flags to f-ci. check-in: 580ec03020 user: stephan tags: trunk
11:22
Rework the tags to support both ctags and etags. Use the --etags and/or --ctags configure flag to opt in to tags generation. They're off by default because they can be slow and aren't commonly used. check-in: ec5d660e8f user: stephan tags: trunk
2024-09-14
13:54
Merge build-rework branch into trunk. Summary: reduce the complexity of the build considerably (while, admittedly, also reducing its flexibility, but that's okay). check-in: ecf32ada1a user: stephan tags: trunk
11:30
Update subdir makefiles for the build rework. check-in: 07f62bbf5e user: stephan tags: build-rework
2024-09-13
16:07
A potential fix for the bug tagged as tag:bug:revert-merge-hiccup and described in [00377f482a0d], with the caveat that i've been unable to reproduce it, so cannot be 100% certain that this is adequate. It seems sound, anyway. check-in: aebe930b2c user: stephan tags: trunk
13:56
Add f-ls --checkouts flag to show open checkouts to the given repository, with the caveat that checkouts opened via different names for the repo (e.g. via dir symlinks) are not resolved. check-in: dec80338e1 user: stephan tags: trunk
12:57
Document an obscure, difficult-to-trigger misinteraction between revert/merge ops (fixing it is todo, once a good solution is found). Fix fsl_ckout_has_changes() to return true also when vfile.deleted is true and restrict it to matching only when vid=current-ckout-version to cover a wildly hypothetical case of multiple distinct vfile.vid values being in the table. check-in: 00377f482a user: stephan tags: trunk
2024-09-03
16:44
As a late-stage step in the checkin process, ensure that vfile.isexe and vfile.islink match what the new manifest says. This has been a long-missing step which fossil(1) does but libfossil noted in a TODO comment but never implemented. This completes, hopefully, the fix started in [4243008e112140], but it's difficult to _really_ test without doing a genuine checkin (not a dry-run). check-in: 404f376c0e user: stephan tags: trunk
2024-09-02
03:05
Do a better job of determining the default fossil user name, first extracting it from the checkout (if available), then the repo (if available), then the environment. Automatically do this when opening a repo and/or checkout and clear the name when the SCM dbs are closed. check-in: 20e4e80b87 user: stephan tags: trunk
2024-08-16
19:58
Apply [fossil:60debc7ed76b9d8fc0aa|upstream fossil(1) fix 60debc7ed76b9d8fc0aa]. check-in: 3e6ae0d74f user: stephan tags: trunk
2024-08-01
11:26
When reverting files, report those which were modified only via a merge as reverted (it was formerly not reporting those via the callback). Adjacent cleanups and a potential resource leak fix in two as-yet-have-never-happened error cases. See code comments, in particular in fsl_ckout_revert(), for why this fix is not as satisfactory as it should be. check-in: 888c0dfe9a user: stephan tags: trunk
2024-07-23
10:26
Fix a bug in fsl_checkin_calc_F_card2() which caused a change of (only) the exec bit to go un-marked in the manifest (the file retained its old exec-bit status, but otherwise no harm done). check-in: 4243008e11 user: stephan tags: trunk
2024-06-29
22:02
Add a test app to import raw blobs, initially for use with importing the libfossil forum repo into the main libfossil forum. In the process, discovered, but have not yet resolved, a double-free bug via fcli_shutdown()'s cleanup of the argv memory. check-in: 44f248ffb4 user: stephan tags: trunk
2024-06-20
11:01
Correct lookup of the checkout db file in fsl_ckout_db_search() when checkParentDirs is false. It was aborting the loop prematurely, before checking all db file name options. check-in: f0a970b0dc user: stephan tags: trunk
2024-04-16
08:22
Initial support for repositories encrypted using the SQLite Encryption Extension (SEE). The interface is still subject to change but currently seems reasonably sane. Milestone: we can create, open, work with, and check in to repositories encrypted with SEE, but it's tedious to have to pass the encryption key for every command invocation using the f-... apps. check-in: 661421ef0c user: stephan tags: trunk
08:21
Gotta tap save before checking in. Closed-Leaf check-in: 2efbe19541 user: stephan tags: sqlite-see
08:07
Add support for binary-format SEE keys. check-in: b35914490e user: stephan tags: sqlite-see
07:40
Reinstate --see-hexmode in fcli. check-in: 0803fb9c84 user: stephan tags: sqlite-see
07:02
Add support for --see-textkey to fcli. check-in: fe27725d07 user: stephan tags: sqlite-see
06:26
More work on SEE integration. check-in: 7240c7d988 user: stephan tags: sqlite-see
06:06
More work on adding library-level SEE support. It seems to basically work but it's not complete. check-in: 3d4d0d3a05 user: stephan tags: sqlite-see
04:58
Build tweaks to facilitate SEE integration. check-in: 914a6ea914 user: stephan tags: trunk