Commit Graph

390 Commits

Author SHA1 Message Date
Vincent Batts 42b655d8ee
*.go: update to golangci-lint, and fix everything
install tools in the workflow actions
Also switch away from deprecated ioutil

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-10-23 21:59:44 -04:00
Vincent Batts e7a79ae8a7
Merge pull request #193 from vbatts/more_arches
Makefile: add a few additional architectures to build for
2023-10-22 17:51:56 -04:00
Vincent Batts 5d1916ee81
Merge pull request #194 from vbatts/sponsoring
Create FUNDING.yml
2023-10-22 17:51:42 -04:00
Vincent Batts 2eb1e12b41
Create FUNDING.yml
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-10-22 17:47:12 -04:00
Vincent Batts 2a2bf3c904
Makefile: add a few additional architectures to build for
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-10-22 17:43:33 -04:00
Vincent Batts b5c5253f71
Merge pull request #192 from thesayyn/prefactor-subcommands
refactor: prefactor for adding new subcommands
2023-10-22 17:35:46 -04:00
thesayyn 83c9fdb78b
refactor: prefactor for adding new subcommands 2023-10-20 16:12:08 -07:00
Vincent Batts 7c8a752a64
Merge pull request #188 from cyphar/parse-fulltype-handling
parse: improve FullType handling
2023-10-07 20:14:59 -04:00
Vincent Batts 77f5530d89
Merge pull request #189 from vbatts/updates
go: go get -u ./... && go mod vendor && go mod tidy
2023-10-07 10:06:35 -04:00
Vincent Batts e73ff94ef9
go: go get -u ./... && go mod vendor && go mod tidy
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-10-07 10:03:46 -04:00
Vincent Batts a9c6969125
Merge pull request #190 from vbatts/workflows
workflows: add golang 1.21
2023-10-07 10:03:26 -04:00
Vincent Batts fa57ee3a8e
workflows: add golang 1.21
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-10-07 10:00:42 -04:00
Aleksa Sarai 07c8c8e17a
parse: clean path after checking if entry is a FullType
The spec[1] doesn't mention anything about cleaning paths, but it does
explicitly refer to the path containing a "/". Cleaning the path before
checking if the entry is a FullType would result in the simplest way of
forcing directories to be FullTypes (appending a "/" to the pathname of
any directory) not working with go-mtree.

[1]: https://man.netbsd.org/mtree.5

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2023-06-04 20:14:00 +10:00
Aleksa Sarai 63dc31a80a
parse: do not allow FullType entries to affect the current directory
As per the spec[1], Full entries must not affect the current directory.
Handling this incorrectly caused us issues with certain manifests (ones
with mixed Relative and Full entries, which is something casync does by
accident).

This is a partial fix for the issues with verifying casync-mtree's
output but there are a few other issues to iron out (including one
within casync).

