Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
History of file f-apps/f-checkin.c at check-in a5a9733acdd96002
2025-03-16
| ||
14:57 | -Add a partial workaround to f-ci for checkin messages which start with a minus sign: leading space in a -m message is now stripped, so -m '-foo...' can be formulated like -m ' -foo...' to work around this flag-parsing limitation. (Yes, that actually bit me in [https://sqlite.org/src/info/44f2c64ec16f4720], and there i worked around it by using fossil, instead of f-ci, for the checkin.) file: [d03fa7b04b] check-in: [eead046a57] user: stephan branch: trunk, size: 17483 | |
2024-09-24
| ||
21:24 | Comment cleanups. file: [fea7afbdea] check-in: [5861c30dce] user: stephan branch: trunk, size: 16985 | |
21:13 | Add --private flag to f-ci. It seems to work, too. file: [febf08e86e] check-in: [f511d7e632] user: stephan branch: trunk, size: 17005 | |
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: [ad337c3013] check-in: [f00a5025f5] user: stephan branch: db-hooks, size: 16255 | |
12:21 | Add --date-override and --allow-older flags to f-ci. file: [ad873fae51] check-in: [580ec03020] user: stephan branch: trunk, size: 16264 | |
2024-07-23
| ||
10:26 | Fix a bug in fsl_checkin_calc_F_card2() which caused a change of (only) the exec bit to go un-marked in the manifest (the file retained its old exec-bit status, but otherwise no harm done). file: [4dc5bf7bbd] check-in: [4243008e11] user: stephan branch: trunk, size: 15006 | |
2024-06-16
| ||
17:06 | EOL whitespace cleanups. file: [ee4eccc051] check-in: [30b6b94913] user: stephan branch: trunk, size: 14999 | |
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. file: [b14647b37b] check-in: [075379b921] user: stephan branch: ci-close, size: 15673 | |
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: [84519c9631] check-in: [1f286fb52a] user: stephan branch: ci-close, size: 15470 | |
2022-07-31
| ||
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. file: [08d2517572] check-in: [16eb245dd4] user: stephan branch: trunk, size: 15003 | |
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. file: [cc185a1f16] check-in: [b6df9a0845] user: stephan branch: trunk, size: 14997 | |
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). file: [bb8be01bd8] check-in: [b33abe472b] user: stephan branch: trunk, size: 15001 | |
2022-04-14
| ||
05:06 | Fixed a segfault in f-ci and f-update caused by variadic args misuse. file: [f43c285744] check-in: [3f43f99441] user: stephan branch: trunk, size: 14508 | |
2022-04-11
| ||
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. file: [faea9d9950] check-in: [b8c029741a] user: stephan branch: trunk, size: 14483 | |
2022-04-10
| ||
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. file: [cefa66482a] check-in: [0afca69968] user: stephan branch: trunk, size: 13913 | |
2022-04-09
| ||
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. file: [217c8797e3] check-in: [44fcc2f7aa] user: stephan branch: trunk, size: 13888 | |
2021-12-30
| ||
05:37 | Replaced f-apps fcli_setup() calls with fcli_setup_v2(). file: [1bf2202c01] check-in: [313b59841e] user: stephan branch: trunk, size: 13208 | |
2021-12-25
| ||
16:07 | Help text typo and removed unnecessary header. file: [081ad81726] check-in: [43601bc8ab] user: stephan branch: trunk, size: 13240 | |
2021-12-21
| ||
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. file: [2703c392c4] check-in: [76d6359435] user: stephan branch: trunk, size: 13241 | |
2021-12-20
| ||
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. file: [6e381b451f] check-in: [3987b62a03] user: stephan branch: toplevel-make, size: 13327 | |
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: [73d6d791cd] check-in: [83917b7b45] user: stephan branch: trunk, size: 12662 | |
2021-10-20
| ||
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. file: [490f1f8e47] check-in: [1dc391289c] user: stephan branch: remove-deck-uuid, size: 12661 | |
2021-10-19
| ||
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. file: [7e47c42016] check-in: [97887399f1] user: stephan branch: trunk, size: 12678 | |
2021-10-17
| ||
10:39 | More slow progress on the merge port. file: [4fd7f3dc82] check-in: [2c0ca8f720] user: stephan branch: port-merge, size: 11985 | |
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. file: [c85342d352] check-in: [c9fb1f972f] user: stephan branch: trunk, size: 11981 | |
2021-08-29
| ||
12:31 | Fixed a null pointer deref in a f-ci misuse case. file: [294da183b8] check-in: [93f9b07776] user: stephan branch: trunk, size: 11912 | |
2021-07-12
| ||
01:05 | Initialized some vars to squelch compiler warnings. file: [37d3ef0f60] check-in: [855c60d0ee] user: stephan branch: trunk, size: 11906 | |
2021-06-25
| ||
06:42 | Minor cleanup to [1d193a7055ad13fb]. Corrected an is-in-a-transaction check in f-ci to handle a pending rollback. file: [ffbfcb7890] check-in: [5b5d1f2030] user: stephan branch: trunk, size: 11894 | |
05:29 | Merged an inadvertent fork. fsl_checkin_enqueue() can now accept its files as vfile.id values, eliminating a duplicate vfile check. file: [604720ebd0] check-in: [1d193a7055] user: stephan branch: trunk, size: 11893 | |
2021-06-01
| ||
03:45 | Minor var init order tweak to ease my mind about its handling in a particular error case. file: [57b11c7dc7] check-in: [7b792bd557] user: stephan branch: trunk, size: 11867 | |
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. file: [e27ccf5948] check-in: [b53ba022ec] user: stephan branch: trunk, size: 11867 | |
2021-04-17
| ||
05:58 | f-ci now runs in non-dry-mode by default (no longer needs the -y flag). file: [778785cfb0] check-in: [a038536522] user: stephan branch: trunk, size: 11217 | |
2021-04-16
| ||
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(). file: [a35afe9bc7] check-in: [8c9cf48702] user: stephan branch: trunk, size: 11554 | |
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 :). file: [f17034802c] check-in: [2791e665cc] user: stephan branch: trunk, size: 11508 | |
2021-04-04
| ||
05:07 | f-apps: modernized/simplified usage of exit-on-help. Removed some bogus CLI flag entries from f-config. file: [e9c6a635ba] check-in: [1d3192c82b] user: stephan branch: trunk, size: 11978 | |
04:58 | f-apps: use fcli_cx() instead of accessing fcli.f directly. file: [97d369127a] check-in: [9c7cf37828] user: stephan branch: trunk, size: 12029 | |
2021-03-31
| ||
12:16 | Fixed f-ci leaf-marking bug introduced in [43d1902823fd16b9]. file: [fbdcf26566] check-in: [df0f22661b] user: stephan branch: trunk, size: 12026 | |
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: [879d2e40b8] check-in: [43d1902823] user: stephan branch: trunk, size: 11741 | |
2021-03-27
| ||
15:01 | Fixed a test assert() broken by the previous checkin. file: [4d2a935d8e] check-in: [1bc0bdd204] user: stephan branch: trunk, size: 11651 | |
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: [37a0a5118d] check-in: [8abd63ab1c] user: stephan branch: trunk, size: 11627 | |
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. file: [e50d0e0575] check-in: [aeae018f92] user: steeeeve branch: trunk, size: 11659 | |
2021-03-20
| ||
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: [5c6781ab19] check-in: [6caa73a8b3] user: stephan branch: trunk, size: 11420 | |
04:19 | Several cleanups in/around open/checkout/checkin. file: [d981d15fa9] check-in: [2c56bac8e2] user: stephan branch: trunk, size: 11042 | |
2021-03-15
| ||
04:25 | Globally renamed _checkout to _ckout, as some of these names are getting a bit long. file: [27ae7e8fc5] check-in: [bc9e88ee2c] user: stephan branch: trunk, size: 11028 | |
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). file: [8d3156d8bb] check-in: [200bddbb8a] user: stephan branch: trunk, size: 11049 | |
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: [9dcec64bff] check-in: [3bff6c7de8] user: stephan branch: trunk, size: 8868 | |
2021-03-07
| ||
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. file: [4e5e090618] check-in: [b5479cc3c6] user: stephan branch: trunk, size: 8810 | |
09:43 | Renamed a cryptically-named struct member from fc to fCard. file: [215fa8310a] check-in: [ae428e47b0] user: stephan branch: trunk, size: 7916 | |
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. file: [aca47534e8] check-in: [0c3df4194e] user: stephan branch: trunk, size: 7913 | |
2021-03-04
| ||
18:24 | Renamed f-apps/f-checkin.c → f-apps/f-ci.c. Renamed f-checkin to f-ci and f-checkout to f-co because the tab-completion conflicts are getting annoying :/. file: [8569c6668d] check-in: [932ec8ad51] user: stephan branch: trunk, size: 7894 | |
2021-03-01
| ||
16:21 | Arguably a typo fix in the new header. Thank goodness for stream editors. file: [8569c6668d] check-in: [386316db07] user: stephan branch: trunk, size: 7894 | |
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: [8d2723d183] check-in: [fa5fb24496] user: stephan branch: trunk, size: 7886 | |
2021-02-28
| ||
04:57 | fcli now uses its own FCLI_RC_HELP, instead of hijacking FSL_RC_BREAK, to indicate that --help was triggered. file: [babf3698c7] check-in: [d0edf4583f] user: stephan branch: trunk, size: 7822 | |
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. file: [beeb13ded6] check-in: [ca464b5b74] user: stephan branch: trunk, size: 7819 | |
07:08 | More CLI flag subsystem porting and license header swapping. file: [7accc1b92c] check-in: [c94a3b0d0e] user: stephan branch: trunk, size: 7820 | |
06:05 | More work on the new fcli flags infrastructure. file: [6d08a88891] check-in: [6865f151f9] user: stephan branch: trunk, size: 8129 | |
2021-02-26
| ||
14:04 | Reworking how fcli flag handling is done. file: [de35010f51] check-in: [dad2f76f30] user: stephan branch: fcli-flag-rework, size: 8400 | |
2021-02-24
| ||
04:04 | Brought checkin crosslinking up to date wrt fossil (whew) and it appears to work: deleting the mlink/plink entries and running f-parseparty -c seems to do the right thing. Fixed a couple mis-handled cases of cherrypick crosslinking and mis-setting of the fsl_card_Q::type field in fsl_deck_parse(). file: [6f0c08dbf5] check-in: [4dde2be3b0] user: stephan branch: trunk, size: 8394 | |
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: [92886af065] check-in: [8728796601] user: stephan branch: trunk, size: 8395 | |
2021-02-15
| ||
03:24 | Renamed src/fsl_XYZ.c to src/XYZ.c. f-checkin vfile dump now includes renames. file: [c9596d3bad] check-in: [ed3183170a] user: stephan branch: trunk, size: 8395 | |
2021-02-13
| ||
23:43 | Corrected f-checkin's vfile dump to only include changed files. file: [4062bdc797] check-in: [345ab3e1c1] user: stephan branch: trunk, size: 8372 | |
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]. file: [a045f4cb22] check-in: [911afa1bcc] user: stephan branch: trunk, size: 8283 | |
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. file: [6744ac04dd] check-in: [4307886eab] user: stephan branch: trunk, size: 8301 | |
04:41 | Moved some at-exit cleanup code. file: [b13c54ed35] check-in: [d6afb451a0] user: stephan branch: trunk, size: 8389 | |
2021-02-10
| ||
15:45 | Added fcli_fax() (free-at-exit). file: [6efbe12c73] check-in: [e8b7fd94e6] user: stephan branch: trunk, size: 8380 | |
2021-02-09
| ||
11:40 | Added some protections against generating empty checkin. Removed some stale docs. file: [25082c2d18] check-in: [9bff657291] user: stephan branch: trunk, size: 8390 | |
00:18 | Updated license text in almost all C/H to claim copyright while attributing all of the files as heavily derived from DRH's work. file: [2dbd1bb158] check-in: [631fb3f69a] user: stephan branch: trunk, size: 7933 | |
2015-12-28
| ||
21:44 | another test of the leaf-check fix file: [3b56b67810] check-in: [f0930aedad] user: stephan branch: trunk, size: 7909 | |
21:41 | another test of the leaf-check fix file: [f7594f1204] check-in: [12acd9c844] user: stephan branch: trunk, size: 7838 | |
21:33 | another test of the leaf-check fix file: [51dc8763d2] check-in: [7eb42e237a] user: stephan branch: trunk, size: 7825 | |
2015-08-17
| ||
10:35 | removed confusing bit of help text, corrected other help text. file: [943424d326] check-in: [9e2f749e6d] user: stephan branch: trunk, size: 7724 | |
2014-03-16
| ||
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. file: [61dc27c7bc] check-in: [752aad3eb7] user: stephan branch: trunk, size: 7638 | |
2014-03-15
| ||
13:35 | Minor cleanups, code consolidation/removal. file: [857e44fc8b] check-in: [a92bffdddf] user: stephan branch: trunk, size: 7638 | |
2014-03-14
| ||
11:10 | another round of minor cleanups. file: [4a92ffc35b] check-in: [7e8d0ecfe2] user: stephan branch: trunk, size: 6547 | |
2014-03-13
| ||
19:42 | accommodated internal restructurings. file: [eeadf44f29] check-in: [4740bce980] user: stephan branch: trunk, size: 6542 | |
2014-03-12
| ||
19:44 | Swaped fsl_checkout_version_info() arg order, for consistency. More work on the checkin bits. file: [b129a615e2] check-in: [ccb9a1e941] user: stephan branch: trunk, size: 6530 | |
2014-03-11
| ||
20:09 | minor code cleanups. Removed some dead code and debug output. file: [27e433bff7] check-in: [753fc44fa7] user: stephan branch: trunk, size: 6530 | |
17:21 | Weird. Everything seems to be there but my local files are all showing as diffs... Ah, their vfile entries are not updated. file: [f8ed06883e] check-in: [75fdc9e37d] user: stephan branch: trunk, size: 6532 | |
17:02 | First attemp at actually committing a delta manifest created by libfossil. Pray, please. Backup repo is in place. file: [43bd91a372] check-in: [651c219475] user: stephan branch: trunk, size: 6531 | |
2014-03-09
| ||
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. file: [c003c1074c] check-in: [947ccbd912] user: stephan branch: trunk, size: 5859 | |
14:42 | added fsl_checkin_opt::dumpManifestFile option to dump checkin manifests to a file. Added the missing header part of the previous checkin. file: [f5814c4e76] check-in: [810b2985c0] user: stephan branch: trunk, size: 5734 | |
11:19 | added some help text. file: [c8b7280f22] check-in: [6706082b1a] user: stephan branch: trunk, size: 5614 | |
10:19 | This is the very first checkin performed by libfossil on its own repo. Pray. Hard. file: [4bde5bca14] check-in: [79460b24aa] user: stephan branch: trunk, size: 5291 | |
2014-03-08
| ||
22:21 | More work on the checkin bits. Reimplemented how baseline manifests get their F-cards calculated. Not yet sure how best to implement a delta manifest. file: [fcc8ccae63] check-in: [1cd70042f1] user: stephan branch: trunk, size: 4859 | |
18:29 | Added: Lots more tinkering with the checkin stuff. About to try a different F-list generation algo, though, because the ported-in one has historical baggage due to the enforced ordering of names in how it generates the manifest. file: [6e949d916d] check-in: [1a0ee6b693] user: stephan branch: trunk, size: 4553 | |