Skip to content

Conversation

@andrew
Copy link
Contributor

@andrew andrew commented Jan 25, 2026

Go 1.24 introduced the tool directive in go.mod for specifying development tool dependencies. This updates the go.mod parser to:

  • Parse tool directives (both single-line and block form)
  • Mark any require entries that match a tool as development scope instead of runtime

Matching handles both exact matches and prefix matches (e.g., module golang.org/x/tools matches tool golang.org/x/tools/cmd/stringer).

See git-pkgs/git-pkgs#38

…eport.js parsers

Adds three new lockfile parsers for the Maven/Gradle ecosystem:

1. maven.graph.json: Parses the JSON output from mvn dependency:tree
   -DoutputType=json. Recursively extracts dependencies with version
   and scope information.

2. dependencies.lock: Parses Nebula gradle-dependency-lock-plugin
   lockfiles. Extracts locked versions and distinguishes direct vs
   transitive dependencies based on requested/firstLevelTransitive.

3. gradle-html-dependency-report.js: Parses the JS file generated by
   gradle htmlDependencyReport task. Extracts the JSON data embedded
   in window.project assignment.
@andrew andrew merged commit b9c09bd into main Jan 26, 2026
2 checks passed
@andrew andrew deleted the feature/go-tool-directive branch January 26, 2026 15:47
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.

2 participants