[1]: https://man.netbsd.org/mtree.5

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2023-06-04 20:13:30 +10:00
Vincent Batts 98ebe1868e
Merge pull request #187 from vbatts/version
*: move version from library to cmd, and generate it
2023-03-22 11:42:29 -04:00
Vincent Batts 630389965c
*: move version from library to cmd, and generate it
oh dang, I released 0.5.2 and 0.5.3 without correctly setting the
version string :-\
Ideally this "-dev" is attempting to be like the git.
So, ditch the version in the library.

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 11:39:12 -04:00
Vincent Batts 84c498b361
Merge pull request #186 from vbatts/fix_180
main: add description output
2023-03-22 11:27:47 -04:00
Vincent Batts 7d745cbc31
main: add description output
fixes: #180

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 11:11:14 -04:00
Vincent Batts 192695a964
Merge pull request #185 from vbatts/go_updates
drop go1.17; go module updates
2023-03-22 11:03:05 -04:00
Vincent Batts fa29fcb58d
go*: `go get -u ./...`
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 10:57:01 -04:00
Vincent Batts ce5bddf35e
github/workflows: remove testing on go1.17
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 10:56:34 -04:00
Vincent Batts 249dc61329
Merge pull request #184 from vbatts/go_updates
go: updating modules
2023-03-22 10:49:02 -04:00
Vincent Batts 45591ed121
go: updating modules
It seems this may be the last update to urfave/cli for go1.17, as their
v2.25 uses generics of go1.18 and didn't partition it with build tags
😵😵😵

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 10:42:20 -04:00
Vincent Batts c6a7295705
Merge pull request #183 from vbatts/test_matrix
github/workflows: test on multiple golang versions
2023-03-22 10:26:45 -04:00
Vincent Batts d957cf3750
github/workflows: test on multiple golang versions
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2023-03-22 10:17:41 -04:00
Vincent Batts 9e437eee80
go: update modules
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-07-05 09:02:09 -04:00
Vincent Batts 00deb3ada6
Merge pull request #181 from vbatts/sums
Makefile: only make a single SUMS file, including sha1 and sha512
2022-04-23 13:45:26 -04:00
Vincent Batts 555e4c9e5f
comment: typo
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-23 13:44:57 -04:00
Vincent Batts 79927ba184
Merge pull request #182 from vbatts/not_a_directory
walk: directory is expected to be walked. A file is not.
2022-04-23 13:42:46 -04:00
Vincent Batts 020f2b9f5c
Makefile: only make a single SUMS file, including sha1 and sha512
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-23 13:42:29 -04:00
Vincent Batts 2627dbf5d7
Merge pull request #179 from vbatts/gofmt
*.go: updated go:build added via gofmt
2022-04-23 13:41:36 -04:00
Vincent Batts 5d7f6c36e0
walk: directory is expected to be walked. A file is not.
Fixes: #166

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-23 13:40:44 -04:00
Vincent Batts 94303e15af
*.go: updated go:build added via gofmt
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-23 12:59:26 -04:00
Vincent Batts b9356e6843
Merge pull request #177 from vbatts/lint
linting and adding check for staticcheck
2022-04-08 23:15:48 -04:00
Vincent Batts 0337cb91ea
keywordfunc: ignore ripemd160 for compat sake
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 23:04:27 -04:00
Vincent Batts dac969b14e
Makefile: staticcheck validation
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 23:03:04 -04:00
Vincent Batts 7b5bbd4eaa
keywords: tar.Xattrs is deprecated by PAXRecords
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 22:51:37 -04:00
Vincent Batts 3bc8e48538
*.go: go-staticcheck linting
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 22:51:37 -04:00
Vincent Batts 4760b77e54
Merge pull request #176 from vbatts/cyclo
Cyclomatic complexity
2022-04-08 22:39:27 -04:00
Vincent Batts 599ae15537
Makefile: check cyclomatic complexity
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 22:35:36 -04:00
Vincent Batts 53f42660ec
Merge pull request #175 from vbatts/remove_legacy
lookup: remove legacy lookup code
2022-04-08 22:31:24 -04:00
Vincent Batts 106c52de51
*_test.go: ignore cyclomatic complexity for test files
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 21:59:08 -04:00
Vincent Batts 1610f1a0c7
lookup: remove legacy lookup code
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-08 21:50:52 -04:00
Vincent Batts 7fed71e221
Merge pull request #173 from vbatts/compare-two-files
Compare two files
2022-04-04 18:17:07 -04:00
Vincent Batts 2d841d54bf
test: testing the double -f comparison
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-04 18:13:23 -04:00
Vincent Batts b5e683dfc9
main: compare two files with two -f flags
Fixes: #159

```shell
vbatts@fogel:~/src/github.com/vbatts/go-mtree$ ./gomtree -c -f foo
vbatts@fogel:~/src/github.com/vbatts/go-mtree$ ./gomtree -c -f bar -K sha256
vbatts@fogel:~/src/github.com/vbatts/go-mtree$ ./gomtree -f foo -f bar
"foo": unexpected path
".": keyword "time": expected 1649109728.228935367; got 1649109734.412959677
FATA[0000] manifest validation failed
vbatts@fogel:~/src/github.com/vbatts/go-mtree$ echo $?
1
```

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-04 18:04:16 -04:00
Vincent Batts bdace0aacf
main: --file flag can be repeated now
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-04 17:56:44 -04:00
Vincent Batts fc2975ed32
Merge pull request #172 from vbatts/change-flag-parser
main: switch to urfave/cli/v2
2022-04-04 16:12:32 -04:00
Vincent Batts 17687d8c29
main: switch to urfave/cli/v2
For now this is a drop in replacement for all the flags curently
implemented

Fixes: #171

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-04 16:06:48 -04:00
Vincent Batts bc8295f83e
compare: gofmt
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2022-04-04 14:57:29 -04:00