|
10c4445c
|
2022-07-04T11:58:45
|
|
document SSH-based signing and verification in got(1) and got.conf(5)
|
|
48f19407
|
2022-07-04T11:19:14
|
|
in tests, verify that tag -V behaves like tag -l plus signature verification
|
|
ef98a369
|
2022-07-04T11:05:06
|
|
got tag -V is like tag -l with verification, fix option-conflicts accordingly
|
|
49a2d94a
|
2022-07-04T10:41:22
|
|
remove parts of tag_create_ssh_signed which just duplicate the tag_create test
|
|
78817826
|
2022-07-04T09:57:16
|
|
add -v option to 'got tag' usage string
|
|
153d5e58
|
2022-07-04T09:55:03
|
|
add option-conflict handling for 'got tag' -s and -V options
|
|
ca61ceca
|
2022-07-04T09:54:09
|
|
add -V option to 'got tag' usage string, and replace underscore with a hyphen
|
|
2c986b8f
|
2022-07-04T09:15:23
|
|
check for specific chars instead of using isspace(3)
Reminded by naddy and stsp; it was missing a cast to unsigned char to
prevent issues on archs with signed chars and was too broad anyway.
While here, drop an extra check immediately after.
ok stsp@
|
|
888ae650
|
2022-07-03T23:53:34
|
|
got_date.h: add explicit #includes
Don't rely on implicit/"hidden" includes, but rather add them to the
header file so their inclusion doesn't result in missing values.
Although not explicitly a functional change, this does help -portable.
This ensures size_t/time_t are always present.
OK @jrick
|
|
5c5d88bf
|
2022-07-03T21:59:10
|
|
remove duplicate test_parseargs call
spotted by op@
|
|
a82759bb
|
2022-07-03T21:57:37
|
|
fix echo/printf order and actually run the test
|
|
c632297d
|
2022-07-03T21:49:23
|
|
Use pipe() which is a more understood syscall than pipe2() which doesn't
exist on MacOS, for instance. Since we we're passing in 0 to pipe2(),
this mean no fcntl() flags were being sent. As such, it's the same
syscall as pipe() which also has the added benefit that it's more
portable.
committing on behalf of thomas with my ok
|
|
2c0a0d66
|
2022-07-03T21:46:09
|
|
whitespace fix
|
|
91d845ad
|
2022-07-03T21:44:01
|
|
fix tag signing when the key file does not exist
This should fail without creating any tag. Before, ssh-keygen(1)
would print an error to stderr, but got would create an unsigned tag.
ok op@
|
|
41e8d27d
|
2022-07-03T11:36:29
|
|
tog man page: provide a hint about differences between Myers and Patience
|
|
26e6f38e
|
2022-07-03T11:32:59
|
|
rename got.conf(5) mirror-references to mirror_references for consistency
Existing configuration files will keep working for now since the old name
with dashes is still recognized by the config parser.
|
|
f1bf60d1
|
2022-07-03T11:27:02
|
|
rename got.conf(5) fetch-all-branches to fetch_all_branches for consistency
Existing configuration files will keep working for now since the old name
with dashes is still recognized by the config parser.
|
|
a6d37fac
|
2022-07-03T10:54:48
|
|
tog: add C-g/backspace key map to abort compound cmds
Problem reported by stsp: 9999j would tie up tog till completed. While here,
trim trailing whitespace in tog.1 and make C-g alias existing backspace abort
key map for search and G in log view.
ok op@ and stsp@
|
|
49b24ee5
|
2022-07-03T10:26:22
|
|
tog: expand horizontal split support to all views
With this, hsplits are now available to the same parent/child view combinations
as vsplits. Includes OB1 log truncation fix from op@ that was reported by stsp.
ok stsp@
|
|
4d5ee956
|
2022-07-02T21:27:21
|
|
create and verify tags signed by SSH keys
This adds a new -s flag to 'got tag' that specifies the signer
identity (for example, a key file) of the tagger. The tag object will
include a signature that validates each of the tag object headers and
the tag message.
Verifying these signed tags requires maintaining an allowed signers
file which maps signer identities (i.e. the email address of the
tagger) to SSH public keys. See ssh-keygen(1) for more details of the
allowed signers file. After creating this file and providing the path
to it in got.conf(5) using the allowed_signers option, tags may be
verified using with 'got tag -V tag_name'. The return code will be
non-zero if a signature fails to verify.
ok stsp@
|
|
6c77e033
|
2022-07-02T21:21:52
|
|
fix imsg_add TREE_ENTRY: Result too large on i386
There's a math error when computing the size of one entries in the
batching code. Reported by semarie, ok semarie stsp
|
|
501834af
|
2022-07-02T21:18:05
|
|
fix leftovers from long -> int change
when changing the line addresses to be int from long the report
callaback was forgotten.
|
|
a92a2042
|
2022-07-02T21:16:13
|
|
got patch: handle mangled whitespaces
This makes 'got patch' try to ignore whitespaces when trying to match a
hunk.
Discused with and ok stsp@
|
|
5dffb1a1
|
2022-07-02T21:08:31
|
|
got patch: don't loose the x bit when merging with diff3
This fixes a regression introduced with the diff3 merge: files merged
this way have their permissions resetted after patch.
The issue is due the fact that patch_file looks at a temporary files
and not at the original "old file".
Reported by and ok stsp@
|
|
f5b0315f
|
2022-07-02T19:31:41
|
|
aesthetic: rename regress to test_patch_rm_file
drop the "simple" part, there's no "complex" way of removing files.
|
|
ed2ff8b9
|
2022-07-02T19:30:36
|
|
augment test_patch_add_line
Try to create a file with more than one line, it would have catched an
issue with my wip diff for ignore whitespaces in got patch.
While here rename the function to drop "simple".
|
|
acf749fc
|
2022-07-02T13:56:21
|
|
refactor the patch parser
Introduce a patch_start routine that finds the next "diff" header (if
there is one); the idea is to persist some state (commit id and wether
it's a "git diff") while processing the content of the diff. It's
needed because in the case of 'got diff' some information like the
commit id are only present once at the beginning.
As a consequence, the patch parser becomes slightly more robust
(concatenating diffs produced by different means shouldn't confuse it
anymore) and drops the support for "old" got diffs, the ones previous
the introduction of the "commit -/+" header.
ok tracey@
|
|
f0032ce6
|
2022-07-02T04:09:20
|
|
tog: remove count prefix timeout and bold output
Suggested by naddy. block till non-numeric input is entered, and don't echo in
bold.
ok naddy@ op@ and stsp@
|
|
76364b2d
|
2022-07-02T03:59:37
|
|
unconditionally set x/y pointers in view_get_split()
suggested by and ok op@
|
|
917d79a7
|
2022-07-01T21:15:13
|
|
make the diff algorithm used by 'tog diff' and 'tog blame' configurable
ok jamsek
|
|
4b752015
|
2022-06-30T21:35:28
|
|
switch 'tog diff' and 'tog blame' to Myers diff for speed
Make the choice of diff algorithm configurable by diff API users.
The got and gotweb programs keep using Patience diffs which are
prettier than Myers. But tog should be as fast as possible since
it is being used interactively. If performance of Patience diff
gets improved later we can consider switching tog back over to it.
ok tracey jamsek
|
|
0dca135e
|
2022-06-30T11:43:19
|
|
tog: fix C-d and G log view keymaps in horizontal split
Account for the border so we don't scroll offscreen, and don't unset the
load_all flag till all commits have been loaded so we take the correct path
in log_move_cursor_down().
ok stsp@
|
|
24b9cfdc
|
2022-06-30T10:52:51
|
|
fix fullscreen / split-screen toggle in tog
ok jamsek
|
|
49d4a017
|
2022-06-30T10:43:37
|
|
move more opentemp out of diffreg.c
ok tracey
|
|
e6e73e55
|
2022-06-30T08:41:14
|
|
move remaining got_opentemp's out of blame. ok op@
|
|
9b058f45
|
2022-06-30T05:02:23
|
|
tog: implement support for horizontal splitscreens
Enable all main views to open primary child views in a horizontal split:
log -> diff
tree -> blame
blame -> diff
ref -> log
Support is yet to be expanded to nested child views and key maps for
manipulating split type and size.
ok op@ and stsp@
|
|
b880cc75
|
2022-06-30T05:02:23
|
|
tog: refactor log cursor movement in prep for hsplit
Simplify the log input handler by moving (page)up/down and home/end logic
into helper routines as we need to perform some checks on these cases when
navigating the log view in horizontal splits.
ok op@ and stsp@
|
|
c71ed39a
|
2022-06-29T20:57:36
|
|
fix split-screen issue in tog when moving focus from child view to parent view
Reported by jamsek:
$ tog # term wide enough to vsplit
return # open commit
f # fullscreen commit
tab # should go to fullscreen log, but it splits the screen
fix ok jamsek
|
|
4dd27a72
|
2022-06-29T15:41:58
|
|
fix recent regression in tog where split view was not restored after resize
ok jamesk
|
|
8c4a6db8
|
2022-06-29T14:58:58
|
|
make it possible to show just one tag with 'got tag -l'
suggested by jrick
ok jrick jamsek
|
|
f9d37699
|
2022-06-28T20:33:41
|
|
move got_opentempfd() out of lib/diff.c again
ok tracey
|
|
1b484788
|
2022-06-28T18:34:57
|
|
move got_opentempfd out of blame_open ok stsp@ jrick@
|
|
7a13e6e5
|
2022-06-28T18:19:03
|
|
pass the correct file to fdopen(); ok tracey
|
|
ce7556f2
|
2022-06-28T18:04:05
|
|
fix missed dup in open_blob per stsp@
|
|
eb81bc23
|
2022-06-28T13:27:12
|
|
move got_opentempfd out of open_blob. ok stsp@
|
|
61af9b21
|
2022-06-28T11:31:11
|
|
implement support for commit coloring in got-read-pack for speed
ok op, tracey
|
|
c301e4ed
|
2022-06-28T06:28:10
|
|
tog: echo count prefix when entering compound key maps
like less(1), echo the digits as they're typed.
suggested by and ok op@ stsp@
|
|
db0dfdd7
|
2022-06-27T18:47:02
|
|
got patch: handle git-style diffs for the 3-way merge too
tweak and ok stsp@
|
|
497a5915
|
2022-06-27T18:47:02
|
|
handle blob ids without corresponding blob ids
ok stsp@
|
|
58e31a80
|
2022-06-27T18:47:02
|
|
build with -Wwrite-strings
Throwing this into the mix for a while, we can always get rid of it
again if it becomes annoying. No objections from stsp@
|
|
3d589bee
|
2022-06-25T14:54:41
|
|
allow start_pack_privsep_child() to be called from outside lib/object.c
|
|
8469d821
|
2022-06-25T09:25:07
|
|
always show commit or tree IDs in diff header, in order to help 'got patch'
The idea is that got patch can simply look for a line such as:
commit - abcde1234567...
to find the merge base commit ID to show in diff3 conflict markers.
got log -p now displays commit IDs in its diff header, instead ofl
tree or blob IDs.
ok op@
|
|
336075a4
|
2022-06-25T09:22:02
|
|
build with -Wmissing-prototypes
ok stsp@
|
|
640cd7ff
|
2022-06-22T15:06:48
|
|
tog: prefix mvmt keymaps with count modifier like vi(1)
Enable compound commands for all movement keymaps (e.g., hjkl, bfdu). The
optional prefixed count determines how many times the movement is performed;
for example, '123j' (move 123 lines down) or '4f' (scroll 4 pages down).
Counts are ignored if preceding non-movement and some singular movement
operations (e.g., 't', 'r', 'ret', '/', '$', 'G', 'g').
ok stsp@
|
|
9802c41c
|
2022-06-21T16:52:34
|
|
got patch: use status G for merged files (and document it)
Suggested by stsp@. This makes possible to tell if 'got patch' used a
merge-base from the repository for the 3-way merge or did a simple
search/replace operation.
While here update the tests to look for the 'G' status and the manpage,
which was also missing the documentation for the 'C' status in got
patch.
ok stsp@
|
|
dbc68eed
|
2022-06-21T16:52:34
|
|
got patch: ignore blobs not found
since diffs are often enclosed in other formats (e.g. emails) we might
parse something and think it's a blob id when it's not. This should
already happens, but apply_patch is looking for the wrong error due to a
leftover from previous attempts. Reported by stsp@
while here tweak the test_patch_merge_unknown_blob to also try with a
dummy commit id, as now got-read-patch requires it in order to consider
a blob id.
ok stsp@
|
|
63ba1a3a
|
2022-06-21T16:52:34
|
|
fix `limit' accounting in draw_commit
if the child view is fullscreen we don't need to subtract one, because
no vborder is drawn.
ok Mark Jamsek
|
|
48bb96f0
|
2022-06-20T20:53:20
|
|
tog: make SPACE page down in all views
ok op@, Mark Jamsek
|
|
6131ff18
|
2022-06-20T15:54:31
|
|
fix fullscreen view regression introduced in 0dbbbe90fd
When cycling from a child view in fullscreen, the parent view is opened in
a splitscreen with no border instead of fullscreen. Check the view mode when
cycling between views and resize parent dimensions accordingly.
ok op@
|
|
61417565
|
2022-06-20T05:05:43
|
|
alias C-b/C-f to scroll page back/forward with b/f
Suggested by naddy. Remap 'f'ullscreen to 'F', and blame view key maps 'b' and
'B' to 'c' and 'C', respectively, per stsp's and naddy's suggestion. While
here, remove trailing whitespace.
ok naddy@
|
|
d8b5af43
|
2022-06-19T11:51:33
|
|
use the commitid in the patch diff3 conflict header
suggested by and ok stsp@
|
|
827bcd6c
|
2022-06-19T11:51:32
|
|
patch_file: move file ownership to parent
ok stsp@
|
|
55e9459f
|
2022-06-19T11:51:32
|
|
got patch: use diff3 to merge the changes
Parse the "blob -" metadata in diffs produced by 'got diff' and use the
original file for patching. Then, use the diff3 with the current
version of the file to merge the differences.
This solves many failures automagically or at least turns them into a
conflict.
ok/improvements stsp@
|
|
05737d49
|
2022-06-19T11:51:32
|
|
patch_file: fill tmp with the patched file even in nop mode
future work with diff3 merge will need the fully patched file even in
the nop mode
ok stsp@
|
|
c6621528
|
2022-06-18T17:06:40
|
|
bump version number
|
|
c57e65c9
|
2022-06-18T17:02:58
|
|
CHANGES for 0.72
|
|
f704b35c
|
2022-06-18T16:52:41
|
|
small grammar and accuracy fixes in a comment
|
|
4bfe9f0a
|
2022-06-18T16:48:54
|
|
add missing braces around multi-line if-statement body; pointed out by op@
|
|
364ac6fd
|
2022-06-18T16:47:03
|
|
take tog selection cursor position into account when searching for next match
Patch by Mikhail
ok op@ jamsek
|
|
89a34d6e
|
2022-06-18T16:32:12
|
|
wrap an overlong line in enumeration_request()
|
|
80f51a9e
|
2022-06-18T16:32:12
|
|
fix unexpected imsg error after incomplete enumeration in got-read-pack
reported by jrick and op@
ok op@
|
|
dfee752e
|
2022-06-18T16:18:11
|
|
tog: reset matched and search data after C-l
otherwise they point to free'd data. ok stsp@
|
|
031611fc
|
2022-06-18T16:17:45
|
|
memset all stack-allocated structs used to send messages; ok stsp@
|
|
1a69d37f
|
2022-06-18T16:17:45
|
|
zero the whole struct got_imsg_object before sending it
otherwise some fields may be unitialized and fail the validation done on
the receiving side.
ok stsp@
|
|
b4998ee2
|
2022-06-17T13:00:45
|
|
bump version number
|
|
6de537c0
|
2022-06-17T11:01:51
|
|
CHANGES for 0.71
|
|
a00719e9
|
2022-06-17T11:01:26
|
|
fix a segfault in tog diff
The f1 tempfile must always be created. Even if the initial diff has no
objects on the left side, the view can be switched to a different diff
which does have objects on both sides. When that happened, tog crashed.
(To reproduce: open tog in got.git, hit G, hit Enter, hit <)
|
|
dd6e31d7
|
2022-06-17T10:29:12
|
|
fix build of tog on sparc64 with -Werror
error was tog/tog.c:636: warning: function declaration isn't a prototype
|
|
4d1f6af3
|
2022-06-17T08:51:16
|
|
account for the vborder in draw_commit
the vborder is drawn on top of the window and that can cause issues with
double-width characters. Instead, account for it when computing the
space available for the log message.
ok stsp@
|
|
0dbbbe90
|
2022-06-17T08:49:32
|
|
tog: resize main view
drawing the child view on top of the main view when the layout is
split-screen can produce some ugly glitches when double-width
characters are involved. (issue found by stsp)
ok stsp@
|
|
4e4a9ac8
|
2022-06-17T08:49:32
|
|
simplify scroll_wline (now span_wline) and format_line
generalize scroll_wline to start at a specified offset so that we can
reuse it to simplify format_line. While here, simplify scroll_wline
(now called span_wline) too.
ok and improvements by stsp@
|
|
95d136ac
|
2022-06-16T21:26:24
|
|
fix wrong pointer in NULL check; found by tracey
|
|
44a87665
|
2022-06-16T21:22:49
|
|
fix highlighting issues in tog diff/blame search on lines with tabs
|
|
cb713507
|
2022-06-16T20:55:21
|
|
tog: fix crash in expand_tab while searching in diff/blame views
found by op@
ok op@ tracey@
|
|
1853e0f4
|
2022-06-16T20:48:35
|
|
fix diff and blame view search for horizontal scrolling with unicode
ok op@
|
|
87411fa9
|
2022-06-16T18:24:53
|
|
wrap overlong lines in tog.c
|
|
4cb9d869
|
2022-06-16T17:17:40
|
|
fix horizontal scrolling of unicode in the blame view
ok op@
|
|
969c159c
|
2022-06-16T17:17:19
|
|
fix horizontal scrolling of unicode in tog diff view
ok op@
|
|
f7443f66
|
2022-06-16T15:13:39
|
|
add missing linebreaks to demarcate sentences in tog.1
ok op@
|
|
367ddf28
|
2022-06-16T14:49:57
|
|
missed style(9) fixes in previous commit
ok tb@
|
|
20282b02
|
2022-06-16T14:45:29
|
|
fix build with -DGOT_NO_OBJ_CACHE
ok stsp
|
|
6e1c41ad
|
2022-06-16T14:41:49
|
|
plug realloc memleak and style(9) fixes in expand_tab()
fixes and ok from tb@
|
|
ccda2f4d
|
2022-06-16T13:37:55
|
|
move horizontal line scrolling logic into format_line() for easier reuse
ok op@
|
|
0ce35b66
|
2022-06-16T13:36:46
|
|
fix an off-by-one in tog's draw_file() causing wrong diff output
This issue caused empty lines added in diffs to be displayed without
leading + in the diff view.
Problem found by op@
ok op jamsek
|
|
b0dd8d27
|
2022-06-16T11:40:20
|
|
fix a recent regression where tog segfaults if Ctrl+l is used in the log view
|
|
29688b02
|
2022-06-16T11:33:48
|
|
fix horizontal scrolling of unicode in tog log view
ok jamsek
|
|
a75b3e2d
|
2022-06-16T08:10:33
|
|
fix horizontal scrolling bug in the blame view
ok op@, jamsek
|
|
b4996bee
|
2022-06-16T07:04:07
|
|
show last-modified date in the "tog ref" view if the 'm' key is pressed
Patch by Mark Jamsek
|
|
145b6838
|
2022-06-16T07:00:28
|
|
implement horizontal scrolling for tog diff, blame, and log views
Patch by Mark Jamsek
|
|
1b1b91ab
|
2022-06-15T21:21:27
|
|
style: remove double semicolon
|