Skip to content

Conversation

@ferd
Copy link
Owner

@ferd ferd commented Jul 5, 2025

Screen.Recording.2025-06-28.at.7.32.55.PM.mov

Same as #49 but with a cleaner history for merging.

ferd added 4 commits July 5, 2025 18:31
Validate and parse input via ncurses

Every time a value is changed, parse it to update a value in the
background, and possibly refresh checks (eg. node connectivity).

This clarifies some phases of each argument's parsing and steps across 3
states (managed by data contents) around attributes (`unparsed` => need
to check, `val` => parsed, `line` => ready to display).

Node validation can time out after a while over the network, so do that
check with an upper boundary on execution time.

Also, to avoid inconsistencies on cursor positionment, keep label length
constant.

do validation of arguments and prepare for execution mode

fix small bugs, track node name over menus

implement exec section for list action

small patches

add scan and sync menus

implement status in ncurses
Because of how conflicts are transmitted file by file, there's always
potential for a delete conflict to happen, where 2 or more hosts have
concurrently deleted a file without synchronization.

We could _merge_ both deletes and bump the version, but this could run
the risk of ignoring trailing conflicts in a transfer. Instead, we go
explicit by adding deletion conflict messages to the protocol, and
creating empty conflict files when such conflicts are detected. The user
then has to delete the conflict file to resolve everything.
@ferd ferd merged commit bcc806d into main Jul 5, 2025
1 check passed
@ferd ferd deleted the ncurses-fafo-delete-fix-rebased branch July 5, 2025 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants