[Feature Request] - [Improve buildspec generation and error handling for missing metadata]
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 210
- Forks
- 36
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 2
Description
Description
Currently, Macaron does not generate a buildspec when required metadata such as repository URL, commit, or build tool cannot be determined. This makes it difficult to diagnose issues and reduces visibility into partial analysis results.
Proposed Feature
- Always generate a buildspec (or alternative output): Even when critical fields (repo URL, commit, build tool) are missing, Macaron should still generate a buildspec (or a separate diagnostic file) with available information.
- Record errors explicitly: Instead of failing silently, errors should be captured and included in the generated output (e.g., in the buildspec or a companion file). This will help users understand what went wrong.
- Pre-check package availability: Before attempting to resolve the repository or commit, Macaron should first verify whether the specified package version exists in the public repository (e.g., Maven Central, npm, etc.).
- Improved error reporting for missing packages: If the package version is not found, record a clear and specific error in the buildspec (or diagnostic output), rather than proceeding with repository/commit resolution.
Note
One example highlighting the importance of a “pre-check package availability” step is the following: for the incorrect vllm purl pkg:pypi/vllm@0.11, we fall back to default values for fields such as "has_binaries": false, which is incorrect. This indicates a need to define how we populate fields that depend on package availability. For comparison, the correct reference is pkg:pypi/vllm@0.11.0.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names Macaron’s buildspec generation, metadata resolution, and package-availability checks but no files or tests. Start by tracing those entry points and existing handling for missing repository URLs, commits, build tools, and invalid package versions; done means a partial buildspec or diagnostic output records available data and explicit errors without silently applying misleading defaults.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100