Commit Briefs

ed7004e63c Thomas Adam

Release 0.74 (tags/0.74)



a42c5a8d17 Thomas Adam

bump version number


485123bd61 Thomas Adam

CHANGES for 0.74


fe731b51aa Thomas Adam

tog: fix sticky "loading..." status in log view hsplit

Don't request commits if the log has completed loading all commits. While here, ensure the correct parent/child view requests commits when resizing a hsplit. Reported by stsp: $ tog S # switch into hsplit mode G # move to bottom and load all commits Enter # open a diff showing the initial import commit - # shrink the diff view by one line; alternatively use + to grow it *log status stuck with "loading..." in the header* ok stsp@


3cb9337907 Thomas Adam

fix pipe usage for linux

This uses the correct read and write ends of the fds returned by pipe(2) on linux. It also moves away from creating FILE* streams with fdopen and reading the stream with buf_load (which performs a fstat, and breaks due to a zero length file size on linux) by instead reading from the fd itself. Reported by abieber@, with assistance from stsp@ ok stsp@


f3a5718ad6 Thomas Adam

use Cm mdoc markup for histedit script commands



8ea72c47a2 Thomas Adam

histedit: make sure mesg is only used after pick or edit

It doesn't really make sense to use mesg after a fold or drop, or after another mesg. it currently "works" as intended, but the behaviour is confusing and not useful, better abort the operation as it's probably not what the user intended. Suggested by and ok stsp@






eefbc049af Thomas Adam

improve documentation of the histedit 'mesg' command

prompted by a question by op@


ae98518f6b Thomas Adam

tog: only request commits when child hsplit increases

Fix bug introduced in 3c1dfe12b3 that fails to properly populate child log views due to incorrect request_log_commits() calls: (1) when increasing the bottom hsplit in a ref/log splitscreen; and (2) when reopening a child log view after closing a resized child log view: $ TOG_VIEW_SPLIT_MODE=h tog ref return # open log view in bottom split 4+ # increase log (child/bottom) split *new log lines are not populated* q # close log view return *commits are not loaded* ok stsp@


97cb21cdfa Thomas Adam

tog: adjust view line offset when resizing hsplit

Squish bug that can move the selection cursor offscreen when resizing horizontal splits due to bogus offset: $ TOG_VIEW_SPLIT_MODE=h tog # 80x24 22j return # open diff view in a hsplit tab # focus log (top) split 10+ # increase top split by 10 lines 22j return # open diff view in a hsplit F # toggle fullscreen diff view tab # focus log (parent) view in fullscreen *selection cursor will be off the bottom of the screen* ok stsp@


4fc71f3b76 Thomas Adam

tog: enable moving to prev/next blame line in diff view

Blame/diff view counterpart of log/diff <,.> key maps to traverse commits corresponding to each line of the annotated file from the diff view. Includes fix from stsp@ to work while the file is still annotating. ok stsp@


ddbc4d37d0 Thomas Adam

tog: make 'S' switch split mode irrespective of the view

Always switch internal split state and redraw view according to the constraints of the new mode. suggested by and ok stsp@


f2d749db68 Thomas Adam

make 'tog log' error out in shallow Git repositories instead of hanging

ok op@


0a046396cb Thomas Adam

portable: regress: fix sed parsing

When making sed's command-line flags portable, don't split on $@ before parsing it, as this won't preserve the original string which needs passing to sed unmodified if it's never had to be changed.


c1233c7fd7 Thomas Adam

portable: regress: add test stage to all runs

Whenever a CI change is made, also run the test suites. This is enabled for just Ubuntu and FreeBSD for now.


432c637b88 Thomas Adam

portable: regress: improve sed handling

When massaging sed command strings, to handle the differences between "-i ''" not meaning the same thing on non-BSD systems, this previously used a bashism to determine the positional arguments. Instead, defer to using a loop which doesn't rely on bashisms.


cc5596d8c4 Thomas Adam

portable: regress: remove backticks from string

Remove erroneously-placed backticks when describing a lack of GNU coreutils.


980b161540 Thomas Adam

portable: regress: make OS-detection sh-compatible

Don't rely on $OSTYPE being available, which it isn't in strict POSIX mode. Ubuntu's sh is often alised to dash, and hence this fails. Instead, default to using the output from 'uname'.


8f000c9d28 Thomas Adam

portable: ci: add ubuntu

Add Ubuntu as a dedicated CI environment. By default, sh is aliase to dash which often provides interesting challenges for portability, so making this work here is a good thing as mistakes will be spotted earlier.