Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
History for src/checkout.c
2024-09-26
| ||
13:52 | Initialize an uninited var exposed by gcc 4.x file: [51831f1ede] check-in: [04f3b7d2e3] user: stephan branch: trunk, size: 116390 | |
2024-09-16
| ||
20:34 | Remove the fsl_db::f (fsl_cx*) member. This touches a lot of code lines but was not anywhere near as invasive as expected. file: [134fc7e0fc] check-in: [f00a5025f5] user: stephan branch: db-hooks, size: 116386 | |
2024-09-13
| ||
16:07 | A potential fix for the bug tagged as tag:bug:revert-merge-hiccup and described in [00377f482a0d], with the caveat that i've been unable to reproduce it, so cannot be 100% certain that this is adequate. It seems sound, anyway. file: [63598a7b97] check-in: [aebe930b2c] user: stephan branch: trunk, size: 116389 | |
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. file: [84742f2fe0] check-in: [00377f482a] user: stephan branch: trunk, size: 116387 | |
2024-08-01
| ||
11:26 | When reverting files, report those which were modified only via a merge as reverted (it was formerly not reporting those via the callback). Adjacent cleanups and a potential resource leak fix in two as-yet-have-never-happened error cases. See code comments, in particular in fsl_ckout_revert(), for why this fix is not as satisfactory as it should be. file: [90601df858] check-in: [888c0dfe9a] user: stephan branch: trunk, size: 116004 | |
2024-04-10
| ||
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). file: [8dfb6cddbf] check-in: [0e50f798e6] user: stephan branch: trunk, size: 115260 | |
2024-03-28
| ||
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. file: [b9e4748877] check-in: [1f286fb52a] user: stephan branch: ci-close, size: 114862 | |
2023-04-19
| ||
02:26 | Apply a set of missing f(void) and assigned-but-unused vars from Mark J. file: [629d335511] check-in: [b96f5840ea] user: stephan branch: no-common-ancestor, size: 114867 | |
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@ file: [aebe758669] check-in: [ef78842aea] user: mark branch: trunk, size: 114897 | |
2022-04-06
| ||
12:10 | Swapped two lines to fix a potential mis-rollback in fsl_ckout_rename(). file: [1343e1a427] check-in: [5e640a2f89] user: stephan branch: trunk, size: 114893 | |
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. file: [30dc04b360] check-in: [7cc1faa141] user: stephan branch: trunk, size: 114893 | |
2022-03-10
| ||
03:38 | For the fsl_ckout_rename()-related bits, rename the fsMvFile option to doFsMv. file: [a41ff0a429] check-in: [b85863a91d] user: stephan branch: trunk, size: 114768 | |
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. file: [7a6a89f4de] check-in: [bc7bfb06e3] user: stephan branch: trunk, size: 114776 | |
2022-03-08
| ||
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. file: [f5e0dc873b] check-in: [80c84abba6] user: stephan branch: trunk, size: 115672 | |
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. file: [121d255f13] check-in: [52318ca911] user: stephan branch: trunk, size: 115539 | |
2022-03-07
| ||
01:44 | Added fsl_ckout_rename_revert() and unit tests. file: [7fcadfa908] check-in: [aa34eddd93] user: stephan branch: trunk, size: 108648 | |
2022-03-05
| ||
10:09 | Added fsl_ckout_rename(), the core impl of a rename/move operation for SCM-managed files. file: [8021bcf52d] check-in: [4d2e43a8f6] user: stephan branch: trunk, size: 105959 | |
2022-01-23
| ||
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. file: [a2885a4412] check-in: [5e12e2134b] user: stephan branch: trunk, size: 101975 | |
2022-01-12
| ||
03:36 | Initialized a couple vars which gcc 11 now incorrectly reports as possibly uninitialized. Sigh. file: [d5cb29f8be] check-in: [19607914ca] user: stephan branch: trunk, size: 101963 | |
2022-01-03
| ||
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. file: [7229c0f4e1] check-in: [82bf08414f] user: stephan branch: trunk, size: 101959 | |
2022-01-01
| ||
14:58 | More work on the db handle redux. Seems to work okay. file: [591f814c63] check-in: [71f5f09817] user: stephan branch: cx-db-handle-reorg-redux, size: 102091 | |
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. file: [011c193990] check-in: [fa7c56d0ca] user: stephan branch: cx-db-handle-reorg-redux, size: 101963 | |
11:15 | Renaming of some internal fsl_xyz... APIs to fsl__xyz... (two underscores). Minor constness tweaks. file: [c9cf404fea] check-in: [736abef2cc] user: stephan branch: trunk, size: 102125 | |
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). file: [0999f2c163] check-in: [51d4b05f5c] user: stephan branch: trunk, size: 102121 | |
2021-12-31
| ||
21:54 | Cherrypicked [6f2027aeb4], [74964a09a5], and part of [d290f6375c]. file: [65f2a998af] check-in: [211eaecfcf] user: stephan branch: trunk, size: 102217 | |
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. file: [c57654f784] check-in: [a67b757dc0] user: stephan branch: cx-db-handle-reorg, size: 102431 | |
15:10 | Renamed fsl_db_role_label() to fsl_db_role_name(). Doc touchups related to the db handle restructuring. file: [91b75a0608] check-in: [d290f6375c] user: stephan branch: cx-db-handle-reorg, size: 102144 | |
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. file: [27d9689662] check-in: [aebf241ab5] user: stephan branch: cx-db-handle-reorg, size: 102145 | |
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. file: [e1a8efa5d2] check-in: [3f48c073cf] user: stephan branch: trunk, size: 102218 | |
20:21 | Removed the fossil- name prefix from include/fossil-scm/*.h. file: [8abd6fee11] check-in: [43a9bea8d5] user: stephan branch: trunk, size: 100957 | |
14:54 | Added fsl_ckout_dbnames() and fsl_is_top_of_ckout(), prompted by recent fossil forum traffic. file: [e5dba3561c] check-in: [7a9a409695] user: stephan branch: trunk, size: 100992 | |
13:10 | Expanded the fsl_ckout_manage() callback interface analog to the new fsl_ckout_unmanage() changes. file: [0c294fc89f] check-in: [c00159a925] user: stephan branch: trunk, size: 100275 | |
12:34 | Expanded fsl_ckout_unmanage()'s callback interface to facilitate client-side unlinking of newly-unmanaged files. Added f-rm --unlink option. file: [1f7779061e] check-in: [9be228a605] user: stephan branch: trunk, size: 99802 | |
2021-12-15
| ||
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. file: [ca78fd07a0] check-in: [4d88f6cbd6] user: stephan branch: trunk, size: 99220 | |
2021-12-14
| ||
15:52 | More work on the merge port and adjacent code. file: [9a64b4a536] check-in: [b9c2a05cfe] user: stephan branch: trunk, size: 98788 | |
2021-11-30
| ||
22:40 | Changed several internal temp tables to use (create if not exists/delete) instead of (create/drop) in the hope of proactively avoiding locking issues. This will slightly increase long-term memory usage for certain long-running apps but should ease locking pains for those same apps. file: [f87ffa630e] check-in: [cbaafebf22] user: stephan branch: trunk, size: 98782 | |
2021-11-29
| ||
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. file: [1b4477b1e7] check-in: [0031d2f466] user: mark branch: trunk, size: 98776 | |
2021-11-23
| ||
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. file: [72f04bee78] check-in: [09094cea7b] user: stephan branch: trunk, size: 98776 | |
2021-11-21
| ||
10:02 | Constness tweaks. Added a fsl_is_simple_pathname() check to fsl_deck_F_set_content(). file: [6d7e90908f] check-in: [e45da773a8] user: stephan branch: trunk, size: 98740 | |
2021-11-20
| ||
15:02 | Cut number of rebuild allocations by another 15k via refactoring of fsl_buffer_uncompress() to be smarter about reusing the output buffer's memory, plus much more modest gains via addition of a cached buffer for building and applying deltas. file: [a251c520a9] check-in: [88757e5411] user: stephan branch: trunk, size: 98734 | |
2021-11-03
| ||
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. file: [9f4bc9d263] check-in: [7dd883be5e] user: stephan branch: trunk, size: 98663 | |
00:07 | Another constness tweak, a doc fix, and added a TODO to f-revert. file: [0d4ee5a2d3] check-in: [af29e33252] user: stephan branch: trunk, size: 98651 | |
2021-11-02
| ||
23:52 | Mass renaming of many internal APIs from fsl_X to fsl__X (two underscores) and several adjacent const cleanups. file: [90c50a1f7c] check-in: [83917b7b45] user: stephan branch: trunk, size: 98623 | |
2021-10-19
| ||
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. file: [cd1a1c56dc] check-in: [386039e135] user: stephan branch: trunk, size: 98472 | |
2021-10-16
| ||
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. file: [1662a00a51] check-in: [3ff20f1d01] user: stephan branch: port-merge, size: 98465 | |
2021-10-15
| ||
07:54 | Insignificant cleanups found while scouting out what's needed to port over merge. file: [9d60d3a4e9] check-in: [65b379e3e0] user: stephan branch: trunk, size: 98469 | |
2021-10-08
| ||
21:51 | Moved from code from f-vdiff into the public API. Several fixes in f-vdiff. file: [a23351e5b3] check-in: [39180d2fe8] user: stephan branch: trunk, size: 98479 | |
2021-10-07
| ||
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). file: [153c40a4f1] check-in: [e456c5ab39] user: stephan branch: port-annotate, size: 95838 | |
2021-04-13
| ||
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. file: [5fa1126dc3] check-in: [fcdeddd18a] user: stephan branch: deck-reworking, size: 95826 | |
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. file: [38796b1a3b] check-in: [40fcc816f0] user: stephan branch: trunk, size: 95825 | |
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(). file: [7c8128a3a5] check-in: [889d2e32bb] user: stephan branch: trunk, size: 96037 | |
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. file: [630812524c] check-in: [43d1902823] user: stephan branch: trunk, size: 95422 | |
2021-03-29
| ||
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. file: [decbfb86e8] check-in: [0660107d5b] user: stephan branch: trunk, size: 93488 | |
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. file: [7d2b6eabf7] check-in: [949885a1d3] user: stephan branch: trunk, size: 93539 | |
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. file: [f8d0ab00e9] check-in: [a527cc940a] user: stephan branch: trunk, size: 91750 | |
2021-03-27
| ||
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. file: [7f7c8aa71b] check-in: [8abd63ab1c] user: stephan branch: trunk, size: 90409 | |
2021-03-24
| ||
23:06 | Another tiny upstream s2 tweak. Fixed a broken assert in fsl_ckout_update(). file: [0f2683972b] check-in: [0b1a361d6c] user: stephan branch: trunk, size: 90608 | |
07:19 | Added SQL UDF fsl_match_vfile_or_dir() and used it to simplify some expressions. file: [53eff0c4a5] check-in: [674cd67c12] user: stephan branch: trunk, size: 90519 | |
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. file: [0b6f94ded0] check-in: [62c2d986fb] user: stephan branch: trunk, size: 91253 | |
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. file: [3ac477a0c3] check-in: [4f342af54f] user: stephan branch: trunk, size: 90728 | |
2021-03-23
| ||
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. file: [a2c2962e6c] check-in: [09300fddd6] user: stephan branch: trunk, size: 89700 | |
2021-03-22
| ||
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. file: [7f158dd72d] check-in: [2c4a018200] user: stephan branch: trunk, size: 88792 | |
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. file: [73af63951b] check-in: [2cf2cebe3d] user: stephan branch: trunk, size: 88492 | |
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. file: [1417b45e41] check-in: [8cc33e4e8a] user: stephan branch: trunk, size: 88218 | |
10:01 | Changed the signature of fsl_ckout_file_rm(). file: [ec9e855507] check-in: [356e3783c9] user: stephan branch: trunk, size: 82796 | |
2021-03-21
| ||
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. file: [7096a8c6f8] check-in: [1efb02180b] user: stephan branch: trunk, size: 82809 | |
2021-03-20
| ||
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. file: [476d25fa88] check-in: [0815bc50d7] user: stephan branch: trunk, size: 81176 | |
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. file: [88d2c89088] check-in: [29fbb8bbd9] user: stephan branch: trunk, size: 79483 | |
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. file: [928ab26e62] check-in: [9b9b989b2c] user: stephan branch: trunk, size: 79018 | |
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. file: [995c30fe89] check-in: [6caa73a8b3] user: stephan branch: trunk, size: 72924 | |
04:19 | Several cleanups in/around open/checkout/checkin. file: [836ed19292] check-in: [2c56bac8e2] user: stephan branch: trunk, size: 72897 | |
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. file: [c24b031cff] check-in: [df39a4d7b2] user: stephan branch: trunk, size: 73072 | |
00:35 | More work on the update op. file: [5c73de2659] check-in: [34f0c94b79] user: stephan branch: trunk, size: 72944 | |
2021-03-19
| ||
18:12 | More work on the update process. Getting close, but time for a break. file: [f80dd02cfe] check-in: [5667e3e23a] user: stephan branch: trunk, size: 69432 | |
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. file: [934e725caa] check-in: [9d86e51a31] user: stephan branch: trunk, size: 67852 | |
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. file: [e06efb5364] check-in: [6ceda397ad] user: stephan branch: trunk, size: 60184 | |
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. file: [532d678069] check-in: [07fd8c1f33] user: stephan branch: trunk, size: 55330 | |
00:54 | Moved the calc-update-version algo from f-update.c into the library. file: [670e0289c2] check-in: [3ad694f967] user: stephan branch: trunk, size: 50338 | |
2021-03-18
| ||
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. file: [b5be077a81] check-in: [045532178f] user: stephan branch: trunk, size: 48234 | |
2021-03-17
| ||
00:15 | Removed an extraneous parameter from a few functions. Stopped senselessly checking for NULL fsl_cx arg in fsl_ckout_version_info(). file: [68a83668bf] check-in: [8c212df490] user: stephan branch: trunk, size: 48166 | |
2021-03-15
| ||
19:01 | Tiny doc tweaks. file: [8f340ff9df] check-in: [02eacfa610] user: stephan branch: trunk, size: 48217 | |
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. file: [ad40ff2d4b] check-in: [15425f1d4c] user: stephan branch: trunk, size: 48217 | |
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. file: [021f80e756] check-in: [ccc0fef970] user: stephan branch: trunk, size: 43062 | |
04:25 | Globally renamed _checkout to _ckout, as some of these names are getting a bit long. file: [45ed475bdb] check-in: [bc9e88ee2c] user: stephan branch: trunk, size: 42815 | |
2021-03-14
| ||
11:48 | Renamed fsl_repo_checkout_state::xState to extractState. file: [545a21cb20] check-in: [9c08a8a4ac] user: stephan branch: trunk, size: 42992 | |
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.) file: [c4d2d829c6] check-in: [6cb2db9cf2] user: stephan branch: trunk, size: 42980 | |
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. file: [e884497bd2] check-in: [c77e85e259] user: stephan branch: trunk, size: 42900 | |
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. file: [67819726c3] check-in: [e81048d148] user: stephan branch: trunk, size: 42569 | |
05:27 | Several minor changes moving us slightly closer to be able to add update support. file: [d3ef2cfce6] check-in: [1329430a6a] user: stephan branch: trunk, size: 43035 | |
2021-03-12
| ||
19:31 | The hashing routines were responsible for the unexpected buffer resizing, as they were explicitly resizing their output buffers to fit. file: [09331f4dff] check-in: [06f5974d60] user: stephan branch: cx-scratchpad-rework, size: 42360 | |
17:26 | Completely reworked how fsl_cx manages scratch buffers but it's leading, rather inexplicably, to double the number of allocs and memory use in f-sanity. Checking in due to paranoia of losing this work. file: [311ae8ded3] check-in: [01c1cff578] user: stephan branch: cx-scratchpad-rework, size: 42361 | |
13:06 | Moved some code around and renamed a struct member for consistency with similar structs. file: [fbb08c4e4a] check-in: [9bd1cfea4b] user: stephan branch: trunk, size: 43780 | |
09:15 | Minor refactoring in prep for upcoming changes. file: [2cbaa04dfa] check-in: [888cb5cc24] user: stephan branch: trunk, size: 22991 | |
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. file: [b10e7b1964] check-in: [fd313baef4] user: stephan branch: trunk, size: 21666 | |
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. file: [3029592771] check-in: [61d3e64e6f] user: stephan branch: trunk, size: 21659 | |
03:58 | Minor doc touchups and char-to-bool conversions. file: [981c142caa] check-in: [8a393e5255] user: stephan branch: trunk, size: 16615 | |
2021-03-09
| ||
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. file: [9447190bc4] check-in: [3bff6c7de8] user: stephan branch: trunk, size: 17028 | |
2021-03-08
| ||
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. file: [9af1003572] check-in: [6dd8166303] user: stephan branch: confirmer-co, size: 17003 | |
11:14 | Initial go at a new interactive confirmation API (not yet connected to checkout op). Removed a functionally-duplicated API. Added __func__() to some cached SQL statements in order to simplify tracking their origin (though this keeps those statements from being reused across multiple functions). file: [fb16ccc477] check-in: [9a6bb6834f] user: stephan branch: trunk, size: 17072 | |
03:26 | Sped up fsl_is_locally_modified() for the common case by adding a file-size comparison before falling back to hash comparison. file: [6ee718f006] check-in: [53fb496dc8] user: stephan branch: trunk, size: 18305 | |
2021-03-07
| ||
13:40 | Removed dead code. file: [3b63e14875] check-in: [26e2c2a962] user: stephan branch: trunk, size: 17951 | |
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. file: [e11ae2d113] check-in: [0bdf51b375] user: stephan branch: trunk, size: 19666 | |
16:27 | Improved handling of deleted-by-checkin files via fsl_repo_checkout() and their reporting via f-co. file: [a174687212] check-in: [038cd076ae] user: stephan branch: trunk, size: 19601 | |
2021-03-05
| ||
04:29 | More tinkering with the f-co/f-open-related infrastructure. file: [ffb7ce50b4] check-in: [13194b49eb] user: stephan branch: trunk, size: 17863 | |
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. file: [ae0a06790c] check-in: [eeb7706e6e] user: stephan branch: trunk, size: 16927 | |
2021-03-04
| ||
14:27 | Added FSL_RC_MISSING_INFO. Minor internal doc cleanups and API result value changes. Reworked how fsl_cx_hash_buffer() returns when its alternative hash option conflicts with the current hash policy. file: [271a8a9a8b] check-in: [d1428d5a93] user: stephan branch: trunk, size: 16981 | |
12:28 | Numerous cleanups and fixes in/around the infrastructure used by f-open. file: [65409af284] check-in: [b67129bbb9] user: stephan branch: trunk, size: 16859 | |
2021-03-03
| ||
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. file: [6069a02c44] check-in: [eaaffd743b] user: stephan branch: trunk, size: 16951 | |
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. file: [de2d88c324] check-in: [2a04a6818c] user: stephan branch: trunk, size: 16800 | |
2021-03-01
| ||
16:21 | Arguably a typo fix in the new header. Thank goodness for stream editors. file: [5a9eb5a1fa] check-in: [386316db07] user: stephan branch: trunk, size: 16166 | |
15:46 | Replaced the overwhelming majority of license headers with the new project-standard one. Left a few as they were for files which were imported essentially unchanged from Fossil or, in the case of SHA1/SHA3/MD5 bits, other 3rd-party sources. file: [0065cd8128] check-in: [fa5fb24496] user: stephan branch: trunk, size: 16158 | |
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. file: [4b6ef5f6a5] check-in: [2d90220116] user: stephan branch: trunk, size: 16399 | |
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. file: [e13373e559] check-in: [2cfc9d6ae9] user: stephan branch: trunk, size: 15864 | |
11:49 | Removed the superfluous length parameter from fsl_deck_U_set(). file: [c0cd98b714] check-in: [908a2d314c] user: stephan branch: trunk, size: 16253 | |
2021-02-21
| ||
15:10 | Renamed FSL_CATYPE... (CA=Control Artifact) to FSL_SATYPE... (SA=Structural Artifact) so that they correspond to the terms as set out by the fossil file format docs. file: [63c3344bf0] check-in: [8728796601] user: stephan branch: trunk, size: 16257 | |
2021-02-15
| ||
03:24 | Renamed src/fsl_checkout.c → src/checkout.c. Renamed src/fsl_XYZ.c to src/XYZ.c. f-checkin vfile dump now includes renames. file: [1b731c80ff] check-in: [ed3183170a] user: stephan branch: trunk, size: 16257 | |