Skip to content

feat: add Go and Rust dependency parsing support to repository analyzer - #396

Open
CodesWithSubham wants to merge 1 commit into
SATYAM-PRATIBHAN:mainfrom
CodesWithSubham:feat/go-rust-dependency-parsing
Open

feat: add Go and Rust dependency parsing support to repository analyzer#396
CodesWithSubham wants to merge 1 commit into
SATYAM-PRATIBHAN:mainfrom
CodesWithSubham:feat/go-rust-dependency-parsing

Conversation

@CodesWithSubham

Copy link
Copy Markdown
Contributor

Description

Add dependency parsing support for Go (go.mod) and Rust (Cargo.toml) projects in the Repository Analyzer.

Previously, the analyzer only extracted dependencies from Node.js (package.json) and Python (requirements.txt) projects, even though Go and Rust manifest files were already being discovered and fetched during repository analysis.

This change extends the dependency analyzer to:

  • Parse Go dependencies from go.mod
  • Support both single-line and multiline require declarations
  • Detect indirect Go dependencies
  • Parse Rust dependencies from Cargo.toml
  • Support both [dependencies] and [dev-dependencies]
  • Support string-based and inline-table dependency definitions
  • Detect and set packageManager as go or cargo
  • Improve framework detection for common Go and Rust frameworks
  • Improve database library detection for Go and Rust ecosystems
  • Improve testing library detection for Go and Rust ecosystems

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • 🔧 Configuration change
  • ♻️ Refactoring (no functional changes)
  • 🎨 Style/UI changes

Related Issues

Fixes #395

Screenshots (if applicable)

N/A

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my code
  • I have commented my code where necessary
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have tested my changes locally
  • Any dependent changes have been merged and published

Additional Notes

  • Existing Node.js and Python dependency parsing behavior remains unchanged.
  • No database schema changes were required.
  • No additional network requests were introduced.
  • Type checking completed successfully using pnpm typecheck.

Add support for extracting dependencies from Go (go.mod) and
Rust (Cargo.toml) manifests in the repository analyzer.

Changes:
- Parse Go dependencies from single-line and multiline require blocks
- Detect indirect Go dependencies and classify them as peer dependencies
- Set package manager to "go" when go.mod is present
- Parse Rust dependencies from [dependencies] and [dev-dependencies]
- Support Cargo.toml string and inline-table dependency definitions
- Set package manager to "cargo" when Cargo.toml is present
- Extend framework detection for Go and Rust ecosystems
- Extend database library classification
- Extend testing library classification

This improves dependency analysis accuracy for Go and Rust
repositories and aligns dependency extraction with existing
repository file discovery support.
@netlify

netlify Bot commented Jul 9, 2026

Copy link
Copy Markdown

👷 Deploy request for arcmind-ai pending review.

Visit the deploys page to approve it

Name Link
🔨 Latest commit a9aa629

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.

[ENHANCEMENT] Add Go and Rust Dependency Parsing Support to Repository Analyzer

1 participant