Commit Graph
39 Commits
Author SHA1 Message Date
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