Login
Timeline
Login

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

1905 check-ins using file resources/fossil-logo-3.png version 55d4a86663

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
23:01
Stashing some unused auto.def code for later: determines whether a given linenoise.h refers to the antirez or msteveb flavor of that API. check-in: cbf755a343 user: stephan tags: trunk
2024-10-29
18:51
Upstream fix for proj.tcl:proj-first-bin-of. check-in: 8a931ee5db user: stephan tags: trunk
03:09
Adapt auto.def bits to renaming of the upstream 'hwaci' API to the more generic 'proj' API. check-in: 1da9021841 user: stephan tags: trunk
2024-10-25
05:40
Upstream fix to autosetup/autosetup-find-tcl to work around an OpenBSD-ism of emitting noise to stdout at link-time. check-in: 41ef58fc27 user: stephan tags: trunk
2024-10-24
01:23
Fix an autosetup misuse which breaks ./configure --help. Latest upstream hwaci-common.tcl check-in: 1918daa559 user: stephan tags: trunk
2024-10-23
00:59
Add a TODO to use autosetup's pkg-config support, rather than manual invocation of pkg-config, for ncurses detection. check-in: 113e3f9c38 user: stephan tags: trunk
2024-10-19
22:52
Latest upstream hwaci-common.tcl. check-in: 5e942a7a1c user: stephan tags: trunk
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
11:29
Further simplify the import of FNC_... vars into autosetup. (Who know that tcl has a shell-like 'source' command?) check-in: c27eb7d5d2 user: stephan tags: trunk
11:07
Simplify how the FNC_... config vars are exposed to auto.def by generating them directly to TCL into instead into intermediary files which TCL then processes. check-in: dcc52232fc user: stephan tags: trunk
06:03
Eliminate deps on external sed and awk when extracting FNC_DATE. (The sed was superfluous, anyway.) Remove the T part from FNC_DATE for consistency with the upstream build. check-in: e2a3072074 user: stephan tags: trunk
05:51
Add fnc version/date/hash info to the build and add a script to copy the upstream fnc, along with that metadata. That this info has been missing was reported in [/forumpost/cc99a0b0a8]. check-in: 578074a169 user: stephan tags: trunk
2024-10-09
07:50
Latest hwaci-common.tcl. check-in: 43e15355d5 user: stephan tags: trunk
2024-10-01
14:12
Minor makefile doc update. No functional changes. check-in: e9b3572f47 user: stephan tags: trunk
13:20
A different approach (the initially intended one) to squelch the warning about missing shakenmake-custom.make. check-in: 1cd610fce6 user: stephan tags: trunk
13:19
Squelch the warning about missing shakenmake-custom.make. check-in: e5390f0257 user: stephan tags: trunk
11:03
Minor text formatting tweak for the ncurses check results. check-in: 8a801eebba user: stephan tags: trunk
11:02
Fix reversed logic in the build/target/host names in several hwaci-* functions. check-in: 32064fe005 user: stephan tags: trunk
2024-09-30
20:28
Attempt to determine the proper flag to pass for building shared libs: -shared for .so or -dynamiclib for .dylib. This info is based entirely from a StackOverflow post, so is to be taken with a proverbial grain of salt. check-in: e4a5ca7d02 user: stephan tags: trunk
20:12
Latest upstream hwaci-common.tcl. Attempt to use the dylib extension for Mac builds of libfossil.so (can't test that here, though). check-in: 8daf857e24 user: stephan tags: trunk
14:33
Teach the rpath check to not append to the global build flags. check-in: 7f2f79925f user: stephan tags: trunk
14:24
Move the rpath flag check in hwaci-common.tcl and correct {-Wl,-rpath -Wl,/...} to be checked as a single flag. check-in: f8b4758038 user: stephan tags: trunk
14:14
More build tinkering - latest upstream hwaci-common.tcl. Potential fix for the missing -liconv flags on Mac builds, broken in [9c54655f16d96708]. check-in: 0d09d97189 user: stephan tags: trunk
2024-09-29
12:10
Second part of --help text correction in f-annotate, as reported in [9305e3173f]. check-in: 60c6beadb0 user: stephan tags: trunk
12:09
An attempt at finding an -rpath option which will work on Mac w/ clang 16. The compiler reports that it supports -Wl,-R... but then fails to build with that flag. The same flag works on OpenBSD with clang 16. check-in: 7e4286ab80 user: stephan tags: trunk
12:04
Minor --help text correction in f-annotate, as reported in [9305e3173f]. check-in: 28cf441d61 user: stephan tags: trunk
2024-09-28
00:33
Latest upstream autosetup and fix a variable mis-use in wh-common.tcl's module loading check. check-in: 4e15fa0ef5 user: stephan tags: trunk
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-27
10:41
Avoid some duplicate build flags, as reported in [b4cf8266a3]. check-in: cafc3ca524 user: stephan tags: trunk
2024-09-26
20:48
Fix dangling tcl func name references introduced in [64155cdbf3] and uncovered on an OpenBSD build. check-in: f8a5f96599 user: stephan tags: trunk
19:28
Move much of wh-common.tcl into hwaci-common.tcl, which will soon make its way into the Fossil tree, and it will be simpler to be able to share hwaci-common.tcl than to maintain multiple independent copies of the autosetup utils it adds. check-in: 64155cdbf3 user: stephan tags: trunk
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
15:52
Swap --loud for --disable-loud (--quiet is an autoset-private flag). When linking f-apps, use SH_LINKRPATH instead of SH_LINKFLAGS, as the former works on both my systems and Martin's QNX, whereas the latter fails on QNX. check-in: 41e77534fb user: stephan tags: trunk
14:41
Correct the definition of the --disable-ncurses flag so that it shows up properly in the --help. check-in: 0caa19aff0 user: stephan tags: trunk
14:38
Add --disable-ncurses flag to completely disable ncurses pieces. On Martin's QNX curses is detected but fails to compile because of an error in ncurses.h. check-in: ad1277f63a user: stephan tags: trunk
14:28
Disable compile-commands by default, requiring --enable-compile-commands to turn it on. Run cc-check-flags on autosetup's detected SH_LINKFLAGS and, if they fail that test, clear SH_LINKFLAGS, in an attempt to avoid adding -rdynamic to Martin's QNX build. check-in: 8a3934327c user: stephan tags: trunk
14:03
Fix a typo which broke sqlite3.o build in [c7cfd91a97]. Add -fPIC to CFLAGS if the compiler supports it. Remove hard-coded -rdynamic flag from the module-loader detection bits (which we don't currently use). check-in: 2045612e56 user: stephan tags: trunk
13:52
Initialize an uninited var exposed by gcc 4.x check-in: 04f3b7d2e3 user: stephan tags: trunk
13:35
C99 detection: always use -std=c99 when --assume-c99 is used. When detecting c99, if -std=c99 is not supported, also try -Wc,-std=c99 (for QNX qcc). When compiling sqlite3.c, remove -std=c99 and -Werror from its CFLAGs. check-in: c7cfd91a97 user: stephan tags: trunk
12:59
Only add -gdwarf-4 to the CFLAGS if CC supports that flag. This resolves the TODO in [a22ed480f10f2212533]. check-in: 35f61b176e user: stephan tags: trunk
12:55
Do not add -gdwarf-4 to the CFLAGS if --assume-c99 is used. TODO: add a proper test of that flag to see if the compiler supports it. check-in: a22ed480f1 user: stephan tags: trunk
11:20
An alternative, supposedly more portable, approach to applying the rpath to the f-apps. Add the --assume-c99 configure flag to bypass the explicit check for C99, as a potential workaround for gcc 4.x on QNX. check-in: dcbf5cf9d4 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
01:52
Add a license header to wh-common.tcl. check-in: 0f66ef287d user: stephan tags: trunk
2024-09-24
21:37
Some insignificant internal touchups. check-in: 76751c68a6 user: stephan tags: trunk
21:24
Comment cleanups. check-in: 5861c30dce 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:58
Remove some stray debug output added in [71fbbe959b34]. check-in: 57771ce4fc user: stephan tags: trunk
15:47
Remove some auto.def debug output and add a comment explaining the new test in f-sanity.c. check-in: b096fe0978 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
14:05
Minor autosetup-related reorgs. check-in: ed02fb6b2d 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-17
05:15
Update fsl_cx_empty_m to C99-style. check-in: 071f8b629f 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:41
Remove the --languages flags from the ctags/etags invocation, as it's a GNU-ism. check-in: 7613d9182b 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
10:07
Doc typo fix reported in the forum. check-in: 391184a785 user: stephan tags: trunk
2024-09-15
11:11
latest upstream fnc [fnc:26adf1707c] check-in: 8e0da47996 user: mark tags: trunk
09:55
Remove -DSQLITE_USE_ALLOCA from build flags. No idea why it was there but it causes grief (see [/forumpost/f4f1fdb1df]). check-in: 6f743f092d user: stephan tags: trunk
2024-09-14
23:54
Re-integrate the C++ bits into the build. Remove some obsolete files. check-in: 60415d2654 user: stephan tags: trunk
14:37
Update to latest upstream fnc. check-in: 0dfa7dd72c user: stephan tags: trunk
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:47
Remove the long-unmaintained bindings/s2 dir. Closed-Leaf check-in: 08f28aa79f user: stephan tags: build-rework
11:30
Update subdir makefiles for the build rework. check-in: 07f62bbf5e user: stephan tags: build-rework
10:59
Further improvements to the amalgamation build. check-in: 4c6d994afd user: stephan tags: build-rework
10:41
Add -lbsd to fnc build if -lbsd is available on the system (forum post [5fa7ecd1eeba08b5]). Rename LIB_CURSES to LDFLAGS_CURSES for consistency. check-in: b1f5a72dd8 user: stephan tags: build-rework
10:16
Remove another obsolete sub-makefile. check-in: d3fcc259ff user: stephan tags: build-rework
10:16
Improve the build process for the amalgamation. check-in: 95ada2b2b9 user: stephan tags: build-rework
08:00
Build fixes uncovered on the OpenBSD machine. Edit: the time warp here happened because my pi4 does not keep proper time with OpenBSD - the clock has to be manually re-synced after each reboot (which didn't happen here). This was initially mistaken for an unintentional fork but it's really a linear roller coaster loop in the history. Edit: timestamp was amended to a close approximate of the real time to straighten out the /timeline. check-in: 06424d9854 user: stephan tags: build-rework
02:27
Minor build cleanups. check-in: 181490a1c0 user: stephan tags: build-rework
02:12
Add a output to auto.def indicating that the C++ components are not currently built. check-in: 4de3be33a3 user: stephan tags: build-rework
02:10
Get fnc building. Remove the now-obsolete sub-makefiles. check-in: 160e441f8a user: stephan tags: build-rework
01:27
Get the curses components of f-apps building. check-in: 5c701aadb7 user: stephan tags: build-rework
01:23
Get the f-apps building. check-in: 82493c1ad9 user: stephan tags: build-rework
00:56
Cleanups in the main lib build. check-in: 9c54655f16 user: stephan tags: build-rework
00:27
Get the core lib building. Move make-amalgamation.bash into ./tools. check-in: df99c89b4f user: stephan tags: build-rework
00:09
More work towards a single mega-makefile. Add deps generation for the main lib. check-in: 403e7b73f4 user: stephan tags: build-rework
2024-09-13
23:27
Build workaround for breakage introduced in [321baf1e600b]. check-in: beef8d3f15 user: stephan tags: trunk
23:23
Break down build to its bare minimum (more or less) so we can start to recreate it. It currently builds nothing at all. Move the amalgamation zip/html generation into make-amalgamation.bash. check-in: 4f105c0050 user: stephan tags: build-rework
22:44
Move generation of the amalgamation from the makefile to a shell script as the first step in reworking the build (the aim being to escape its over-engineeredness). check-in: 321baf1e60 user: stephan tags: trunk
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
14:44
Latest upstream fnc for CentOS build fixes. check-in: 8abe7bd29b user: stephan tags: trunk
14:04
Add f-apps/f-test-canonical-name.c. check-in: 8a50b9b6e7 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
10:30
Update fnc to the upstream trunk. i apparently made a mess of it yesterday, pulling an older version when sync failed (due to an out of date login) without my noticing it. check-in: e3cd510fda user: stephan tags: trunk
10:27
Correct setting of CFLAGS and CPPFLAGS for client/fnc and add -fPIE to fnc's flags in an attempt to appease Fedora 39. check-in: aff8157664 user: stephan tags: trunk
2024-09-12
14:11
Remove an extraneous internal-use-only header from f-import-blob.c. check-in: a371058aeb user: stephan tags: trunk
12:13
Update to latest upstream fnc. check-in: 25a3a7ceea 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
15:25
latest upstream autosetup. check-in: 21a48eac26 user: stephan tags: trunk
15:13
Minor doc updates in autosetup utility code. check-in: 5829e02ee3 user: stephan tags: trunk
13:42
Remove config-win32.h, as it's apparently long since been unused (or at least unmaintained). check-in: 439cee847a user: stephan tags: trunk
13:26
Swap the configure flag --no-c++ with --c++ (a.k.a. --enable-c++), making the C++ bits explicitly opt-in, because the C++ pieces fail to compile or link on many clang hosts for reasons known only to clang (as opposed to code bugs). check-in: 58c9b25ca1 user: stephan tags: trunk
13:11
Minor doc correction. check-in: 207ac5bab3 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
01:50
Latest upstream fnc. check-in: dd368cb55d user: stephan tags: trunk
00:37
A workaround for OpenBSD-specific [https://github.com/msteveb/autosetup/issues/67|autosetup issue #67]. check-in: 2031595764 user: stephan tags: trunk
2024-08-24
09:47
Build flag fix for a long-standing problem (cannot find sqlite3.h) which was only incidentally triggered on a newly-installed OpenBSD system. check-in: a5f03751bc user: stephan tags: trunk
09:46
Add a hack to mkdeps.c to work around OpenBSD's link-time "strcpy() is evil, use our non-standard variant instead" warning. check-in: 6b2a066f10 user: stephan tags: trunk
2024-08-16
20:00
Update sqlite3.c/h to current upstream trunk versions. check-in: 6ece2a8500 user: stephan tags: trunk
19:58
Apply [fossil:60debc7ed76b9d8fc0aa|upstream fossil(1) fix 60debc7ed76b9d8fc0aa]. check-in: 3e6ae0d74f user: stephan tags: trunk
2024-08-01
11:53
Tweaks to the previous checkin's comments. check-in: 8cb2f47a28 user: stephan tags: trunk
11:50
Work around a GNU Make behavior change which breaks how the CPPFLAGS are handled when building the amalgamated libfossil.o. check-in: 33d2bad579 user: stephan tags: trunk
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
10:38
Typo fix and add a reminder-to-self about why we don't combine all of the project's headers into a single mega-header. check-in: 0d024cd949 user: stephan tags: trunk
2024-07-29
10:38
Run Doxyfile through (doxygen -u). check-in: 5f5fbb46fb user: stephan tags: trunk
2024-07-23
10:26
Update autosetup to upstream 0.7.1+. This is what uncovered the bug fixed in [4243008e112140618628ad]. check-in: 654c61c6c0 user: stephan tags: trunk
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-07-03
09:13
Remove some superfluous warnings from f-update and f-merge. check-in: 8861e4557f user: stephan tags: trunk
2024-06-29
22:45
Add --dry-run/-n flag to f-import-blob.c. check-in: a5cfa53b2e user: stephan tags: trunk
22:30
Fix the aforementioned double-free bug. Facepalm. check-in: b25fae6fbe user: stephan tags: trunk
22:15
Minor cleanups in the previous checkin. Import forum repo into this repo, but the aforementioned double-free bug is still lingering. check-in: e62167460d user: stephan tags: trunk
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:12
Minor test code cleanup and update license header copyright years. check-in: 6b98eb601b user: stephan tags: trunk
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
10:45
Add f-apps/f-test-ckout-db-search.c to test for a bug in fsl_ckout_db_search() discovered by PrzemysÅ‚aw KamiÅ„ski. Fixing the bug is the next step. check-in: f73f305f22 user: stephan tags: trunk
2024-06-16
17:06
EOL whitespace cleanups. check-in: 30b6b94913 user: stephan tags: trunk
2024-05-29
15:32
Latest upstream mkcdep.c from the sewal tree. check-in: b97e4ac1e5 user: stephan tags: trunk
2024-04-27
11:51
Apply the case-handling change from [0e50f798e6a5] to f-rename.c, analog to [fossil:859b00b7|upstream 859b00b7]. Edit: this change and the related one it links to should ideally be done transparently in the library, but retrofitting it into those two places is beyond my current level of ambition. Patches to that effect would be welcomed! check-in: 070f359a1e user: stephan tags: trunk
2024-04-16
20:50
Add a very basic test script for SEE-based builds and remove the -W flags added for SEE sources, as those warnings were fixed upstream. check-in: 740e55b047 user: stephan tags: trunk
08:50
Add a brief document explaining SEE integration. check-in: 29378505dc user: stephan tags: trunk
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:40
Correct f-ciwoco to not force dry-run mode. check-in: 0ad6c888be 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
03:37
Move sqlite3.c/h from src to extsrc in prep for further configuration options for specifying which sqlite3.c (primarily for SEE support). check-in: ff9c41a8dd user: stephan tags: trunk
2024-04-10
22:26
Merge current trunk into sqlite-see branch. check-in: d0c7ccf526 user: stephan tags: sqlite-see
22:22
More docs for [0e50f798e6a5]. check-in: 0e6501b5df user: stephan tags: trunk
22:06
Minor doc touchup for the previous checkin. check-in: 753e4c72e6 user: stephan tags: trunk
22:03
Port in [fossil:f1f7e27e0cdb8943|upstream f1f7e27e0cdb8943], a routine which ensures that a given filename matches the case it is stored in in the filesystem. Use that in f-add.c, where it's applied even for case-sensitive filesystems (primarily as a test for that routine). check-in: 0e50f798e6 user: stephan tags: trunk
2024-03-28
11:50
More work on close-at-checkin, but this is turning into a rat's nest of side effects and does not address the partial-checkin case, so shelving this idea for the time being. Unrelated: this checkin is showing src/checkin.c as a full-file diff with both fossil(1) diff and f-vdiff, whereas doing a diff --from prev shows the expected changes only. Shrug. Closed-Leaf check-in: 075379b921 user: stephan tags: ci-close
09:49
Add new fsl_checkin_opt::writeCheckoutVersion (default=true) as a way to suppress automatic rewriting of checkout version to match the new checking version, for use with... Add f-cli --close and --close-with-comment flags which enable checking in and closing at the same time. When doing so, do _not_ update the checkout to the newly branched-and-closed version. Edit: this messes up the checkout state by setting the vfile state to match the new branch instead of the current branch. Need to investigate that further. check-in: 1f286fb52a user: stephan tags: ci-close
2024-03-19
14:18
Doc typo fixes. check-in: a9c39d66de user: stephan tags: trunk
2024-03-15
13:15
Pull in [fossil:34276d22e558fbde2705] micro-patch to resolve a potential int overflow in fsl_id_bag_hash(). check-in: 40e3dd6eed user: stephan tags: trunk
2024-02-27
13:02
Change -g CFLAG to -gdwarf-4 for clang compatibility with valgrind versions still commonly deployed. See link in code comment for details. Discovered that gcc v10 and v12 cause the f-sanity test app to bus fault on my pi4 and pi5, for unknown reasons, but clang works fine on both. check-in: f0979f89b3 user: stephan tags: trunk
2024-02-11
12:20
This was supposed to have been in trunk. check-in: 8caf0ac36e user: stephan tags: trunk
2024-02-07
10:21
In autosetup's wh-make-from-dot, make the resulting file read-only for all users, not just the current one. check-in: 6482447a69 user: stephan tags: sqlite-see
2024-02-03
16:18
More tinkering with the SEE integration, but this reveals that we have to(?), for portability's sake, limit encryption to repositories and checkouts, and keep the global config from being encrypted (else we risk breaking fossil(1)'s use of the config db). It also begs the question of whether arbitrary databases opened via the fossil API should get this support (which would require a different API, as the db API can be used without a fsl_cx object). check-in: f226dbd76a user: stephan tags: sqlite-see
10:16
Add initial experimental interface for fetching passwords from clients for databases encrypted with the SQLite Encryption Extension (SEE). This is just the (untested) interface, with no functional code which makes use of it. check-in: 1ddc5a8c6e user: stephan tags: sqlite-see
2024-01-07
17:59
Upstream patch [fossil:b295f86db5417cea1e7a]: in fsl_vfile_changes_scan(), if mtime of a file is unchanged but is equal to the current system time, check the hash to work around a corner case where a script modifies a file immediately after an open/update. Also fix two code-adjacent misuses of fsl__cx_scratchpad() in that same function, where fsl__cx_scratchpad_yield() was not being called. check-in: 8616c93b6f user: stephan tags: trunk
2023-12-08
09:35
Upstream tweak [fossil:a45c7f0a560a90541967f790c4b5] to adjust diff output slightly. check-in: 9313a01a00 user: stephan tags: trunk
2023-11-23
13:07
fix 'f-delta -a' cli option clobbering so that the delta in arg1 actually gets applied to the file in arg2 and the result written to stdout rather than outputting the delta between arg1 and arg2 as we do when no option is passed to 'f-delta' check-in: 72f05d4c41 user: mark tags: trunk
12:49
fix rejection of zero-length deltas to make delta creation and application consistent with fossil(1) check-in: cd5b50685b user: mark tags: trunk
2023-11-22
11:54
s/__unused/fsl__unused as discussed in /chat with stephan@ to help avoid name collisions with package maintainers; no functional change intended check-in: 230cf225fc user: mark tags: trunk
01:53
Add EXTRA_CFLAGS option to the build to append arbitrary CFLAGS (to assist in tracking down compiler-specific warnings). Squelch a bogus gcc-specific warning about a potentially uninitialized var in fsl_ckout_merge(). check-in: 2e45143605 user: stephan tags: trunk
2023-11-21
18:07
Reformulate how TAGS is generated to avoid an error about reading from '-' on some versions of etags. check-in: 1a5f7a870b user: stephan tags: trunk
18:01
Remove some (admittedly justified) rough language from config.h. check-in: fab3d8f252 user: stephan tags: trunk
17:59
Replace several __attribute__((fallthrough)) markers with a macro which conditionally resolves to that. check-in: b018045507 user: stephan tags: trunk
15:25
Latest upstream fnc. check-in: 1c09e802b2 user: stephan tags: trunk
2023-11-19
16:21
Latest upstream fnc. check-in: e9ce1d49cf user: stephan tags: trunk
2023-09-08
12:29
Add --no-c++ configure flag to work around a problem where my local c++ is not finding standard headers. check-in: 58651fd515 user: stephan tags: trunk
2023-07-28
16:22
Apply upstream diff int overflow patch [fossil:5882e9e87861c7c0]. check-in: ef095328f7 user: stephan tags: trunk
2023-07-12
10:36
Minor internal doc update. check-in: dac7770456 user: stephan tags: trunk
2023-06-22
08:42
Rephrase the cryptic sed expression for generating compile_commands.json into something more platform-portable. check-in: c6b9b86399 user: stephan tags: trunk
2023-06-20
13:48
Remove some stray end-of-line whitespace. check-in: ab6ce6037c user: stephan tags: trunk
13:44
Remove some stray whitespace. check-in: 9c2357b976 user: stephan tags: trunk
2023-06-17
08:27
Minor text updates in f-update output. check-in: f9ba9cc02f user: stephan tags: trunk
2023-05-17
02:20
Update to sqlite3 trunk (pre-3.43, a few checkins after 3.42.0). check-in: 21063409f6 user: stephan tags: trunk
2023-04-26
16:26
Latest upstream fnc. check-in: 251db8cb45 user: stephan tags: trunk
16:24
Merge no-common-ancestor branch into trunk. check-in: 0657571903 user: stephan tags: trunk
16:23
Remove the no-common-ancestor check from the merge algorith, for conformance with fossil(1)'s new behavior. Closed-Leaf check-in: 3ca3706652 user: stephan tags: no-common-ancestor
2023-04-23
12:09
Patch some interrupted-mid-sentence comments. check-in: 1bb1139c7b user: stephan tags: no-common-ancestor
12:07
Apply upstream [fossil:7c75e47b3c130ff1]: when merging files with no common ancestor, treat it as if an imaginary common ancestor were an empty file. We currently retain the no-common-ancestor diagnosis but may yet remove it or augment it to permit the user to specify which side of the merge to retain. check-in: 30bd3e8b14 user: stephan tags: no-common-ancestor
2023-04-21
15:57
Remove sqlite3ext.h and a C-side reference to it. check-in: 0fe561416a user: stephan tags: trunk
2023-04-19
12:46
Update to latest upstream sqlite3ext.h (used by ext_regexp.c). check-in: 231fed9533 user: stephan tags: trunk
04:03
Add more missing f(void). check-in: 43181beb49 user: mgagnon tags: trunk
03:35
Cherrypick changes from the no-common-ancestor branch which are not strictly relevant to that change. check-in: 1ee281f8ed user: stephan tags: trunk
03:23
Remove FSL_MERGE_FCHANGE_CONFLICT_ANCESTOR and its associated handling, as fossil no longer reports that as a problem. (Edit: closing this broken branch to re-start from a clean slate after some sleep.) Closed-Leaf check-in: c575ac0028 user: stephan tags: no-common-ancestor
03:02
Additional work on porting over Martin's no-common-ancestor patch. check-in: 5d8201ce25 user: stephan tags: no-common-ancestor
02:33
Add missing f(void) for some static func decls to appease newer compilers. check-in: e2d7986f9e user: stephan tags: no-common-ancestor
02:33
Latest upstream sqlite3. check-in: a26e462b9c user: stephan tags: no-common-ancestor
02:26
Apply a set of missing f(void) and assigned-but-unused vars from Mark J. check-in: b96f5840ea user: stephan tags: no-common-ancestor
02:11
Apply upstream [fossil:7c75e47b3c130ff1]: when merging files with no common ancestor, treat it as if an imaginary common ancestor were an empty file. check-in: b67c69a3ca user: stephan tags: no-common-ancestor
2023-03-07
14:32
Change the anonymous user's default perms from 'hmncz' to 'hz' to match new fossil(1) defaults. check-in: 9a8269d737 user: stephan tags: trunk
2023-02-02
10:08
Integrate upstream patch [https://fossil-scm.org/home/info/52a66829d655ff35dc52]: when cherrypicking, do not include marked-as-private merge parents in the Q-card list. check-in: fc0ae4b07e user: stephan tags: trunk
10:04
Correct FTS index check handling and ensure the cached value of the check is invalidated on open/close of the repo. check-in: 8f60ec4138 user: stephan tags: trunk
2023-01-24
03:21
Add an assert() to the previous checkin. check-in: 65cdfccb1f user: stephan tags: trunk
03:09
Update fsl__search_doc_touch() to be able to handle both FTS4 and FTS5 search indexes, now that the port to FTS5 has started at [fossil:/timeline?r=search-fts5]. This failure was found by trying to make the first checkin on that branch. check-in: 5764b7efa6 user: stephan tags: trunk
2022-11-24
13:51
add FCLI_RC_NO_CMD result code for fcli_dispatch_commands() To help distinguish between invalid commands and propagated FSL_RC_NOT_FOUND errors returned from successfully dispatched commands. ok stephan@ check-in: 46008704a6 user: mark tags: trunk
13:49
make fcli_cmd_aliascmp() return semantics match convention Return 0 if a match is found as one would expect from a *_cmp() routine. ok stephan@ check-in: 6e0d1fbc09 user: mark tags: trunk
2022-11-21
03:30
squelch gcc-11.2.0 uninitialised variable warning If fsl_buffer_cstr2() errors out, nOrig isn't initialised. ok stephan@ check-in: ef78842aea user: mark tags: trunk
2022-11-20
12:20
ensure dstsz-1 is greater than the current length of dst Although somewhat contrived it's a potential problem nonetheless: if the caller passes a destination buffer that contains a string greater than the passed in size of the destination buffer (which is senseless at it means the buffer is already overflowed), we write the full length of src, which could overflow dst. This change makes our fsl_strlcat() implementation behave the same as OpenBSD's strlcat(3) in testing. check-in: f2676cbcc2 user: mark tags: trunk
2022-11-14
06:00
Convert an assertion in fsl_annotate() into a proper error check. Triggered by an unclean build misbehaving. check-in: 58e7f6d7bf user: stephan tags: trunk
2022-11-12
09:45
Update some old appendf.c return semantics to the newer semantics. check-in: 0a13ca28c8 user: stephan tags: trunk
2022-10-18
13:50
Merge in trunk. Leaf check-in: 24a840f9cf user: stephan tags: dev-blame-ignore
2022-09-26
16:46
Removed some stray debug output. check-in: 1da9baf2b7 user: stephan tags: trunk
2022-09-15
07:14
f-merge: perform autosync-pull before merging. check-in: 10bedd2e61 user: stephan tags: trunk
2022-09-04
11:50
Latest upstream fnc. check-in: 267e51c927 user: stephan tags: trunk
2022-08-22
13:56
Corrected fsl_repo_zip_sym_to_filename() to honor the +x bit on in-repo files. Tweaked an unrelated TODO comment. check-in: cf41980877 user: stephan tags: trunk
2022-08-12
15:44
Compile fix for compilers which default enums to unsigned (gcc 11.2, apparently). check-in: 26a60721cd user: stephan tags: trunk
2022-08-10
09:25
f-rename now defaults the -mv flag to true if the app is invoked as f-mv or f-move. check-in: 99eed85229 user: stephan tags: trunk
2022-08-08
05:31
Squelched an arguably valid variadic function warning from clang 14. check-in: 35723c0bd1 user: stephan tags: trunk
2022-07-31
22:52
More generic internal cleanups. Removed undocumented -VV -VVV flags from fcli. check-in: 0df1833ab6 user: stephan tags: trunk
22:16
Merged in buffer-errcode branch with the hope of simplifying certain fsl_buffer usages. check-in: a76f8946f6 user: stephan tags: trunk
22:15
Generic internal cleanups. Closed-Leaf check-in: 1dffe8bdb0 user: stephan tags: buffer-errcode
21:16
Removed some extraneous is-NULL checks. Minor internal cleanups in error reporting. check-in: 53f847261b user: stephan tags: buffer-errcode
21:03
Make more use of fsl_buffer::errCode semantics. Make sure the fsl_error APIs ignore those semanics where necessary. check-in: 5049f44945 user: stephan tags: buffer-errcode
20:29
Initial work on fsl_buffer::errCode, for propagating buffer-API error codes to simplify (primarily) series of append operations such that we do not have to check for an OOM error until the end of the series. Essentially works but more testing and making use of it in the core API is needed. check-in: b5a98f8a9e user: stephan tags: buffer-errcode
20:29
f-ci: when -b BRANCH is supplied, skip the would-fork check, else it can lead to a would-fork error when trying to check in to a new branch from anywhere other than the tip. check-in: 16eb245dd4 user: stephan tags: trunk
2022-07-20
10:18
f-rm: added --rm as an alias for --unlink, for symmetry with f-rename --mv. Corrected help text for fcli's --lib-version flag. check-in: fe30de82c8 user: stephan tags: trunk
2022-07-06
07:34
Minor doc tweaks in autosetup code. check-in: 5527e4ca39 user: stephan tags: trunk
2022-07-03
08:11
Fixed broken like-clause formatting introduced in [b33abe472b58] (percent sign needed to be doubled). Fixes remote-host check in fcli_sync(). Unrelated minor formatting tweaks. check-in: b6df9a0845 user: stephan tags: trunk
2022-07-02
07:47
fcli_sync() is now a no-op if the repo config contains no 'syncwith:...' entries (avoids an error when doing initial checkin on a new repo with f-ci). When f-ci is checking in to a repo which has no commits, it now defaults the branch to trunk if no branch name is provided. It proviously left off the branch tags altogether, leading to a branchless checkin (harmless but confusing). check-in: b33abe472b user: stephan tags: trunk
2022-06-27
08:59
Replaced the fallthrough __attribute__ with a more portable macro. Added an #ifdef check for __unused, as my compiler (clang 10) doesn't know it. check-in: ed4d246451 user: stephan tags: trunk
08:58
Fixed auto.def's reading of ./manifest (to fish out the timestamp) to skip over the optional B-card in the manifest. check-in: be3deb1f28 user: stephan tags: trunk
08:53
__attribute__ gets (both) its wings check-in: d9f04ab3d2 user: bch tags: trunk
07:18
Tag ("(void)var;", or "__unused") vars that are not used, tag switch/case fallthroughs w/ __attribute ((fallthrough)); check-in: 73ee02a8fe user: bch tags: trunk
07:12
Complete struct initialization. check-in: 5a46f26b1c user: bch tags: trunk
07:06
Remove assertion that is true by definition. An unsigned int is always >= 0. check-in: 549008b363 user: bch tags: trunk
07:03
Make sure that #defines for prototypical "empty" structs are complete. check-in: 029c225df6 user: bch tags: trunk
2022-06-25
19:10
Updated sqlite3 to 3.39.0. check-in: a37ccdd6f3 user: stephan tags: trunk
2022-06-19
20:13
f-remove: if a stat() fails while using the -u (unlink) flag, reset the error state to keep that unimportant error from propagating up through to main(). check-in: 2da3406516 user: stephan tags: trunk
2022-06-11
13:05
Expanded the label for the 'no common ancestor found' case in f-merge's legend, to indicate that it refers to new content rateher than a genuine conflict, but probably need to find a different merge state code for that case check-in: bbb7322a75 user: stephan tags: trunk
12:49
f-merge now unconditionally shows the symbolic name legend if any files are modified by the merge. TODO: figure out how we can make the 'no common ancestor found' report for new merged-in files less scary. check-in: 8ba74c252f user: stephan tags: trunk
2022-06-09
04:10
Set transient helpRequested flag in the fcli singleton. If the client has requested help (cf. [/file?ci=tip&name=src/cli.c&ln=966]) with, for example. 'prog cmd help' set this flag. check-in: 6e9726df51 user: mark tags: trunk
00:23
Added missing handling of (--format debug) in f-vdiff. Added a reference to ticket [746ebbe86c20b5c0f96] regarding the issue of adjacent diff chunks getting a superfluous separator. check-in: 9cee12cf17 user: stephan tags: trunk
2022-06-06
06:08
Converted an assertion to a proper error check. Triggered when trying to fetch the checkout version from a checkout where the repo db is not accessible. check-in: eeb3a1b2af user: stephan tags: trunk
05:58
Imported latest upstream fnc. check-in: 936e886f1c user: stephan tags: trunk
2022-05-17
11:00
Removed some dead #includes. check-in: 307d440da4 user: stephan tags: trunk
10:56
Added a 3rd-party drop-in impl for the missing dirent.h-related APIs for Windows builds. Many thanks to Daniel D. for finding this. check-in: 7dadc3b2bc user: stephan tags: trunk
10:37
Removed use of a VLA in appendf.c because C11 makes that feature optional and MSVC does not implement it. check-in: f913a0611c user: stephan tags: trunk
2022-05-14
07:50
Ported over Windows impl of fsl_config_global_preferred_name(), but it's untested (even for compilability) for lack of a Windows intallation. check-in: 46ffac840d user: stephan tags: trunk
2022-05-12
10:37
Merged in trunk. check-in: 1ba4514284 user: stephan tags: dev-blame-ignore
08:44
Adapted [fossil:32b11546c830e328 | upstream 32b11546c830e328] so that f-timeline's -b BRANCH flag now includes branch-specific wiki pages in its results. check-in: 31e5cc636e user: stephan tags: trunk
08:38
Pulled in sqlite3 3.39. check-in: ea6ff4fd5f user: stephan tags: trunk
2022-05-03
16:26
Upstream patch [fossil:1bf6686e76252efd | 1bf6686e76252efd] which corrects the int type used for zlib's crc32(). check-in: 4f4c058ba3 user: stephan tags: trunk
03:32
Updated builtin sqlite3 to 3.38.3. check-in: dfc693fdb8 user: stephan tags: trunk
2022-04-29
16:28
Fixed semi-broken decls in f-wiki's fcli_command callbacks. check-in: 2930c121e0 user: stephan tags: trunk
2022-04-21
10:58
Ported in [fossil:c92fb60ba9e1829a], which adds the "start:" prefix option for fsl_sym_to_rid() lookups. check-in: bfd34748e6 user: stephan tags: trunk
2022-04-14
05:06
Fixed a segfault in f-ci and f-update caused by variadic args misuse. check-in: 3f43f99441 user: stephan tags: trunk
2022-04-11
03:17
fsl_rc_cstr() now returns NULL, instead of a dummy string, if passed an unknown result code. This change is based on experience in another source tree where we use an identical API, and will eventually permit client code to install a fallback handler to provide its owns strings for unknown-to-libf codes. check-in: fcb01c8788 user: stephan tags: trunk
03:07
f-ci now attempts to prohibit checkins to non-leaf versions and adds the --fork flag to bypass that check. Added FSL_RC_WOULD_FORK because no other existing result code seems appropriate for reporting this case. check-in: b8c029741a user: stephan tags: trunk
2022-04-10
04:57
Reversed a bit of double-negative logic in fsl__deck_F_seek_base(). check-in: b13966c8ce user: stephan tags: trunk
00:17
Reimplemented fcli_sync() with a more flexible interface, including the ability to suppress the system()'d command's output, so fnc can potentially use this without hosing the screen state. f-update now does a pull-sync before updating if autosync is on. check-in: 0afca69968 user: stephan tags: trunk
2022-04-09
21:50
Added an f-sanity test for the FSL_RC_LOCKED case of fcli_sync(). check-in: dcadf02e6c user: stephan tags: trunk
21:36
Moved the internal fsl_cx cache-clearing to the public fsl_cx_caches_reset() so that it can be used like fcli does (after shelling out an external app which might change the db). Fixed a deck F-card search bug introduced by the cache reset (thank goodness an existing unit test tripped over that). check-in: 84154036a0 user: stephan tags: trunk
08:19
Taught fcli_sync() to fail with the new FSL_RC_LOCKED code if a transaction is opened, as remote sync cannot succeed in that case due to the libf client holding a transaction open (i.e. a write lock). check-in: 3be18124f5 user: stephan tags: trunk
08:08
f-ci now uses fossil(1) for autosync support. Kinda backwards, but it's a usability improvement. It honors both the fcli.autosync boolean setting and fossil's autosync, prefering the former. check-in: 44fcc2f7aa user: stephan tags: trunk
07:41
Ported fsl_system() from fossil and added fcli_sync(). check-in: 5fb49bf7c4 user: stephan tags: trunk
06:51
Fixed some symbol names introduced via copy/paste porting. check-in: 9861bd2474 user: stephan tags: trunk
06:49
Ported in infrastructure for tokenizing PATH-style strings, added fsl_pathfinder_split() to quickly populate a fsl_pathfinder() from path strings, and added fcli_fossil_binary() to find the system's fossil binary. check-in: f15f9d8414 user: stephan tags: trunk
2022-04-06
12:10
Swapped two lines to fix a potential mis-rollback in fsl_ckout_rename(). check-in: 5e640a2f89 user: stephan tags: trunk
2022-04-03
16:17
Fixed a bug in fsl_ckout_rename() where one part of the vfile table update was missing, triggering an assert in f-vdiff after a rename. Now, after all these years, i have come to understand why Richard chose to (update vfile set origname=pathname where origname is NULL). Always thought that was an odd design decision, but now grasp what its purpose is. check-in: 7cc1faa141 user: stephan tags: trunk
2022-04-02
08:59
Expanded an assert() in f-vdiff which revealed what might be a bug in/via f-rename. check-in: daa08e411b user: stephan tags: trunk
2022-04-01
09:38
Latest upstream fnc. check-in: 3876fab927 user: stephan tags: trunk
2022-03-26
15:04
ncurses diff view: treat a NUL byte input as a 'q' (quit) to work around the problem that (cat /dev/zero | f-vdiff -f n) hangs the app entirely. Reported by Mark in /chat. check-in: 8683c5b248 user: stephan tags: trunk
2022-03-16
12:52
Latest upstream fnc. check-in: 3c54972833 user: stephan tags: trunk
2022-03-10
12:27
Fixed a compiler warning triggered on an Alpine Linux build. check-in: 6f8334af0b user: stephan tags: trunk
08:02
Upstream fnc [fnc:a97a6075b8099b662]. check-in: 6417598cf2 user: stephan tags: trunk
04:50
Minor constness tweaks and removed a superfluous NULL arg check. check-in: 420a8985e1 user: stephan tags: trunk
03:38
For the fsl_ckout_rename()-related bits, rename the fsMvFile option to doFsMv. check-in: b85863a91d user: stephan tags: trunk
2022-03-09
04:04
Completely reimplemented fsl_ckout_rename() using fossil(1)'s impl as a basis. The code is now arguably more legible and is more behavior-compatible with fossil. check-in: bc7bfb06e3 user: stephan tags: trunk
2022-03-08
23:22
Ported in [fossil:5e34c9982858163d | upstream patch 5e34c9982858163d]. check-in: 4e6d851edd user: stephan tags: trunk
07:07
Refactored fsl_ckout_rename() to use an options object and callback. Discovered a discrepancy in how renames are handled compared to fossil(1) when the source is a single dir name: fossil includes that dir name in the target whereas we do not. That might be subject to change, pending /chat discussions. check-in: 80c84abba6 user: stephan tags: trunk
07:00
Removed some dead code. check-in: ded6e51294 user: stephan tags: trunk
07:00
Do not clear fsl_cx error state in fsl__ckout_version_fetch(), as that can lead to a rollback eliminating any pending error message. check-in: 0a11ddd8bc user: stephan tags: trunk
05:46
Added f-rename. This impl revealed how/why fsl_ckout_rename() needs to be refactored to take a callback for reporting exactly which files get renamed, but that will have to wait until the muse strikes. check-in: ef1ceb0a0c user: stephan tags: trunk
05:03
Initial (somewhat unsightly) impl of refactoring fsl_ckout_rename() to be able to handle origin filenames which are SCM-known directories. i.e. fsl_ckout_rename() can now move directory foo/bar, recursively, to a new directory. check-in: 52318ca911 user: stephan tags: trunk
04:49
Added long-missing client/GNUmakefile. check-in: afed3698bb user: stephan tags: trunk
2022-03-07
01:44
Added fsl_ckout_rename_revert() and unit tests. check-in: aa34eddd93 user: stephan tags: trunk
01:09
Changed semantics of fsl_db_get_buffer() to _append_ to the target buffer instead of replacing its contents, as that's generally more often the capability i want and the old semantics simply require calling fsl_buffer_reuse() on the target first. check-in: 27f4feac07 user: stephan tags: trunk
2022-03-05
11:18
Latest upstream fnc. check-in: 818307debb user: stephan tags: trunk
10:09
Added fsl_ckout_rename(), the core impl of a rename/move operation for SCM-managed files. check-in: 4d2e43a8f6 user: stephan tags: trunk
10:08
Added protection against a corner-case condition to the previous checkin. check-in: fdebf174bb user: stephan tags: trunk
10:02
When a fossil-managed db handle does a rollback, reload the cached ckout version state, else it can get out of sync. This is an age-old bug, but was just discovered when it broke some new f-sanity tests. check-in: a0f3423462 user: stephan tags: trunk
2022-03-04
16:14
Ported over Daniel D's root:XYZ tag lookup performance improvements from [fossil:/timeline?r=start-of-branch-cte]. check-in: 51863fd402 user: stephan tags: trunk
05:37
Latest upstream fnc. check-in: 1f0c719961 user: stephan tags: trunk
2022-02-26
22:47
Latest upstream fnc.c check-in: 8520337095 user: stephan tags: trunk
21:01
Re-enabled the historical 'touch' feature of mkcdep.c to work around some otherwise weak deps handling when headers change. On the one hand, this improves rebuilding for header changes. On the other, it causes the deps files to get rebuilt twice in a row at times. check-in: d8a6b8d0c6 user: stephan tags: trunk
2022-02-24
11:19
mkcdep.c no longer adds "." to the -I path by default because that backfires with generation of the amalgamation header, causing a circular dep because the amalgamation header shares a name with a non-amalgamation header. check-in: f59415334b user: stephan tags: trunk
2022-02-18
16:36
Back-ported [fossil:868d1608382a9bb1] for (cosmetic) diff alignment improvements. check-in: 57f6086d58 user: stephan tags: trunk
16:25
Improved the big/little-endian detection in mkcdep.c by taking advantage of a gcc-ism which exists for that purposes. check-in: 59dea46ad9 user: stephan tags: trunk
2022-02-15
14:46
As per Stephan's suggestion in /chat, pluralise ignoreRid(s). check-in: 36b2799c8e user: mark tags: dev-blame-ignore
14:33
Enable ignoring specific commits when annotating file. Add flag to annotate options struct to ignore all merge commits. Similarly, provide array to assign rid values of specific versions to ignore specified commits. If either are set, any changed lines from the ignored version(s) will be annotated from the previous commit in the file history. check-in: 79fd090adb user: mark tags: dev-blame-ignore
2022-02-14
10:06
Replaced broken big-/little-endian determination in mkcdep.c. check-in: e71174b745 user: stephan tags: trunk
2022-02-05
05:37
fsl_foci() now uses the fsl_cx instance associated with its db handle instead of fetching it from fcli. check-in: 746d6bb38a user: stephan tags: trunk
05:04
Expanded the foci docs a bit. check-in: df374a82ef user: stephan tags: trunk
04:51
Merged in wip-foci branch, a straight port of fossil's files_of_checkin sqlite virtual table. check-in: b78e11a588 user: stephan tags: trunk
04:45
Got foci working and added a basic test for it in f-sanity.c. Closed-Leaf check-in: c33ddf9c91 user: stephan tags: wip-foci
2022-02-04
14:22
Initial port of Fossil's files-of-checkin (foci) vtable. First pass of porting fossil(1) src/foci.c to libfossil; it's pretty much a 1:1 port using libf's ADTs. This builds, but the implementation isn't used anywhere so that's not a surprise. There is no test yet either, so branching this for further review. check-in: 677d51061d user: mark tags: wip-foci
2022-01-30
13:50
Documented a bug/shortcoming in f-vdiff. check-in: 725861fdf6 user: stephan tags: trunk
2022-01-27
14:42
Re-did C dependencies generation to use tools/mkcdep.c instead of GCC. MUCH faster and less kludgy. check-in: 236c0f8864 user: stephan tags: trunk
13:02
Latest upstream fnc. check-in: e7795f680c user: stephan tags: trunk
10:08
Removed some dead code from wh-common.tcl. check-in: 74d87e19f4 user: stephan tags: trunk
2022-01-26
18:04
Corrected an argument type in fsl_branch_of_rid() which broke variadic arg handling in that function on platforms where fsl_int_t and fsl_id_t are different sizes. check-in: bcbfb21894 user: stephan tags: trunk
2022-01-24
07:17
Corrected f-vdiff's file-mtime checks of local-checkout files to canonicalize the filename so that it works when called from a subdir of the checkout. check-in: 4da4e6a3f4 user: stephan tags: trunk
03:44
Ported in upstream [fossil:8cd73dda3d10ff143740] diff generation tweaks. check-in: 75349fc193 user: stephan tags: trunk
2022-01-23
18:58
Removed duplicate docs for fsl__diff_optimize(). check-in: d8d1bc92a4 user: stephan tags: trunk
18:57
Now that the v1 diff code is gone, consolidated diff.c/diff2.c into diff.c and moved the dibu-specific code into the new dibu.c. That required exposing fsl__diff_optimize() via internal.h so that fnc.c can see it. (Edit: in hindsight, should have renamed diff2.c to dibu.c since most of diff2.c was dibu stuff. Oh, well.) check-in: 2cca86d9a0 user: stephan tags: trunk
13:47
Fixed a segfault introduced two checkins back in [5e12e2134b76]. check-in: a8853a173b user: stephan tags: trunk
13:43
Minor cleanup to the previous checkin. Fixed TK-format output to be syntactically correct for a no-diff run. check-in: 354f81fd5c user: stephan tags: trunk
13:19
f-vdiff can now catch and report renames when the rename is part of the local checkout's state. Code-adjacent constness tweaks. Edit: FIXME: discovered later that this fails when the diff is run from anywhere but the top checkout dir. check-in: 5e12e2134b user: stephan tags: trunk
12:03
Ported in the non-debug-output part of upstream [fossil:9aaefcfd0a8746b63bad]. check-in: d58a4b6237 user: stephan tags: trunk
11:24
Minor internal doc tweaks. check-in: 12c9022cbb user: stephan tags: trunk
08:57
Ported in upstream diff changes [fossil:fbdbc09b402b19de] and [fossil:c311efef078c8733]. Diffing still seems to work. check-in: 93f03cf9ee user: stephan tags: trunk
2022-01-22
18:08
Upstream diff fix [fossil:44b6f128453b35039bc2]. check-in: 6725e728d4 user: stephan tags: trunk
18:02
Ported in upstream incremental diff tweaks from [fossil:f6112b93e9bbb7e37f24] except that many of the const removal changes are unnecessary and weren't ported. Made fsl_dibu::opt const. Probably should have waited to see if these will be trunked in fossil before going down this rabbit hole. check-in: 01225604ab user: stephan tags: trunk
14:27
Removed the disabled, and fundamentally flawed, attempt at catching renames in f-vdiff. check-in: 4866db6ef5 user: stephan tags: trunk
14:26
Ported in upstream diff patch [fossil:2dad4158dbf0d92b]. check-in: 5492222b8e user: stephan tags: trunk
2022-01-20
17:47
Workaround for the Excessively Massive Diff bug (in f-vdiff, not the library) by reporting renames as an add/remove pair. Make the default split-mode diff content column widths wide enough for f-vdiff's current handling of how adds/removes are reported. check-in: 1960fea37a user: stephan tags: trunk
16:34
Latest upstream fnc, which moves the former v1 libf diff code into fnc. check-in: ed78994d64 user: stephan tags: trunk
15:55
Merged in rm-diff-v1. This will currently only build when using the --no-fnc configure flag, pending Mark trunking his related fnc changes, at which point that updated fnc will be pulled into this tree. Recursive relationships are tricky sometimes. check-in: 74d90fcdd8 user: stephan tags: trunk
15:53
auto.def: distinguish between the --no-fnc flag and "don't use ncurses at all" so that the ncurses-based diff view can be built when fnc is disabled. check-in: eb5e8319b3 user: stephan tags: trunk
09:38
Replace calls to the deprecated fsl_ckout_close(f) routine. Replace with fsl_close_scm_dbs(f). check-in: f876a65bef user: mark tags: trunk
08:54
Remove deprecated diff v1 code as per /chat discussion. This removes all exclusive diff v1 library routines and data types in preparation for importing this implementation into fnc as per chat with Stephan. It is on a branch pending review in case any bits were missed or incorrectly purged. Closed-Leaf check-in: dbf0fb30dd user: mark tags: rm-diff-v1
2022-01-16
07:40
speeling check-in: a9b499a8de user: bch tags: trunk
06:44
f-vdiff now actively checks whether it's being asked to diff ostensibly binary content and refuses to do so. check-in: 47413486d0 user: stephan tags: trunk
05:04
Re-added subdir-inc.make (it's used by doxygen build). Updated a path to account for new hoster. check-in: 12e08213af user: stephan tags: trunk
2022-01-12
04:46
Added another test for fsl_tkt_id_to_rids(). check-in: a8d5615853 user: stephan tags: trunk
03:36
Initialized a couple vars which gcc 11 now incorrectly reports as possibly uninitialized. Sigh. check-in: 19607914ca user: stephan tags: trunk
2022-01-08
05:45
Per /chat discussion, changed semantics of fsl_tkt_id_to_rids() to be able to handle an unambiguous ticket ID prefix. check-in: 2bdb6c668f user: stephan tags: trunk
03:56
Replaced the fundamentally flawed fsl_tkt_id_to_blob() with fsl_tkt_id_to_rids(). check-in: 7b2cbb1669 user: stephan tags: trunk
2022-01-07
23:40
Added fsl_deck_foreach(). check-in: 0741f4d194 user: stephan tags: trunk
19:06
Added fsl_tkt_id_to_blob() for Brad. check-in: 7d64642d36 user: stephan tags: trunk
10:47
difftk.tcl: increased default width of line number columns. Inexplicably, using this exact same code from fossil expands the columns dynamically but this implementation is not doing so. Disabled {} around f-vdiff TCL output except in tk mode, for compatibility with fossil's (diff -tcl) output. check-in: 37b6d8e11f user: stephan tags: trunk
06:28
typo check-in: d069d8d19f user: bch tags: trunk
06:28
reference fsl_deck_C_set() in comment-notes check-in: 70abc44543 user: bch tags: trunk
2022-01-04
22:02
Added fsl_randomness(). Changed fsl_deck_K_set() semantics such that a NULL ticket ID is interpreted as a new (random) ID. check-in: 896ea2a01b user: stephan tags: trunk
21:38
Replaced a couple remaining char-as-bool references with bool. check-in: 1ac20eeb41 user: stephan tags: trunk
17:15
Merged in inadvertent fork [fc8fb3a392]. check-in: 9259168d71 user: stephan tags: trunk
17:01
Latest upstream fnc. check-in: 1bdf40e928 user: stephan tags: trunk
17:00
Experimentally applied the "small gap patch" to eliminate the so-called "lineno behavior" in the diff engine. See the copious comments in diff2.c for details. check-in: 2872db4659 user: stephan tags: trunk
04:54
Corrected a newly-broken dependency on a newly-private API. check-in: fc8fb3a392 user: stephan tags: trunk
03:51
Corrected the no-diff display case in the ncurses diff view. Minor doc and constness tweaks. check-in: e358ca5350 user: stephan tags: trunk
03:08
ncurses diff view: add keybindings to jump to next/previous file in the diff list. check-in: aa723e9a15 user: stephan tags: trunk
00:44
Minor doc tweaks. check-in: a7861ad0da user: stephan tags: trunk
2022-01-03
22:46
More minor cleanups in the ncurses-related bits. check-in: 1332923f62 user: stephan tags: trunk
22:27
Moved ncurses screen init/shutdown out of f-vdiff and into the the ncurses diff builder's start()/finally() methods. Cleaned up the ncurses-related public API, making most of it private. check-in: 1c19687346 user: stephan tags: trunk
21:30
Renamed fsl_diff_opt to fsl_dibu_opt in fnc.c. check-in: ef858ebe4f user: stephan tags: trunk
21:16
Renamed fsl_diff_opt to fsl_dibu_opt. Moved dibu-type-specific flags out of the FSL_DIFF2_ flags and into the new FSL_DIBU_ flags. Added fsl_dibu::pimplFlags, which are implementation-private flags distinct from fsl_dibu::implFlags, the latter now being the place to apply FSL_DIBU_ flags. check-in: be968bbac7 user: stephan tags: trunk
19:42
Improved, but not perfected, f-vdiff's ability to report add/remove/rename in a dibu-friendly way (instead of via f_out(), which is incompatible with the ncurses and tcl dibus). check-in: 096b759623 user: stephan tags: trunk
19:41
Added file hashes to the file index lines in the ncurses unified-ish diff view. check-in: 6e33c8e83c user: stephan tags: trunk
19:39
Minor tinkering in as-yet-unused fsl_popen2(). check-in: 03868ff9d2 user: stephan tags: trunk
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. check-in: a7de183cd0 user: stephan tags: trunk
17:21
Ported in fossil's diff -tk script bits and implemented (f-vdiff --format tk) but the output currently goes to stdout instead of launching tclsh. The TCL dibu can optionally include the TK bits or not, depending on its flags. check-in: 82bf08414f user: stephan tags: trunk
16:39
Minor build reorgs as part of integrating (fossil diff -tk)-ish feature. check-in: 574b521a2b user: stephan tags: trunk
2022-01-02
16:10
Minor doc updates and code reformatting. check-in: 707fecabb9 user: stephan tags: trunk
15:50
Removed a stray failed experiment from the previous checkin. check-in: dd432df69f user: stephan tags: trunk
15:18
ncurses unified-ish diff view: implemented delete/insertion pair collapsing and made the colors configurable (more or less). check-in: ca112741c9 user: stephan tags: trunk
01:19
Removed long-unmaintained f-apps/test.c. check-in: 72b398779b user: stephan tags: trunk
00:32
Added FSL_OMIT_DEPRECATED #define to cause the deprecated APIs to be elided. Got core lib building that way. Removed FSL_EXPORT from functions declared in deprecated.h. check-in: b7046bf39b user: stephan tags: trunk
2022-01-01
15:07
Latest upstream fnc client. check-in: cdbcddb1a1 user: stephan tags: trunk
15:05
Reorganized (again) fsl_cx db handle management to eliminate the middle-man temp/in-memory db. check-in: a23126bc9f user: stephan tags: trunk
15:01
Fixed a bogus assert in f-open.c. Closed-Leaf check-in: dcdaea2f1b user: stephan tags: cx-db-handle-reorg-redux
14:58
More work on the db handle redux. Seems to work okay. check-in: 71f5f09817 user: stephan tags: cx-db-handle-reorg-redux
14:15
Fixed a require.s2 module broken by db handle refactoring. check-in: 44fae8d76f user: stephan tags: cx-db-handle-reorg-redux
14:12
s2 bindings: updated a test which can fail when running from a branch. Fixed a broken attempt to copy a NULL buffer trigered by that failing test. check-in: bc3c7b1737 user: stephan tags: cx-db-handle-reorg-redux
13:34
fsl_cx db handle reorg redux, step one. Significantly simplifies how dbs are closed, always treating them as an inseparable pair. Basic sanity checks pass, but more testing is needed and lots of docs to update. check-in: fa7c56d0ca user: stephan tags: cx-db-handle-reorg-redux
11:15
Renaming of some internal fsl_xyz... APIs to fsl__xyz... (two underscores). Minor constness tweaks. check-in: 736abef2cc user: stephan tags: trunk
10:53
fsl_db_open() no longer automatically applies the create-if-not-exists flag to in-memory or anonymous temp dbs, as this was at the root of a great deal of confusion the past 24 hours. Documented the propagation behaviour of the CREATE flag from an OPEN'd db to other dbs ATTACHed via that handle. See [https://sqlite.org/forum/forumpost/76963f0026b6b12a], and its top-level post, for more details. check-in: ac15c8d1d4 user: stephan tags: trunk
02:03
Minor cleanups in the fsl_db API. Updated fsl_db SQL tracing to the sqlite3_trace_v2() API. check-in: 89e932ce1a user: stephan tags: trunk
01:13
More cleanups moving towards taking another whack at the fsl_cx db handle reorg. Added a test case to f-sanity.c demonstrating the ATTACH-cannot-create error (whereas the sqlite3 shell can create new files that way). check-in: 51d4b05f5c user: stephan tags: trunk
2021-12-31
22:19
Ported over more general-purposes pieces from the cx-db-handle-reorg branch in prep for taking a fresh whack at that. check-in: 39645644a7 user: stephan tags: trunk
21:54
Cherrypicked [6f2027aeb4], [74964a09a5], and part of [d290f6375c]. check-in: 211eaecfcf user: stephan tags: trunk
21:36
Cherrypicked [74964a09a5] (doxygen tag fix). check-in: 326482e519 user: stephan tags: trunk
21:34
Cherrypicked [6e8b5b6677] (f-test-ciwoco Makefile.in reference fix). <s>(But, interestingly, it didn't show up as a cherrypick merge because i made multiple individual commits and the first one cleared the vmerge state. Hmmm.)</s> Edit: actually, the cherrypick happened, and was correctly recorded, in [f3a4ba9472]. This checkin was completely empty and should not have gone through. Hmm. check-in: 31cc119d75 user: stephan tags: trunk
21:33
Removed old/unused bindings/Makefile.in. check-in: 8632822dd0 user: stephan tags: trunk
21:33
f-merge now defaults to wet-run mode. check-in: f3a4ba9472 user: stephan tags: trunk
21:30
Extended fsl__cx_attach_role() to be able to create a new db if needed (required for fsl_repo_create()) but (regardless of this change) discovered that ATTACH, when run through the new fsl_cx::dbMain handle, can no longer create new db files, which means that f-open cannot create a checkout. COMPLETELY stumped as to why that is. Edit: closing because this branch is failing in inexplicable ways and has a horrid mix of branch-relevant and branch-irrelevant changes. Pulling in the branch-irrelevant ones separately into trunk before taking another whack at the branch-relevant ones. Closed-Leaf check-in: a67b757dc0 user: stephan tags: cx-db-handle-reorg
21:26
Corrected recently-broken Makefile.in references in f-test-ciwoco. check-in: 6e8b5b6677 user: stephan tags: cx-db-handle-reorg
15:57
Reorganized fsl_cx-internal DB handles, eliminating the in-memory/temp main db and (once again) using the first of the repo/checkout which is opened as the main db. Seems to work okay but some fallout would not be terribly surprising. (Edit: moving back to cx-db-handle-reorg because of new, inexplicable inability to create checkout db via ATTACH.) check-in: 46656edc7e user: stephan tags: cx-db-handle-reorg
15:50
Corrected names of several @file doxygen tags. check-in: 74964a09a5 user: stephan tags: cx-db-handle-reorg
15:48
Doc updates. Moved all @deprecated functions into fossil-scm/deprecated.h for later weeding-out. check-in: 6f2027aeb4 user: stephan tags: cx-db-handle-reorg
15:10
Renamed fsl_db_role_label() to fsl_db_role_name(). Doc touchups related to the db handle restructuring. check-in: d290f6375c user: stephan tags: cx-db-handle-reorg
15:08
Removed old/unused bindings/Makefile.in. check-in: 6409509264 user: stephan tags: cx-db-handle-reorg
15:00
fsl_ckout_open_dir() now treats a NULL dir name as ".". Updated C++ and s2 bindings for the new db changes. check-in: 05c1da0fb0 user: stephan tags: cx-db-handle-reorg
13:47
fsl_buffer_external() may now be passed a populated buffer, clearing it before re-initializing it. check-in: 9626c2acf6 user: stephan tags: trunk
13:34
Removed hard-coding of main db journal_mode=WAL for the time being. We might want to set it depending on which db is main (WAL for repo, TRUNCATE or DELETE for checkout?). Or we might want to leave it alone entirely. check-in: 09287e3d13 user: stephan tags: cx-db-handle-reorg
13:29
Eliminated fsl_cx::dbMem in-memory/temp db and (again) use the first of the repo/ckout dbs which is opened as the MAIN db (aliasing it to its well-defined libf schema name). This has a high potential for fallout, so it's in a branch pending more thorough testing. check-in: aebf241ab5 user: stephan tags: cx-db-handle-reorg
2021-12-30
13:52
Removed some debug output added by the previous checkin. check-in: 75eab853b5 user: stephan tags: trunk
13:49
Global config db now uses its own fsl_db handle, no longer ATTACHed with the repo/checkout handle. fsl_ckout_open_dir() now canonicalizes the passed-in directory name (simplifies usage). Added f-query -g/--config flag to query against the global config db. Various code-adjacent tweaks. check-in: 1d7a6d2b96 user: stephan tags: trunk
05:37
Replaced f-apps fcli_setup() calls with fcli_setup_v2(). check-in: 313b59841e user: stephan tags: trunk
05:06
Unified-mode diff builder: reformat runs of delete/insert pairs from a series of D/I/D/I... lines to DD.../II..., like fossil does. check-in: 8752aca1b7 user: stephan tags: trunk
2021-12-29
23:08
Added missing commas in JSON diff builder Edit record output. check-in: 257ae0b684 user: stephan tags: trunk
22:58
Add backspace and form-feed to the characters escaped in the previous commit. check-in: ae8e038bdb user: stephan tags: trunk
22:49
appendf json formatting: emit tabs as \t instead of \u0009. check-in: 50ebe24a14 user: stephan tags: trunk
03:08
f-viff --save-format now also saves/restores the --line-numbers flag, if set. check-in: fbbbdfe556 user: stephan tags: trunk
2021-12-28
20:32
ncurses unified diff: line number columns now size dynamically to fit their digits. check-in: 4883bff8f7 user: stephan tags: trunk
14:48
Partial workaroud for the adjacent-code-block cosmetic issue in the unified text diff builder, eliminating an extraneous separator line. It only applies when using line numbers (so not technically unified diff), but the problem is less glaring now. check-in: 08fdbacefa user: stephan tags: trunk
2021-12-27
22:34
Added line number support to the ncurses unified-ish diff view. check-in: 962200c936 user: stephan tags: trunk
21:07
Corrected a rare corner case error check in the previous checkin. check-in: 5cccd60c7f user: stephan tags: trunk
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. check-in: 35dca27909 user: stephan tags: trunk
2021-12-26
13:45
Constness tweaks. check-in: 006fbfb455 user: stephan tags: trunk
2021-12-25
21:20
This time tapped save before checking in. check-in: 1c6b8edc69 user: stephan tags: trunk
21:19
Removed a resolved TODO comment. Added another comment about diffing of immediately-adjacent diff blocks. check-in: 6c943dc141 user: stephan tags: trunk
16:07
Help text typo and removed unnecessary header. check-in: 43601bc8ab user: stephan tags: trunk
2021-12-24
12:47
Refactoring and layout/navigation improvements in the unified-ish ncurses diff view. check-in: e76a139a12 user: stephan tags: trunk
2021-12-23
14:00
Fixed a bit of a braindead bug in the %s appendf specifier which caused exponential strlen counting on the fsl_diff_v2() internals. This went unnoticed until Mark fed it a huge diff and the diff time went from a small fraction of a second to a minute or more. check-in: c6b3279322 user: stephan tags: trunk
07:46
Added a missing result code check in fsl_cidiff(). Added --save-format flag to f-vdiff to tell it to persist the current diff format as its future default. check-in: d80e895807 user: stephan tags: trunk
07:14
Cleaned up non-undefined macros which broke the amalgamation build. check-in: 6ecdbab284 user: stephan tags: trunk
07:01
Added fsl_cidiff() API and f-test-cidiff test app. check-in: 1c6aeaf5ce user: stephan tags: trunk
03:57
Renamed fsl_diff_builder to fsl_dibu. Sounds nicer and the older name is annoyingly long when used as a namespace/prefix. check-in: e9ec078844 user: stephan tags: trunk
03:53
Diff format typo fix. check-in: 9fb6fae4f8 user: stephan tags: trunk
2021-12-22
13:41
Integrated the ncurses unified-ish build into f-vdiff. check-in: 644d551cb4 user: stephan tags: trunk
12:46
split the ncurses diff builder into its own source and header for eventual integration into f-vdiff and f-adiff. check-in: 84239c8219 user: stephan tags: trunk
10:14
Added optional fsl_diff_builder::finally() method and apply it in the ncurses diff builder to add an end-of-diffs marker at the bottom of the final file. check-in: 5ec5077ca0 user: stephan tags: trunk
09:32
Corrected max pad width calculation caused by swapped args. check-in: 2c2ab0cdb3 user: stephan tags: trunk
09:19
More tinkering with the ncurses diff builder. check-in: e67957a38f user: stephan tags: trunk
08:18
Squelched unused var warning. check-in: da7d9c722e user: stephan tags: trunk
08:15
Minor cleanups in the ncurses diff builder. Fixed an off-by-one width calculation. check-in: 4c34723bb7 user: stephan tags: trunk
07:50
ncurses diff builder ported to unified diff format and added horizontal scrolling. check-in: 6aad850343 user: stephan tags: trunk
05:59
ncurses diff: fixed displaced attributes on the top status line. check-in: 8e94a46455 user: stephan tags: trunk
05:53
ncurses diff builder: got basic vertical scrolling working. check-in: 95dbf8ebf9 user: stephan tags: trunk
04:51
Fixed some non-curses output when in curses mode. Added a please wait message at startup because it's awful slow on a pi zero. check-in: b4ff15d5bc user: stephan tags: trunk
04:30
Initial prototype/proof-of-concept for a diff builder which renders to an ncurses PAD. A stepping stone towards adding scrollable diffs to fnc. check-in: 7ee366de74 user: stephan tags: trunk
2021-12-21
22:10
fsl_ckout_manage() now silently skips any directories which appear to be nested checkouts. Extended fsl_dircrawl_f() callback semantics to support skipping recursion into a dir but continuing to dir-crawl. check-in: 3f48c073cf user: stephan tags: trunk
20:38
Corrected f-apps broken by previous checkin. check-in: 5427afd00d user: stephan tags: trunk
20:21
Removed the fossil- name prefix from include/fossil-scm/*.h. check-in: 43a9bea8d5 user: stephan tags: trunk
19:48
Build tweaks for the include/... bits. check-in: de1b5498cb user: stephan tags: trunk
19:43
Minor doc touchups. check-in: 344f51c014 user: stephan tags: trunk
15:18
Resolved a couple of semantics collisions between fsl_diff_flag_e and fsl_diff2_flag_e entries. check-in: 956162a6b1 user: stephan tags: trunk
14:54
Added fsl_ckout_dbnames() and fsl_is_top_of_ckout(), prompted by recent fossil forum traffic. check-in: 7a9a409695 user: stephan tags: trunk
14:17
The deps fix which [7fa0dff2747229ff] was supposed to be but, it turns out, wasn't. check-in: 7f9b8b4993 user: stephan tags: trunk
13:10
Expanded the fsl_ckout_manage() callback interface analog to the new fsl_ckout_unmanage() changes. check-in: c00159a925 user: stephan tags: trunk
12:44
f-rm now tries to non-fatally report, in verbose mode, if unlinking of a file fails. check-in: 88ebea4673 user: stephan tags: trunk
12:34
Expanded fsl_ckout_unmanage()'s callback interface to facilitate client-side unlinking of newly-unmanaged files. Added f-rm --unlink option. check-in: 9be228a605 user: stephan tags: trunk
12:32
Seem to have resolved a weird deps generation problem which causes build to fail. check-in: 7fa0dff274 user: stephan tags: trunk
12:16
Added missing f-apps/GNUmakefile. check-in: 054cb0a7bf user: stephan tags: trunk
08:28
Moved fossil-scm/fossil.h to ../libfossil.h so that client code can build from both the canonical tree and amalgamation using the same include name. check-in: 76d6359435 user: stephan tags: trunk
07:23
Removed 'undefine' calls from GNUmakefile because undefine doesn't work with gmake 3.81. check-in: 22315ea459 user: stephan tags: trunk
07:20
Removed now-broken reference to Makefile in auto.def. check-in: 1d29764382 user: stephan tags: trunk
06:58
Overhauled the build system to use (for the most part) a single top-level makefile, with each significant subdir in its own sub-makefile. This improves parallel buildability tremendously but doesn't gain much speed on a 4-core intel i3-based system. The doc/ and bindings/s2 dirs still use the older makefiles for the time being. check-in: 5c7c8ba69e user: stephan tags: trunk
06:54
Minor cleanups in the top-level makefile in prep for merge to trunk. Closed-Leaf check-in: 345150d88e user: stephan tags: toplevel-make
06:23
Renamed doc/Makefile to doc/GNUmakefile. check-in: 8abd9a209c user: stephan tags: toplevel-make
06:05
More cleanups in the top-level makefile and shakenmake. check-in: 4c4af00081 user: stephan tags: toplevel-make
05:45
Renamed the various stub Makefiles to GNUmakefile for consistency with the top-level makefile. check-in: d489b0a596 user: stephan tags: toplevel-make
05:32
More improvements in support of building/cleaning only the being-worked-on subdir. check-in: ac82ba5810 user: stephan tags: toplevel-make
04:26
Found a not-too-terrible way of enabling partial builds, provided they're run from the appropriate subdir. Fixed assertions in f-sanity caused by __FILE__ now resolving differently and the Makefiles being reorged. check-in: 2a32d4ba97 user: stephan tags: toplevel-make
00:33
Updated an out-of-date doc link. check-in: 25def58ee0 user: stephan tags: trunk
2021-12-20
23:21
Merged in 32-bit and install fixes from toplevel-make branch. check-in: 7decbe6cf4 user: stephan tags: trunk
23:17
Fixed install set decls to append to their list of files instead of overwrite. check-in: 3a8e26a80b user: stephan tags: toplevel-make
23:16
Fixed shakenmake handling of installation source names when they contain dir prefix parts. check-in: 6a4dd32662 user: stephan tags: toplevel-make
23:16
Fixed an int type error which only shows up on 32-bit builds. check-in: adb7e4dae8 user: stephan tags: toplevel-make
22:45
Ported in upstream diff fixes from [fossil:5bb01585bc8677ab15ef]. check-in: 0bee68c7c7 user: stephan tags: trunk
22:35
Added missing make-binding-cpp.make.in. check-in: 4a23bb3fe5 user: stephan tags: toplevel-make
22:33
Added a basic mechanism for limiting build to one make-XXX.make file. check-in: d124739301 user: stephan tags: toplevel-make
22:24
More work on the mega-build. Skipping the s2 bindings for the time being because that one is significantly more involved and may well be better served by a recursive make because of how its test suite works. check-in: d0cd398612 user: stephan tags: toplevel-make
22:07
Cherrypick [3987b62a030d] using f-merge. check-in: c2a2e453da user: stephan tags: trunk
22:06
Touchups to f-ci's handling of sym- tags to bring it mostly in line with fossil's checkin-level sym tag handling. check-in: 3987b62a03 user: stephan tags: toplevel-make
21:20
Migrated bindings/cpp to the mega-make build. check-in: 3277761427 user: stephan tags: toplevel-make
14:32
Migrated fnc to the top-level build process, which required going down a gcc deps-generation rabbit hole. check-in: ba9f18c3de user: stephan tags: toplevel-make
11:34
More work on the mega-make. Added a way for each sub-makefile to define its own set of cleanup files. check-in: 0839826b95 user: stephan tags: toplevel-make
11:07
Ported f-apps build into toplevel makefile. check-in: bfdddcd306 user: stephan tags: toplevel-make
10:05
Ooops: renamed GNUmakefile GNUmakefile.in. check-in: 229b2aa8e2 user: stephan tags: toplevel-make
09:41
Initial work on experimentally moving the subdir makes into a single top-level mega-makefile. check-in: 1542e54763 user: stephan tags: toplevel-make
09:24
Build file typo. check-in: e33e6441c8 user: stephan tags: trunk
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. check-in: 9886240dfc user: stephan tags: trunk
2021-12-16
16:05
Added a missing error check to f-ciwoco and removed a completed TODO reminder. check-in: 00170db3c2 user: stephan tags: trunk
2021-12-15
14:24
Minor doc and formatting tweaks. check-in: 8d1f232a1c user: stephan tags: trunk
14:22
Added missing fsl_looks_like_binary() impl and fixed a doc bug for that function. check-in: d76673a1a1 user: stephan tags: trunk
13:49
Bump _XOPEN_SOURCE from 500 to 700 for macOS builds. unistd.h functions readlink() and symlink() require _POSIX_C_SOURCE >= 200112L, which _XOPEN_SOURCE 700 provides. No noticeable impact on OpenBSD or Linux. check-in: 7c8cbd723a user: mark tags: trunk
12:47
Moved fsl_ckout_merge() code from f-test-merge.c to src/merge.c. Renamed f-test-merge.c to f-merge.c. Various touchups in f-merge. check-in: 661999bcc7 user: stephan tags: trunk
06:38
Internal tinkering with the debug diff builder for the sake of investigating what we'd need to do a rendered-to-ncurses diff builder. check-in: 0a5c3514c8 user: stephan tags: trunk
04:57
Moved a couple fsl_diff_builder internal APIs into the public interface in prep for potential use with an ncurses-based builder for use with fnc. check-in: c11e50d137 user: stephan tags: trunk
04:21
More work on merge and adjacent code. Changed how fsl__ckout_clear_merge_state() works to attempt to enable partial reset when individual to-be-merged files are reverted. Whether the corresponding SQL is 100% semantically correct for the vmerge state remains to be seen, but so far, so good. See [https://fossil-scm.org/forum/forumpost/f678085f79] for the discussion about those bits. check-in: 4d88f6cbd6 user: stephan tags: trunk
00:42
More work on the merge API. Time for work. check-in: 8fa60bfe38 user: stephan tags: trunk
2021-12-14
23:08
First-ever fsl_ckout_merge() test worked, but there's still lots of testing and client status callback support to add to fsl_ckout_merge(). Added vmerge state to f-status/fcli_chkout_show_info() output. check-in: 9e719cffc5 user: stephan tags: trunk
22:43
Latest upstream fnc to account for signature change of fsl_cx_is_case_sensitive(). check-in: fc61a0e2bd user: stephan tags: trunk
15:52
More work on the merge port and adjacent code. check-in: b9c2a05cfe user: stephan tags: trunk
11:19
Added fsl_file_copy(), fsl_symlink_read(), and fsl_file_isexec() as part of the merge op effort. Expanded fsl_file_tempname() to be able to accept a NULL list of directories in order to return just the name without a directory prefix. check-in: 6dca54dfde user: stephan tags: trunk
09:16
Minor allocation optimization and tweak to how the filename prefix is applied in fsl_file_tempname(). check-in: b89b9e0058 user: stephan tags: trunk
08:55
Ported in a variant of the temp-filename generation bits from fossil because it's needed for the next merge steps. check-in: dd3acff665 user: stephan tags: trunk
05:23
More work on the merge API port. Still lots to do. check-in: 7d626b574d user: stephan tags: trunk
04:17
Tweaks to the return semantics of fsl_db_exec() and fsl_stmt_step(). Doesn't/shouldn't affect any existing code. Added a test to ensure that fsl_stmt_step() behaves as expected in the face of a RETURNING clause. check-in: ad7ef26207 user: stephan tags: trunk
2021-12-13
06:15
Minor code modernization in the still-far-from-complete merge code. check-in: d77e495227 user: stephan tags: trunk
03:52
Merge in port-merge branch for further merge development - keeping this in a separate branch is unnecessary and is getting annoying. There's still plenty of work to do on the merge port. check-in: 63fe74d7f3 user: stephan tags: trunk
2021-12-11
07:34
Minor internal cleanups in f-repostat.c check-in: 5a99011c5b user: stephan tags: trunk
2021-12-10
12:11
As a special case, fsl_file_simplify_name() now always resolves to '/' if its input resolves to that, regardless of whether or not it is told to retain a trailing slash. The alternative would be to resolve to an empty string if it were told to strip the trailing slash for that case. check-in: 3ad71dbc66 user: stephan tags: trunk
11:35
Fixed bug which caused fsl_file_simplify_name() to not honor its trailing backslash policy. check-in: 14fffb4e82 user: stephan tags: trunk
07:01
Typo fix. check-in: 2b2b8c3ac9 user: stephan tags: trunk
06:49
Wrapped f-repostat work in a transaction to avoid a minuscule corner case where another app changes the stats as they're being read. Made use of the percent-z fsl_appendf() specifier to remove a few explicit fsl_free() calls. check-in: 48d30b38a6 user: stephan tags: trunk
04:32
Added missing status and quick-check to f-repostat. Missing only full integrity check (requires porting (fossil test-integrity)). check-in: a6ba4b4444 user: stephan tags: trunk
04:08
Initial version of f-repostat, analog to (fossil dbstat). Some adjecent constness cleanups. check-in: 4926ae9b31 user: stephan tags: trunk
2021-12-08
08:17
Minor doc updates. Changed the main db journal mode to TRUNCATE because OFF apparently leads to undefined behaviour when ROLLBACK is used (something we do often, e.g. to implement dry-run mode). check-in: a1b9594aec user: stephan tags: trunk
07:04
Cherrypicked inadvertent checkin to the wrong branch via /fileedit. check-in: 6dddf8537b user: stephan tags: trunk
07:02
Minor doc touchups Closed-Leaf check-in: e9c9fccc7f user: stephan tags: port-merge
06:55
Merged in trunk. Kinda funny that f-ci can check in a merge but we don't yet have f-merge to actually create a merge. check-in: 49e14934d8 user: stephan tags: port-merge
2021-12-06
03:42
Ported in line numbers in merge conflict markers from [fossil:14f44e933c0c0c2c | fossil checkin 14f44e933c0c0c2c]. check-in: 3e58eea1f3 user: stephan tags: trunk
02:33
Minor help text and API doc cleanups. One minor allocation optimization in fsl_repo_rebuild(). check-in: 17a7f5cf12 user: stephan tags: trunk
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). check-in: 8349911eb6 user: stephan tags: trunk
06:36
(Finally) implemented ticket crosslinking. check-in: d8e8c16cc4 user: stephan tags: trunk
2021-12-03
09:33
s2 binding: extended Fossil.Db.each() to take a target array as a form of callback, appending each row to the target. check-in: 1c591b1ffc user: stephan tags: trunk
09:03
More tinkering with the s2 binding, getting older scripts working again. check-in: 5ea356ab81 user: stephan tags: trunk
08:36
Minor internal cleanups and costness tweaks. check-in: 8541d31570 user: stephan tags: trunk
07:39
Tinkering with the s2 binding to get tests working after removal of the various db handles. check-in: 93a66791fe user: stephan tags: trunk
06:52
SQL UDFs fsl_content() and fsl_sym2rid() now match any blob type, not just checkins. That they did not already do so was a bug. check-in: 624a9a175a user: stephan tags: trunk
06:23
Moved most of the fsl_cx-specific code out of fsl_db and into the new src/udf.c. check-in: 84a59c6833 user: stephan tags: trunk
05:15
Drastically simplify the s2 fsl_cx db mappings, exposing only the main db handle instead of separate repo/checkout/config handles. It was severely over-engineered and this approach will allow us to more easily eliminate the middle-man main db handle in the lib if we end up choosing to do so. check-in: 8ac418df2e user: stephan tags: trunk
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
2021-11-01
21:44
Updated fsl_cx_uplift_db_error2() docs to match its semantics. Removed some superfluous is-NULL-arg checks. check-in: b4d072b53b user: stephan tags: trunk
21:25
More work on f-rebuild and related crosslinking bits. check-in: 8c51e45f8f user: stephan tags: trunk
21:22
Fixed %B fsl_appendf() quoting, which was apparently broken in recent refactoring. check-in: 254d05efc3 user: stephan tags: trunk
16:36
Replaced strcpy() calls with fsl_strlcpy(). Re-indented strftime.c and replaced an unnecessary leaky malloc() in fsl_strftime() with an equivalent static buffer (noting that that block is normally #if'd out altogether). check-in: fa7e72b856 user: stephan tags: trunk
15:58
Add fsl_strlcpy() and fsl_strlcat() BSD-variants to the lib. Less error prone routines to begin replacing strcpy() and strcat() calls. check-in: f390a48d56 user: mark tags: trunk
15:16
Add ifdefs for C99 decls (snprintf) guarded on macOS. Patch authored by stephan@, tested by mark@ on macOS Catalina 10.15.7. check-in: 5c54c1e93c user: mark tags: trunk
14:15
Replaced sprintf() with snprintf() and might (unsure) have squelched a warning regarding uninitialized array elements. check-in: 1dbcee9144 user: stephan tags: trunk
2021-10-31
03:26
Swapped the internal relationship of fcli_setup() and fcli_setup_v2() and changed the latter's semantics a tiny bit. check-in: d0c8ef79fe user: stephan tags: trunk
2021-10-29
10:36
Add optional usage callback to fcli_command structure. If set, calls to fcli_command_help() with a true argument for the showUsage parameter, will call the fcli_command->usage() callback. This enables clients to display usage and/or additional help output on an individual command basis. Update apps in the repository impacted by this API change. check-in: d60fcce917 user: mark tags: trunk
10:15
Latest upstream fnc with several major changes. This fnc update includes: a significant change to the diff interface, which offers improved arg parsing and the ability to diff file blobs; and the new 'fnc branch' command, which provides a view for navigating repository branches. check-in: b1c9f30e3f user: mark tags: trunk
2021-10-26
11:25
More work on f-rebuild. Added fcli_setup_v2(). check-in: 14cebaaa7e user: stephan tags: trunk
10:41
Reworked the previous checkin. check-in: 20ea128fa9 user: stephan tags: trunk
10:30
Filtered (again?) libfossil.c/h out of the tags generation step. check-in: 4c0a8e3461 user: stephan tags: trunk
2021-10-22
06:01
Tidy fcli_command->aliases code and improve related docs. Remove superfluous format specifier arg and move all aliases output into fcli_help_show_aliases(). check-in: 89925fee94 user: mark tags: trunk
03:14
API doc update, fixed a potential range problem in the appendf SQL string formatting options. check-in: 543bea7b3e user: stephan tags: trunk
02:48
Refactored appendf %q/%Q/%B to use a static buffer instead of dynamic allocation. This saves counting the output length in advance and allocation of that output buffer but requires one call to the callback per 512-ish bytes of the string. check-in: 5739c3cbd3 user: stephan tags: trunk
2021-10-21
20:42
Added %!Q form of %Q appendf modifier to take the place of the undocumented/unused %w: wraps result in double quotes instead of single, for use with identifiers. check-in: d92aae901d user: stephan tags: trunk
20:22
Started work on f-rebuild. Still lots to do. check-in: 54b9b8fd8b user: stephan tags: trunk
17:42
A pile of constness and char-as-bool tweaks in the db API. check-in: d571c6f692 user: stephan tags: trunk
16:28
Added a timer-based limit option to the annotate operation, much like fossil's, allowing the user to limit it to X milliseconds (CPU time) of work. Added f-annotate --ms flag to make use of this. check-in: 35b8297bc3 user: stephan tags: trunk
14:54
Integrate [d9d00a5c97|cli-aliases] into trunk. ok stephan@ check-in: 378813076a user: mark tags: trunk
14:32
Add optional command line aliases to fcli_command. As per /chat discussion, use a NUL-delimited char pointer to add optional aliases to a command. This commit also adapts fcli_command_help() output to display any aliases, and adapts fnc and existing f-apps that use fcli_command to demonstrate the change. Closed-Leaf check-in: d9d00a5c97 user: mark tags: cli-aliases
10:05
build: try to force libfossil.c/h/o rebuild more frequently, for the sake of the --profile build. check-in: 0148b8e469 user: stephan tags: trunk
10:04
Insignificant internal tweaks. check-in: 65ae37ae14 user: stephan tags: trunk
08:26
Fixed a fsl_stmt misuse in the repo fingerprint check when falling back to test for a version 0 fingerprint (statement was not being cleaned up before re-preparation). check-in: 908f5883dd user: stephan tags: trunk
05:17
Reduced fsl_db_prepare_cached() buffer size and simplified nearby code a bit. check-in: 781faabfa1 user: stephan tags: trunk
04:41
Reduced fsl_buffer_reserve() calls by about 90% for f-parseparty (2.8m down to 300k), largely via addition of a db-level buffer for cached SQL preparation. Added a simpl hash to cached fsl_stmt instances to speed up fsl_db_prepare_cached() and reduce fsl_buffer_cmp() calls by 90%+. Record how many times any given caches fsl_stmt is reused and emit that via the new fcli_dump_stmt_cache() function. This reduces f-sanity allocations from 39k to 29k but slightly increases total allocated memory. check-in: c812573f26 user: stephan tags: trunk
02:54
Latest upstream fnc.c to squelch warnings from gcc. check-in: 33b4a4b279 user: stephan tags: trunk
02:39
Internal buffer allocation optimization in fsl_deck_save(). check-in: 23cd6b0b72 user: stephan tags: trunk
02:38
Fixed a memleak in f-aparse.c. check-in: f731ff162f user: stephan tags: trunk
2021-10-20
17:29
Build: when using the --profile flag, tell the various binaries to link against libfossil.o and sqlite3.o so that profiling picks up the library-level functions. We explicitly remove the -pg flag from sqlite3.o but _some_ of those symbols are still being included in profile state for unknown reasons. check-in: 52949a770b user: stephan tags: trunk
17:29
Brought s2 and cpp bindings up to date for fsl_deck changes. check-in: db284ea307 user: stephan tags: trunk
15:18
Minor doc and error message tweaks. check-in: 458afa63fa user: stephan tags: trunk
14:26
Doc updates related to the removal of fsl_deck::uuid. Fixed a mismatched transaction start/end in one particular error case in fsl_deck_crosslink() (when loading baseline of a delta manifest failed). check-in: 1742cabfde user: stephan tags: trunk
14:07
Removed fsl_deck::uuid and the step in fsl_deck_parse() which tries to map its input to an existing artifact. That step (which was there simply to proactively fetch the deck's rid and uuid) isn't strictly necessary and is a big performance hit. This reduces fsl_deck_parse() time by very roughly 2/3rds, per f-parseparty's mass-parsing tests on the libfossil and fossil repos. check-in: ba35aa3a57 user: stephan tags: trunk
13:16
f-parseparty: fixed an assert broken by the fsl_deck refactoring and added --dry-run flag. Closed-Leaf check-in: c1390fe2f8 user: stephan tags: remove-deck-uuid
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. check-in: 1dc391289c user: stephan tags: remove-deck-uuid
11:30
Minor auto.def cleanup. check-in: 5a85356515 user: stephan tags: trunk
10:39
Added --profile configure flag which enables the -pg compile/link option if CC appears to be gcc. check-in: a0d2863fdc user: stephan tags: trunk
2021-10-19
10:03
Doc updates and minor internal code reorgs. check-in: 9542202a90 user: stephan tags: trunk
09:18
merge in trunk for latest bits. check-in: df8635e89d user: stephan tags: port-merge
09:05
Added the FSL_GLOB() SQL UDF and infrastructure to support it, to enable operations which make use of the configurable glob lists to access those via SQL. check-in: 496acd50a1 user: stephan tags: trunk
07:51
f-ci can now tell the difference between being passed an unmanaged dir name or a managed dir name which contains no changes and correctly queues only modified files when passed a dir name. That triggered an as-yet-undiscovered fsl_id_bag_reset() bug, now fixed, which triggered an assert() but somehow has not asserted before. check-in: 97887399f1 user: stephan tags: trunk
04:06
More doc and constness tweaks. check-in: b0a40b1b49 user: stephan tags: trunk
04:00
Worked around doxygen warning quirks. check-in: 38af521ffd user: stephan tags: trunk
03:54
Doc and constness updates. Removed the old code related to the long-obsolete open-or-attach mode of fsl_cx db handle management, now using only the attach mode. check-in: 386039e135 user: stephan tags: trunk
2021-10-18
14:19
Doc tweaks, constness updates, and removed some extraneous checks for NULL arguments. check-in: a1d926f055 user: stephan tags: trunk
14:03
Numerous minor doc and constness tweaks. Starting to use markdown formatting for API docs, now that it's been discovered that Doxygen can do that. check-in: 77e8ee40f8 user: stephan tags: trunk
13:35
Added an optional flag to wh-make-from-dot-in to force it to touch its generated files, to work around an issue where make-template does not modify a file because it is the same as its original but we really need the timestamp updated. check-in: 0dbd4b588c user: stephan tags: trunk
12:07
Changed signature of fsl_db_close() to return void. Removed some dead code. check-in: 0c32e3185e user: stephan tags: trunk
10:18
Added some debug output to f-test-merge.c. Discovered a f-revert bug in the process (it does not deal with pending vmerge state). check-in: 199e2cbcad user: stephan tags: port-merge
10:09
Merged in port-merge branch for many non-merge-specific tweaks made there. Merge feature is still in development. check-in: 4672dd694e user: stephan tags: trunk
10:02
Random doc updates and moved an enum from fossil-util.h to fossil-db.h. check-in: f069532a71 user: stephan tags: port-merge
2021-10-17
10:39
More slow progress on the merge port. check-in: 2c0ca8f720 user: stephan tags: port-merge
10:38
Added variants of fsl_cx_exec() (fsl_db_exec() proxy) and changed error propagation semantics of fsl_cx_prepare() to be more useful. check-in: 9abdf965ac user: stephan tags: port-merge
2021-10-16
19:01
This checkin was actually caused by a "CLI misinteraction," but that gives us an excellent opportunity to move it to its own branch for use with merge testing. Closed-Leaf check-in: 3faa7222a6 user: stephan tags: mistake
18:48
f-test-merge: fixed an incorrect if/else branch of porting which included a path we don't want (automatic selection of a fork to merge in). Fixed a NULL dereference when --help was invoked. Added some debug output. check-in: ae59f86383 user: stephan tags: port-merge
16:24
Minor code reorgs and reminders to self for the continued merge porting later on. check-in: 81e6402728 user: stephan tags: port-merge
15:50
Another few hundred lines of merge infrastructure and lots of unrelated constness tweaks. Moving to a branch because we can't test some of the new features without one. check-in: 3ff20f1d01 user: stephan tags: port-merge
13:28
More work on porting over merge infrastructure. check-in: bc66e6a73a user: stephan tags: trunk
12:09
More work on the merge operation infrastructure. check-in: a6b6f083cb user: stephan tags: trunk
10:14
Minor doc tweaks. check-in: f06262030d user: stephan tags: trunk
2021-10-15
09:33
While prepping for the merge port, moved the dry-run flag OUT of fcli and into the specific apps which implement it. Added skeleton f-test-merge app for use in the merge development. check-in: c9fb1f972f user: stephan tags: trunk
07:54
Insignificant cleanups found while scouting out what's needed to port over merge. check-in: 65b379e3e0 user: stephan tags: trunk
06:55
Minor API doc fix. check-in: d4a1ac1c89 user: stephan tags: trunk
2021-10-14
07:06
Replaced fsl_annotate_step::ymd (string) with fsl_annotate_step::mtime (Julian Day) and moved its formatting into the client-specified callback. This saves one allocation per version in an annotation and frees the user to use whatever time precision they care to. check-in: 8e98360ec3 user: stephan tags: trunk
02:17
Extended fsl_annotate_step interface with a stepType member to tell the callee what type of annotation step is happening. Changed semantics of fsl_annotate_step::stepNumber. Added more annotation docs. check-in: be38221c82 user: stephan tags: trunk
2021-10-13
16:03
Remove some CRLF line ending that was introduced by commit [ee5ff590851fc020]. check-in: 0bb22fba21 user: mgagnon tags: trunk
09:58
Renamed fsl_annotate_step_f_output_f() to fsl_annotate_step_f_fossilesque(). check-in: 7e9f766bc5 user: stephan tags: trunk
09:54
Removed an unused var. check-in: e887d10734 user: stephan tags: trunk
09:51
Changed return semantics of fsl_cx_flag_set(). Seems more useful this way. check-in: d509da4728 user: stephan tags: trunk
09:42
Simplified fsl_outputer by removing one level of indirection, replacing its state member (of type fsl_state) with a simple void pointer. The older level of indirection has never proven to be useful. check-in: 4bc926851e user: stephan tags: trunk
09:35
Initial implementation of a new callback interface for fsl_annotate() which moves the burnden of formatting to the caller (with an implementation provided which formats like fossil does). check-in: 24bc694bf8 user: stephan tags: trunk
2021-10-11
10:46
Minor internal doc correction. check-in: cf92163fc2 user: stephan tags: trunk
07:15
Escaped a doc sequence doxygen complains about. check-in: 503ec75ff3 user: stephan tags: trunk
07:05
Ported over the UTF-8 parts of fossil's "looks like" APIs. Whether or not we really need the UTF-16 counterparts remains to be seen. check-in: 496de4c153 user: stephan tags: trunk
02:53
Minor internal doc and test updates. check-in: 7933b213f4 user: stephan tags: trunk
02:07
Hardening of the new %#W.Ps handling against non-UTF8 input and character lead bytes which invalidly set at the end of a string. check-in: 3036e117df user: stephan tags: trunk
01:55
Minor constness cleanups. check-in: 33165c3eb1 user: stephan tags: trunk
2021-10-10
13:24
Minor cleanups in the new f-sanity.c %#-related tests. check-in: b380db5e3f user: stephan tags: trunk
13:09
Added '#' format modifier for fsl_appendf() %s, which causes it to count width and precision in UTF8 characters instead of bytes. This allows the split-mode diff renderer to measure its columns in characters instead of bytes and avoid truncating multibyte characters. check-in: 4432b1f97a user: stephan tags: trunk
07:53
Added fsl_strlen_utf8(). Minor internal split diff refactoring. Added -w/--ignore-all-space flags to f-adiff/f-vdiff and renamed the former -w flag to -W. check-in: ee5ff59085 user: stephan tags: trunk
06:56
Minor split diff line number columns formatting tweak. check-in: a095d05a98 user: stephan tags: trunk
2021-10-09
23:18
Moved the common ANSI color init code from f-adiff and f-vdiff into fcli_diff_colors(). check-in: 1e50499a37 user: stephan tags: trunk
22:58
Added --color flag to f-adiff and f-vdiff to force ANSI color codes (on diff builders which use them) even if stdout is not a terminal. check-in: ea1ab5264d user: stephan tags: trunk
22:52
Removed some dead code. Minor doc tweaks. check-in: bbf5a75a76 user: stephan tags: trunk
22:47
Added a two-pass option to fsl_diff_builder and reimplemented split-mode diff to use it so that it can measure widths on pass 1 and do the work in pass 2 without having to buffer all the of the output. An f-vdiff of this change costs approx 3200 allocations and 9MB total RAM less than doing the same with the previous version. check-in: e1dcd0294b user: stephan tags: trunk
21:00
Split-mode text diff now colorizes whole lines instead of just the line numbers and modification markers. check-in: ff791a0936 user: stephan tags: trunk
20:14
Updated f-adiff to use the v2 diff API. Taught the split-view diff to respect (more or less) the fsl_diff_opt::columnWidth hint and updated f-vdiff and f-adiff with a flag to set that. check-in: f0d31fddf1 user: stephan tags: trunk
09:18
f-vdiff now treats a combo from/to version of (. .) as (current .). Unrelated insignificant cleanups. check-in: 273f215234 user: stephan tags: trunk
08:39
f-vdiff: if passed only one version argument in the form '.' then treat it as if ('current' '.') had been passed in. check-in: 7e1765a845 user: stephan tags: trunk
08:33
Doc typos. check-in: 43671b7113 user: stephan tags: trunk
08:26
Moving-around of header-side code and minor typo/layout fixes. check-in: 8b04829588 user: stephan tags: trunk
07:54
Minor diff API renaming. f-vdiff now accepts filename arguments as well as globs. Added fsl_cx_has_ckout(). check-in: 78e6f53d8a user: stephan tags: trunk
06:56
Added --lib-version global fcli flag and upped the library version, rather arbitrarily, to 0.5-ish. check-in: ed0599af21 user: stephan tags: trunk
06:41
Removed the superfluous final argument from fsl_diff_builder::skip(). It doesn't serve any real purpose in this port of the API because our addition of the fsl_diff_builder::finish() method can be used to handle any end-of-diff stuff. check-in: 939205a0f6 user: stephan tags: trunk
06:30
Unified diff builder: when running in line-number mode, use ~~~~ separators instead of conventional diff chunk markers. check-in: dc690136e8 user: stephan tags: trunk
05:57
Added some docs and minor cleanups in f-vdiff. check-in: a725befe58 user: stephan tags: trunk
05:35
Experimentally added provisions for color coding using ANSI escape sequences to the fsl_diff_opt interface and applied it to the v2 unified and split diff views. The interface for this is subject to change. check-in: b462692d92 user: stephan tags: trunk
03:57
Minor diff builder API renaming. Switched f-vdiff to use the diff builder API. Deprecated the fsl_diff_text() (v1) diff API, but have no short-term plans to remove it. check-in: ea96c7c987 user: stephan tags: trunk
03:04
Latest upstream fnc.c, adapted for changes made to the library earlier tonight. check-in: 072d639651 user: stephan tags: trunk
02:57
More diff builder-related docs. Added diff-skip lines to the split-diff output and made that diff builder always emit line numbers. check-in: 32c14ba175 user: stephan tags: trunk
2021-10-08
23:30
Initial impl of text-mode split (side-by-side) diff. check-in: 6e55183b23 user: stephan tags: trunk
21:51
Moved from code from f-vdiff into the public API. Several fixes in f-vdiff. check-in: 39180d2fe8 user: stephan tags: trunk
19:46
Fixed a NULL deref in the diff code when one version of a file being diffed does not exist (e.g. when diffing a new file against a non-existent prior version). This fixes a segfault when fnc is asked to diff a checkin which contains a new file. check-in: 6aac145a22 user: stephan tags: trunk
18:20
Added more makefile-style patterns to editorconfig. check-in: 92022044d9 user: stephan tags: trunk
18:15
Added .editorconfig. check-in: cf791eca0b user: stephan tags: trunk
03:56
Added f-annotate to the list of installed f-apps. check-in: 3633f30572 user: stephan tags: trunk
03:55
Latest upstream fnc.c. check-in: 4df3ad2d82 user: stephan tags: trunk
03:15
Added an #if to protect a var made unused by the previous checkin. check-in: acbd39275f user: stephan tags: trunk
02:58
Build: delay build of libfossil.c/h/o until needed. Disabled inclusion of the as-yet-unused regexp sqlite3 module because of mysterious link errors triggered by the build reordering. check-in: a5fa64f558 user: stephan tags: trunk
2021-10-07
04:14
Updated f-apps/index.md for f-annotate. check-in: 975dccb1ce user: stephan tags: trunk
03:34
Merged in annotate feature branch and fixed horrible diff calculation bug. check-in: e3d91a7fed user: stephan tags: trunk
03:28
Remove all but -R and -V short form global options. To avoid collisions with app code, restrict global options to long-form, with the exception of the abovementioned two common options as discussed in /chat. check-in: 6d2c463307 user: mark tags: trunk
03:27
Resolved the mind-numbing diff problem, caused by having used an (unsigned int) where a uint64_t was needed for the fsl_dline::h member (hash value overflow led to mismatches between this impl and fossil's). Annotate, at least in its basic form, now works (testing with ignoring whitespace and such is pending). Closed-Leaf check-in: e456c5ab39 user: stephan tags: port-annotate
02:02
Eliminated some extraneous diff-internal code. check-in: 32ba71065d user: stephan tags: trunk
01:55
Merged inadvertent fork. check-in: 81a7b3af8a user: stephan tags: trunk
2021-10-06
23:21
Have narrowed down the source of the annotation difference (as it were) to the lower-level diff code, but _why_ libf is getting different results from fossil there (unless we force _both_ to do optimal matching on all diffs) is still a complete mystery. check-in: 0e55962dc9 user: stephan tags: port-annotate
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. check-in: 150bb5b77c user: stephan tags: port-annotate
16:18
fsl_ckout_fingerprint_check() now returns 0 if no checkout is opened. check-in: 1fb9a31f45 user: stephan tags: trunk
16:07
Add a few errno error codes to fsl_errno_to_rc(). check-in: 12ce7c1243 user: mark tags: trunk
14:53
Latest upstream sqlite3 amalgamation. check-in: dfcc431208 user: stephan tags: trunk
2021-10-03
09:04
Fixed a segfault in f-zip when trying to zip an unnamed project. Fixed fsl_repo_manifest_write() to not require an opened checkout so long as it is given an RID to work with. check-in: b7282cdbdc user: stephan tags: trunk
2021-10-02
18:39
Expanded fsl_vpath_shortest_store_in_ancestor()'s interface a bit. check-in: 8ad0b44715 user: stephan tags: trunk
18:21
Minor simplification of a bit of the previous checkin. check-in: d3d618d140 user: stephan tags: trunk
18:12
More work on the annotate interface, plus far too many nearby-yet-unrelated tweaks such as costness changes. check-in: b601f20cff user: stephan tags: trunk
14:11
Started work on the annotate/praise/blame interfaces but they're not yet even remotely implemented. check-in: 434ede2046 user: stephan tags: trunk
14:06
Some diff API renaming. Fixed a bit of memory corruption (overwriting of part of a struct) in the tcl-format diff builder. check-in: 3fc18938fd user: stephan tags: trunk
04:04
Corrected install path for man pages: PREFIX/share/man instead of PREFIX/man. check-in: 1b1d755e76 user: stephan tags: trunk
2021-10-01
18:00
Minor tinkering with the new diff API. check-in: a8ac65d267 user: stephan tags: trunk
16:31
Minor fixes to address gcc-11 errors discussed in chat. Check a set but unused variable in the new diff implementation, and fix arguments with mismatched bound in the md5 code. check-in: a161c58256 user: mark tags: trunk
2021-09-28
03:07
Added line number support to the unified diff builder. Adjacent tinkering. check-in: eddb657374 user: stephan tags: trunk
2021-09-27
19:39
Minor tcl diff output cleanups. check-in: 0cce2e5e25 user: stephan tags: trunk
19:19
Implemented the tcl-generating diff builder, but just the actual diff output. Adding the fossil-side diff.tcl wrapper for it is TODO. check-in: ec81b8c45b user: stephan tags: trunk
17:50
diff builder: some API renaming. Unified diff now elides the Index line until it's toggled on with a flag. Doc improvements. check-in: 16d03d5f00 user: stephan tags: trunk
14:58
Found a seemingly agreeable workaround for the unified diff format chunk header disagreement with the diff builder driver algo. Doc improvements. Renamed several diff builder methods. check-in: cb7851a865 user: stephan tags: trunk
02:11
diff-builder-based unified diff now mimics fossil's non-diff-builder-based unified diff except that this one adds an Index line (feature or bug?), but to do this we had to bypass what _appears_ to be purely cosmetic feature of the diff-builder approach which merged blocks which have a gap equal to or smaller than the diff context size. How best to resolve that is as yet unclear. check-in: a192f3e814 user: stephan tags: trunk
2021-09-26
22:56
Seem to have gotten unified text diff _mostly_ working with the diff builder interface, though it required extending that interface a bit. We're still outputing more context than fossil does, for as-yet-unknown reasons, but the suspected off-by-one mentioned in the last commit was solved (it was not an off-by-one, but misuse of comparison routine results in fsl__diff_optimize()). check-in: 103399cdf7 user: stephan tags: trunk
22:43
Sigh. A facepalmy fix for the facepalmy fix at [c7a1d658fd]. check-in: 6f09ed4a26 user: stephan tags: trunk
19:15
Started work on a text-mode unified diff fsl_diff_builder, but it seems that the interface cannot support that one (as distinct from an HTML-mode unified diff). It turns out that fossil(1) uses the older-mode diff code for that case, duplicating much of the function which drives the fsl_diff_builder. These bits are #if'd out for now, but related adjacent changes are also in this checkin. check-in: 930e2b9c78 user: stephan tags: trunk
16:32
Ported over, but have only lightly tested, fossil's JSON-format diff builder. check-in: 14267d8d3a user: stephan tags: trunk
15:58
fsl_appendf() %j (JSON string) now supports the .* modifier to limit how much of the string is output, with the caveat that it is not multibyte-aware so will happily truncate a multibyte character. This was necessary for JSON-ifying partial lines of diffs when porting in fossil's 2021-09 JSON diff builder. check-in: 2936a80e9f user: stephan tags: trunk
15:52
Facepalm fix for [ee32b99f4765]. check-in: c7a1d658fd user: stephan tags: trunk
14:33
More work on the 2021-09 diff rendering bits. Fixed a couple deeply-internal diff bits which leave me wondering how diffs _ever_ worked here. check-in: af4d016879 user: stephan tags: trunk
14:29
Build kludge to get libfossil.{c,h} out of the TAGS file. check-in: ee32b99f47 user: stephan tags: trunk
2021-09-18
17:39
More work on the 2021 diff backend port. Still much to do. check-in: ed33831c3f user: stephan tags: trunk
16:14
license: added a note about having DRH's consent to re-assign copyright on code ported from fossil into libfossil. check-in: c779392286 user: stephan tags: trunk
14:36
Initial work on porting in the 2021-era diff generation APIs. check-in: e0d00097e0 user: stephan tags: trunk
10:48
Tiny internal optimization in diff output. check-in: 5a1f0835b9 user: stephan tags: trunk
10:39
Changed semantics of fsl_appendf() to 0 on success, non-0 on error. Removed fsl_appendf_f() and replaced its uses with fsl_output_f(). Be on the lookout for subtle bugs, but the old printf()-style return semantics have never been relied upon so this should be side-effect-free. check-in: b2e283edbf user: stephan tags: trunk
2021-09-17
05:24
Added the logic for handling the --no-fnc configure option (disables ncurses check and client/fnc build). check-in: 06d485c07c user: stephan tags: trunk
05:17
Added (un)install rules for libfossil.*, non-test f-apps, and f-s2sh. check-in: 2fbfca2368 user: stephan tags: trunk
2021-09-15
13:37
Merged inadvertent fork. check-in: 9c7743c825 user: stephan tags: trunk
12:54
Fixed a buffer overwrite by 1 byte which corrupted a fsl_deck object and triggered assertion. check-in: a1ef6254e5 user: stephan tags: trunk
2021-09-13
23:11
Latest upstream fnc. check-in: 7efa956d12 user: stephan tags: trunk
2021-09-07
20:03
Build: more autosetup code moved from auto.def to wh-common.tcl and Makefile added to distclean rules where appropriate. check-in: 5114263392 user: stephan tags: trunk
2021-09-06
23:09
More autosetup-related cleanups. check-in: 523dbf8d93 user: stephan tags: trunk
20:28
Minor autosetup cleanups. check-in: 34622de2e5 user: stephan tags: trunk
18:49
wh-common.tcl: wh-bin-define now caches based on the combination of its arguments, not just the first argument. check-in: 29ee621588 user: stephan tags: trunk
2021-09-05
18:57
Minor cosmetic build touchups. check-in: 6c9b609833 user: stephan tags: trunk
17:17
Correct f-aparse's timeline text prefix (was using old name of f-mfparse). check-in: 7549ef1764 user: stephan tags: trunk
16:42
Added fsl_repo_manifest_write(). fsl_repo_zip_sym_to_filename() now writes (manifest, manifest.uuid, manifest.tags) to the zip unconditionally. It should probably only do so if no file matching those names is actually part of the repo content, but we'll fix that if it ever becomes a problem. check-in: 395518ff88 user: stephan tags: trunk
16:33
Build: make sure that the amalgamation build does not end up in the etags file. Look for etags binary at configure-time instead of build-time. check-in: 2013bb6303 user: stephan tags: trunk
14:41
Simplified previous checkin. check-in: f42cf853ab user: stephan tags: trunk
14:32
Fixed -h/--no-header flag to f-query - was previously a no-op. check-in: 701619e142 user: stephan tags: trunk
2021-09-02
18:43
Adapted amalgamation.html generator to be able to get the file size on both linux and bsd (their /usr/bin/stat's work entirely differently). check-in: 3c58318a6b user: stephan tags: trunk
18:02
Latest upstream changes from fnc. Includes a screen-rendering bug fix, and improved error handling/reporting in the multibyte to wide-char conversion. check-in: ce9e0fcfd0 user: mark tags: trunk
02:54
Latest upstream fnc, including install rules. check-in: 4dcc4638df user: stephan tags: trunk
2021-09-01
14:31
Initial port of severely overengineered (un)install rules from an older project. Hopefully this doesn't break much. check-in: 906b382ec6 user: stephan tags: trunk
12:35
Code consolidation in wh-common.tcl. Moved libf's module loader check into wh-common.tcl. check-in: a90130eadb user: stephan tags: trunk
11:41
Factored some of auto.def into reusable autosetup/wh-common.tcl for reuse in this tree, fnc, and cwal. check-in: d5be981fc0 user: stephan tags: trunk
10:45
Updated to latest upstream autosetup (0.7.0+). check-in: cb4a63f07c user: stephan tags: trunk
04:08
Brought client/fnc/Makefile.in up to date with regards to fnc. This might fix the debian build. check-in: 7673fd7c59 user: stephan tags: trunk
03:56
auto.def now checks for bash and sets its full path in config.make. check-in: d3b61304ba user: stephan tags: trunk
03:48
config.make: changed SHELL:=/usr/bin/bash to /bin/bash (seems to be more portable). check-in: 43da785954 user: stephan tags: trunk
03:33
Latest upstream fnc.c. check-in: 69427e2bd9 user: stephan tags: trunk
2021-08-31
16:42
Latest upstream fnc.c. check-in: f1236f3110 user: stephan tags: trunk
2021-08-30
12:15
Minor doc, constness, and char-as-bool tweaks. check-in: 3ada2fce76 user: stephan tags: trunk
12:15
Fixed subdir build not diving into dir client/fnc. check-in: c4eb22996f user: stephan tags: trunk
03:16
Minor doc correction. check-in: 27e6e35f3d user: stephan tags: trunk
2021-08-29
13:30
Added missing first half of an extern "C" block in C++ compilation mode. check-in: 4daa314918 user: stephan tags: trunk
12:31
Added build bits to create and push builds of the amalgamation as /uv content. check-in: fbd839f03a user: stephan tags: trunk
12:31
Fixed a null pointer deref in a f-ci misuse case. check-in: 93f9b07776 user: stephan tags: trunk
2021-08-25
13:59
Pulled in upstream fnc auto.def patch to disable pkg-config ncurses check on macOS due to lib path incompatibilities between base OS, brew, and/or macports. check-in: 7644dfda4f user: stephan tags: trunk
12:27
Ported in ncurses detection/build improvements from main fnc tree. check-in: 62de1836b6 user: stephan tags: trunk
2021-08-24
18:57
Latest upstream fnc.c. check-in: 5d4335a934 user: stephan tags: trunk
18:55
Removed a senseless result code check. check-in: 5209050f47 user: stephan tags: trunk
18:33
Fixed a buffer-reset bug in the previous commit. check-in: 93f0b5c202 user: stephan tags: trunk
18:31
Per /chat discussion, refactored [043c2667c95e] to internally fall back to the v0 fingerprint check, instead of exposing that as part of the API. Resolved libfossil.{c,h} build deps bug. check-in: 15c135de66 user: stephan tags: trunk
17:12
Enhance repo fingerprint check to cover old repositories. This commit adds an extra check to match repository fingerprints using the original algorithm that some old repositories in the wild may need. check-in: 043c2667c9 user: mark tags: trunk
13:31
Build fix for the amalgamation build on macOS. The new amalgamation build requires lib iconv on macOS. check-in: ee5b0675a1 user: mark tags: trunk
2021-08-23
15:36
Build-related cleanups. check-in: 5d405b727b user: stephan tags: trunk
14:40
Added HAVE_CONFIG_H check to libfossil.h so a local config.h can be used to set libf-specific defines before libfossil-config.h defaults any to conservative values. check-in: 5f528e01b4 user: stephan tags: trunk
14:10
Added missing (or at least seemingly missed) sqlite3ext.h, needed for building with the libfossil amalgamation. check-in: e8e02907ee user: stephan tags: trunk
13:21
libfossil.o is now built using the configured compiler instead of trying with both gcc and clang because... fnc is now built against the amalgamation. This leads to a much larger binary but will simplify the upstream source tree considerably once this change is ported over to there. check-in: c2bb259b7c user: stephan tags: trunk
09:52
Error handling cleanup improvements in f-adiff.c. check-in: d9c0884771 user: stephan tags: trunk
2021-08-22
22:56
Pulled in [https://cvs.bsdbox.org/fnc/info/8804f1b9fb573a2ce444 | upstream fnc checkin 8804f1b9fb573a2ce444]. check-in: d9d98ad8f9 user: stephan tags: trunk
2021-08-19
19:18
Pulled in upstream fnc checkin [https://cvs.bsdbox.org/fnc/info/b9024c7b708465ed1cfa | b9024c7b708465ed1cfa], which line-wraps long checkin comments in the diff view. check-in: 57d36d8668 user: stephan tags: trunk
2021-08-18
20:25
Initial go at getting fnc integrated into the tree. The configure part is as yet untested on BSD, though. check-in: 9c613222b2 user: stephan tags: trunk
2021-08-14
19:58
Initial go at detecting curses from auto.def for use in importing fnc into this tree. Still untested on BSD. check-in: 5809d65395 user: stephan tags: trunk
2021-08-09
20:07
Added fcli_progname() as a portable substitute(?) for BSD's getprogname(). check-in: 3d0057a245 user: stephan tags: trunk
2021-08-05
15:44
Another build-fix to account for a recently-removed file. check-in: 23a5d44c08 user: stephan tags: trunk
15:40
Build fix for the amalgation. check-in: 074f06e1a9 user: stephan tags: trunk
2021-07-29
09:10
Removed references to a now-unused file. check-in: 7acda68f55 user: stephan tags: trunk
2021-07-24
11:05
Latest upstream s2 for what might be the 'final' changes needed to integrate the CWAL_OBASE_ISA_HASH option. check-in: 9403882395 user: stephan tags: trunk
2021-07-23
11:06
Latest upstream s2 for new pragma(build-opt IDENTIFIER), which gives us a way to query build-time options from scripts. check-in: d6b2323055 user: stephan tags: trunk
05:07
Latest upstream s2 which resolves the last known open issue with the CWAL_OBASE_ISA_HASH toggle. check-in: 487bc7d38e user: stephan tags: trunk
2021-07-12
14:59
Merged inadverted fork from the BSD box. check-in: c8fefc3d17 user: stephan tags: trunk
14:24
Latest upstream s2 with some minor build-time, doc, and unit test tweaks. check-in: a08eb62a66 user: stephan tags: trunk
03:08
Latest upstream s2, configured to use hashtables for property storage. check-in: ea62cfc2ec user: stephan tags: trunk
01:05
Initialized some vars to squelch compiler warnings. check-in: 855c60d0ee user: stephan tags: trunk
2021-07-11
09:16
Latest upstream s2, for testing purposes. check-in: 9e2a6e3934 user: stephan tags: trunk
2021-07-07
03:28
Added tools/schema-info-views.sql, gleaned from the sqlite forums. check-in: f5bf8a80c9 user: stephan tags: trunk
03:08
Fixed a broken empty-title check in forum post crosslinking. check-in: 8d757883d2 user: stephan tags: trunk
2021-06-26
09:32
Another upstream s2, to eliminate s2_rc_cstr(). check-in: aed85cfd53 user: stephan tags: trunk
08:19
Pulled in latest upstream s2. check-in: f97531baac user: stephan tags: trunk
2021-06-25
06:42
Minor cleanup to [1d193a7055ad13fb]. Corrected an is-in-a-transaction check in f-ci to handle a pending rollback. check-in: 5b5d1f2030 user: stephan tags: trunk
05:29
Merged an inadvertent fork. fsl_checkin_enqueue() can now accept its files as vfile.id values, eliminating a duplicate vfile check. check-in: 1d193a7055 user: stephan tags: trunk
04:26
Removed an unnecessary #include. check-in: 681c930f1d user: stephan tags: trunk
2021-06-06
12:41
Internal doc and spacing tweaks. check-in: 8015c8a698 user: stephan tags: trunk
07:30
Removed some dead code. Minor internal doc touchups. check-in: 1fff00e7c7 user: stephan tags: trunk
2021-06-04
11:12
f-tag now rejects tags starting with (sym-, wiki-, tkt-, event-), as those are used internally by fossil. check-in: 82b4bb88ac user: stephan tags: trunk
2021-06-01
03:45
Minor var init order tweak to ease my mind about its handling in a particular error case. check-in: 7b792bd557 user: stephan tags: trunk
03:27
Minor doc and char-to-bool touchups. check-in: b199e29d41 user: stephan tags: trunk
2021-05-31
02:08
f-ci can now determine when it is passed names not known to the repo, as distinct from being passed names which refer to unchanged files, and fails with an error in that case. check-in: b53ba022ec user: stephan tags: trunk
2021-05-30
23:00
Tiny internal cleanups. check-in: 20b912e015 user: stephan tags: trunk
03:23
Added a harmlessly missing #undef. check-in: 36893a35c0 user: stephan tags: trunk
2021-05-29
22:39
Ported in [https://fossil-scm.org/home/info/31113cd2b992cde3], which enables propagation of tags in wiki, technote, and forum posts. This change is not yet known to be 100% compatible with existing algos which may expect the plink table to only contain checkins. check-in: 0e159c2f67 user: stephan tags: trunk
2021-04-18
13:37
When creating initial checkin for a repo, use ms precision for the D-card, instead of seconds precision. Do the same in f-test-ciwoco to avoid a slight time warp in the timeline caused by repo creation and the first checkin having the same timestamp. check-in: cc34c60a45 user: stephan tags: trunk
2021-04-17
10:06
Added missing ticket schema when creating a new repo. check-in: 419990a788 user: stephan tags: trunk
05:58
f-ci now runs in non-dry-mode by default (no longer needs the -y flag). check-in: a038536522 user: stephan tags: trunk
2021-04-16
16:24
Added a negative test for the repo/checkout fingerprint check. check-in: 27433d3e1c user: stephan tags: trunk
16:17
Implemented repo/checkout fingerprint check and added a check for it in f-status, f-timeline, and f-ci (failing fatally on a mismatch, instead of just warning like fossil does). We now update the fingerprint in the ckout db whenever we update the ckout version. We do not yet have an automatic recovery mechanism analog to fossil's vfile.c:vfile_rid_renumbering_event(). check-in: 8c9cf48702 user: stephan tags: trunk
14:32
Inject a dummy rcvfrom entry when creating a new repo db in order to squelch the fingerprint-has-changed warning when fossil opens the db. check-in: 835d5a059b user: stephan tags: trunk
13:47
Added a potential TODO to fcli's CLI processing. check-in: d549476263 user: stephan tags: trunk
2021-04-14
04:10
Renamed fsl_cx_forbids_delta_manifests() to fsl_repo_forbids_delta_manifests() because it's really a repo-level setting. check-in: 755c059371 user: stephan tags: trunk
03:59
Updated C++ and s2 bindings for recent API changes. check-in: b490766728 user: stephan tags: trunk
03:53
Renamed fsl_cx_forbid_delta_manifests() to fsl_cx_forbids_delta_manifests() so that it doesn't sound like a setter function. check-in: 7501bb92f9 user: stephan tags: trunk
03:38
fsl_deck_save() now honors the forbid-delta-manifests policy, rejecting any delta manifests. fsl_deck_derive() now converts any delta manifest to a baseline in order to avoid certain corner cases. Added some f-sanity tests for these new cases. check-in: ea6074b8ad user: stephan tags: trunk
2021-04-13
16:04
Added option to toggle R-card generation for f-test-ciwoco. Added extra/unhandled args check to f-timeline.c. check-in: 2b05c5915f user: stephan tags: trunk
15:18
Added fsl_deck_branch_set() and f-test-ciwoco now uses it. Fixed a _potential_ error-catching bug in the %j fsl_appendf() handler (which is still pending a port to fsl_output_f() return semantics). check-in: e9aed30c66 user: stephan tags: trunk
14:58
f-test-ciwoco now sets a branch name when creating an initial commit with files, else we can't resolve the entries using a branch name. check-in: 1a1154ca84 user: stephan tags: trunk
14:47
Added further commit to f-test-ciwoco to demonstrate that new file versions cause prior versions to get delta-compressed. check-in: ee83ef5f2d user: stephan tags: trunk
14:26
Corrected a memory mis-read of an MD5 hash using a SHA1/SHA3 length. Minor cleanups up f-test-ciwoco. check-in: 88ed2e9e9d user: stephan tags: trunk
14:17
Integrated deck-reworking branch. check-in: 366ce326e6 user: stephan tags: trunk
14:15
fsl_repo_create() now unlinks a failed repo and unlinks it before starting instead of using fopen() to truncate it. f-ciwoco is working. Closed-Leaf check-in: 63d85115a9 user: stephan tags: deck-reworking
13:20
Fixed a broken assert() in fsl_ckout_manage() when current rid==0. Fixed duplicate mlink entries for an initial commit with no parent. Finally realized that the dbs cannot be detached when a transaction is pending and adjusted the fsl_cx db-close interfaces to be able to report that. Started work on a demo app which creates and populates a repo without using a checkout, but it's incomplete - got sidetracked chasing down those bugs. check-in: fcdeddd18a user: stephan tags: deck-reworking
07:33
More work on the fsl_deck_derive()-related bits. Internal API modernization in fsl_content_put_ex(). check-in: 64b07ff5a8 user: stephan tags: deck-reworking
05:28
Removed fsl_deck::error, relying on fsl_deck::f::error instead. Added fsl_deck_F_set() in prep for APIs to simplify creating new checkins without requiring a checkout. Fixed a U-card validation bug in fsl_deck_output(). check-in: f839ab3edd user: stephan tags: deck-reworking
2021-04-12
15:48
Fixed, i believe, the checkin process not properly tagging the new leaf, caused by swapped handling of the is-it-a-leaf result. Need to make a commit to actually test it, though. Edit: worked :). check-in: 2791e665cc user: stephan tags: trunk
2021-04-10
11:14
API doc cleanups, removed some extraneous is-NULL checks on function arguments, and added a couple assert()s to f-sanity.c. check-in: e314f2f9df user: stephan tags: trunk
2021-04-09
11:07
fsl_deck_F_foreach() signature changed to remove the option which caused looping to behave differently for delta manifests, as that difference is an internal detail. Fixed the FSL_RC_BREAK return case of fsl_deck_F_foreach(). check-in: 176d9af72a user: stephan tags: trunk
2021-04-05
10:23
Minor generic cleanups in fcli and related app-side code. check-in: c62ffa1046 user: stephan tags: trunk
2021-04-04
05:07
f-apps: modernized/simplified usage of exit-on-help. Removed some bogus CLI flag entries from f-config. check-in: 1d3192c82b user: stephan tags: trunk
04:58
f-apps: use fcli_cx() instead of accessing fcli.f directly. check-in: 9c7cf37828 user: stephan tags: trunk
02:09
Fixed a var init order which broke f-add. check-in: 764f2b5396 user: stephan tags: trunk
2021-03-31
12:17
Renamed fsl_vfile_load_from_rid() to fsl_vfile_load(). Added fsl_vfile_unload() and fsl_vfile_unload_except(). f-revert can now revert files to specific checkin versions while retaining the current checkout version. check-in: 40fcc816f0 user: stephan tags: trunk
12:16
Fixed f-ci leaf-marking bug introduced in [43d1902823fd16b9]. check-in: df0f22661b user: stephan tags: trunk
09:47
Added fsl_ckout_vfile_ids() variant of fsl_filename_to_vfile_ids() in prep for an upcoming experiment. Fixed a cleanup order in fcli_shutdown(). check-in: 889d2e32bb user: stephan tags: trunk
05:51
Corrected an internal doc falsehood introduced in the previous commit and cleaned up adjacent code. check-in: 5b3a06886c user: stephan tags: trunk
05:41
Minor f-apps updates. Reverted f-revert to using the filename variant of fsl_ckout_revert(), instead of the fsl_filename_to_vfile_ids() variant, because the former allows the user to revert renames using the old or new names, whereas the latter only sees the new names. Fixed a range error in fsl_stmt_bind_fmtv() when binding a string as blob, and that function's blob/string bindings no longer copy their arguments' memory. Changed fsl_stmt_bind_step() return semantics to enable fetching data. check-in: 43d1902823 user: stephan tags: trunk
02:11
Minor cosmetic tweak to fcli help output. check-in: b016dfaa71 user: stephan tags: trunk
02:07
Fixed a null pointer deref when calling f-aparse with no arguments. check-in: c9e1f6c6dc user: stephan tags: trunk
2021-03-29
09:27
Removed a stale typedef left over in the previous commit. check-in: 521f5df2a3 user: stephan tags: trunk
09:26
Corrected a misunderstanding about fsl_id_bag traversal consuming its contents (which is not the case) and adjusted API signatures to make that clearer. check-in: 0660107d5b user: stephan tags: trunk
02:39
Internal tweak in the fsl_db API to take advantage of SQLITE_PREPARE_PERSISTENT. Doc fix in fsl_buffer_stream_lines(). check-in: 230e3ff6f6 user: stephan tags: trunk
2021-03-28
17:10
Refactored fsl_ckout_unmanage() to optionally use the new fsl_id_bag approach added for fsl_ckout_revert(). Refactored f-rm to use that. check-in: 949885a1d3 user: stephan tags: trunk
17:05
Tightened is-sorted check when parsing Cluster artifacts. check-in: 2a35f5e331 user: stephan tags: trunk
15:15
fsl_ckout_revert() now optionally accepts a fsl_id_bag instead of a filename. Exposed fsl_filename_to_vfile_id(s)() to the public API. Added fcli_args_to_vfile_ids() and refactored f-revert to use that functionality. check-in: a527cc940a user: stephan tags: trunk
07:21
Minor doc tweaks and added two arguably missing db transaction barriers. check-in: 64780c9c47 user: stephan tags: trunk
2021-03-27
15:14
Doc updates and added another fsl_checkin_dequeue() test. check-in: 9c2f72f751 user: stephan tags: trunk
15:01
Fixed a test assert() broken by the previous checkin. check-in: 1bc0bdd204 user: stephan tags: trunk
14:54
Renamed and refactored fsl_checkin_enqueue() and fsl_checkin_dequeue() to use an options object and altert the user about exactly which files are enqueued/dequeued via a callback. check-in: 8abd63ab1c user: stephan tags: trunk
12:19
Added tools/c-struct.sh, which has proven useful for generating skeleton code for various structs used by the library. check-in: f24ab8b2d8 user: stephan tags: trunk
12:02
Minor API cleanups. check-in: 259329f627 user: stephan tags: trunk
11:06
Minor doc updates. check-in: 219baa2d88 user: stephan tags: trunk
05:21
Removed --user-override flag from f-ci because we already have that feature via fcli's --user flag. check-in: 267aec10ab user: stephan tags: trunk
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. check-in: aeae018f92 user: steeeeve tags: trunk
00:10
Minor doc updates. check-in: 60d0481c59 user: stephan tags: trunk
2021-03-26
20:03
Merged in manifest-cache branch. check-in: db22eb455c user: stephan tags: trunk
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). Closed-Leaf check-in: 1da8255567 user: stephan tags: manifest-cache
08:00
Minor cleanups. check-in: c60d9b4435 user: stephan tags: manifest-cache
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). check-in: 6bb1262768 user: stephan tags: manifest-cache
04:08
Added more timing info to f-parseparty. check-in: a955308062 user: stephan tags: trunk
2021-03-25
19:44
Added manifest version and timestamp to autoconfig.h. check-in: e82e436b45 user: stephan tags: trunk
03:15
Changed manifest setting from urt to on (==ur). check-in: 329c02ac27 user: stephan tags: trunk
00:40
Some s2 and sqlite3 usage modernization in the s2 bindings. check-in: 6b346e8787 user: stephan tags: trunk
2021-03-24
23:55
Fixed a copy/paste error in f-apps/index.md. check-in: 184b414392 user: stephan tags: trunk
23:52
Added missing f-update to f-apps/index.md. check-in: aa3c8f6db3 user: stephan tags: trunk
23:17
f-update now runs in non-dry-run mode by default, as there's little chance of data loss and i keep forgetting to pass the flag to disable it, leading to confusion when recently-added files aren't in the filesystem afterwards. check-in: 8582be822e user: stephan tags: trunk
23:06
Another tiny upstream s2 tweak. Fixed a broken assert in fsl_ckout_update(). check-in: 0b1a361d6c user: stephan tags: trunk
22:56
Minor doc tweaks and added auto.def check for libreadline for the sake of f-s2sh. check-in: 252a8c3327 user: stephan tags: trunk
22:55
Fixed upstream s2 bug in which resolution of define()d values would violate an internal convention for skip-mode handling. check-in: f49f227267 user: stephan tags: trunk
22:16
Brought C++/s2 bindings up to date with recent API changes. check-in: da095e1065 user: stephan tags: trunk
18:43
Pedantically changed fsl_acache::szTotal and szLimit from uint32_t to fsl_size_t to avoid an uncomfortable corner case. check-in: 9286ae3e09 user: stephan tags: trunk
18:35
Tinkering with the artifact cache. Corrected its size measurements to use buffer capacity instead of buffer used bytes, noting that fossil's counterpart measures the used bytes instead of capacity. check-in: 9bdf227d32 user: stephan tags: trunk
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). check-in: 7c05e9d44f user: stephan tags: trunk
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. check-in: 81cbf6794f user: stephan tags: trunk
15:04
Corrected a broken call to fsl_match_vfile_or_dir() in fsl_filename_to_vfile_ids(). check-in: 411a695e8c user: stephan tags: trunk
08:33
Doc updates, some char-to-bool API signature updates, and renamed a deeply internal API func. check-in: 6a6b5d1e43 user: stephan tags: trunk
08:02
Minor doc updates. check-in: bd0c92e3cc user: stephan tags: trunk
07:19
Added SQL UDF fsl_match_vfile_or_dir() and used it to simplify some expressions. check-in: 674cd67c12 user: stephan tags: trunk
06:23
Refactored the remove-empty-dirs APIs a bit. Revert now tries to remove empty dirs of renames. Fixed path handling in revert - was using relative paths which only worked from the top of the tree. Added missing outer transaction in f-revert which could cause a failed revert to leave vfile in a partially-reverted state. check-in: 62c2d986fb user: stephan tags: trunk
05:00
Cleaned up fsl_is_locally_modified() is-changed reporting. Added fsl_file_rename(). The revert op now renames files when reverting a rename op. fsl_vfile_to_ckout() now, like fossil, writes to vfile.pathname instead of to vfile.origname, and revert accounts for that. check-in: 4f342af54f user: stephan tags: trunk
2021-03-23
20:18
etags generation: fake success even if it fails, to avoid that this non-critical bit breaks the build on Ubuntu 18.04, as reported by Martin G. check-in: 9df7dca16f user: stephan tags: trunk
19:43
Change usage message for -disable-shared/-disable-static build options to reflect the "--disable-" prefix. check-in: 62d1bd7756 user: mgagnon tags: trunk
00:49
Refactored the rm op to use a callback to report removals, similar to add and revert. Renamed fsl_ckout_file_add/rm... to fsl_ckout_manage/unmanage... Sidebar: used f-revert and the stash to recover from a fatal perl-regex refactoring mishap while working on this. check-in: 09300fddd6 user: stephan tags: trunk
2021-03-22
19:41
Minor internal cleanups in fsl_vfile_to_ckout(). check-in: 0039bd6cc4 user: stephan tags: trunk
19:38
Fixed a test assert broken by the previous commit. check-in: 541e4fd2d7 user: stephan tags: trunk
17:54
Added fsl_ckout_manifest_setting(). fsl_reserved_fn_check() now honors the various manifest files as being forbidden for addition into the repo (but will allow them if they're already in the vfile table). Swapped 2 params in fsl_ckout_file_add_f() signature. check-in: 2c4a018200 user: stephan tags: trunk
16:14
Changed fsl_ckout_revert() to take an options object and added scanForChanges option. fsl_vfile_to_ckout() now prefers to write to vfile.origname instead of vfile.pathname, but that change is up for re-evaluation. Changed fsl_ckout_changes_visit() to report edited-and-renamed files as edited instead of renamed because fossil does it that way. check-in: 2cf2cebe3d user: stephan tags: trunk
13:52
f-revert now requires at least one file/dir name, to avoid potential accidental data loss (since we have no undo support). check-in: a465f04880 user: stephan tags: trunk
13:45
Added f-revert, analog to (fossil revert). Fixed f-rm to handle the filename '.' sensibly. Numerous tweaks in adjacent code along the way. check-in: 8cc33e4e8a user: stephan tags: trunk
10:01
Changed the signature of fsl_ckout_file_rm(). check-in: 356e3783c9 user: stephan tags: trunk
03:24
Added doc dir to cleanup rules to prevent weirdness when Doxygen.in is newer than Doxygen but configure doesn't recreate the latter because it hasn't changed. check-in: 4655602392 user: stephan tags: trunk
2021-03-21
23:20
Added a missing DISTCLEAN_FILES entry and squelched a couple assigned-but-unused var warnings. check-in: f8f6871ef8 user: stephan tags: trunk
00:37
Doc touchups. check-in: 550f86da3a user: stephan tags: trunk
00:26
Consolidated checkout/update to both use fsl_ckup_fchange_e to report the type of change, allowing removal of several of the fsl_ckup_state members. Local uncommitted adds and removals are now propagated when updating. Various adjacent tweaks. check-in: 1efb02180b user: stephan tags: trunk
2021-03-20
21:36
Minor restructuring of the fcli struct. check-in: 436ae2c47f user: stephan tags: trunk
21:01
More work in/around the update process. f-update and f-co now only list "noteworthy" changes instead of all files unless the new -Q|--not-quiet flag is used. check-in: 0815bc50d7 user: stephan tags: trunk
21:00
Added fsl_stmt_bind_step() and fixed a bogus return in fsl_stmt_bind_fmt(). check-in: 84a2e6b8f1 user: stephan tags: trunk
18:52
First-ever f-update worked (in a test tree, of course). Still tons and tons of testing to do, and fix the broken removal of empty dirs after update, but baby steps have been made. check-in: 29fbb8bbd9 user: stephan tags: trunk
09:05
Barring one missing piece of to-port infrastructure and a boatload of testing, the update mechanism is in place and seems to be doing its thing. check-in: 9b9b989b2c user: stephan tags: trunk
06:36
Improved to updating of vfile during a checkin, avoiding a rescan which nuked newly-added/rm'd entries which are not part of the commit. Various adjacent tune-up. f-ci now rolls back the manifest file writes in dry-run mode. check-in: 6caa73a8b3 user: stephan tags: trunk
05:08
Experimentally doing fsl_ckout_manifest_write() from fsl_ckout_version_write(). check-in: ac3204cf35 user: stephan tags: trunk
04:19
Several cleanups in/around open/checkout/checkin. check-in: 2c56bac8e2 user: stephan tags: trunk
04:18
Removed old/unmaintained MSVC build instructions. check-in: 4e8c7463d9 user: stephan tags: trunk
04:04
Added 'manifest' versionable setting. check-in: b4f1e525ca user: stephan tags: trunk
01:08
Fixed, i hope breakage in f-open and the checkin process caused by the previous checkin. check-in: 6f6c730a13 user: stephan tags: trunk
01:04
fsl_vfile_load_from_rid() moved out of the public API and it no longer modifies the checkout version because that's incompatible with some uses. Removed some dead code. (Broke the checkin process when doing that.) Closed-Leaf check-in: 40ebc77b90 user: stephan tags: mistake
00:59
fsl_vfile_load_from_rid() moved out of the public API and it no longer modifies the checkout version because that's incompatible with some uses. Removed some dead code. check-in: df39a4d7b2 user: stephan tags: trunk
00:35
More work on the update op. check-in: 34f0c94b79 user: stephan tags: trunk
2021-03-19
18:18
Removed some old/obsolete db-close cleanup. check-in: 30d55a9edb user: stephan tags: trunk
18:12
More work on the update process. Getting close, but time for a break. check-in: 5667e3e23a user: stephan tags: trunk
10:01
fsl_ckout_manifest_write() now deletes the manifest files which it does not create unless they are part of the current checkout. More work on/towards the update op. check-in: 9d86e51a31 user: stephan tags: trunk
07:27
More work on the update infrastructure. It seems we can consolidate the options and callback state for checkout/update opts, so renamed some APIs to account for both. check-in: 6ceda397ad user: stephan tags: trunk
06:25
Corrected the cannot-commit-to-closed-leaf error message. check-in: 3ef6bd9a05 user: stephan tags: trunk
05:19
Added fsl_ckout_write_manifest() to optionally write out the (manifest, manifest.uuid, manifest.tags) files for a checkout. fsl_ckout_calc_update_version(): removed the preferLatest parameter and it now reports the list of ambiguous candidates in its error string. check-in: 07fd8c1f33 user: stephan tags: trunk
00:54
Moved the calc-update-version algo from f-update.c into the library. check-in: 3ad694f967 user: stephan tags: trunk
00:30
More work on the 'update' infrastructure. Turns out we're still missing an important low-level bit or three. check-in: c6dc2f9770 user: stephan tags: trunk
2021-03-18
23:36
f-update can now figure out which version to update to, but... baby steps. check-in: 7a11d37185 user: stephan tags: trunk
19:29
Pedantic doc tweaks. check-in: ccc528b363 user: stephan tags: trunk
19:19
Moved the code for listing ambiguous hash prefixes from f-resolve to fcli. More work on the infrastructure needed for f-update. check-in: b50971a43e user: stephan tags: trunk
16:30
Doc clarifications. Removed an unnecessary fsl_strlen() call to fetch a length we already had. check-in: f3e995febf user: stephan tags: trunk
16:07
Some minor API renaming for clarity and started work on an app for porting over the update op (noting that it's currently nothing more than a skeleton). Changed how fsl_repo_ckout_state reports filenames: ckout-relative instead of absolute seems more appropriate. Might want to include both, though. check-in: 045532178f user: stephan tags: trunk
14:01
Minor allocation optimization in/via fsl_deck_output(). check-in: 5ec7cd9c0c user: stephan tags: trunk
13:45
Added f-_template.c to the f-apps list. check-in: ef8224ca0e user: stephan tags: trunk
13:35
Minor doc modernization. check-in: e55d4623ca user: stephan tags: trunk
2021-03-17
12:29
Added f-apps dir to the top-level build process. check-in: 846a77c607 user: stephan tags: trunk
00:29
Minor internal doc tweaks. check-in: 9f11809db4 user: stephan tags: trunk
00:15
Removed an extraneous parameter from a few functions. Stopped senselessly checking for NULL fsl_cx arg in fsl_ckout_version_info(). check-in: 8c212df490 user: stephan tags: trunk
2021-03-16
20:23
Tiny optimization in fsl_repo_blob_lookup(). check-in: 71c1bd8ef6 user: stephan tags: trunk
2021-03-15
19:01
Tiny doc tweaks. check-in: 02eacfa610 user: stephan tags: trunk
18:50
Considerable refactoring in/around fsl_repo_open_ckout() to move some of the functionality of f-open into the library and some into fcli. check-in: 15425f1d4c user: stephan tags: trunk
12:12
Swapped order of 2 parameters to fsl_confirm_callback_f - just seems more consistent that way. check-in: 26191854cd user: stephan tags: trunk
11:34
Fixed a race condition in the doxygen build/upload process. check-in: c1d7a2eb69 user: stephan tags: trunk
11:14
Extended the fsl_confirmer API to be able to ask, and get responses to, simple multiple-choice questions. This will be needed, e.g., for performing an update operation when multiple versions are equally viable candidates. check-in: ccc0fef970 user: stephan tags: trunk
05:53
fsl_appendf(): ported in comma-separated decimals from [fossil:2cdbdbb1c9b7ad2b]. check-in: 5f6954fc89 user: stephan tags: trunk
04:25
Globally renamed _checkout to _ckout, as some of these names are getting a bit long. check-in: bc9e88ee2c user: stephan tags: trunk
03:35
Moved a couple functions out of the public API. check-in: 40c2c455fc user: stephan tags: trunk
03:28
f-parseparty now deletes tags related to things it's going to crosslink before it starts working. Added a missing transaction. check-in: dd742d955b user: stephan tags: trunk
2021-03-14
23:06
Fixed a doxygen warning. check-in: 14b4e8590b user: stephan tags: trunk
21:23
Moved some config-settings-related stuff out of the public API for the time being. check-in: 2c6c7eda48 user: stephan tags: trunk
16:00
Minor doc touchups. check-in: 954e16e804 user: stephan tags: trunk
15:50
Considerable hammering on the config db APIs to make handling of versionable settings work like the other modes. Eliminated the versionable-specific config get/set APIs. check-in: a2cd19f640 user: stephan tags: trunk
11:48
Renamed fsl_repo_checkout_state::xState to extractState. check-in: 9c08a8a4ac user: stephan tags: trunk
2021-03-13
19:18
Doc touchups and replaced a few stray %d refs with % FSL_ID_T_PFMT. (Pedantic, i know, but it might as well be done right.) check-in: 6cb2db9cf2 user: stephan tags: trunk
19:17
R-card calculation now dies if it's asked to checksum a symlink, to avoid creating a potentially invalid R-card. (We don't do symlinks, and may never do them.) check-in: eb1693f394 user: stephan tags: trunk
19:14
f-resolve now lists matching UUIDs when given an ambiguous prefix. Currently it lists all, regardless of type, but that's up for reconsideration. check-in: 434eee4149 user: stephan tags: trunk
18:55
f-apps doc touchups. check-in: 451bd605b2 user: stephan tags: trunk
10:11
Doc tweaks and minor struct member refactoring. check-in: f0c03038ff user: stephan tags: trunk
09:46
Renamed an enum. Minor doc and formatting tweaks. check-in: efd3f4d510 user: stephan tags: trunk
08:16
Brought fsl_vfile_scan_changes() up to date wrt fossil, improving its accuracy as well as speeding it up. Improved reporting via fsl_checkout_changes_visit() (i.e. f-status) results. Removed about 200 lines of dead vfile code. check-in: c77e85e259 user: stephan tags: trunk
06:17
Minor fsl_cx_confirmer() API changes. Removed the extraneous xvfile temp table used by the checkout process and instead use a dual-versioned vfile table. check-in: e81048d148 user: stephan tags: trunk
05:27
Several minor changes moving us slightly closer to be able to add update support. check-in: 1329430a6a user: stephan tags: trunk
05:22
Added --timer flag to fcli to measure runtime from fcli_setup() until post-main() shutdown. check-in: 2d8c87e253 user: stephan tags: trunk
04:10
Added total/current file counters to fsl_repo_extract_state so that clients can calculate progress percentage. check-in: 356da76d92 user: stephan tags: trunk
04:08
Added s2.Buffer.sha3(). check-in: 44f7331517 user: stephan tags: trunk
01:12
Updated f-s2sh.s2 init script for s2sh2 internals. check-in: 8d497fd57b user: stephan tags: trunk
01:09
Swapped out f-s2sh's shell.c with shell2.c (s2sh2 instead of s2sh classic). check-in: e20cc9720f user: stephan tags: trunk
2021-03-12
19:56
Commented out an assert which prohibits running f-sanity on a non-leaf build. check-in: f2f1612a0c user: stephan tags: trunk
19:32
Merged in cx-scratchpad-rework. check-in: 178f36ed54 user: stephan tags: trunk
19:31
The hashing routines were responsible for the unexpected buffer resizing, as they were explicitly resizing their output buffers to fit. Closed-Leaf check-in: 06f5974d60 user: stephan tags: cx-scratchpad-rework
17:28
Added a new file which had gotten lost in local stash saves/pops. Removed now-incorrect assert(). check-in: 4b0a66807f user: stephan tags: cx-scratchpad-rework
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. check-in: 01c1cff578 user: stephan tags: cx-scratchpad-rework
13:48
Minor API renaming, for consistency. check-in: f2fc1f3efd user: stephan tags: trunk
13:47
fsl_deck_parse() now silently skips over F-cards for which fsl_is_reserved_fn() returns true, as fossil does the same thing since late 2020. check-in: 520d31d80a user: stephan tags: trunk
13:06
Moved some code around and renamed a struct member for consistency with similar structs. check-in: 9bd1cfea4b user: stephan tags: trunk
09:15
Minor refactoring in prep for upcoming changes. check-in: 888cb5cc24 user: stephan tags: trunk
2021-03-11
23:05
Doc updates. Changed default checkin deltaPolicy to 0. Corrected a falsehood about Chuck Norris. Refactored checkout's rm-empty-dirs bits into fsl_rm_empty_dirs(). Fixed mis-reset of fsl_checkout_file_add_opt::counts. Minor malloc optimization in the post-checkout file removal bits. check-in: fd313baef4 user: stephan tags: trunk
18:56
Minor doc updates and added a couple TODOs related removing now-unmanaged files after an rm op. check-in: 419099b063 user: stephan tags: trunk
18:15
Ported f-add's dir-recursion and ignore-glob capabilities into fsl_checkout_file_add() and expanded that function's feature/option set considerably. check-in: 61d3e64e6f user: stephan tags: trunk
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. check-in: 6bdb294442 user: stephan tags: trunk
03:58
Minor doc touchups and char-to-bool conversions. check-in: 8a393e5255 user: stephan tags: trunk
03:57
Updated s2 binding for the fsl_deck::F2==>F refactoring. check-in: c7702424bd user: stephan tags: trunk
2021-03-10
17:36
Minor fcli API usage modernization. check-in: c04ce8aaf1 user: stephan tags: trunk
17:00
Minor doc/help text cleanups. check-in: 801690e98c user: stephan tags: trunk
16:41
Refactored fsl_dircrawl_f() to take a fsl_dircrawl_state struct as an argument and added current recursion depth to the passed-on state. check-in: 4a70a0dd17 user: stephan tags: trunk
15:47
Added fsl_dircrawl() for recursively crawling directories and added recursive dir and ignore-glob support to f-add. fsl_buffer_reuse() now returns its argument. check-in: c1199e807f user: stephan tags: trunk
15:41
If fcli_end_of_main() sees that there is a non-0 result code but no message, it synthesizes a message. check-in: 86350ecd42 user: stephan tags: trunk
12:42
Ported in upstream fix [fossil:b491c196c23ec4a240f4]. check-in: 2706788d19 user: stephan tags: trunk
08:54
Corrected missing +x bit in manifests broken in the F-card refactoring. check-in: d0d4c78fb2 user: stephan tags: trunk
08:32
Merged in f-card-array branch. Not the huge performance win i was hoping for but an overall win. check-in: 0626035798 user: stephan tags: trunk
08:25
Renamed the 'F2' F-card temporary porting name back to F. Closed-Leaf check-in: 63e886fff0 user: stephan tags: f-card-array
08:06
New F-card list model is working but the savings for it are underwhelming to say the least. At most, 10-15% alloc count savings on f-parseparty runs, with a slightly higher RAM total. Disabled delta checksum self-test, as it's a big time hit and fossil also disables that by default. (Edit: but this changes cuts the time needed for f-parseparty to process the core fossil repo by a bit more than half. It's still dog slow compared to a fossil rebuild, though.) check-in: 2440c84b01 user: stephan tags: f-card-array
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. check-in: e484d5f96e user: stephan tags: f-card-array
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. check-in: 725c13c0d0 user: stephan tags: f-card-array
2021-03-09
14:03
Fixed a memleak in f-tag. Added --tag flag to f-ci. Tightened validation of tags at output-time (as opposed to parse-time) such that it is no longer legal to add the same tag name/target combination twice in the same artifact, even if they have different types (add/cancel/propagate). check-in: 200bddbb8a user: stephan tags: trunk
06:30
Added a flag to tell fsl_checkin_commit() whether or not to scan vfile for changes, analog to the same option in fsl_repo_checkout(). A few char-to-bool conversions. check-in: 3bff6c7de8 user: stephan tags: trunk
06:06
Merged in confirmer-co branch. check-in: 28bcebca4e user: stephan tags: trunk
06:04
Re-added inadvertently-removed Makefile.in. Closed-Leaf check-in: 9261998d3b user: stephan tags: confirmer-co
06:01
Minor confirmer cleanups and docs. check-in: d58d30707f user: stephan tags: confirmer-co
05:17
It seems we just about have the confirmer bits working for f-co. Had to change the semantics of --keep, but the older semantics feel really weird. Needs a bit more testing. check-in: ed0fa2b56a user: stephan tags: confirmer-co
01:22
Fixed a couple broken error checks. f-co --quiet --verbose now lists only files which actually changed, rather than all files. check-in: 85113ee198 user: stephan tags: confirmer-co
01:07
Removed a stale historical java file. check-in: ba65bbe94e user: stephan tags: confirmer-co
00:13
Minor tweaks of the confirmer bits. check-in: 13fb58bfdd user: stephan tags: confirmer-co
2021-03-08
23:55
Minor cosmetic cleanups. check-in: ce584dc03b user: stephan tags: confirmer-co
23:42
Optimizations in fsl_repo_checkout() to reduce fsl_content_get() calls, only writing files which vfile says have changed. Cuts alloc counts by approx. 3-4x and memory cost by 5-8x in basic tests. f-co now has a blank status square for files which were not modified, to make it easier to spot the real changes. check-in: 735e9e32ab user: stephan tags: confirmer-co
19:36
Initial work on integrating fsl_cx_confirm() with the checkout process. It basically seems to work but has several notable TODOs and FIXMEs. check-in: 6dd8166303 user: stephan tags: confirmer-co
15:59
Improved, hopefully, the auto.def check for C99 by looking for __STDC_VERSION__. check-in: 05ec494ec4 user: stephan tags: trunk
15:14
Seem to have fixed the broken merge handling in checkin. Caused by prematurely clearing out the vmerge table. check-in: 96b46cc3f0 user: stephan tags: trunk
13:50
Merged inadvertent fork from remote BSD box. Edit: BUG: f-checkin did not close the merged-in branch, despite merging with --integrate. It did clear the vmerge table, though. Edit: fixed in [96b46cc3f0]. check-in: f4ef8f360f user: stephan tags: trunk
13:48
auto.def: iconv test failure is no longer fatal, per auto.def in fossil. Closed-Leaf check-in: 60b9efa18b user: stephan tags: trunk
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. check-in: c8b25fe30f user: stephan tags: trunk
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). check-in: 9a6bb6834f user: stephan tags: trunk
03:49
Internal tweaking of the removed-from-checkout file deletion bits. check-in: 3ebdc1dfba user: stephan tags: trunk
03:48
Resolved an intermittently flaky sanity check which relied on specific timing. Added a couple fsl_cx_stat2() tests. check-in: e6cab89089 user: stephan tags: trunk
03:26
Sped up fsl_is_locally_modified() for the common case by adding a file-size comparison before falling back to hash comparison. check-in: 53fb496dc8 user: stephan tags: trunk
2021-03-07
16:55
Added f-co to f-apps/index.md. check-in: 3a1a1c8dfa user: stephan tags: trunk
16:49
Minor internal cleanups. check-in: 7666cd3214 user: stephan tags: trunk
14:37
Added FSL_RC_CONFLICT. Checking process now detects merge conflict markers and fails if fsl_checkin_opt::allowMergeConflict is false (which it is by default). Added f-ci --allow-merge-conflict flag. Removed what seems to be a superfluous db update in the checkout process. check-in: b5479cc3c6 user: stephan tags: trunk
13:40
Removed dead code. check-in: 26e2c2a962 user: stephan tags: trunk
13:00
Removed more long-since-unmaintained tcl/jni files. check-in: 94f38d439f user: stephan tags: trunk
12:40
Memleak fix. check-in: 1c829de1f1 user: stephan tags: trunk
12:35
Implemented f-co --manifest. check-in: 91a9c30303 user: stephan tags: trunk
11:48
Null pointer deref fix. check-in: 91aa67ba47 user: stephan tags: trunk
11:40
Removed dangling bits left over from the previous commit. check-in: 23a5dfe46a user: stephan tags: trunk
11:06
Removed the vtables for the fossil config settings handling. They're long-since unmaintained and the library is no longer going to enforce the fossil-specific list of config options. check-in: 3f606ecdf0 user: stephan tags: trunk
10:55
Minor doc cleanups and API renaming. check-in: 8425dbc02c user: stephan tags: trunk
10:34
Added --save flag to f-mfparse to store the deck into the repo. That was used to stuff a hand-crafted mass-closing control artifact into fossil: [https://fossil-scm.org/home/info/2e525856ec57bb9f]. Don't try that at home, please. check-in: 198dabd041 user: stephan tags: trunk
09:43
Renamed a cryptically-named struct member from fc to fCard. check-in: ae428e47b0 user: stephan tags: trunk
08:48
Moved some f-ci always-output into verbose-only output, which coincidentally uncovered... Fixed the duplicate crosslinking which was being performed via fsl_checkin_commit() and made fsl_deck_save() change how it crosslinks depending on whether fsl_crosslink_begin() is active, which (in turn) fixed the fsl_repo_has_mlink_mid() discrepancy vis a vis fossil for checkin crosslinking. check-in: 0c3df4194e user: stephan tags: trunk
08:27
Replaced Q-card magic values with an enum. check-in: b81f4c29c9 user: stephan tags: trunk
2021-03-06
17:35
fsl_checkout_changes_visit() now treats a callback return of FSL_RC_BREAK like most iteration API do. Doc touchups. check-in: 0bdf51b375 user: stephan tags: trunk
16:27
Improved handling of deleted-by-checkin files via fsl_repo_checkout() and their reporting via f-co. check-in: 038cd076ae user: stephan tags: trunk
11:29
fsl_repo_checkout() deletion of empty dirs now walks up parent dirs to catch those strays left over by the previous commit. To see this in action, do (f-co tip) then (f-co rid:1), which should leave an empty dir except for .fslckout. check-in: 6c174db6f3 user: stephan tags: trunk
11:06
fsl_repo_checkout(), when removing leftover files, now tries to prune empty dirs. It does not catch dirs which themselves contain no files (contain only other dirs), as vfile has no entry for such dirs. Solving that requires more dir name slicing-up. check-in: 682c42c3a9 user: stephan tags: trunk
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. check-in: 633bf431cd user: stephan tags: trunk
07:43
More char-to-bool conversions. Moved fsl_stmt_bind_fmt() into the public API and added a basic test for it. check-in: d386e0d741 user: stephan tags: trunk
06:00
f-open and f-co now (mostly) honor --quiet. f-co now deletes files which removed between the original and target checkin unless the --no-rm flag is used. f-co cowardly refuses to check out the same version over itself. BUG: i have seen a few instances where the vvar 'checkout' setting disappears, leading to later app calls saying it's 'not a checkout', but have yet to pin down the origin. check-in: da6bcc64ba user: stephan tags: trunk
05:58
fcli now rolls back any active transaction when it shuts down. check-in: bc58934765 user: stephan tags: trunk
05:14
Removed some unused files (coincidentally need deletions for testing). check-in: 0dcf7291aa user: stephan tags: trunk
04:51
Notes and assertions about F-card traversal not including F-cards with a NULL UUID (indicating that they were deleted in a delta manifest). check-in: 30b1a2435b user: stephan tags: trunk
04:29
More tinkering with the f-co/f-open-related infrastructure. check-in: 13194b49eb user: stephan tags: trunk
04:28
Added schema names to the various pragma SCHEMA.application_id calls. check-in: 5844dc0eeb user: stephan tags: trunk
01:01
Added dry-run mode to fsl_repo_checkout(). Minor cleanups in f-open and f-co. check-in: f54d7ff201 user: stephan tags: trunk
00:07
Got f-co working, but am not sure that the --keep semantics are useful. More refactoring in/around f-open and f-co. check-in: eeb7706e6e user: stephan tags: trunk
2021-03-04
22:46
Refactored fsl_repo_checkout() to take a different options type and callback, and provided that callback with more interesting state. Restored f-open functionally which was disabled due to the lack of that state. check-in: ea7a0da420 user: stephan tags: trunk
21:26
Upstream s2 fixes for clang warnings (one of which is absolutely bogus). check-in: d3e363479c user: stephan tags: trunk
21:16
Updated C++ binding for API changes. check-in: 0c114ca6be user: stephan tags: trunk
21:07
Started factoring the extract-to-checkout code from f-open into lib-level fsl_repo_checkout(). This loses a feature or two which will have to be reworked into the lib API but it seems to work. check-in: 5fd71c1b87 user: stephan tags: trunk
19:29
Renamed fsl_repo_open_opt to the unfortunately verbose fsl_repo_open_checkout_opt to avoid confusion about the options being for fsl_repo_open() (which they're not). Fixed chdir()-back behavior in fsl_repo_open_checkout() when opt->targetDir is NULL. check-in: ea0bfdc56d user: stephan tags: trunk
19:12
fsl_repo_open_checkout() now chdir's back to its starting directory. check-in: fb7e54a710 user: stephan tags: trunk
19:06
Minor API tweaks. Corrected --setmtime handling of f-open (broken by my refactoring). check-in: 3e996ceab5 user: stephan tags: trunk
18:24
Renamed f-checkin to f-ci and f-checkout to f-co because the tab-completion conflicts are getting annoying :/. check-in: 932ec8ad51 user: stephan tags: trunk
18:19
Refactored fsl_repo_extract() to take a struct and added an option to specify whether or not the file content should be extracted. Fixed fsl_mkdir_for_file() for 1-letter filenames. check-in: 0e31c5674e user: stephan tags: trunk
17:45
f-open: removed unnecessary content load and added some library-level functions to help streamline transaction handling. check-in: 5c988bf424 user: stephan tags: trunk
16:54
Added fsl_file_exec_set() and changed f-open to use it for setting the +x bit. check-in: e57eeac51e user: stephan tags: trunk
15:12
Minor internal cleanups. Corrected hash handling of fsl_repo_import_blob(). check-in: 5e448f56bb user: stephan tags: trunk
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. check-in: d1428d5a93 user: stephan tags: trunk
12:28
Numerous cleanups and fixes in/around the infrastructure used by f-open. check-in: b67129bbb9 user: stephan tags: trunk
12:03
Removed the 2nd part of the system-level sqlite3 check. check-in: 191ba4272e user: stephan tags: trunk
11:22
Added f-open to the f-apps list. check-in: b0f07b73c9 user: stephan tags: trunk
10:29
Removed unused (and unplanned) option from the configure script for using a system-level libsqlite. check-in: e44b5a8c2c user: stephan tags: trunk
2021-03-03
17:11
Tinkering with the fcli_command help bits. check-in: 8dfc562e7c user: stephan tags: trunk
16:44
Restored f-sanity's -1 flag. check-in: 9fc41dba87 user: stephan tags: trunk
16:41
Renamed fsl_path API to fsl_vpath to avoid any confusion with fsl_pathfinder. check-in: a8d1262cc1 user: stephan tags: trunk
11:42
Renamed fsl_buffer_reset() to fsl_buffer_reuse() to try to reduce the confusion between its semantics contrasted with fsl_buffer_clear(). check-in: 0584c1b6e2 user: stephan tags: trunk
11:36
Added missing change-type values to fsl_checkout_changes_visit(), which could have triggered an assert(), and replaced the assert() with debug output which warns of the mismatch. check-in: eaaffd743b user: stephan tags: trunk
09:27
When creating a new checkout db via fsl_repo_open_checkout() we write default checkout=0, checkout-hash=NULL values so that downstream code does not see this as a non-repo when it cannot find those. check-in: e8b25ce3bc user: stephan tags: trunk
08:38
Lots of bending and hammering related to smoothing out f-open. There's still an issue when opening an empty checkout (it's seen as not a checkout by other apps), but that's on the to-fix list. check-in: 2a04a6818c user: stephan tags: trunk
2021-03-02
14:47
Merged in open-ckout-wip. Corrected a broken assumption/assertion combination trigged by fsl_deck_R_set(). check-in: 6ce13d2392 user: stephan tags: trunk
14:00
Replaced an internal-data use with a public API call. Closed-Leaf check-in: df215ddcb5 user: stephan tags: open-ckout-wip
12:39
Setting config vars in repo.config now sets the mtime to now(). check-in: ac329b2eed user: stephan tags: open-ckout-wip
11:53
Replaced hard tabs. Fixed corrupted dir name (uninitialized var). check-in: 4216a1dcd3 user: stephan tags: open-ckout-wip
10:32
A round of minor cleanups in getting f-open working for me. Time for a break, though. check-in: ba432bca3a user: stephan tags: open-ckout-wip
09:48
Remove an unneeded(?) parameter from fsl_vfile_load_from_rid(). check-in: 0ba7388df1 user: stephan tags: open-ckout-wip
09:18
Temporary workarounds for set-but-not-yet-used var warnings. check-in: 06f1db287f user: stephan tags: open-ckout-wip
08:49
Implement f-open and f-checkout roughly ported from db.c::cmd_open() and checkout.c::checkout_cmd() in Fossil using a draft implementation of the fsl_repo_open_checkout API designed by Stephan. This is a work in progress and is missing a few critical pieces but will open and checkout a given repository. Only tested on OpenBSD and macOS and may not work on Windows yet. check-in: 4897fa7285 user: mark tags: open-ckout-wip
08:41
Minor doc improvement. check-in: 3c7f48ce4d user: stephan tags: trunk
2021-03-01
16:21
Arguably a typo fix in the new header. Thank goodness for stream editors. check-in: 386316db07 user: stephan tags: trunk
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. check-in: fa5fb24496 user: stephan tags: trunk
14:27
Resolved an API inconsistency between fsl_is_reserved_fn() and fsl_is_reserved_fn_windows(). check-in: f8b6945191 user: stephan tags: trunk
13:45
Renamed FCliCommand to fcli_command for consistency's sake. check-in: 92aa86396d user: stephan tags: trunk
12:31
Improved the checkin-to-closed-leaf check to allow checkin if the branch would change. Ported in the reserved filename checks, so that 'add' ops will fail if the user adds a filename which is illegal. check-in: 2d90220116 user: stephan tags: trunk
07:57
Corrected the sameLine() merge-internal algo, so merge collisions are now detected. Minor internal merge/merge-adjacent cleanups. check-in: ecfc36587c user: stephan tags: trunk
04:59
Ported in 3-way-merge algo and first test runs :-D. Time for a break. check-in: 64c2d4a752 user: stephan tags: trunk
2021-02-28
17:10
Started porting in fossil's merge algorithm. It looks like the support algos are all in place, just the main merge is missing. First some sleep, though. check-in: 2cfc9d6ae9 user: stephan tags: trunk
11:49
Removed the superfluous length parameter from fsl_deck_U_set(). check-in: 908a2d314c user: stephan tags: trunk
11:33
API doc touchups. check-in: f27c0b7c9c user: stephan tags: trunk
10:58
Consolidated some duplicate fcli init code. Added help support for FCliCommand, such that if the first argument after the command name is 'help' and it has fcli_cliflags set then the help for just that command is invoked. e.g. (f-wiki ls help) shows just the help for the ls command. check-in: 163c5ac4b8 user: stephan tags: trunk
09:50
Reworked the fcli flag handling to accept and convert a range of flag types. It requires some pointer care on the user's part but is far more flexible. check-in: fa7c45e1ef user: stephan tags: trunk
08:30
Minor doc tweaks. check-in: 952718f17b user: stephan tags: trunk
08:23
Removed obsolete/unmaintained f-apps/msvcXX bits. check-in: bdebba49fb user: stephan tags: trunk
08:13
Changed how fcli handles verbose help mode (multiple -? act like higher verbosity levels). Improved catching/reporting of flags which require a value but don't get one (lol, which breaks f-checking -d -). Added f-_template.c for use as a copy/paste basis for new f-apps. check-in: 41295403c0 user: stephan tags: trunk
06:34
Removed obsolete/unmaintained file. check-in: 3457a265b4 user: stephan tags: trunk
04:57
fcli now uses its own FCLI_RC_HELP, instead of hijacking FSL_RC_BREAK, to indicate that --help was triggered. check-in: d0edf4583f user: stephan tags: trunk
04:22
Update to newer fossil-scm canonical home URL and change some SHA1-specific doc references. check-in: 0a36473e4c user: stephan tags: trunk
04:15
Generic cleanups, char-to-bool conversions. Moved fsl_acache bits into their own file. Shrunk a couple of struct sizes. check-in: 7c8b025221 user: stephan tags: trunk
02:50
Fixed a couple uninitialized flags which led to unpredictable output, reported by Mark. check-in: 45afc881bd user: stephan tags: trunk
02:50
Removed 'required' flag from fcli_cliflag (it was particularly useless with boolean flags). check-in: 19fce623c4 user: stephan tags: trunk
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. check-in: ca464b5b74 user: stephan tags: trunk
13:13
More fcli CLI reworking. Renamed FossilCommand to FCliCommand and expanded it with a CLI flags array for command-specific flags dispatching and unifying help text generation for command-driven apps like f-wiki and f-config. check-in: 36bb349a93 user: stephan tags: trunk
12:04
Ported f-wiki to the new CLI flags mechanism and extended the fcli public API a bit to be able to support command-dispatch-style apps like f-wiki. check-in: 97a2679fd1 user: stephan tags: trunk
11:06
Doc additions and removed some dead code. check-in: 14ba664742 user: stephan tags: trunk
10:59
f-timeline ported to new CLI flag handling. check-in: 62eb079a3c user: stephan tags: trunk
10:43
More CLI flags handling changes. Completely re-did how f-tag handles its arguments. fcli --help now only shows global options when using --verbose. check-in: 75e5fd2467 user: stephan tags: trunk
07:51
Ported f-query to the new CLI flag bits. check-in: 9d212daff6 user: stephan tags: trunk
07:08
More CLI flag subsystem porting and license header swapping. check-in: c94a3b0d0e user: stephan tags: trunk
06:56
More CLI flag subsystem porting. check-in: 96957a63d7 user: stephan tags: trunk
06:38
More f-apps ported to the new CLI flag handling bits. check-in: 296776c72b user: stephan tags: trunk
06:05
More work on the new fcli flags infrastructure. check-in: 6865f151f9 user: stephan tags: trunk
05:17
Fixed checkin merge integration, hashing of decks when saving (was hard-coded to SHA1), and improved determination of which hash policy to use based on the hash-property config setting. check-in: 65b9309997 user: stephan tags: trunk
04:21
Remove unneeded error check for fsl_buffer_reset() as it's infallible in this call. check-in: 46bbae2d88 user: mark tags: trunk
03:59
Merging in fcli-flag-rework branch. It's not complete but it's at a point where we can use both the old and new worlds at the same time while porting. Edit: bug: f-checkin did not close the branch we merged in with --integrate. check-in: 3288acfcbc user: stephan tags: trunk
03:51
Fixed a broken cross-enum assignment discovered by Mark and his magical clang compiler. check-in: 3b50decca1 user: stephan tags: trunk
03:45
Removed an obsolete comment. Closed-Leaf check-in: 9febfd3aa1 user: stephan tags: fcli-flag-rework
2021-02-26
19:49
Found the source of the stale merge state in a large comment block. check-in: 74eabd1b76 user: stephan tags: fcli-flag-rework
19:32
Cherrpick [fc686465edb52] for testing (after fixing a stray comma in a variadic call). Edit: worked but we still have the stale local cherrypick status. FIXME after some sleep. check-in: fedefaad44 user: stephan tags: fcli-flag-rework
19:26
Brought the merge parts of the checkin logic up to date wrt fossil. Need to branch this in order to test it sensibly, though. Closed-Leaf check-in: fc686465ed user: stephan tags: checkin-merge-update
18:54
More porting to the newer fcli flags handling. check-in: f46b535eaa user: stephan tags: fcli-flag-rework
17:44
Tiny cleanup to the previous commit. check-in: b91a8cb985 user: stephan tags: fcli-flag-rework
17:36
More work on the CLI flag handling. Time for a break. check-in: fba3a91a5a user: stephan tags: fcli-flag-rework
17:02
Cherrypicked [5c04ab3a23]. Let's see if f-checkin can handle this properly. Edit: bug - the checkin worked but the cherrypick status is still recorded and active for the next checkin. check-in: 0a7bf91fba user: stephan tags: fcli-flag-rework
16:47
More work on the fcli argument handling rewrite. check-in: 490b7ab32e user: stephan tags: fcli-flag-rework
14:39
Fix bug that unnecessarily resizes buffer resulting in incorrect b->used for SHA3 hash length checks. check-in: 5c04ab3a23 user: mark tags: trunk
14:04
Reworking how fcli flag handling is done. check-in: dad2f76f30 user: stephan tags: fcli-flag-rework
13:10
Removed leftover VC6 projects files. check-in: 6585894b76 user: stephan tags: trunk
06:03
Some doc touchups, enum renaming, and removed some dead code. check-in: 473fd8718c user: stephan tags: trunk
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. check-in: a9332967a7 user: stephan tags: trunk
2021-02-25
10:14
Removed a TODO and applied upstream change [fossil:dad521bb06757a7f]. check-in: 998358d8fe user: stephan tags: trunk
08:25
Renamed another enum. check-in: 9470d94b1b user: stephan tags: trunk
08:22
Some API renaming. Modified how fsl_deck_parse() determines the deck's RID/UUID. Introduced fsl_repo_blob_lookup(). check-in: 467b9e1c18 user: stephan tags: trunk
07:14
Removed fossil-content.h - was logically removed a week or so ago. check-in: 95a93ff3b3 user: stephan tags: trunk
02:48
Removed some dead code. check-in: b024494e7e user: stephan tags: trunk
2021-02-24
20:41
Removed a now-incorrect comment. check-in: ce331bf419 user: stephan tags: trunk
19:34
fsl_appendf() %j now emits "null" (always without quotes) when passed a NULL pointer. check-in: b1e8da4fa7 user: stephan tags: trunk
09:28
Removed some dead code. Added %j (JSON string) encoding to fsl_appendf() using a streaming approach (no allocation). check-in: a008179c2d user: stephan tags: trunk
06:00
f-timeline: renamed event to technote. check-in: ab9b5ace37 user: stephan tags: trunk
05:42
Renamed enum fsl_file_perm_t to fsl_fileperm_e and fsl_rc_t to fsl_rc_e. check-in: eb5c621f98 user: stephan tags: trunk
05:38
Minor internal cleanups in the crosslinking code. check-in: adefc301a3 user: stephan tags: trunk
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(). check-in: 4dde2be3b0 user: stephan tags: trunk
00:03
Removed some C99-related config options which are no longer needed since we require C99. check-in: 9ffc72c6a3 user: stephan tags: trunk
2021-02-23
23:55
Internal doc tweaks. check-in: c7e7b6cf73 user: stephan tags: trunk
19:45
Hardened deck validation for certain special cases, in particular at output-time. check-in: a392b75868 user: stephan tags: trunk
18:09
Internal doc/#if block cleanups. Stop checking for NULL deck arguments on fsl_deck_XXX() APIs. Changed error code for a few deck-related cases. check-in: 2896b543be user: stephan tags: trunk
2021-02-22
05:21
Moved [DbFunctions] wiki page to an embedded doc. check-in: abdf234a5c user: stephan tags: trunk
05:20
More char-to-bool conversions. check-in: 6360bb6d8f user: stephan tags: trunk
04:53
Removed an extraneous #undef and an unused #define. check-in: beaad1d76d user: stephan tags: trunk
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. check-in: 3affea2904 user: stephan tags: trunk
03:48
Added new file missing from [5a3d4bceb3] and enabled search index updates during crosslinking: the mysterious 'SQL logic error' message disappeared after a bit of table-dropping and rebuilding. check-in: 4cbbf66211 user: stephan tags: trunk
03:35
Renamed fsl_phantom_t to fsl_phantom_e. check-in: 4880e2e2ac user: stephan tags: trunk
03:34
Technote counterpart fix of [7800a90d16]. check-in: ddf4ac0df5 user: stephan tags: trunk
03:12
Fixed upstream bug [fossil:ecb705359a58ac32]. check-in: 7800a90d16 user: stephan tags: trunk
2021-02-21
21:06
Tinkering with the C++ Deck-to-fsl_deck conversion operator signatures. check-in: e0e62d6f21 user: stephan tags: trunk
19:07
Removed an unused var. check-in: f4e8a2184d user: stephan tags: trunk
18:27
More enum type renaming. Updated C++/s2 bindings for other recent renamings. check-in: 9c1abb2e95 user: stephan tags: trunk
18:12
When reparenting, fail if the given artifact type may not have a P-card. check-in: 1278c47f0a user: stephan tags: trunk
17:56
Ported over the crosslinking bits which reparent artifacts via the 'parent' tag. check-in: e7e12b008d user: stephan tags: trunk
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. check-in: 5a3d4bceb3 user: stephan tags: trunk
15:58
Removed libfossil-DS201x.* project files (MSVC?) because they're out of date and long-since unmaintained. check-in: ce3338ffd3 user: stephan tags: trunk
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. check-in: 8728796601 user: stephan tags: trunk
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). check-in: 2ab8c86b3d user: stephan tags: trunk
2021-02-18
05:11
Replaced the extraneous fsl_double_t typedef with double. check-in: b359548620 user: stephan tags: trunk
2021-02-17
19:43
Doc additions concerning overriding timeline comment text during crosslinking. Added support for the C-card for wiki timeline updates (noting that that card is never emitted for wiki artifacts by fossil, though it does permit them). check-in: edaf56e488 user: stephan tags: trunk
03:16
Replaced a stale fossil-wiki-format link with a markdown one. check-in: fcfc2ae105 user: stephan tags: trunk
2021-02-15
19:44
Added FSL_CATYPE_BRANCH_START artifact pseudo-type to give fsl_sym_to_rid() a way to report the start of a branch rather than its most recent RID, in order to match a feature from the main fossil repo (which appears to be unused, but better safe than sorry). check-in: 128adb8515 user: stephan tags: trunk
19:16
Resolved (haha) issue with the last round of sym-to-rid updates which left 'trunk' unresolvable. check-in: ae343e941c user: stephan tags: trunk
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. check-in: 55f8d321d2 user: stephan tags: trunk
04:13
Renamed mf.c (mf==manifest) to deck.c. check-in: 799c43f9c5 user: stephan tags: trunk
04:11
Fixed the unsetting of the B-card on a manifest when the checkin processes decides that it's not useful as a delta manifest and switches to a baseline manifest. Bug was in the B-card unsetter logic. check-in: 4a015bdd47 user: stephan tags: trunk
03:24
Renamed src/fsl_XYZ.c to src/XYZ.c. f-checkin vfile dump now includes renames. check-in: ed3183170a user: stephan tags: trunk
00:21
Reimplemented fsl_config_file_reset() to account for schema prefixes. fsl_file_size() now returns type fsl_int_t instead of fsl_size_t, to simplify the -1-on-error return checking. Added fsl_config_global_preferred_name(), which performs the global config file lookup algo used by fossil, and changed fsl_config_open() to use that. check-in: 8837671e83 user: stephan tags: trunk
2021-02-14
13:17
Sorted out the broken autosetup: apparently autosetup removed its lib/ in some version, moving those files up one dir, and i didn't notice when upgrading. check-in: 9bc3eb88ca user: stephan tags: trunk
13:14
Again autosetup-test-tclsh +x bit: fossil is creating a checkin for this but is not including this file. Seems to be that permissions-only changes, though recognized by status, are causing the checkin to not be build properly. Forced a change in that file to force fossil to add it this time. check-in: 67eed95e19 user: stephan tags: trunk
13:10
autosetup-test-tclsh +x bit again. (Wha?) check-in: d793563cae user: stephan tags: trunk
12:36
Started replacing some of the char-as-bool with C99 bool. check-in: 4da3578966 user: stephan tags: trunk
02:41
Added f-parseparty --skip-unknown flag and have crosslink failure honor the fail-fast setting. check-in: a8af06d834 user: stephan tags: trunk
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. check-in: 88947dfafc user: stephan tags: trunk
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). check-in: 63893e6c12 user: stephan tags: trunk
01:34
Minor build tweaks. check-in: 06aac2e747 user: stephan tags: trunk
2021-02-13
23:44
Minkering/testing with replacing the checkin timeline crosslinker. Moved some code around. check-in: c42cfd8c10 user: stephan tags: trunk
23:43
Corrected f-checkin's vfile dump to only include changed files. check-in: 345ab3e1c1 user: stephan tags: trunk
21:49
Changed crosslink listener interface and started porting the parts which update the timeline into user-overrideable listeners, which will allow clients to 100% customize timeline content without having to deal with the rest of the crosslinking schema updates. Honor fossil's forbid-delta-manifests setting. Fixed fsl_deck_output() usage in f-apps, as called for by previous commit [ac9b034f79]. check-in: 911afa1bcc user: stephan tags: trunk
13:03
Made the fsl_deck object in fsl_deck_output() and crosslink listeners non-const, the former to avoid forcing the client to do much up-front work and the latter because it's necessary for such code to be able to traverse F-cards. That had a bit of a rat's tail of side effects to clean up. Edit: reminder: this caused a sync problem because we added an attachment artifact file which is itself an export of an artifact from the db, leading to a unique constraint violation when pushing. Deleting the attachment table entries, syncing, then rebuilding, resolved it. Hopefully this duplicate artifact won't cause any similar downstream problems. check-in: ac9b034f79 user: stephan tags: trunk
05:52
Updated attachment crosslinking to account for technote attachments. check-in: 08ecc42a5f user: stephan tags: trunk
2021-02-12
22:21
Started removing the many now-extraneous (fsl_id_t) casts in variadic calls. check-in: 11e5173970 user: stephan tags: trunk
22:21
Wha??? doc/presentation-fossil-data-model.md was demonstrably removed (moved to main fossil tree) in [9e08d879fb0b4722], and not re-added since then. How did it re-appear? Edit: i may (not certain) have(???) inadvertently re-added it when crosslinking random manifests during testing. check-in: edc97b0a3a user: stephan tags: trunk
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. check-in: ee070353b9 user: stephan tags: trunk
15:22
Implemented crosslink begin/end steps, minus still-pending ticket/wiki-specific features. Crosslinking wiki pages updated to use fossil's newer wiki timeline comment format and updated f-timeline to recognize it as well. check-in: 31c8bddf22 user: stephan tags: trunk
13:00
Ported in mlink schema fix from [https://fossil-scm.org/home/info/1f5af80047be4589]. check-in: 9cc40bf1be user: stephan tags: trunk
12:20
checkin crosslinking: added missing Q-card (cherrypick) handling, corrected a parent-count case when dealing with Q-cards, and generally brought it up to date with regards to fossil(1). check-in: 4dcdf5a8f7 user: stephan tags: trunk
07:41
Header file reorgs. check-in: c1681af460 user: stephan tags: trunk
07:02
Implemented forum artifact crosslinking and restructured fsl_deck_crosslink() into internal type-specific routines. check-in: 1817557652 user: stephan tags: trunk
05:03
Removed java/tcl include paths from the build, as those bits are long-since untested/unmaintained. check-in: 72c2f60034 user: stephan tags: trunk
04:37
Fix 'uninitialized use' of rc variable when default switch is hit. check-in: 32d545fd62 user: mark tags: trunk
03:38
Removed presentation-fossil-data-model.md - moving it to the main fossil tree. check-in: 9e08d879fb user: stephan tags: trunk
03:37
Minor doc updates. check-in: 85c5517be8 user: stephan tags: trunk
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. check-in: 4307886eab user: stephan tags: trunk
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. check-in: dec0670fb2 user: stephan tags: trunk
13:01
Replaced a hard-coded UUID in test.cpp with a ref to rid:1. check-in: 9e6df31e88 user: stephan tags: trunk
12:56
Fixed a missed link in the fossil-wiki-to-markdown port. check-in: f2f497c658 user: stephan tags: trunk
12:49
Checked in the generated fsl_schema_*_cstr.c files to make it easier to port the build to non-Unix systems. check-in: eeac3c6fe0 user: stephan tags: trunk
12:42
Moved C++ and s2 bindings to bindings/{cpp,s2}. Got the C++ bindings compiling for new gcc breakage and new, stricter T-card validation. check-in: fdc5e1014e user: stephan tags: trunk
12:25
Moved f-tools wiki page to f-apps/index.md. check-in: 827f5c8bc3 user: stephan tags: trunk
11:29
Manifest parsing: moved the guess-card-type logic to the end, after the cards have had a chance to apply the type themselves. Ported in some undocumented(?) but code-implemented corner-case constraints, such as not allowing tag names which look like hex hashes. check-in: 4b7e3d1ac6 user: stephan tags: trunk
06:38
fsl_deck_parse(): when we know that the current card can only possibly belong to a certain deck type, assign the deck type immediately, rather than delaying it to the "guess" phase (which may actually have already deduced the type, anyway). This provides the same results as before but should be a bit more robust. Removed some dead code. check-in: 92a5e7fee4 user: stephan tags: trunk
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. check-in: 88060bfb9b user: stephan tags: trunk
04:42
Added f-parseparty --types=... flag to select types of artifacts to test. check-in: c0a6cc5b55 user: stephan tags: trunk
04:41
Moved some at-exit cleanup code. check-in: d6afb451a0 user: stephan tags: trunk
03:26
Merged in make-compdb branch and added test for that feature in auto.def. check-in: 2b7680dd90 user: stephan tags: trunk
00:16
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. check-in: 0163960ce0 user: stephan tags: trunk
2021-02-10
19:37
Changed fossil-scm.org/fossil to fossil-scm.org/home, per recent change on that end. check-in: a54f70e148 user: stephan tags: trunk
18:23
Stephan's discussion document on the Fossil data model check-in: 8876efccd3 user: dan tags: trunk
15:46
Minor doc updates and improved a case of error propagation. check-in: 88f850cd66 user: stephan tags: trunk
15:45
Added fcli_fax() (free-at-exit). check-in: e8b7fd94e6 user: stephan tags: trunk
13:51
Amend make config files to generate compilation database. Add MAKE_COMPILATION_DB variable to enable the '-MJ' flag on supported compilers to generate a compile_commands.json compilation database. Closed-Leaf check-in: b9be211162 user: mark tags: make-compdb
2021-02-09
19:42
Typo fix. check-in: 7c8f09ac3d user: stephan tags: trunk
18:21
Re-added autosetup-test-tclsh. Is the +x bit retained now? check-in: b242c6bef3 user: stephan tags: trunk
18:20
Temporarily removing autosetup-test-tclsh to try to work around the ability to +x it. check-in: c6d06e4728 user: stephan tags: trunk
18:18
Wha??? Added +x bit again - apparently libf's checkin process does not catch attribute-only changes properly? Edit: this checkin was made with fossil(1), but same thing. check-in: dab3ac63d1 user: stephan tags: trunk
18:17
Added +x bit again - apparently libf's checkin process does not catch attribute-only changes properly? check-in: cb3d4e371d user: stephan tags: trunk
18:15
Added +x bit (wasn't this already done?). check-in: 7dab52fd0e user: stephan tags: trunk
18:08
Merged inadvertent fork. check-in: dbfab53142 user: stephan tags: trunk
18:06
Fixed creation of new repository (fsl_repo_new() and f-new.c). Added checkin message mimetype to repo creation options. check-in: 162d4ba4c8 user: stephan tags: trunk
11:40
Added some protections against generating empty checkin. Removed some stale docs. check-in: 9bff657291 user: stephan tags: trunk
11:35
finalise licenses dir / check-in: 6347de6f38 user: dan tags: trunk
11:22
add license directory for files to point to check-in: 2aa8c19588 user: dan tags: trunk
11:10
Added +x bit. check-in: 27e1f8ee2b user: stephan tags: trunk
09:52
Removed some stale docs. Add new checkins to the UNSENT table (though whether or not they're in there appears to make no difference?). check-in: a52c8a0690 user: stephan tags: trunk
09:49
Added a fsl_cx flag to silently skip, instead of error out, when crosslinking encounters a type it cannot yet handle (currently forum posts and tickets). check-in: a2c0c7820d user: stephan tags: trunk
08:54
Re-added sqlite3ext.h (needed by the vtable bits). Added if-not-defined guards around the generated config header vars. Minor touchups to the amalgamation build. check-in: 62099c7d53 user: stephan tags: trunk
08:53
Fixed a null pointer deref in a routine i thought never got passed NULLs. check-in: d826ff335f user: stephan tags: trunk
05:07
Explicitly insert vfile.mhash with a NULL value. check-in: ac52d23368 user: stephan tags: trunk
05:06
Implemented FSL_HPOLICY_SHUN_SHA1. check-in: 9418c5e60f user: stephan tags: trunk
05:03
Removed an unnecessary var-guard. check-in: 1d9b5aa3c0 user: stephan tags: trunk
04:25
Minor doc updates. check-in: 0d0a30f979 user: stephan tags: trunk
04:23
Versioned file access no longer follows symlinks. check-in: d8a6788d85 user: stephan tags: trunk
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. check-in: 631fb3f69a user: stephan tags: trunk
2021-02-08
23:48
Added forum type to f-timeline. check-in: c2d78cbb4b user: stephan tags: trunk
23:47
Renamed the hash length constants. check-in: 0c9a6d3644 user: stephan tags: trunk
23:42
Updated s2 bindings for new forum-deck cards. check-in: 05542c5251 user: stephan tags: trunk
23:35
Merged in [sha3-port] branch. There's certainly still bits to test, but it now more or less supports both SHA1 and SHA3-256 hashes. check-in: ff13fc9b52 user: stephan tags: trunk
23:32
Added deck support for forum posts, except that crosslinking them is currently unimplemented (requires more infrastructure). Closed-Leaf check-in: b0ac77411e user: stephan tags: sha3-port
20:45
MILESTONE: f-ls just read a file listing from the main fossil repo (v2 hashes). Set f-mfparse back to hard-coded sha1 for the time being, as i'm not sure i can automatically figure out one or the other hash (need to add a flag to specify which to use). check-in: 8367e0ce6e user: stephan tags: sha3-port
20:35
Ported in more of the fossil(1) hashing-related infrastructure. check-in: 033d78f03f user: stephan tags: sha3-port
18:23
f-apps compile and f-sanity runs. MILESTONE. Still need to test the other f-apps, though. check-in: 76c290eb05 user: stephan tags: sha3-port
16:49
Reverted autosetup to 0.6.9 to [https://github.com/msteveb/autosetup/issues/59]. check-in: 9538db33d6 user: stephan tags: sha3-port
16:42
th1 was removed by stephan check-in: cc0bac7250 user: dan tags: trunk
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. check-in: 240701a6ec user: stephan tags: sha3-port
13:34
Apply the sqlite3.c CPPFLAGS currently used by fossil(1). check-in: f16a3dd322 user: stephan tags: trunk
07:44
Brought core SQL schemas up to date wrt fossil(1). check-in: 490dadcad9 user: stephan tags: trunk
07:43
Updated autosetup. check-in: 48120a033a user: stephan tags: trunk
06:53
Resolved the s2 unit test breakage: config.h settings led to it not stat'ing a dir entry the same way the core s2 tree was, which revealed a slight bug in s2.import's is-a-dir check (namely, not recognizing a dir as a dir). check-in: 17ac91740c user: stephan tags: trunk
06:15
Updated s2 and brought old fossil bindings up to date wrt cwal/s2 changes made since then. Core s2 unit tests are inexplicably failing with a bogus(?) OOM report with this shell build, but they work in the core s2 tree and libf unit tests are passing. check-in: f063fd4f0f user: stephan tags: trunk
06:11
Fixed a swapped value check in fsl_cx_db_name_for_role(). check-in: a6a15065e1 user: stephan tags: trunk
04:49
Removed long-since-obsoleted th1ish. check-in: 36e2410ca1 user: stephan tags: trunk
04:48
Undefined all sha1-hardened-related defines at the end of that code, for the sake of an eventual amalgamation build. check-in: 6ce8ec4fef user: stephan tags: trunk
04:31
Ported in hardened SHA1 hash and set default build config to use that one instead of standard SHA1. check-in: 0f3f1d2bf2 user: stephan tags: trunk
2021-02-07
14:39
Back-ported diff numeric overflow fix from [https://fossil-scm.org/fossil/info/e2b7dca948da84b7]. check-in: f11bfb3bcf user: stephan tags: trunk
14:31
Globally replaced http://... URLs with https://.... Most of them probably still work, too. check-in: 6af7b3b7c8 user: stephan tags: trunk
14:27
Updated Doxygen.in and remote doc path. check-in: b78d59d054 user: stephan tags: trunk
13:39
Updated sqlite3 for C99-ism fix. Removed sqlite3ext.h. check-in: 601041d827 user: stephan tags: trunk
10:45
Ported in core SHA3 hash routines from fossil(1). check-in: edf64345bb user: stephan tags: trunk
10:32
Updated build for newer gcc and sqlite3.c, in prep for a potential upcoming effort of getting the hashing bits updated for fossil v2. check-in: 451d0b8a9b user: stephan tags: trunk
2018-12-01
15:59
i know this isn't maintained anymore, but found a broken assert() while porting the db wrapper into another tree. check-in: 5c9c84f81d user: stephan tags: trunk
2016-08-26
15:15
latest s2 for ARM platform fixes. check-in: e961eb1201 user: stephan tags: trunk
2016-08-20
12:37
fixed a mis-think in the previous commit which caused unnecessary extra allocations. check-in: 679e38294a user: stephan tags: trunk
12:13
fixed: when parsing F-cards, defossilize their names (in-place) before insertion into the deck. Was broken with space-containing filenames. check-in: 9f317f8fa8 user: stephan tags: trunk
11:41
s2 update. check-in: b7da6be617 user: stephan tags: trunk
2016-03-14
17:21
minor s2 update. check-in: e9556c1886 user: stephan tags: trunk
17:08
latest s2 for proc() using(...) {...}. check-in: daa02e9344 user: stephan tags: trunk
2016-03-07
15:57
added FSL_OPEN_F_TRACE_SQL for use with fsl_db_open(), which tells fsl_db_open() to enable SQL tracing. Previously this feature was restricted to Fossil-open()'d db handles. check-in: a43aece996 user: stephan tags: trunk
2016-03-06
10:52
latest s2. check-in: 633707c54a user: stephan tags: trunk
2016-03-05
21:42
Internal cleanups in the Fossil.Db.open() binding. And this time passed the -v flag to f-tag. check-in: f15fa6ba7c user: stephan tags: trunk
13:55
fixed broken return vals from fsl_db_existsv(). check-in: f6f9628a30 user: stephan tags: trunk
2016-02-29
17:41
Rewrote the "can call dlopen() without -ldl" auto.def test so that it will fail on Linux (thereby continuing on to the next clause, which handles the Linux case) while still doing the right thing on FreeBSD. check-in: 94468be8ca user: tangent tags: trunk
14:04
removed cgimod bits (moved them to the s2 module repo). Some CGI-related scripts kept around for later tinkering. check-in: d4b02ee824 user: stephan tags: trunk
13:16
more -ldl flag tweaking - this is likely to break s2 on BSD again (where -ldl is not needed), but the current test for "dlopen is built-in" incorrect reports success on my linuxes then does not work at link-time. check-in: 008a3a3208 user: stephan tags: trunk
13:01
fixed a syntax error not reported on my odroid box b/c that block was not hit. check-in: c90823b297 user: stephan tags: trunk
12:43
straightened out the module loading flags. fixed breakage in f-s2sh.s2 caused by s2 making "import" a reserved word. Removed th1ish leftovers from cleanup rules. check-in: 2e4dd625ab user: stephan tags: trunk
11:58
latest s2, including %d patch from Warren. Disabled loadable modules temporarily due to a local system hiccup. check-in: efd0f500fe user: stephan tags: trunk
11:41
merged in os-x-fixes branch from Warren. One of those changes will be overwritten by a pending s2 update, though. check-in: 61d8fbeee2 user: stephan tags: trunk
11:29
merged in freebsd-10-fixes bundle from Warren. check-in: a6b8958efc user: stephan tags: trunk
2016-02-28
19:34
Added s2_amalgamation.o to the link step for cgimod.so, without which you get a bunch of undefined symbols, at least on OS X. Closed-Leaf check-in: 781346a2e4 user: tangent tags: os-x-fixes
19:30
Removed GCC-specific -export-dynamic flag in f-s2sh's Makefile, per mailing list discussion. check-in: df42433396 user: tangent tags: os-x-fixes
19:29
Squished printf() format specifier warning in s2 amalgamation, per mailing list discussion. (It really needs to be fixed in s2, but I need it fixed in *this* tree in order to continue work, so...) check-in: 4d5d7ace65 user: tangent tags: os-x-fixes
19:24
autoconfigure now checks for iconv(3) in libc and libiconv; this is needed on OS X at least, and may also be needed on older SUS type Unixes. (libiconv comes to SUS via XPG4, and thence from HP/UX.) We check for it in libc first because it's built into the standard C library in glibc and FreeBSD's libc, at least. Also, added $(LDLIBS) to the link flags in shakenmake, without which the above fix has no effect. check-in: cd6b27805b user: tangent tags: os-x-fixes
17:39
Removed -static-libgcc flag from shakenmake.make, since that's GCC-specific, breaking the build under Clang, and presumably other C compilers. It only allows fully-static binary builds, which is not a generally-useful thing anyway. (Consider the recent glibc DNS bug. (CVE-2015-7547) Do you really want to rebuild every binary on the system to fix it, or just upgrade glibc?) check-in: 00f219f225 user: tangent tags: os-x-fixes
17:15
Fixed a fossil_strdup() -> fsl_strdup() hiding in an ifdef that's true on OS X only. check-in: a571a60261 user: tangent tags: os-x-fixes
2016-02-23
19:58
Added -fPIC to CPPFLAGS in s2/Makefile, without which it won't link on FreeBSD Closed-Leaf check-in: 164d5552e8 user: tangent tags: freebsd-10-fixes
19:47
Swapped the two dlfcn.h detection cases in auto.def. Previously, if it found that header it would then go blindly chasing after libdl. But on FreeBSD, the header exists and libdl does not because those functions are built into libc. The second case checked for this, but because dlfcn.h was found, it was never even tried. The new way tries to build against the dl functions without libraries *first* and only then if that fails does it go chasing after libdl. check-in: 870a29ea5d user: tangent tags: freebsd-10-fixes
19:15
Updated _XOPEN_SOURCE definition from 500 to 600, as that's needed to allow lstat(2) to be visible under FreeBSD 10. check-in: 2755eb8768 user: tangent tags: freebsd-10-fixes
2016-02-18
16:00
latest s2, fixed an error handling case in Fossil.Context.loadManifest() (caught by an assertion). check-in: a4b5749230 user: stephan tags: trunk
11:24
fixed an assertion, improved an error message (just now triggered by files with spaces in their names :/). check-in: a5d8233f6d user: stephan tags: trunk
2016-02-17
21:27
Latest s2 and a Happy 8th Birthday to Baako. check-in: 56901c5b0a user: stephan tags: trunk
2016-02-12
15:38
more tinkering with q-ancestry.sql. check-in: c5dc22c1d2 user: stephan tags: trunk
10:32
typo fix. check-in: 59fe7b70ce user: stephan tags: trunk
2016-02-10
16:33
Removed extended s2.Buffer unit test script because this feature is now supplied by the s2 core and its unit tests. (Make sure to rm s2/UNIT*.s2 or 'make unit' may still try to import it.) check-in: 10da5cf074 user: stephan tags: trunk
16:30
Updated s2 and related build bits, removed the libfossil-injected s2.Buffer.compress() and friends because those have been ported over to the s2 core. check-in: a25251e6b0 user: stephan tags: trunk
2016-01-31
17:54
latest s2, re-enabled test combinations disabled when string interning was recently turned off. check-in: 6085b8689d user: stephan tags: trunk
2016-01-28
12:40
minor script updates. check-in: 1cffc35efe user: stephan tags: trunk
12:29
sqlite3 version 3.10.0. check-in: 99efd91396 user: stephan tags: trunk
2016-01-27
09:31
s2 update to disable string interning because how s2 manages values is (occassionally) incompatible with interning, leading to cwal-level memory misuse and assertions getting triggered. check-in: f9eba44f38 user: stephan tags: trunk
2016-01-24
18:43
okay, last s2 for a while. check-in: eb54d84520 user: stephan tags: trunk
02:05
latest s2, lots of minor tweaks. check-in: 8a4665bffa user: stephan tags: trunk
02:04
an admittedly untested changed to etPATH handling ('%/' specifier) tweak in fsl_appendf(), to avoid allocating for 0-length strings. check-in: 965a326ce2 user: stephan tags: trunk
2016-01-22
15:31
added a missing return on error. check-in: c95de406e5 user: stephan tags: trunk
2016-01-13
16:32
minor doc correction. check-in: 754f74c4b9 user: stephan tags: trunk
2016-01-09
18:17
MOAR latest s2. check-in: efb9c69d75 user: stephan tags: trunk
2016-01-08
17:10
latest s2, accommodated API change. check-in: 2827317748 user: stephan tags: trunk
2016-01-07
21:11
replaced impl_fsl_buffer_swap with fsl_buffer_swap. check-in: 51bafea46e user: stephan tags: trunk
20:57
merged in dave's old branch. The related strangely failing tests seem to work now :). Also the latest s2. check-in: feb9f32d06 user: stephan tags: trunk
19:25
back-ported in http://www.fossil-scm.org/index.html/info/ecedaf93991c66a4 (zip fix for 0-byte files). check-in: 0043352e45 user: stephan tags: trunk
19:23
adding empty file to help test some 0-size corner cases. check-in: 5c449173a5 user: stephan tags: trunk
07:14
straightening out an accidental fork, possibly caused by a libfossil bug when testing the previous few commits. check-in: 01a238f837 user: stephan tags: trunk
07:08
comments related to https://www.fossil-scm.org/index.html/info/18607775fe2e3aa3 check-in: 5fbcdd6b4b user: stephan tags: trunk
2016-01-06
17:15
latest s2. check-in: 4b42506fe4 user: stephan tags: trunk
17:15
workaround for recent gcc adding __func__ warnings in -pedantic mode. check-in: adf79c4a82 user: stephan tags: trunk
2015-12-28
22:04
disable some kludgy code, added some todos. check-in: 11fac6a958 user: stephan tags: trunk
21:47
fixed broken (swapped) logic in fsl_rid_is_leaf(). check-in: 2273183275 user: stephan tags: trunk
21:44
another test of the leaf-check fix check-in: f0930aedad user: stephan tags: trunk
21:41
another test of the leaf-check fix check-in: 12acd9c844 user: stephan tags: trunk
21:33
another test of the leaf-check fix check-in: 7eb42e237a user: stephan tags: trunk
21:24
another test of the leaf-check fix (not included in this commit). Found 2 bugs compared to fossil(1). check-in: 7a117a135a user: stephan tags: trunk
21:00
ancient CGI tinkering - need a commit to test a fix. check-in: 17216ed8c6 user: stephan tags: trunk
19:20
potential fix for the missing leaf update when crosslinking. Fixes a mismatch with fossil(1), in any case. Edit: nope, didn't fix that particular problem, but was nonetheless a bug. check-in: c9010b6036 user: stephan tags: trunk
19:08
backported in delta generation tweaks from http://www.fossil-scm.org/index.html/vdiff?from=063779a14cb7c4a7&to=dbbe320297e55cb4 check-in: ff9e4cea5c user: stephan tags: trunk
2015-12-13
15:46
back-ported in http://www.fossil-scm.org/index.html/info/8e44cf6f4df4f9f0. check-in: ee2a7f7c06 user: stephan tags: trunk
2015-08-17
10:38
minor internal text fix. check-in: 6a88a2d589 user: stephan tags: trunk
10:36
minor API text tweak. check-in: 08e1ce7fd4 user: stephan tags: trunk
10:35
removed confusing bit of help text, corrected other help text. check-in: 9e2f749e6d user: stephan tags: trunk
2015-07-30
07:49
latest s2. check-in: 54bdadaf14 user: stephan tags: trunk
2015-07-25
07:59
confusing doc fix. check-in: c0abb85213 user: stephan tags: trunk
2015-07-23
18:02
ported in relatively recent mlink/plink changes - requires newer fossil aux schema. check-in: ee03f7343f user: stephan tags: trunk
14:51
back-port in some precision/width overflow fixes from https://www.sqlite.org/src/info/aeca95ac77f6f320 check-in: ac6f25aaba user: stephan tags: trunk
2015-07-21
17:15
minor test tweak check-in: 1cfe75477d user: stephan tags: trunk
16:34
minor test code improvements. check-in: cb3828bc16 user: stephan tags: trunk
2015-07-16
15:31
latest s2 and related bits. unit tests still work. check-in: 493e8904d9 user: stephan tags: trunk
2015-05-13
21:16
update sqlite 3.8.10.1 check-in: 050fc789ce user: bch tags: trunk
2014-12-16
20:17
accomodated s2 API change. check-in: 59661de01b user: stephan tags: trunk
19:25
latest s2 for memory cap support, typeinfo keyword, other improvements. check-in: 3d382469bd user: stephan tags: trunk
12:45
f-timeline: added -c|--comment=TEXT to filter on a comment glob. check-in: 01c49aaa16 user: stephan tags: trunk
2014-12-07
15:17
a _potential_ workaround for ticket [ae43e36ebdcee2dd7a74]. check-in: 52cd3b7088 user: stephan tags: trunk
2014-12-04
15:43
Latest s2, fixed ticket [dee8469f4b] by removing the (unused) chroot() feature from fsl_chdir(), accommodated an older libf API change in the th1ish bindings. check-in: 09fb223f65 user: stephan tags: trunk
2014-11-30
14:25
latest s2, further memory cuts via more aggressive recycling. check-in: 2ddef8bf84 user: stephan tags: trunk
2014-11-21
14:57
perverse over-use of comma operator in conditional of while statement boggled valgrind's mind; converted to equivalent steps in body with a break; to please it. It's more understandable this way by humans as well. Closed-Leaf check-in: 3104155e44 user: dave tags: feech-VerSetVtblXtnCbk
14:00
next round of s2: resizable hashtables, Number.toString(format), 1000 prime numbers, and literal arrays as property keys (for symmetry with objects, which already supported that by happy accident). check-in: a15d2a6200 user: stephan tags: trunk
13:52
disabled s2 vtable transaction tests for a while due to inexplicable weirdness. check-in: 90cf7de0ec user: stephan tags: trunk
2014-11-20
18:39
lots of little s2 stuff, incl. refactoring of hashtables to make them more recycleable and (upcoming) resizable. check-in: f7fbfd8cfb user: stephan tags: trunk
15:02
altered 'change notification' printf parameters from %x to %p in hopes of getting some 32/64 bit compatibility for cheap. We'll see if this works and if it's xplat.... check-in: 1660df6669 user: dave tags: feech-VerSetVtblXtnCbk
2014-11-16
18:34
more minor s2 addition before the weekend is out. check-in: c170e296ca user: stephan tags: trunk
15:03
Latest s2: bugfix in the .. operator, added: exception keyword, s2.getResultCodeHash(), s2.json.stringify() binding. check-in: beafa69a16 user: stephan tags: trunk
2014-11-15
10:53
yet more cleanups in the vtable test code, removed extraneous catches (let propagation handle them). check-in: ad35549258 user: stephan tags: trunk
10:43
cleanups and additions in the vtable unit tests. check-in: af1b0ff74b user: stephan tags: trunk
2014-11-14
16:41
test code cleanups. check-in: 017e07ca53 user: stephan tags: trunk
13:59
s2: added s2.isDereffable(), "exception" is now a reserved keyword. check-in: 5f1f3b28d8 user: stephan tags: trunk
12:14
More s2: types deriving from arrays can now be used a bit more like arrays, e.g. x[]=y works and integer property access is treated as an array index. check-in: d62048d5e6 user: stephan tags: trunk
11:47
Added some transactions tests for the vsettings. check-in: 86b6ca307f user: stephan tags: trunk
11:45
fixed a printf-style misuse triggered in an error case. check-in: c2ad24c2e0 user: stephan tags: trunk
10:40
latest s2. check-in: b4c7ebaad7 user: stephan tags: trunk
2014-11-10
19:31
(gcc complaint) check-in: 42a790e72e user: dave tags: feech-VerSetVtblXtnCbk
19:30
fix parsing bug for hex address; change notification order to be after creates/updates, and before deletes. inhibit 'dtor' notification for the time being; it seems to get invoked twice for some unknown reason (like sqlite has two copies of the vtable object, or something). check-in: e80ed55cdf user: dave tags: feech-VerSetVtblXtnCbk
18:58
changed data separator for CHNGCBK to ':', because ',' would interfere with processing. added stub callback implementation in fsl_cx check-in: a022b2905b user: dave tags: feech-VerSetVtblXtnCbk
2014-11-09
18:43
s2: more init code refactoring. check-in: 9d10eab193 user: stephan tags: trunk
2014-11-08
19:02
one more try, sigh, to please gcc... check-in: 860f151edd user: dave tags: feech-VerSetVtblXtnCbk
18:41
...and gcc didn't like it of course, so let's pleasure it check-in: a1fdbeebad user: dave tags: feech-VerSetVtblXtnCbk
18:01
interim checkin; let's see what gcc thinks of all of this... check-in: 9352ddfbad user: dave tags: feech-VerSetVtblXtnCbk
10:47
removed an old/invalid comment, made a minor error propagation optimization. check-in: db3452e54d user: stephan tags: trunk
10:46
minor doc tweaks. check-in: e4205c60cc user: stephan tags: trunk
10:31
accommodated API changes. check-in: 78193237a5 user: stephan tags: trunk
10:30
added a few asserts. check-in: 8f17cf8228 user: stephan tags: trunk
10:15
cleanups in the Fossil require.s2 modules in prep for upcoming test code. check-in: b1c814aa9a user: stephan tags: trunk
10:01
minor error handling improvement. check-in: f837fcb4cc user: stephan tags: trunk
2014-11-07
17:10
Create new branch named "feech-VerSetVtblXtnCbk" check-in: 086c180778 user: dave tags: feech-VerSetVtblXtnCbk
17:08
transaction support of versioned settings passed all tests, so integrating into 'dave'. Will make new feature branch for 'optional change callback' support. Closed-Leaf check-in: 616500affb user: dave tags: dave
16:45
latest s2: minor parsing and error reporting improvements. check-in: 2e728807c5 user: stephan tags: trunk
2014-11-05
00:11
bug in 'rollback' processing; when encountering an unmodified setting, would not skip it, and would infinite loop Closed-Leaf check-in: 35d3266b60 user: dave tags: feech-settingsvirtualtabletransactionsupport
2014-11-04
21:41
more exciting mundane changes for gcc check-in: 6c4afc0b2d user: dave tags: feech-settingsvirtualtabletransactionsupport
21:38
mundane changes for gcc check-in: 57c852f9cb user: dave tags: feech-settingsvirtualtabletransactionsupport
21:29
implementation of transaction support complete; now it's testing time... check-in: 7aecc393a7 user: dave tags: feech-settingsvirtualtabletransactionsupport
19:49
Update to final SQLite 3.8.7.1 (with additional MinGW compile fix [f45641c753], re-applied. check-in: 8f94f69a86 user: jan.nijtmans tags: trunk
18:33
algorithm for commit and rollback should be code complete; now need to modify xUpdate to use it. check-in: fcbede55ed user: dave tags: feech-settingsvirtualtabletransactionsupport
15:00
interim; fleshed out algorithm impl, and made marks where surgery will occur check-in: 2864314d5f user: dave tags: feech-settingsvirtualtabletransactionsupport
14:55
Create new branch named "feech-settingsvirtualtabletransactionsupport" check-in: e257ccc652 user: dave tags: feech-settingsvirtualtabletransactionsupport
2014-11-03
23:53
interim; added members to internal data structures to facilitate transaction support on versioned settings v-table check-in: 120add9960 user: dave tags: dave
23:21
dev studio project updates for moved headers check-in: ef81d5cb7c user: dave tags: dave
23:11
merged trunk prior to doing some transaction support work check-in: 2fdb1d5460 user: dave tags: dave
19:05
removed an unused makefile. check-in: 220da67a06 user: stephan tags: trunk
18:55
Added --line-numbers|-l option to f-vdiff. check-in: 2b7867d2ec user: stephan tags: trunk
18:47
Fixed a documentation lie. check-in: e210358357 user: stephan tags: trunk
18:46
this should teach me to do a _clean_ rebuild when moving headers around. check-in: 4541a51212 user: stephan tags: trunk
17:58
removed a duplicated dependency listing. check-in: c51ca866a8 user: stephan tags: trunk
17:56
As discussed with Dave: moved the vtable/regex headers into src, as they are private impl details. Patched amalgamation build for this change. check-in: cd9d570464 user: stephan tags: trunk
17:53
minor tinking in s2 CGI bits. check-in: 8feee82f4e user: stephan tags: trunk
2014-11-01
16:55
latest s2, added << operator to CGI module. check-in: 749694a76c user: stephan tags: trunk
16:19
minor clang build hack. check-in: e9fff9802e user: stephan tags: trunk
16:18
Added a missing #undef. check-in: 742aab5dae user: stephan tags: trunk
16:17
Documentation bugfix. check-in: 7aaa85974f user: stephan tags: trunk
16:17
minor clang build hack. check-in: 3c18a6d5b2 user: stephan tags: trunk
2014-10-31
09:19
s/malloc/fsl_malloc/, s/free/fsl_free/, added some OOM handling (which makes me miss the concise code one has without it (in C++)). check-in: 76c4d8ecf3 user: stephan tags: trunk
09:02
Replaced a file-local typedef with a macro and #undef'd local macros at the end of the file, both for the sake of the amalgamation. Minor doc tweak. check-in: 4eef41c169 user: stephan tags: trunk
2014-10-29
19:19
latest s2: s2.io.realpath() behaviour change and more unit tess. check-in: bf2e03ad69 user: stephan tags: trunk
16:47
latest s2: minor improvements in ternary-if parsing and ctrl-c checking. check-in: 3d9898bf62 user: stephan tags: trunk
09:43
unit test tweak. check-in: e3ece3ef7f user: stephan tags: trunk
04:43
pickup dave's bugfix for not overriding line endings or separator style when not explicitly asked to, from 'dave' check-in: 3bccdc1d3a user: dave tags: trunk
04:42
merge trunk before promote to trunk check-in: a790208046 user: dave tags: dave
04:36
trivial; // comments check-in: 129affbb36 user: dave tags: dave
04:33
bigfix; do not override file line endings/separator style on an update case of an insert-or-update unless explicitly asked to do so. check-in: 69fbe5c32d user: dave tags: dave
2014-10-28
16:03
latest s2 (minor precedence fix wrt ternary being the RHS of some short-circuiting contexts). check-in: 1f99287a3f user: stephan tags: trunk
14:08
typo fix in an #undef, from Martin Gagnon. check-in: 8b04160e56 user: stephan tags: trunk
13:52
pull in fixed merge to trunk, from trunk. check-in: 5377f3e24e user: dave tags: dave
13:50
recovered a lost change, enter/exit mutex properly, and cope with a sqlite auto-init glitch around the static mutex. check-in: fb5b9d15f9 user: dave tags: trunk
08:48
merged in dave. reminder to selves: the merge initially elides some of the content dave previously merged from trunk, and we are not sure why (required manual merge intervention, despite not having any conflicts). check-in: 61233f6026 user: stephan tags: trunk
03:02
need stdlib.h for the unices check-in: 6e12a39c1a user: dave tags: dave
02:14
merged in stephan's various changes check-in: c2d7402366 user: dave tags: dave
00:24
correct bug in 'match-or-fail' where aux data is bound to wrong column. changed a variable name that was farcically similar to another variable name in the same function (i.e. differed only by case); shame on me. check-in: 81f67b2297 user: dave tags: dave
2014-10-27
20:42
Switched from :memory: to "" (temp) DB for the main db, other minor cleanups. check-in: 6c18a25f11 user: stephan tags: trunk
18:24
Added (-E SQL|FILENAME) to f-query, which uses a multi-exec db call instead of prepare/step, so that we can feed it an arbitrary amount of non-SELECT queries (in -E mode any SELECT results do not get output). check-in: 6c907b2a70 user: stephan tags: trunk
17:46
added atexit() call to sqlite3_reset_auto_extension() to silence valgrind. It is arguable to do this at the library level, but seems safe enough for the time being. check-in: 1ac213d0b6 user: stephan tags: trunk
17:28
fsl_cx now (again) uses a ':memory:' DB as its 'main' and ATTACHes the repo/ckout/config to that one, to avoid locking problems Dave discovered with regards to attaching or opening a single DB file multiple times. Sanity tests work without changes and the s2 bindings required only assertion fixes, but probably needs some re-working of the 'db' property to account for the new, always-there handle. check-in: 898c0acbff user: stephan tags: trunk
16:35
Fixed: fsl_db_open() no longer checks/enforces that the special filename ':memory:' really exists. check-in: 2e58421c33 user: stephan tags: trunk
2014-10-25
19:52
correct silly position of assert(); correct a comment; correct for sqlite3 not auto-initing around mutex code (for reasons unknown to me) check-in: 455133309f user: dave tags: dave
18:46
previous idempotency with atomic inc/dec isn't really enough; the action being protected needs to be guarded as well. plus there were link issues on linux, the resolution of which is machine architecture specific, so I ditched that approach. check-in: 1be04c571a user: dave tags: dave
18:17
add atomic functions around refcounted init of sqlite extensions; unregister extensions when last one is freed check-in: 31a1e741ae user: dave tags: dave
16:28
merge trunk, get stephans various fixes check-in: 84b7b9a10a user: dave tags: dave
13:01
more minor tweaks to the s2 bindings. check-in: 6ac47349c4 user: stephan tags: trunk
12:50
The docs, not the impl, were wrong. check-in: 516ff0e751 user: stephan tags: trunk
12:10
s2: Fossil.file.dirPart() now returns an empty string for an empty result, instead of undefined. check-in: 3667bde1ee user: stephan tags: trunk
11:14
added some basic tests for the new vtables, minor build tweak to allow us to skip the core s2 unit tests while developing fossil unit tests. check-in: 8eb7c26910 user: stephan tags: trunk
10:29
Replaced sqlite3_exec() calls with fsl_db_exec(). check-in: 8f4b2c59c8 user: stephan tags: trunk
10:17
error handling cleanups and doc tweaks. check-in: f50b9815e8 user: stephan tags: trunk
09:51
merged in dave's branch, fixed a merge conflict, made f-sanity not fail a specific test fatally because it rightfully fails on a merge-modified checkout. check-in: 8a439f91d5 user: stephan tags: trunk
09:43
error check fix after opening a checkout/repo db. check-in: 116ad4ab7e user: stephan tags: trunk
2014-10-24
13:25
prevent changing of sepstyle for non-multivar types on update; fix constraint check on insert check-in: e7011739c4 user: dave tags: dave
05:12
when inserting versioned settings, check metadata 'is multivar' and force attribute in new settings object accordingly check-in: 9c9c3b6069 user: dave tags: dave
03:20
expose 'isversionable' settings metadata via vtable for those who wish externally to know. check-in: 2ac6a110d4 user: dave tags: dave
02:24
integrate feech-versionedsettingsupport. Not strictly fully tested, but I feel pretty good about it, so I'm going to close it out. I'll do any bugfixes here that might show up in the next days of testing. check-in: 03c3149b0e user: dave tags: dave
01:22
added support for 'non-multi-var settings' (most settings, actually), which inhibits list processing (i.e. doing comma/newline normalization). Also made alteration to VC6 project file to suppress warnings about sqlite3.c. Closed-Leaf check-in: 201339bcc3 user: dave tags: feech-versionedsettingsupport
2014-10-23
22:21
bug storing match_or_fail context structure; modded some accept regexes to include the 'empty is OK' metametacharacter check-in: 699fec5042 user: dave tags: feech-versionedsettingsupport
21:29
added more regex 'accept' patterns to settings metadata check-in: 82420a0765 user: dave tags: feech-versionedsettingsupport
19:57
minor booboo with signedness; pleasure gcc check-in: 11afb2ec7a user: dave tags: feech-versionedsettingsupport
19:52
support extended regex syntax for case-insensitive and multivalue settings check-in: 9660008e7b user: dave tags: feech-versionedsettingsupport
05:05
can't use FSL_CKOUT_DIR() to coin the name of the versioned settings path, because sql evaluation is inhibited in the parameter list to a CREATE VIRTUAL TABLE, so I needed to coin the path manually. check-in: 7f14cc89a4 user: dave tags: feech-versionedsettingsupport
03:33
fix a few dreaded // comments check-in: d4426ffe90 user: dave tags: feech-versionedsettingsupport
2014-10-22
21:48
first attempt at wiring in virtual tables for settings metadata and versioned setting support. Also, added an aliased column 'value' to 'default_value' for the settings metadata, to allow existing query scheme to work consistently with that table as well. check-in: ddb939fd3f user: dave tags: feech-versionedsettingsupport
18:35
Ported in a couple more pieces to the ongoing fossil-compatible auth/login support. check-in: afd46491fe user: stephan tags: trunk
14:49
monkey-patched (commented out) an unused var - now builds on gcc 4.8 with -Wall -Werror. check-in: b9277029a5 user: stephan tags: feech-versionedsettingsupport
2014-10-21
19:50
can build on gcc on Linux in conventional and amalgamation. now to test on other platforms... check-in: 6f02a467b1 user: dave tags: feech-versionedsettingsupport
15:46
ported in printf-style format checker from fossil(1), but not all variadics functions are yet checked. libf does not yet build cleanly vis-a-vis this tool, but the reports it produces will eventually be worked through. check-in: 954a12be68 user: stephan tags: trunk
01:51
make static linkage on internal functions and data of settings vtable since we don't have anonymous namespaces in C. check-in: 2bcec54383 user: dave tags: feech-versionedsettingsupport
01:09
more fun gcc warnings changes. I want my gcc. check-in: 136617e1c8 user: dave tags: feech-versionedsettingsupport
2014-10-20
23:07
needed to 'namespace' the regex engine in regexp -- even parts declared 'static', because in amalgamation, there effectvely is no 'static'. check-in: be9ccb0711 user: dave tags: feech-versionedsettingsupport
18:03
strdup is not ansi, so used fsl_strdup check-in: e26a27a507 user: dave tags: feech-versionedsettingsupport
17:49
more tasty gcc warning accomodations check-in: 7e6a260c1a user: dave tags: feech-versionedsettingsupport
17:41
a few more warning reductions for gcc check-in: e1aa9edc17 user: dave tags: feech-versionedsettingsupport
17:27
missed a spot with some // to /**/ conversion check-in: d4733ab715 user: dave tags: feech-versionedsettingsupport
17:09
sqlite3ext.h should not have been included unconditionally -- it is specific to dlls where host app provides sqlite impl. sqlite3ext.h needed to be added to repo, nonetheless, for some configurations. As such, sqlite3.h,.c were updated to be consistent with that file version (and also the final released version of 3.8.7) check-in: 0ab8c75c49 user: dave tags: feech-versionedsettingsupport
16:43
added source to Makefile.in for non-msvc builds check-in: 1bc542834a user: dave tags: feech-versionedsettingsupport
13:06
I committed into wrong branch, so pulling to the intended one. The changes thus far are benign, so I'm going to leave them there for the moment, and also since ultimately I'll be merging them back. (I'm such a buffoon.) check-in: d9afd076f1 user: dave tags: feech-versionedsettingsupport
13:02
interim; add source for settings vtable and regexp extension functions; not wired it yet. update VC/DS projects. minor mod to auto.def to avoid redefining a define that oftentimes comes from the command line to cl, and would otherwise generate a warning in some projects. check-in: 4e32063e22 user: dave tags: dave
2014-10-19
15:45
removed fsl_deck_F_foreach_own() - useless bloat (same feature is available as a param flag to fsl_deck_F_foreach()). check-in: 3ae4f088e4 user: stephan tags: trunk
15:31
Create new branch named "feech-versionedsettingsupport" check-in: 5f632a80f1 user: dave tags: feech-versionedsettingsupport
15:07
(keeping up to date; merge trunk) check-in: 92fd52048b user: dave tags: dave
2014-10-18
11:00
Factored out the find-a-db part of fsl_checkout_open_dir() to fsl_checkout_db_search() and added option to search parent dirs or not, both in support of up-coming code. check-in: 10f613f805 user: stephan tags: trunk
00:52
pulled in current trunk prior to setting up for work on integrating some sqlite3 extensions (mainly for presenting an access method for versioned settings consistent with db-base settings, but also to unify settings metadata, and provide data validation for the settings values). I'll do a brief sanity check build and resolve anything that comes up there before making that feature branch. check-in: 5685461788 user: dave tags: dave
2014-10-17
11:31
minor doc fix. check-in: 4314250daa user: stephan tags: trunk
11:31
fcli now sets the sqlPrint option in its fsl context, so FSL_PRINT(...) works by default. check-in: 778bca3a4e user: stephan tags: trunk
11:30
Reenabled fsl_db_verify_begin_was_not_called() - cannot verify the older bug there. check-in: 7746a1087a user: stephan tags: trunk
11:05
added fsl_ckout_dir() SQL func. minor doc updates. check-in: fd4ba13292 user: stephan tags: trunk
07:10
Fixed another char-should-be-int (signedness/portability). check-in: a49cbd9e8d user: stephan tags: trunk
2014-10-15
21:07
Added missing help text for f-new's --force flag. check-in: b4c3541e06 user: stephan tags: trunk
21:06
Fixed a file handle leak in a highly arguable bit of code in sore need of replacing with something nicer. check-in: 5ccfcc9bf3 user: stephan tags: trunk
2014-10-14
17:57
minor cleanups and test tinkering. check-in: dc0e75d877 user: stephan tags: trunk
16:37
added a couple missing tests. check-in: ace8946d2d user: stephan tags: trunk
16:11
latest s2 (fixed mis-propagation of exit/fatal/assert in some contexts). Minor test code tweaking. check-in: 8a57d492e5 user: stephan tags: trunk
2014-10-13
21:44
Added Fossil.Db.transactionState(), more related tests. check-in: 2fbd4f2594 user: stephan tags: trunk
20:57
latest s2, more fsl s2 module work. check-in: 3083667d5e user: stephan tags: trunk
20:43
Simplified common usage of Fossil.Db.selectValue(), changed Db.transaction() to use the nested transaction support. check-in: e882db5def user: stephan tags: trunk
20:18
s2: added Fossil.Db.transaction(Function). check-in: 6f622eb76b user: stephan tags: trunk
19:40
added s2 bindings for Fossil.Db.begin/commit/rollback(). check-in: fa87ef5d73 user: stephan tags: trunk
19:20
Minor error reporting improvement. check-in: d617d305e0 user: stephan tags: trunk
17:28
latest s2 plus more require.s2 module tinkering. Reimplemented Fossil.Db.selectValue/selectValues() in C (previously in the f-s2sh init script). check-in: 428464d569 user: stephan tags: trunk
2014-10-12
17:40
latest s2. check-in: ced0e46935 user: stephan tags: trunk
2014-10-11
12:36
latest s2: changes in how math and comparison ops works with mixed-mode numeric comparisons. Minor metrics-counting additions. check-in: 0824e98e3f user: stephan tags: trunk
2014-10-10
08:01
s2: upstream tmpl.s2 fix. check-in: 99898fdf1d user: stephan tags: trunk
2014-10-09
06:39
added missing requireS2 Ticker module, fixed path to local s2sh binary in r-tester.sh. check-in: 340d7b8111 user: stephan tags: trunk
2014-10-08
15:34
comment fix (misinformation), removed a line of dead code. check-in: 4356134409 user: stephan tags: trunk
15:28
Fixed another char-should-be-int case (portability problem). check-in: bcee79685a user: stephan tags: trunk
15:09
Fixed a broken error propagation which allowed duplicate tags to be output via fsl_deck_output(). Found while investigating an ML post from the fossil-users list. check-in: 0dadcc5b17 user: stephan tags: trunk
2014-10-07
15:25
fixed a potential corner-case null deref when built without FSL_CONFIG_ENABLE_TIMER. check-in: 234eba25f4 user: stephan tags: trunk
15:07
minor doc tweaks. check-in: d484c1679a user: stephan tags: trunk
2014-10-06
18:45
latest s2: call stack depth cap. Added r-tester.sh (require.s2 unit test runner). check-in: 105ab45377 user: stephan tags: trunk
2014-10-05
16:08
and this time without the memleak. check-in: 21f7c830fd user: stephan tags: trunk
15:56
removed an unnecessar #include. check-in: c0f5879cbd user: stephan tags: trunk
15:56
a slightly more pedantic solution for Fossil.Context.loginCookieName(). check-in: cab07654a4 user: stephan tags: trunk
09:55
ported in some of the login-related bits. check-in: c5b01a0b83 user: stephan tags: trunk
04:33
latest s2, minor ++/-- and unary +/- improvements. check-in: 95707c515f user: stephan tags: trunk
2014-10-03
05:38
latest s2: minor build fixes and initial go at Ctrl-C handling. check-in: 8acfeb6c13 user: stephan tags: trunk
2014-10-02
08:41
Make sqlite compile on MinGW (already reported upstream but not yet handled) check-in: f45641c753 user: jan.nijtmans tags: trunk
03:15
merged in dave's commits for validated msvc support. tested are vc6, ds2010, ds2012, dll, amalgamation, debug, release, x86, x64, and all possible permutations thereof. tested == all f-apps run to completion. check-in: c5218050d1 user: dave tags: trunk
03:12
amalgamation support for msvc; #undef'ed a couple macros that collided with Windowsian things; added a project for my testing porpoises; put in a conditional compile switch in f-sanity.c to support an amalgamation build with ease. check-in: 0d2451c9c2 user: dave tags: dave
01:27
added BUILDING document for the msvc builds. added DS2012 f-apps configs. check-in: 517c43c434 user: dave tags: dave
2014-10-01
15:36
(pull in current trunk) check-in: ce9a57463c user: dave tags: dave
15:34
integrated feature branch 'feech-dave-msvcsupport001' into my working branch; this mostly because it ws merged into trunk already, so I might as well close it. its was veritably done, pending final verification, which I expected to go cleanly anyway. check-in: f81b965c3a user: dave tags: dave
14:01
merged in dave's branch, patched a couple compile errors revealed by --no-debug config option, fixed a couple c99'isms. check-in: c3a138fac0 user: stephan tags: trunk
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. Closed-Leaf check-in: 2a1b0091d2 user: dave tags: feech-dave-msvcsupport001
07:36
trivial; avoid a warning about there being a difference between void fxn() and void fxn ( void ) for old c compilers check-in: 6f99aa0874 user: dave tags: feech-dave-msvcsupport001
07:31
minor; avoid a warning arising from a conflicting definition of tzset check-in: 4a8d9c2548 user: dave tags: feech-dave-msvcsupport001
07:27
minor; the 'release' config of f-apps/test output to the wrong directory, with the wrong name check-in: f3c33050b9 user: dave tags: feech-dave-msvcsupport001
07:20
marked as FSL_EXPORT all other symbols in public api (pretty much everything). I stopped short of doing things in fossil-internal.h, because I think that is a private header. There are a couple things in there that are exported, because the test apps required them, but I'm going to leave that header alone for now. Changes in this change set reflect methods that are not referenced by any of the test apps, and maybe need some test cases generated. check-in: bd0a181022 user: dave tags: feech-dave-msvcsupport001
06:15
marked as FSL_EXPORT various symbols; this change set is limited to the ones that are needed by the various f-apps, but this is not complete for general use of the library. I am doing this change in two phases simply because it gives me a way to see what methods have been exercised (by f-apps) and which have not. check-in: 7b651689f3 user: dave tags: feech-dave-msvcsupport001
06:10
added project configs for the f-apps for VC6 and DeveloperStudio-2010 check-in: 62fc412621 user: dave tags: feech-dave-msvcsupport001
05:59
updated project config to use dll crt; this is required for some apis (e.g. some that transport FILE* created in the client app, but used in the lib, e.g. fsl_output_f_FILE()) check-in: b9562c9af7 user: dave tags: feech-dave-msvcsupport001
2014-09-30
20:41
Disable fossil warning when committing *.dsp/*.dsw (and similar) with CRLF line-endings. check-in: 441f39661c user: jan.nijtmans tags: feech-dave-msvcsupport001
19:36
added DevStudio 2012 configuration. This is pretty much the same as DS2010, but a minor change is made so as to produce binaries that will work on XP, and to turn off safe SEH for Win32 Release, since a dependent lib (zlib) can't produce safeSEH images (alas). check-in: c91f4e2770 user: dave tags: feech-dave-msvcsupport001
15:35
minor; workaround fact that VC6 doesn't know how to convert a uint64_t to a double, but it does know how to convert a int64_t to a double; haha. I didn't bother to put it under conditional compilation, since it is harmless on other platforms (and you can't get enough precision out of a double to ever have it matter about the highest bits). check-in: 4627c84c02 user: dave tags: feech-dave-msvcsupport001
13:06
corrected a bug in test_fs_cx_stat() that I introduced by commenting out an ureferenced local, simply to suppress a warning. It is unreferenced in Win32 builds, but it is used in Linux, so I uncommented it out, and I will just disregard the warning in Win32, since this is a test app anyway. Maybe I'll fix it better later with a conditional compile, or something, but it's pretty innocuous. check-in: 4814bd4e5c user: dave tags: feech-dave-msvcsupport001
12:50
a peculiarity of Microsoft's AMD-64 compiler is that __FILE__ resolves to a relative path correct at compile-time. but incorrect at runtime if you are running in a different directory. (The x86 compiler resolves to fully-qualified paths, which can create a different problem if you were on a different machine, but these are just test apps anyway). The net result was to cause tests to fail when __FILE__ was used as a object of the test. There were two test apps that did this, and they were modified to use a manhandled self name in the case of microsoft's compilers. check-in: 9834d60958 user: dave tags: feech-dave-msvcsupport001
12:31
stat() family of functions on Windows cannot have a trailing path separator(s); if they are present, ENOENT will be indicated. remove them before issuing the stat() call. check-in: 5f15aad639 user: dave tags: feech-dave-msvcsupport001
12:22
minor, win32dll; need to include header (fossil-util.h) declaring exported functions, or the impl will not actually get exported (the impl will not pick up the export attribute) check-in: ea7ba15dec user: dave tags: feech-dave-msvcsupport001
2014-09-29
21:46
bug in opening file (win32-specific); 'mode' was set to be the 'filename' check-in: e8f06d4e5b user: dave tags: feech-dave-msvcsupport001
21:30
added clause to not include config-win32.h in amalgamation build, since it is... amalgamated. check-in: 6f968ae6fb user: dave tags: feech-dave-msvcsupport001
2014-09-28
17:30
trivial; update config-win32.h to be the same as current output from autoconfigure.h. There's no functional change, this is simply to make future diffs meaningful. check-in: de2d79c40f user: dave tags: feech-dave-msvcsupport001
2014-09-27
10:15
added DS2010 project files; 32 and 64 bit builds check-in: ec77cd08f7 user: dave tags: feech-dave-msvcsupport001
09:13
added project files for Visual Studio 6, and minor modifications to existing source to support compilation on that platform. This has been built, but only weakly tested so far. Next, I'm going to verify the build on DS2010. check-in: a7e4276441 user: dave tags: feech-dave-msvcsupport001
2014-09-26
22:55
Create new branch named "feech-dave-msvcsupport001" check-in: c8ca27bffb user: dave tags: feech-dave-msvcsupport001
22:52
Create new branch named "dave" check-in: 8fe348254f user: dave tags: dave
2014-09-25
05:36
adding missing double-to-int64 cast in fsl_zip_timestamp_set_julian(). check-in: b9dade891a user: stephan tags: trunk
2014-08-31
17:04
latest s2. check-in: af5d34d363 user: stephan tags: trunk
2014-08-30
07:49
more work on the fsl/db/repo-related modules, added basic timeline app impl in s2. check-in: 5760ed07f8 user: stephan tags: trunk
06:25
latest s2/requires2. check-in: b9d3c27a12 user: stephan tags: trunk
2014-08-27
18:47
latest s2, added missing require.s2 scripts. check-in: 7a4fa849d3 user: stephan tags: trunk
2014-08-26
21:20
latest s2, lots of little stuff, one notable corner-case bug fix (bogus OOM error). check-in: 0f48e69758 user: stephan tags: trunk
17:26
accommodated API changes. check-in: acc01d60c7 user: stephan tags: trunk
17:23
minor pedantic cleanup tweak, brought on by something seen in kdbg. check-in: facef16fcf user: stephan tags: trunk
16:52
refactored fsl_db prepared stmt cache to be a linked list instead of dynamic array. check-in: 961a6464a7 user: stephan tags: trunk
2014-08-20
21:16
more latest s2. check-in: 55229dd987 user: stephan tags: trunk
2014-08-18
18:36
latest s2, for Object.copyPropertiesTo(). check-in: 6325cf3507 user: stephan tags: trunk
2014-08-17
19:52
latest s2 and supporting code. check-in: 2dc11c8e15 user: stephan tags: trunk
2014-08-16
17:26
Latest s2/require.s2. Every day something new. check-in: fc92b6ff17 user: stephan tags: trunk
14:32
seems i had repeated myself. check-in: b498e08277 user: stephan tags: trunk
14:30
minor doc fix and removed a snippet of older code. check-in: 46f57e287b user: stephan tags: trunk
2014-08-15
11:33
latest s2 for # operator changes. check-in: 57603b1953 user: stephan tags: trunk
2014-08-14
18:24
more scripting. check-in: 31de4f49ad user: stephan tags: trunk
17:40
ignore-glob maintenance check-in: 424043b8a8 user: stephan tags: trunk
15:20
moved some of the require.s2 plugins into files. check-in: 370461081c user: stephan tags: trunk
14:39
boatloads of fsl/requires2 bits, latest s2. check-in: 207e098803 user: stephan tags: trunk
2014-08-12
15:19
added missing file. check-in: a1dabf682d user: stephan tags: trunk
2014-08-10
20:22
lots more require.s2 stuff. check-in: 62cb241eed user: stephan tags: trunk
13:40
help text improvements. check-in: 25728bccdb user: stephan tags: trunk
13:22
More latest s2, added ability to auto-load require.s2 plugins. check-in: 14f5d7dee4 user: stephan tags: trunk
13:21
renamed s2sh binary to f-s2sh, for project consistency and so that i can keep both in my PATH. check-in: 6294f4ddc8 user: stephan tags: trunk
11:51
upstream s2 (argv propagation fix) and require.s2 check-in: 2c3fbd37e5 user: stephan tags: trunk
2014-08-09
16:52
latest s2, started work on a require.rs-based app prototype. check-in: e54de856af user: stephan tags: trunk
14:32
more s2. check-in: a5a9733acd user: stephan tags: trunk
07:12
latest s2 for "this" changes in non-property func calls. check-in: 23f20bb428 user: stephan tags: trunk
2014-08-08
23:20
latest s2. check-in: a9d46c815a user: stephan tags: trunk
2014-08-04
18:13
latest upstream s2 for (new) do/while loop and updated unit tests. check-in: 51413ceef4 user: stephan tags: trunk
18:07
accommodated API change. check-in: 45100d1aa1 user: stephan tags: trunk
2014-07-28
21:19
s2: consolidated Db.selectObject/Array() into selectRow(). check-in: 9e1c3bc3d7 user: stephan tags: trunk
19:32
s2: minor additions to the Fossil.Db and the Fossil.Context db handle bits. Added Fossil.Context.openConfig(). check-in: 6016408e6c user: stephan tags: trunk
19:30
minor doc additions. check-in: cd924ec278 user: stephan tags: trunk
16:52
s2: minor tweaks to the CGI bits, added Fossil.file.pushd/popd() to s2sh.s2. Fixed (with valgrinds help) stale native pointers to fsl_db instances left around by a missing piece in the Fossil.Context cleanup. check-in: c56f7d700f user: stephan tags: trunk
2014-07-27
04:15
more work on the s2 cgi bits. check-in: 835eb931aa user: stephan tags: trunk
2014-07-26
20:56
array-to-json indentation fix. check-in: e1fd3d45bb user: stephan tags: trunk
18:56
more tinkering with the s2 cgi bits, pulled in latest s2 for error reporting improvements. check-in: a21a1f3975 user: stephan tags: trunk
16:46
s2: got initial CGI setup in place. No routing/dispatching yet. check-in: d694331ec1 user: stephan tags: trunk
2014-07-24
17:05
Reformatted, now that i have finally taught emacs to stop indenting for the C++-mode extern "C" block. check-in: dd07d92271 user: stephan tags: trunk
17:02
doc/comment updates. check-in: c87df19c32 user: stephan tags: trunk
16:48
Minor error handling tweaks in fsl_db_prepare(). check-in: d4ef5d233a user: stephan tags: trunk
15:30
s2: converted the "eyeball checks" from the previous commit into assertions. Still works, too. check-in: dc804ca674 user: stephan tags: trunk
15:17
s2: added a check for the Simon Slavin patch effect (none) on the Db API. check-in: cdb5a63832 user: stephan tags: trunk
15:15
removed to bogus assert()s. check-in: b8d182779d user: stephan tags: trunk
15:00
a minor expansion on that last commit: now set db->name to the proper (role) name instead of "main". check-in: f998037762 user: stephan tags: trunk
14:49
Eureka: Simon Slavin found a way to apply a concrete name to the main db. Seems to work. check-in: 5abda43115 user: stephan tags: trunk
14:40
latest s2, minor changes to s2 Fossil.Db.Stmt class. check-in: 53692d027b user: stephan tags: trunk
2014-07-20
11:28
upstream s2 for s2.ob.pop() semantics change. check-in: e3d1964f5e user: stephan tags: trunk
2014-07-19
11:42
more work on the s2 cgi module. check-in: b0b92640af user: stephan tags: trunk
10:28
port th1ish cgi module to s2. check-in: 9a8e911d0b user: stephan tags: trunk
10:28
Added module loader params to generated makefile config. check-in: a3f5826c8a user: stephan tags: trunk
2014-07-18
21:27
minor build fix for the valgrind tests. check-in: 5629818f9e user: stephan tags: trunk
21:27
minor text updates. check-in: 54587ffc69 user: stephan tags: trunk
19:11
s2: made the various major namespaces/classes const. Added autoload script to extend fossil a bit. Fossil.symToRid/Uuid() now return undefined for unresolvable symbols, to simplify script code over the other multitude of potential exceptions there. check-in: 9c79e9eaef user: stephan tags: trunk
16:30
s2: minor cleanups and fixes in Fossil.Db. check-in: 98be7a7c10 user: stephan tags: trunk
16:02
Added Fossil.Db.getName/Filename(). check-in: 72df82e727 user: stephan tags: trunk
14:43
latest s2 for strftime(). check-in: ff8e396f06 user: stephan tags: trunk
14:26
s2: ported in Fossil.time/file/delta APIs. check-in: 316d9a3383 user: stephan tags: trunk
13:09
Ported Fossil.Context class from th1ish to s2. check-in: cdca3e67e2 user: stephan tags: trunk
13:07
th1ish binding: fixed a range check. check-in: 1d16c36eb3 user: stephan tags: trunk
10:16
s2: Ported Buffer.compress/uncompress/isCompressed(), Buffer.md5(), Buffer.sha1() check-in: 7bbbaa3601 user: stephan tags: trunk
2014-07-17
19:24
s2/th1ish: fixed an array access (off by one). Improved an error message. check-in: eb2cec3b6a user: stephan tags: trunk
18:38
s2: Fossil.Db.each() now returns the db instance (for lack of anything better). check-in: e1d8b6ba69 user: stephan tags: trunk
18:06
s2: latest upstream s2, added bind-by-name support to Fossil.Db.Stmt. check-in: 13e80f6021 user: stephan tags: trunk
16:32
Ported the th1ish Fossil.Db and Fossil.Db.Stmt bindings to s2. check-in: 2a323d568c user: stephan tags: trunk
14:49
second half of previous ifndef fix. check-in: 77ba9374b0 user: stephan tags: trunk
14:46
added an ifndef check to avoid collisions w/ third-party headers. check-in: 1aec652642 user: stephan tags: trunk
14:16
Initial infrastructure for s2 script bindings (supercedes th1ish). check-in: 210ba2cf23 user: stephan tags: trunk
2014-07-09
20:21
fixed a (unsigned) char portability bug which caused fcli --help to only show global options on platforms where char is unsigned. check-in: 2d1c834b45 user: stephan tags: trunk
2014-07-01
19:37
minor doc update. check-in: fa07e0c44c user: stephan tags: trunk
2014-06-28
11:00
another important cwal fix. check-in: e95450d58c user: stephan tags: trunk
10:00
latest cwal/th1ish - major bugfix for the vacuum algo. check-in: 66a8d1be2e user: stephan tags: trunk
03:04
added a note about a fossil(1) addition. check-in: 1d4d4e42b6 user: stephan tags: trunk
2014-06-26
10:08
Make libfossil compile with MinGW. Not useful yet because only symbols from fossil-core.h are exported from the dll for now. check-in: fc3a9850a1 user: jan.nijtmans tags: trunk
2014-06-22
02:25
typo check-in: b3c70a06b8 user: bch tags: trunk
2014-06-20
20:25
Added a missing finalizer call in an error case. check-in: 792847981d user: stephan tags: trunk
2014-06-15
19:46
latest th1ish. check-in: 01732cab69 user: stephan tags: trunk
2014-06-11
11:38
Latest sqlite check-in: 9e162ffa9a user: jan.nijtmans tags: trunk
2014-05-31
19:03
Latest th1ish - buffer NUL termination fix for slurpFile(). check-in: 074d8edfd5 user: stephan tags: trunk
2014-05-29
16:56
Portability fixes (broken char signedness assumptions) for Raspberry Pi. check-in: 9fb7bcf2a9 user: stephan tags: trunk
08:52
latest th1ish (portability fixes). check-in: 12f4f4207b user: stephan tags: trunk
08:51
Portability fixes: changed char to int in places which use 3-value logic. check-in: fbf99d6e80 user: stephan tags: trunk
2014-05-16
15:18
Started adding basics needed for auth support. check-in: 8e1ddefaf0 user: stephan tags: trunk
2014-05-14
21:25
latest th1ish, more script tinkering. check-in: bc1feef39e user: stephan tags: trunk
2014-05-13
16:55
latest th1ish: customizable tmplish() markup tags. check-in: 0baf600400 user: stephan tags: trunk
2014-05-11
15:57
yet more th1ish. check-in: e7b850a706 user: stephan tags: trunk
15:27
another upstream tmplish fix. check-in: 7c7b79628b user: stephan tags: trunk
15:20
tmplish fixes and cleanups. check-in: 8e82f48b98 user: stephan tags: trunk
12:17
latest th1ish. lots of script thinkering. check-in: 0882e56e3a user: stephan tags: trunk
2014-05-10
13:08
latest th1ish, fixes line/col counts in exceptions for UTF8 (now counts chars, not bytes). check-in: 1201039ec3 user: stephan tags: trunk
12:15
yet more widgeting and templating... check-in: 3cba9ce6ff user: stephan tags: trunk
12:06
re-added Fossil.rc symbols, as it appears they are still used in many places. check-in: 2c15759fe5 user: stephan tags: trunk
11:50
more widget tinkering and additions. check-in: 151811b651 user: stephan tags: trunk
10:49
more widget tinkering. check-in: ebeae95cbf user: stephan tags: trunk
10:29
Lots of tinkering with the CGI bits. Improved widget and tmplish infrastructure a bit. check-in: fc5b5dd5a6 user: stephan tags: trunk
2014-05-09
22:32
fixed broken tmplish page title. check-in: 870d4e8de5 user: stephan tags: trunk
22:30
Added SkinnedTmplishRoute and routed /tmplish through it. check-in: f9f03204b7 user: stephan tags: trunk
21:13
take advantage of new configure test operation (cc-check-linkability). Closed-Leaf check-in: 731f828b21 user: bch tags: bsd_cfg
21:12
new linkability proc in configure tool ("cc-check-linkability") check-in: 539b7ab15d user: bch tags: bsd_cfg
21:03
minor cleanups. break time. check-in: 86149eba72 user: stephan tags: trunk
20:24
Added Tmplish link to the main menu. check-in: 412a5e5818 user: stephan tags: trunk
20:21
html escaping fix. check-in: cd20e14108 user: stephan tags: trunk
20:18
fixed a typo check-in: f221284edc user: stephan tags: trunk
20:14
latest cwal/th1ish, added a tmplish demo page. check-in: 4fd74d522c user: stephan tags: trunk
18:35
fixed -g (global) config db flag (config db was never opened). check-in: 6aa0333ba7 user: stephan tags: trunk
17:56
attempt "linux way" first, to work around a linux-side problem. check-in: c7b18e1dd7 user: stephan tags: trunk
17:52
adjusted "-ldl" test w/ dlerror() vs. dlopen() check-in: ac1431f8f0 user: bch tags: trunk
17:38
okay, Brad, try this. check-in: 4656cdf2db user: stephan tags: trunk
17:29
trying a netbsd-style libdl check. check-in: e29c3d0917 user: stephan tags: trunk
15:50
Minor tweaks and cleanups which have been sitting around for a week or more. check-in: 66cca4c0a6 user: stephan tags: trunk
15:44
latest th1ish and link flag tweaks for BSD (i hope). check-in: 436283519d user: stephan tags: trunk
08:26
vid=0 should be allowed here. check-in: e7eebee739 user: jan.nijtmans tags: trunk
2014-05-07
15:45
Fixed a leaked hash value (thanks, valgrind). check-in: 1cac4980c3 user: stephan tags: trunk
2014-05-06
21:20
Added FSL_RC_UNKNOWN_RESOURCE. Minor cleanups. check-in: 97eed771cd user: stephan tags: trunk
2014-05-04
10:00
accommodate API change. check-in: 66212b26e6 user: stephan tags: trunk
2014-05-03
20:27
latest th1ish. check-in: c0952bb78a user: stephan tags: trunk
2014-05-01
16:50
latest cwal - better string hash algo (==fewer interning tables needed). check-in: 3efc757345 user: stephan tags: trunk
16:36
more cwal metrics reporting improvements. check-in: a4e184acb3 user: stephan tags: trunk
14:58
more cwal, minor metrics tweaks check-in: 8ac28e5214 user: stephan tags: trunk
14:22
latest cwal for the improved --mem statistics. check-in: 9832848a34 user: stephan tags: trunk
14:01
path test code tinkering. time for a break. check-in: dad7c554ab user: stephan tags: trunk
13:21
Unbreak Cygwin build: sqlite3.c: In function ‘winRandomness’: sqlite3.c:36567:25: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] if( sizeof(SYSTEMTIME)<=nBuf-n ){ Still to be reported upstream. check-in: e6411df9b4 user: jan.nijtmans tags: trunk
13:06
added missing file. check-in: 45baff1e9e user: stephan tags: trunk
12:42
More work on the path porting. Related refactoring to make some more bits visible. check-in: 35cef04dcd user: stephan tags: trunk
00:48
minor YAGNI template addition. Because we can. check-in: d7927376fa user: stephan tags: trunk
00:25
started porting in fossil(1) path.c bits. check-in: 82db074312 user: stephan tags: trunk
2014-04-28
11:22
Cherry-pick [http://fossil-scm.org/index.html/info/1274c97d700ed05fbb60d327fa758562824bc280|1274c97d70]: Fix function same_dline_ignore_allws(), for the case where one side of the diff was an empty line. Example where it went wrong: [http://fossil-scm.org/index.html/fdiff?v1=d5e0c2dc93&v2=7ee7dd0a42&sbs=1&w] check-in: e54f14f83c user: jan.nijtmans tags: trunk
2014-04-26
22:09
latest th1ish amalgamation. check-in: c10d7424ae user: stephan tags: trunk
22:01
disabled the COMMIT check because i am seeing weirdness in the pointer passed to it. check-in: 85083a72e1 user: stephan tags: trunk
2014-04-22
20:19
minor doc addition. check-in: e086db5750 user: stephan tags: trunk
20:16
doc clarifications. check-in: 5f79eb5bcf user: stephan tags: trunk
20:14
Added a bunch of elses. check-in: 153950a7f3 user: stephan tags: trunk
20:11
Added an sqlite3 commit hook to abort the app if COMMIT is used while an API-controlled transaction is in progress. Added a fsl_str_is_date2() test which should have been in the previous commit. check-in: 83c08406ea user: stephan tags: trunk
20:09
added fsl_str_is_date2() in prep for 5-digit year support (a challenge from drh ;). check-in: 674b3d07d3 user: stephan tags: trunk
2014-04-21
18:18
lastest th1ish (again) and minor script tinkering. check-in: a48b3a2654 user: stephan tags: trunk
08:15
removed automatic "simplification" of SQL because it breaks caching (just now noticed). check-in: d903f3e5b1 user: stephan tags: trunk
2014-04-19
20:14
cleanups in the new --help bits. check-in: d7968f7790 user: stephan tags: trunk
20:08
Started working on a new fcli --help mechanism. check-in: 449e9406f5 user: stephan tags: trunk
16:55
more work on the scripting bits, latest th1ish. Removed Fossil.rc mapping in favor of Fossil.rcString(). check-in: 5f60d77cb8 user: stephan tags: trunk
13:29
latest th1ish (api.ob.pop(newParam)). check-in: dca9f20f84 user: stephan tags: trunk
13:00
latest th1ish, a couple assertion fixes. Imported linenoiseish th1ish module. check-in: d846a10d99 user: stephan tags: trunk
2014-04-17
20:50
latest th1ish, with allocation metrics. check-in: 9c10390c49 user: stephan tags: trunk
2014-04-13
19:00
latest th1ish amalgamation (a couple new features). check-in: 3249838f80 user: stephan tags: trunk
2014-04-12
12:41
latest th1ish: do/while loop and Array.isEmpty(). check-in: 6013e1d198 user: stephan tags: trunk
2014-04-11
23:12
minor formatting tweak. Edit: aaaaannnd... a bunch of other stuff i didn't mean to commit here. check-in: f01ba444ed user: stephan tags: trunk
15:31
Added crosslinking support for ATTACHMENT artifacts. check-in: 6e9428cba9 user: stephan tags: trunk
2014-04-10
18:59
Latest th1ish amalgamation - tiny cleanups. check-in: 70d8ff5af2 user: stephan tags: trunk
18:18
latest th1ish shell. Adds missing help text. check-in: 9e0e853266 user: stephan tags: trunk
16:57
Pulled in latest th1ish shell.c. Seems its been out of date for a while. Uses newer/programmable 'is this string internable?' heuristics. check-in: c0ffac510c user: stephan tags: trunk
16:29
Latest th1ish/cwal (minor fixes). check-in: 3cd8989039 user: stephan tags: trunk
2014-04-08
19:43
latest cwal/th1ish check-in: 7adf607efc user: stephan tags: trunk
19:40
minor doc tweaks. check-in: 5f8e46aa48 user: stephan tags: trunk
2014-04-06
18:49
more accommodation of 0 as a valid RID for an empty repo. check-in: d1a3c65cf6 user: stephan tags: trunk
18:48
Fixed fsl_vfile_load_from_rid() to work with rid==0 (empty repo). check-in: 606ddf4798 user: stephan tags: trunk
18:28
Made f-vdiff's output more like fossil(1)'s (indistinguishable when called with no arguments and there are local diffs). check-in: 03ed2906fa user: stephan tags: trunk
18:24
minor comment tweaks. check-in: 5f35b704c8 user: stephan tags: trunk
17:44
minor tinering with the th1ish code. check-in: 6a0e569ecf user: stephan tags: trunk
17:44
moved a test. check-in: c779eec8e4 user: stephan tags: trunk
13:15
more docs check-in: 39a945183d user: stephan tags: trunk
13:15
Added fsl_repo_import_blob() fsl_repo_import_blob(). One of the tests may fail first after the commit... we'll see if there's a follow-up commit to fix it. check-in: 4a39e3e670 user: stephan tags: trunk
12:33
Added an assertion. check-in: 5b43c10b4e user: stephan tags: trunk
12:33
bugfix: interpret newlines literally in SQL strings in fsl_simplify_sql(). check-in: ef35b0a0a9 user: stephan tags: trunk
12:31
yet more doc additions. check-in: 99167d8f6a user: stephan tags: trunk
12:31
doc additions. check-in: 8225d79ca0 user: stephan tags: trunk
12:30
doc additions. check-in: 293a82f4e7 user: stephan tags: trunk
12:29
added an assertion. check-in: fd638332a4 user: stephan tags: trunk
2014-04-04
14:05
Upgrade to SQLite 3.8.4.3 (retaining the SQLITE_MAX_MMAP_SIZE bug-fix which - unfortunately - didn't appear in the official version yet) check-in: 7318c5a4d2 user: jan.nijtmans tags: trunk
10:41
Not sure why this chose now to break. Need to re-evaluate this at some point - some of this handling is historical. check-in: 33b3ce4300 user: stephan tags: trunk
10:35
Pulled in latest th1ish so that it can build with -Wsign-compare. check-in: b4d5a5cfe2 user: stephan tags: trunk
2014-04-03
19:57
"code notes" commented-out (squelches compiler warnings) check-in: ef664b30c8 user: bch tags: trunk
19:18
typo check-in: 4655704279 user: bch tags: trunk
17:50
pulled in upstream fix from http://www.fossil-scm.org/index.html/info/c23190a61d7794b7935bbef1b00eee3377f80c85 check-in: 11edd969f0 user: stephan tags: trunk
17:31
f-vdiff no longer uses @internal APIs. check-in: 21d14c7d69 user: stephan tags: trunk
17:27
Added diff vs local checkout to f-vdiff. check-in: 08c4882dc7 user: stephan tags: trunk
17:19
fcli now elides global/framework help options unless --global is passed, and instead adds a hint about that option to the --help output. check-in: 734b3f5352 user: stephan tags: trunk
17:02
Renamed fsl_glob_list_clean() to fsl_glob_list_clear() for consistency with similar APIs. check-in: 1075d15a5f user: stephan tags: trunk
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. check-in: f18878c6b4 user: stephan tags: trunk
2014-04-01
19:15
minor cleanups. check-in: 9ec90536c3 user: stephan tags: trunk
19:14
a minor modernization. check-in: 701c3c1b7e user: stephan tags: trunk
17:49
Added the --brief|-b flag to f-vdiff. Changed when/where glob checking is done. check-in: be47664f18 user: stephan tags: trunk
17:22
Minor cleanups. Found a use case for the untested-until-now fsl_card_F_content(). check-in: 40901ae254 user: stephan tags: trunk
17:16
Added --invert|-i flag to f-vdiff. check-in: ac02ab49fd user: stephan tags: trunk
17:04
Minor milestone: f-vdiff basically works. Just need to add diff-vs-checkout support. Added fsl_isatty() b/c it is needed by a couple of apps (could alternately go in fcli). check-in: ab6bf194c2 user: stephan tags: trunk
17:03
fixed resetting of ANSI colors when in HTML mode. check-in: a030960792 user: stephan tags: trunk
15:34
And this time compiled it. check-in: fa09253792 user: stephan tags: trunk
2014-03-31
18:54
minor internal cleanups in crosslinking. check-in: d8f5d3bb1f user: stephan tags: trunk
17:46
Improved f-timeline to show mod/deleted/added status. Shows renames as add/remove pairs, though. check-in: a291c43e3a user: stephan tags: trunk
17:35
Removed the reportDeletions option from fsl_repo_extract(). Cuts the code size in half and does away with a number of corner cases and inconsistencies in the reporting of deletions. Deleted files are no longer reported by that routine. check-in: 63d94544ed user: stephan tags: trunk
16:53
Checking this is in before i remove the reportDeletion options from fsl_repo_extract() - it over-complicates everything and has fundamental corner cases. check-in: 0df56eeae7 user: stephan tags: trunk
16:36
Fixed a mis-free() in fsl_repo_extract(). check-in: f0b9e29b44 user: stephan tags: trunk
2014-03-30
12:18
minor doc updates. check-in: e0c522728b user: stephan tags: trunk
10:37
Added caching of versionable config results but then removed it because it introduces inconsistencies in string ownership vis-a-vis non-versioned config. Various little cleanups and additions along the way. check-in: 48eec586a9 user: stephan tags: trunk
10:35
Added -Wsign-compare to CFLAGS. check-in: a4509078f4 user: stephan tags: trunk
08:52
minor non-functional cleanups. check-in: fab9aad9f8 user: stephan tags: trunk
2014-03-29
10:09
Introducing the highly arguable fsl_simplify_sql() utility routine. check-in: 7b0022b9a5 user: stephan tags: trunk
2014-03-28
21:52
some numeric type changes and casts to fix warnings. They pass the sanity checks but if new weirdness starts happening, this is a prime suspect. check-in: 1f3e7bc558 user: stephan tags: trunk
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. check-in: cb99e115a4 user: stephan tags: trunk
20:42
Defined how fsl_rid_is_a_checkin() behaves for rid 0. check-in: cb4fddb37f user: stephan tags: trunk
20:41
Fixed a broken assertion. check-in: a227bb265b user: stephan tags: trunk
20:41
Fixed an #include in amalgamation output. check-in: a9fc16e4f6 user: stephan tags: trunk
20:40
Switched #include style so downstream amalgamation build works. check-in: d5cb2f8736 user: stephan tags: trunk
20:40
Fixed f-status to work with a new/empty repo lacking an initial checkin. check-in: 83afcc7892 user: stephan tags: trunk
20:39
Fixed arg handling to accept -m before the filename. check-in: 6cff5486ec user: stephan tags: trunk
20:31
fixed an assertion broken by changes made earlier tonight. check-in: 1c29a59830 user: stephan tags: trunk
19:52
Added clang to the C++ amalgamation build sanity check. check-in: ec6c74699a user: stephan tags: trunk
19:50
Moved libfossil++.?pp up one dir, analog to how src/Makefile does it. check-in: bc3be95ae0 user: stephan tags: trunk
19:49
Renamed libfossil_amalgamation.XXX to libfossil.XXX. Added amalgamation build for C++ API. check-in: 74bd766e66 user: stephan tags: trunk
19:45
added some untested code to play with later. check-in: 35f5b6a5e2 user: stephan tags: trunk
19:45
fsl_checkin_commit() now works on an empty repo (version RID==0). check-in: 41f65654ce user: stephan tags: trunk
16:10
Minor cleanups made while adding and then removing some code which really didn't belong there. check-in: 3fcc1aeafc user: stephan tags: trunk
15:34
added a TODO check-in: 88252f4d23 user: stephan tags: trunk
15:27
Added infrastructure for the various xxx-glob config options. fsl_cx now caches them when a repo/checkout is opened and provides APIs for querying them. check-in: aa8f7bd1be user: stephan tags: trunk
15:12
Fixed some braindeadedry in fsl_buffer_fill_from_filename(). check-in: 01dd5d61e7 user: stephan tags: trunk
13:29
added another test app to ignore-glob. check-in: b5d1020bae user: stephan tags: trunk
2014-03-27
20:44
modernized the ignore-glob a bit. check-in: 5ab733637a user: stephan tags: trunk
20:44
help text fix. check-in: 3f14cc92b5 user: stephan tags: trunk
20:25
Added the untested fsl_card_F_content() utility function. Possibly YAGNI. check-in: 4bd5798ec4 user: stephan tags: trunk
20:24
added a couple reminder notes. check-in: 8b118cc522 user: stephan tags: trunk
20:24
should have been part of previous commit. check-in: 0c7d3a1056 user: stephan tags: trunk
20:23
moved the fsl_list impl code into its own file. check-in: b668b02447 user: stephan tags: trunk
20:15
Moved versionable settings tests to the standard test battery. check-in: 9f64472a1d user: stephan tags: trunk
20:13
Added fsl_cx::cache::projectCode to store the project-code setting, needed for up-coming authentication-related hashing. check-in: 1b07ec684c user: stephan tags: trunk
20:11
Added rename info. check-in: a903843a52 user: stephan tags: trunk
20:10
Added basic infrastructure for reading versionable settings. check-in: 5f501363c4 user: stephan tags: trunk
19:59
fixed a memory misuse in the %z fsl_buffer_appendf() specifier. check-in: 77cb96a0f7 user: stephan tags: trunk
18:24
Added --branch/-b=BRANCH and --tag/-t=TAG filters to f-timeline. check-in: 30a5655813 user: stephan tags: trunk
18:21
minor comment addition. check-in: 0f7b938ae8 user: stephan tags: trunk
18:21
added c++11 check to configure script. check-in: 675c4d9bcd user: stephan tags: trunk
16:23
Ported in the DContext::same_fn() bits from fossil(1). Have not tested them but no existing code was broken by them. check-in: dab9579623 user: stephan tags: trunk
11:09
Adapt ignore-glob to latest changes in build environment check-in: 7b109ef77b user: jan.nijtmans tags: trunk
10:39
Upgrade to SQLite 3.8.4.2 (retaining the SQLITE_MAX_MMAP_SIZE bug-fix which - unfortunately - didn't appear in the official version yet) check-in: 39121d2e23 user: jan.nijtmans tags: trunk
2014-03-26
17:18
minor tinkering with the diff code. check-in: 304a5dc4d0 user: stephan tags: trunk
17:15
trying a different query for the partial-merge check. check-in: 485be3449e user: stephan tags: trunk
15:50
removed extraneous newlines. check-in: 30eaf1465a user: stephan tags: trunk
15:48
Fluff: started adding basic ANSI color support to text-mode diffs. Only context diffs for the time being. check-in: 41e6280df7 user: stephan tags: trunk
15:42
minor internal cleanups. Nothing functional. check-in: fbf48bc585 user: stephan tags: trunk
14:31
minor internal cleanups on the code used to generate this checkin. check-in: 3ad1742813 user: stephan tags: trunk
14:29
Added an assertion. check-in: 03019c5871 user: stephan tags: trunk
14:27
Added --cached-sql flag to dump cached statements at end of tests. check-in: 01e5816534 user: stephan tags: trunk
14:27
Converted some statements to cached statements. Fixed a cached statement which was caching dynamic values. check-in: 3b4f033e82 user: stephan tags: trunk
2014-03-25
18:16
A big round of renaming and touchups. More tinkering with the F-card generation. Seems to work how i want it now. This commit is partially a test of said functionality... seems we are not quite at a delta/baseline rollover point. check-in: 7a0759a0a4 user: stephan tags: trunk
2014-03-24
20:59
docs check-in: e85e4c46ad user: stephan tags: trunk
20:55
removed an unneeded non-error check. check-in: d5f58f4d3c user: stephan tags: trunk
20:49
Fixed a horrible bug in the F-card calculation algo. Seem to have fixed a separate corner case in that algo where a locally deleted file was not really seen as deleted (though a deletion card was generated), causing a "no files changed" error, but this changed fundamentally changes the underlying query and must be tested more closely. Just not tonight. check-in: 4d43461db2 user: stephan tags: trunk
20:48
removed obsolete file. Testing a change/fix in the F-card generation algo at the same time. check-in: 8260f7365f user: stephan tags: trunk
20:09
Minor touchups in the C++ wrapper. check-in: 0fab3009a0 user: stephan tags: trunk
2014-03-23
18:25
Weekend hacking session is now over. check-in: fae79b28a4 user: stephan tags: trunk
11:23
Fixed a va_list arg misuse which appeared on 32-bit built with 64-bit fsl_int_t. check-in: 7e9148ae3e user: stephan tags: trunk
11:10
Compile fixes revealed by an older 32-bit gcc 4.6.3. check-in: 27b018d261 user: stephan tags: trunk
11:03
added missing file src/Makefile.in. check-in: f283a16553 user: stephan tags: trunk
2014-03-22
15:30
More build cleanups. ./configure --static/--shared are now independent options, on by default and disabled with --disable-static/shared. check-in: a58a45136b user: stephan tags: trunk
14:30
Finally figured out enough tcl to consolidate some code in auto.def. check-in: 56757c1032 user: stephan tags: trunk
14:09
this file is now generated. check-in: b1dc299c2e user: stephan tags: trunk
14:09
Amalgamation builds again but it leaves out the JNI/TCL bits in order to do so. check-in: 8dd6380ec2 user: stephan tags: trunk
13:50
Build: removed OBJ.DIR bits because it requires too many kludges in the (primitive) build system. Moved src/* main build from top-most Makefile to src/Makefile. Amalgamation is not yet compiling, but it otherwise seems to work. check-in: cb5b8b7a2e user: stephan tags: trunk
12:34
minor cleanups and dead code removal. check-in: 91cd2ade7a user: stephan tags: trunk
11:57
All kinds of tinkering with the C++ bits. Added FCardIterator and FslListIterator. check-in: 7cf24890e0 user: stephan tags: trunk
11:55
Added a comment. check-in: 38887e1b9b user: stephan tags: trunk
11:55
Made fsl_tag_prefix_char() public. Added validation of T-card ordering at output-time. check-in: e5ea5fe2e2 user: stephan tags: trunk
11:54
added fsl_db_changes_recent/total(). check-in: 864de83096 user: stephan tags: trunk
2014-03-21
15:38
tinkering with the C++ bits. check-in: 28a1d8eada user: stephan tags: trunk
14:52
Really break time this time. check-in: d3448e39fb user: stephan tags: trunk
14:13
Added saving to decks. Other C++ cleanups/additions. Break time check-in: 4ecca41beb user: stephan tags: trunk
13:10
Added missing has-T-card validation on CONTROL artifacts. check-in: c07de7ee52 user: stephan tags: trunk
13:01
Added an error message. Removed incorrect P-card output generation (which thankfully failed due to other validation) for CONTROL artifacts. check-in: db3c51efb5 user: stephan tags: trunk
12:32
More work on the C++ API. Added the beginnings of the Deck class. check-in: efc0ab398c user: stephan tags: trunk
10:12
Renamed all the get/setAbcDef() to abcDef(). Other minor additions and cleanups. check-in: 8a5d85d8ca user: stephan tags: trunk
00:02
bed time. check-in: 6d1c3ce450 user: stephan tags: trunk
2014-03-20
23:46
Added missing -Wall/-Werror to C++ build. check-in: 12a851d982 user: stephan tags: trunk
22:44
More additions to the C++ API. Time for the dog walk. check-in: f35e6bd72c user: stephan tags: trunk
22:36
Fixed a pointer-to-pointer which should have been a pointer. Caused corrupted fsl_error message text. check-in: a9029b17d2 user: stephan tags: trunk
22:13
Removed the obsoleted StringBuffer class. Added implicit conversions to the C++-to-C counterparts where it makes sense, as that really simplifies integration with the C API. check-in: 99a28b5a90 user: stephan tags: trunk
21:58
more work on the C++ wrapper. Added a Buffer wrapper. check-in: 2ba7d5fa07 user: stephan tags: trunk
21:01
More work on the C++ API. Added stream/streambuf proxies for fsl_output(), so (e.g.) std::cout can be redirected to fsl_output() check-in: c126aba8ff user: stephan tags: trunk
20:46
Fixed a memleak in fsl_cx_init() when passed a client-fsl_cx_malloc()'d context instance. check-in: ab654844a0 user: stephan tags: trunk
19:21
Added the basic fsl::Context class. Some minor additions to the C API to support the C++ api a bit. Refactored fsl::Db so that it can proxy handles without taking over ownership (needed by the Context's 3 db handles). check-in: f9ff5a4b8d user: stephan tags: trunk
19:18
Fixed a memleak when fsl_db_open() fails. check-in: d7160c7321 user: stephan tags: trunk
17:07
Doc updates. check-in: 3f3ffd147e user: stephan tags: trunk
16:59
cosmetic cleanups. check-in: 71499e3563 user: stephan tags: trunk
2014-03-19
22:30
minor test code tweak. check-in: bc442e2dab user: stephan tags: trunk
22:24
More 'tuning' of the C++ API. Bed time. check-in: 1d27d1309c user: stephan tags: trunk
21:33
more work on the C++ db layer. check-in: e2fe2dc350 user: stephan tags: trunk
21:11
The Db/Stmt C++ wrapper is basically in place. check-in: 3eb4fce307 user: stephan tags: trunk
18:59
Got most of the fsl::Stmt class in place and compiling. Still untested. check-in: 4f2a0650ae user: stephan tags: trunk
17:22
Added an initial skeleton for a C++ wrapper. Only the Exception class is in place so far. It is not yet certain whether this code will stay in this tree or move to its own. check-in: 6382dd0e10 user: stephan tags: trunk
16:39
fixed a constness bug. check-in: 28f65e12ce user: stephan tags: trunk
14:43
Fix [63e3b62b40]: Compilation fails on 32bit linux check-in: 9f69b9df69 user: jan.nijtmans tags: trunk
2014-03-18
22:35
Discovered a descrepancy between fossil(1) and libfossil's %T custom format specifier. So far we never use that one, so a change will not be painful. Discovered/ported in fossil(1)'s %S (UUID-short-string) format specifier. check-in: 3cc5216eb1 user: stephan tags: trunk
22:10
A long evening of minor generic cleanups. Added missing output support for Attachment artifacts. Still missing crosslinking support for them. check-in: 0bf60903ea user: stephan tags: trunk
2014-03-17
21:12
Ported in fsl_gradient_color(). Added fsl_rgb_encode/decode(). Minor comment changes in f-tag. check-in: a508afba51 user: stephan tags: trunk
20:34
fixed a copy/pasted invalid fsl_free() check-in: 28a52b1143 user: stephan tags: trunk
20:26
Reimplemented f-tag to support multiple tag/value pairs at a time. check-in: 1518b90df3 user: stephan tags: trunk
20:23
Added an assertion. Minor formatting tweaks. check-in: 39450147e4 user: stephan tags: trunk
19:14
Fixed: fcli now behaves properly with more than 10 args. A fsl_buffer usage error caused ALL args to be wiped if more than 10 were provided before. check-in: e3e78d1786 user: stephan tags: trunk
19:14
Fixed an incorrect assert() triggered by a delete/rename combination. Minor cleanups in code looked at while figuring out what triggered the assert(). check-in: 811508a602 user: stephan tags: trunk
15:27
rename java namespace, and (ongoing) go a little bit further in actually doing something. check-in: 8625a31eff user: jan.nijtmans tags: trunk
14:40
Port [http://fossil-scm.org/index.html/info/597d1101b4|597d1101b4] bugfix. check-in: e4bf163a5f user: jan.nijtmans tags: trunk
2014-03-16
17:32
Extended the fsl_deck string re-use to cover more cases. Other minor cleanups. check-in: 47401e1763 user: stephan tags: trunk
17:30
Pulled in upstream diff-generation tweaks. check-in: adb83cc610 user: stephan tags: trunk
17:28
Discovered a crash case involving ordering of the sanity tests. To investigate later. check-in: c0b8ce3c1d user: stephan tags: trunk
17:26
minor internal cleanups. check-in: 2f280271d5 user: stephan tags: trunk
17:08
minor touchups to f-zip. check-in: be2b468e4e user: stephan tags: trunk
13:41
Minor tinkering with fsl_deck-to-Object in the th1ish bindings. check-in: b96ea63caf user: stephan tags: trunk
13:03
Extended the manifest content caching in fsl_deck_parse() to apply to other fsl_deck string cards. Changed fsl_deck::L from a fsl_buffer to a C-string. check-in: 752aad3eb7 user: stephan tags: trunk
11:25
Changed fsl_deck_parse() buffer param ownership semantics to something more vague. The parser now re-uses buffer memory for F-card strings, rather than duplicating them, and takes over the buffer memory in that case. This cuts malloc() calls significantly for manifests with many F-cards but does not save much total memory overall (can be measured in kb). check-in: 7943808461 user: stephan tags: trunk
2014-03-15
17:36
s/FSL_FS_PERM/FSL_FILE_PERM/gi. Minor tinkering with the vfile scanning process. check-in: c8c97fd8fe user: stephan tags: trunk
17:28
Tweaked some test code. check-in: 439762f205 user: stephan tags: trunk
15:39
Fixed the quirk of fsl_checkout_file_rm() caring whether a dir name ends with a slash or not. check-in: 9664c64ba3 user: stephan tags: trunk
15:02
added a NULL guard. check-in: 3e6f247357 user: stephan tags: trunk
15:02
prettied a query. check-in: f17950f775 user: stephan tags: trunk
15:01
minor doc fix check-in: 2cbcbf62a3 user: stephan tags: trunk
13:35
Minor cleanups, code consolidation/removal. check-in: a92bffdddf user: stephan tags: trunk
09:48
Removed the now-unused F-card calculation algo. check-in: 4be2703578 user: stephan tags: trunk
09:33
Pulled in upstream diff fix http://www.fossil-scm.org/index.html/info/e2e8531ba7. check-in: a5bda1ae61 user: stephan tags: trunk
2014-03-14
20:50
Make a start with Tcl binding, just enough to make "load ./libfossil.so" work. No actual Tcl commands yet. check-in: 668349fdb0 user: jan.nijtmans tags: trunk
14:53
build fixes for amalgamation. Cleanups in shakenmake bits. Fixed uninitialized vars (thanks, clang). check-in: 968a993c60 user: stephan tags: trunk
14:51
Prefer internal "jni.h" check-in: df8d4f2bb0 user: jan.nijtmans tags: trunk
14:25
a long morning of refactoring and cleanups. check-in: c71f986d35 user: stephan tags: trunk
12:10
merged in an accidental fork (my fault for using f-checkin instead of fossil commit). Finally get to test the delta-too-big bits. check-in: 853ec1f650 user: stephan tags: trunk
12:01
removed an old/long-done TODO. check-in: 5900ce9dee user: stephan tags: trunk
11:57
moved around some comments. check-in: a75ca1c323 user: stephan tags: trunk
11:52
Found the cause of/fixed the problem which caused delta-application to fail on one particular artifact in the tcl core repo. Caused by fsl_buffer_is_compressed() heuristic failing for that one case. Switched to a different heuristic which had been #ifdef'd out. check-in: c3660f5241 user: stephan tags: trunk
11:10
another round of minor cleanups. check-in: 7e8d0ecfe2 user: stephan tags: trunk
11:04
Add fsl_jni.c to the build. check-in: ab56d2d9a0 user: jan.nijtmans tags: trunk
10:47
Unbreak Cygwin build (broken by [2de81ae7b6]) check-in: 1dff0493d2 user: jan.nijtmans tags: trunk
00:07
minor internal cleanups check-in: 286b8aea1a user: stephan tags: trunk
2014-03-13
23:48
Removed the vfile_selected temp table bits. They really are not needed. check-in: 447f497409 user: stephan tags: trunk
23:18
minor error reporting cleanups. check-in: 49961898ba user: stephan tags: trunk
21:50
Corner case fix for first checkin in a repo. check-in: ab6c9982c1 user: stephan tags: trunk
20:59
now removing that +x bit i thought i had unset. check-in: 0096d28c96 user: stephan tags: trunk
20:53
improvements to permissions-only change detection. check-in: 9a07a78159 user: stephan tags: trunk
20:04
squelched some doxygen warnings. check-in: e3241eae55 user: stephan tags: trunk
19:42
accommodated internal restructurings. check-in: 4740bce980 user: stephan tags: trunk
19:40
refactoring and doc improvements. check-in: 67c1885126 user: stephan tags: trunk
18:20
A round of minor cleanups before some refactoring. check-in: 2bba3a248f user: stephan tags: trunk
17:44
Fixed amalgamation sanity check to use local sqlite3.h. check-in: 71f8421ed7 user: stephan tags: trunk
15:39
Seems i forgot to check in last night, which caused an accidental fork today. Finally get to test f-checkin with a merge. Wish us luck... check-in: bc0e000199 user: stephan tags: trunk
14:39
Update to SQLite 3.8.4.1 check-in: 2de81ae7b6 user: jan.nijtmans tags: trunk
12:00
Minor win32 milestone: With those changes a "libfossil.dll" can be produced! No tools yet, don't know if "libfossil.dll" actually works. check-in: f994fec9c5 user: jan.nijtmans tags: trunk
11:36
Make some files compile on MinGW. Ongoing. check-in: 7e5ca27c8c user: jan.nijtmans tags: trunk
11:06
Make configuring steps work with MinGW. (doesn't compile yet, but it's a small step in the right direction) check-in: 7e759995ce user: jan.nijtmans tags: trunk
09:42
minor text tweaks. check-in: 375f435549 user: stephan tags: trunk
09:41
Removed an extraneous slash. check-in: c10bc4977a user: stephan tags: trunk
2014-03-12
19:44
Swaped fsl_checkout_version_info() arg order, for consistency. More work on the checkin bits. check-in: ccb9a1e941 user: stephan tags: trunk
19:42
Doc updates. check-in: ef6d0a106e user: stephan tags: trunk
19:42
Remove the ms_print temp files earlier on. check-in: 1798ea8d60 user: stephan tags: trunk
11:37
Added ms_print.tmp.* to CLEAN_FILES. check-in: d18a976245 user: stephan tags: trunk
11:37
Pulled i upstream fix (well, _change_) in diff algos. check-in: f6586dfda9 user: stephan tags: trunk
2014-03-11
22:09
minor tinkering before bed. check-in: 94dc6783cf user: stephan tags: trunk
21:55
doc additions. check-in: 0e0a34b554 user: stephan tags: trunk
21:01
Removed some dead code. Added an error check. check-in: 1bdec1b5de user: stephan tags: trunk
21:00
pulled in upstream diff-generation changes: http://www.fossil-scm.org/index.html/info/ac3fcebb19 check-in: d84b24de1e user: stephan tags: trunk
20:09
minor code cleanups. Removed some dead code and debug output. check-in: 753fc44fa7 user: stephan tags: trunk
20:07
removed extraneous newlines from error strings. check-in: 9cff5b2f75 user: stephan tags: trunk
18:07
CGI manifest view now shows edited checkin comments (if available). check-in: 24ff7898d4 user: stephan tags: trunk
17:21
Weird. Everything seems to be there but my local files are all showing as diffs... Ah, their vfile entries are not updated. check-in: 75fdc9e37d user: stephan tags: trunk
17:02
First attemp at actually committing a delta manifest created by libfossil. Pray, please. Backup repo is in place. check-in: 651c219475 user: stephan tags: trunk
2014-03-10
22:40
Fixed/re-added fail-on-no-changes. Added fsl_list_swap(). check-in: d5c871ff0f user: stephan tags: trunk
21:49
Experimenting with another F-card calculation algo, closely based on fossil(1)'s. (Thanks to drh for the deleted-file clarifications.) Theoretically it supports generating deltas but it's time for bed, so have not tested that far yet. Doc additions. check-in: 744dac3799 user: stephan tags: trunk
21:09
Fixed a return value inconsistency in fsl_tag_insert(). And i need a current basline manifest for some testing. check-in: 9857eca6ce user: stephan tags: trunk
2014-03-09
18:32
more work on the checkin bits. the wrong leaf problem still lurks but winding down for the night. check-in: 2bf52dd2ea user: stephan tags: trunk
17:30
Checkin now closes cancels other branch tags when branching. Other minor fixes. Discovered that checkin is missing something - all old leaves are still marked as leaves. Will investigate later. check-in: 947ccbd912 user: stephan tags: trunk
16:19
Fixed some weirdness in fsl_checkout_open_dir(). check-in: a675c3422b user: stephan tags: trunk
14:42
added fsl_checkin_opt::dumpManifestFile option to dump checkin manifests to a file. Added the missing header part of the previous checkin. check-in: 810b2985c0 user: stephan tags: trunk
14:41
ported in fsl_file_without_drive_letter(). check-in: 34615eda4b user: stephan tags: trunk
14:30
DeckDiff now fails more gracefully for binary content diff failures. check-in: f828113e3f user: stephan tags: trunk
13:54
size tweak to the logo. check-in: 250c2d0070 user: stephan tags: trunk