Commit Graph
42 Commits
Author SHA1 Message Date
sneak 21028af9aa Replace gzip with zstd compression
Use zstd with SpeedBestCompression level for better compression
ratios. Remove gzip support entirely. Include generated protobuf
file to allow building without protoc.
2025-12-17 14:49:30 -08:00
sneak 150bac82cf Add TODO.md with 1.0 release tasks 2025-12-17 14:40:27 -08:00
sneak 92bd13efde Fix all linter errors
- Add explicit error ignoring with _ = for Close/Remove calls
- Rename WriteTo to Write to avoid io.WriterTo interface conflict
- Fix errcheck warnings in fetch, freshen, gen, mfer, checker,
  deserialize, serialize, and output files
2025-12-17 14:37:52 -08:00
sneak 531f460f87 Add CLAUDE.md 2025-12-17 14:33:00 -08:00
sneak c5ca3e2ced Change FileProgress callback to channel-based progress
Replace callback-based progress reporting in Builder.AddFile with
channel-based FileHashProgress for consistency with EnumerateStatus
and ScanStatus patterns. Update scanner.go to use the new channel API.
2025-12-17 14:30:10 -08:00
sneak fded1a0393 Remove generateInner, now handled by Builder
- Remove generateInner() from serialize.go
- Update generate() to error if pbInner not set
- Remove legacy tests that depended on old code path
- Update TODO item to reflect removal
2025-12-17 11:27:41 -08:00
sneak 5d7c729efb remove golangci-lint config files 2025-12-17 11:27:41 -08:00
sneak 48c3c09d85 Rename ManifestBuilder to Builder 2025-12-17 11:27:41 -08:00
sneak f3be3eba84 Add TODO: change FileProgress callback to channel-based 2025-12-17 11:27:41 -08:00
sneak 5e65b3a0fd Add TODO section to README with prioritized task list 2025-12-17 11:27:41 -08:00
sneak 79fc5cca6c Add godoc strings to all exported types, functions, and fields
Documents:
- cli: NO_COLOR, RunOptions fields, CLIApp, VersionString
- checker: Result fields, Status constants, CheckStatus fields
- scanner: EnumerateStatus, ScanStatus, Options, FileEntry fields
- log: Level alias, DisableStyling, Init, Info/Debug functions,
  verbosity helpers, GetLogger, GetLevel, WithError
- mfer: ManifestScanOptions, New, NewFromPaths, NewFromFS, MAGIC
2025-12-17 11:27:41 -08:00
sneak dc2ea47f6a Add testable CLI with dependency injection and new scanner/checker packages
Major changes:
- Refactor CLI to accept injected I/O streams and filesystem (afero.Fs)
  for testing without touching the real filesystem
- Add RunOptions struct and RunWithOptions() for configurable CLI execution
- Add internal/scanner package with two-phase manifest generation:
  - Phase 1 (Enumeration): walk directories, collect metadata
  - Phase 2 (Scan): read contents, compute hashes, write manifest
- Add internal/checker package for manifest verification with progress
  reporting and channel-based result streaming
- Add mfer/builder.go for incremental manifest construction
- Add --no-extra-files flag to check command to detect files not in manifest
- Add timing summaries showing file count, size, elapsed time, and throughput
- Add comprehensive tests using afero.MemMapFs (no real filesystem access)
- Add contrib/usage.sh integration test script
- Fix banner ASCII art alignment (consistent spacing)
- Fix verbosity levels so summaries display at default log level
- Update internal/log to support configurable output writers
2025-12-17 11:00:55 -08:00
sneak 13f39d598f remove gofumpt from linting
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is failing
2024-05-22 14:34:05 -07:00
sneak 01bffc8388 latest
continuous-integration/drone/push Build is passing
2024-05-22 14:25:35 -07:00
sneak eb3b685aa3 i think this will build now
continuous-integration/drone/push Build is passing
2022-02-02 00:26:18 -08:00
sneak 9d8616866f latest 2022-02-02 00:12:03 -08:00
sneak b9c51fdeeb proto3 compiler doesn't like required/optional anymore?
continuous-integration/drone/push Build is passing
2022-02-01 23:48:42 -08:00
sneak 7b869592ce proto3 fixes to pass ci
continuous-integration/drone/push Build is failing
2022-02-01 23:44:58 -08:00
sneak 6628325843 ci debugging
continuous-integration/drone/push Build is failing
2022-02-01 23:35:33 -08:00
sneak 5b2f1fe2dd wrangling ci more
continuous-integration/drone/push Build is failing
2022-02-01 22:45:37 -08:00
sneak f74a320989 cleanup a bit
continuous-integration/drone/push Build is failing
2022-02-01 22:39:50 -08:00
sneak c5f2cb7d9e fix prereqs for builder image
continuous-integration/drone/push Build is failing
2022-02-01 22:35:10 -08:00
sneak bb810fb728 this should fix ci
continuous-integration/drone/push Build is failing
2022-02-01 22:30:43 -08:00
sneak b6c73621fc used the arm64 hash instead of the amd64 one
continuous-integration/drone/push Build is failing
2022-02-01 22:20:59 -08:00
sneak 94f948da04 testing ci again
continuous-integration/drone/push Build is failing
2022-02-01 22:17:13 -08:00
sneak 52720830e0 test to get ci working
continuous-integration/drone/push Build is failing
2022-02-01 22:05:16 -08:00
sneak 1b3e058b86 add final image
continuous-integration/drone/push Build is failing
2022-02-01 21:47:30 -08:00
sneak 7e4f8366a7 format readme, add build status badge
continuous-integration/drone/push Build is failing
2022-02-01 21:45:03 -08:00
sneak ea96e0d786 latest, testing with ci now 2022-02-01 21:43:48 -08:00
sneak 081028f3b2 vendor in deps so CI goes fast 2022-02-01 21:36:27 -08:00
sneak 7a47873be3 getting ready for CI 2022-02-01 21:36:20 -08:00
sneak 69c8d45f8f builds and runs! 2022-02-01 20:12:53 -08:00
sneak 01e9433404 latest 2022-02-01 20:12:32 -08:00
sneak 9dd2682b49 mtime/ctime/atime should be Timestamp 2021-11-03 04:23:09 -07:00
sneak 4fd76850da renumber fields, add timestamp 2021-11-03 04:19:42 -07:00
sneak 92b92c190d update file format a bit 2021-11-03 03:49:40 -07:00
sneak 38df94a9b2 add fmt target 2021-11-03 03:49:34 -07:00
sneak 4a6469b003 fmt 2021-11-03 03:49:24 -07:00
sneak 9de974e88b add more notes to protobuf 2021-10-26 02:21:10 -07:00
sneak b263706342 use go generate instead of make for protoc 2021-10-26 02:10:55 -07:00
sneak a1fa0d8fe5 add open design questions to README 2021-10-26 02:04:43 -07:00
sneak a35e30c05c beginning of pb 2021-10-26 02:00:50 -07:00