Fixed duplicate newline issue
The usage of newlines in output details was not implemented in a
common fashion resulting in different numbers of newlines in
different output scenarios. This was fixed by using a common style
and by avoiding newlines in the helper functions. Instead, before
each path is displayed, the first separating newline is produced.
Added fixed terminal width option
There might be cases where a fixed terminal width is helpful,
especially if the terminal width detection fails
Added missing copyright header
Most of the core Go files and the shell script were missing the
copyright header. Not that this is very important at the moment,
but it was a nice way to enforce all files to have it and to be
UTF-8 at the same time.
Whitespace only changes in table style
Changes the code so that whitespace only changes are also displayed
in table style if terminal size permits. The output should look
similar to the other output styles. Added a couple of TODOs for
improvement of the code.
Simplified output code
Removed Cols
usage by using already existing code from
createStringWithPrefix
to get string with a common prefix
and correct multi-line indentation.
Added convenience download script
A convenience script to download the latest dyff
compiled
version from GitHub was added. It will perform a GitHub API
call to get the latest version tag and then perform a simple
download via curl
. For the GitHub API call the jq
tool
is used to parse the JSON.
Fixed shellcheck issues
The shell check tool reported minor issues in the compile script
that were fixed. Added ANSI coloring for better readability.
Fixed terminal width issue (again)
Reverted back to
golang.org/x/crypto/ssh/terminal
as the package to get the terminal size for both Linux and Windows
systems.