Skip to content

structure_test: limit regex checks to small non-binary files#267

Open
imjasonh wants to merge 3 commits intochainguard-dev:mainfrom
imjasonh:structure-limit
Open

structure_test: limit regex checks to small non-binary files#267
imjasonh wants to merge 3 commits intochainguard-dev:mainfrom
imjasonh:structure-limit

Conversation

@imjasonh
Copy link
Contributor

@imjasonh imjasonh commented Oct 8, 2025

This fails faster when regex tests are requested on large (>1 MB) or binary files (containing null bytes)

Signed-off-by: Jason Hall <jason@chainguard.dev>
@imjasonh imjasonh requested review from Copilot and jonjohnsonjr and removed request for jonjohnsonjr October 8, 2025 16:11
@imjasonh imjasonh enabled auto-merge (squash) October 8, 2025 16:11
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request adds validation to limit regex checks in file structure tests to small, non-binary files. The change prevents regex matching on files larger than 1MB or containing binary data (null bytes), causing faster failure for inappropriate file types.

Key changes:

  • Added size limit validation (1MB maximum) for files before regex matching
  • Added binary file detection by checking for null bytes in the first 8KB
  • Created comprehensive test coverage for both size and binary content validation scenarios

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
pkg/structure/structure.go Added size and binary validation logic with 1MB limit constant
pkg/structure/structure_test.go Added comprehensive test cases covering size limits and binary detection

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

imjasonh and others added 2 commits October 8, 2025 12:13
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jason Hall <jason@chainguard.dev>
Signed-off-by: Jason Hall <jason@chainguard.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments