Login
All files named "f-apps/f-ci.c"
Login

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

History for f-apps/f-ci.c

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