Python Packaging Bug Finder
Identifies known packaging and build issues for Python projects by searching GitHub repositories for relevant issues, analyzing their content and comments, and determining resolution status.
Instructions
When investigating packaging problems for a Python project, follow this workflow:
1. Find the Repository
Use the source finder skill to locate the project's GitHub repository:
Skill: python-packaging-source-finder
Args: <package_name>
If the skill returns a repository URL with high or medium confidence, proceed. If confidence is low or no URL found, stop here and return an error.
2. Search for Packaging Issues
Once you have the repository URL, search for packaging-related issues by:
Access the GitHub issues page: Use WebFetch to get the repository's issues page (typically <repo_url>/issues)
Filter for packaging keywords: Look for issues with titles containing:
- Build-related: "build", "compilation", "compile", "setup.py", "pyproject.toml", "cmake", "makefile"
- Installation: "install", "pip", "wheel", "package", "packaging", "distribution"
- Environment: "gcc", "clang", "msvc", "python", "version", "dependency"
- Platform: "windows", "linux", "macos", "arm64", "x86_64"
- Errors: "error", "fail", "broken", "issue"
Prioritize open issues: Focus on open issues first, then closed ones that might affect the target version
3. Analyze Each Relevant Issue
For each packaging-related issue found:
Fetch issue details: Use WebFetch to get the full issue page including:
- Issue description
- All comments
- Labels and milestones
- Current status (open/closed)
Extract key information:
- Problem description: What packaging/build problem is described?
- Affected versions: Which versions are mentioned as problematic?
- Resolution status: Is it fixed, pending, or unresolved?
- Available fixes: Are there PRs, commits, or workarounds mentioned?
- Version inclusion: If fixed, in which version was the fix included?
Look for resolution indicators:
- Fixed with PR: Comments mentioning "fixed in PR #XXX" or "merged in #XXX"
- Fixed with commit: Comments with commit SHAs or "fixed in commit XXX"
- Version mentions: "fixed in v1.X.X" or "available in next release"
- Workarounds: Comments with "workaround", "temporary fix", "try this"
- Status updates: "resolved", "closed as fixed", "duplicate of #XXX"
4. Version Impact Assessment
For each issue, determine:
Does it affect the target version?
- Compare mentioned problematic versions with target version
- Check if fix is included in target version
- Look for version-specific comments
What's the resolution status?
- Fixed and Included: Fix is available and included in target version
- Fixed but Pending: Fix exists but not yet in target version
- Open with Workarounds: No fix but workarounds available
- Unresolved: Open issue with no clear solution
Output Format
Provide a structured analysis:
# Packaging Issues Analysis for <package_name> [version]
## Repository
- URL: <repository_url>
- Confidence: <high/medium/low>
## Issues Found: X total
### [Issue Status] Issue Title
- **URL**: <issue_url>
- **Status**: Open/Closed
- **Labels**: <relevant_labels>
- **Problem**: <brief_description>
- **Affects Target Version**: Yes/No/Unknown
- **Resolution**:
- Type: Fixed/Pending/Workaround/Unresolved
- Details: <fix_description>
- Available in: <version_if_applicable>
- **Workarounds**: <list_of_workarounds>
- **Recommendation**: <action_to_take>
## Summary
- Total packaging issues: X
- Affecting target version: X
- With available fixes: X
- With workarounds only: X
- Unresolved: X
Issue Categories to Search For
Build System Issues
- Keywords: "build fails", "compilation error", "setup.py error", "pyproject.toml", "cmake error"
- Typical problems: Build configuration, missing dependencies, tool compatibility
Compiler Issues
- Keywords: "gcc", "clang", "msvc", "compiler error", "linker error", "C++ standard"
- Typical problems: Compiler version compatibility, C++ standard issues, linking problems
Platform-Specific Issues
- Keywords: "windows", "linux", "macos", "arm64", "x86_64", "architecture"
- Typical problems: Platform-specific build failures, architecture compatibility
Dependency Issues
- Keywords: "dependency", "requirements", "version conflict", "missing"
- Typical problems: Missing build dependencies, version conflicts, circular dependencies
Installation Issues
- Keywords: "pip install", "wheel", "sdist", "packaging", "distribution"
- Typical problems: Installation failures, wheel building issues, PyPI problems
Analysis Guidelines
Effective Issue Analysis
- Read the original description carefully - often contains version info and problem details
- Scan all comments chronologically - resolution often emerges in later comments
- Look for maintainer responses - project maintainers often provide authoritative status updates
- Check linked PRs and commits - follow references to understand fix implementation
- Note milestone assignments - indicates planned fix version
Common Resolution Patterns
- "Fixed in PR #XXX" → Check if PR is merged and in which version
- "Workaround: use version X.Y" → Temporary solution available
- "Duplicate of #XXX" → Check the referenced issue for resolution
- "Resolved in latest" → Fix may be in development branch
- Milestone assignments → Indicates planned fix version
The bug finder provides critical context for making informed decisions about package building, version selection, and issue avoidance strategies.
1---2name: python-packaging-bug-finder3description: Find known packaging bugs, fixes, and workarounds for Python projects by searching GitHub issues and analyzing their resolution status4---5
6# Python Packaging Bug Finder
7
8Identifies known packaging and build issues for Python projects by searching GitHub repositories for relevant issues, analyzing their content and comments, and determining resolution status.
9
10## Instructions
11
12When investigating packaging problems for a Python project, follow this workflow:
13
14### 1. Find the Repository
15
16Use the source finder skill to locate the project's GitHub repository:
17
18```
19Skill: python-packaging-source-finder
20Args: <package_name>
21```
22
23If the skill returns a repository URL with high or medium confidence, proceed. If confidence is low or no URL found, stop here and return an error.
24
25### 2. Search for Packaging Issues
26
27Once you have the repository URL, search for packaging-related issues by:
28
291. **Access the GitHub issues page**: Use WebFetch to get the repository's issues page (typically `<repo_url>/issues`)
30
312. **Filter for packaging keywords**: Look for issues with titles containing:
32 - Build-related: "build", "compilation", "compile", "setup.py", "pyproject.toml", "cmake", "makefile"
33 - Installation: "install", "pip", "wheel", "package", "packaging", "distribution"
34 - Environment: "gcc", "clang", "msvc", "python", "version", "dependency"
35 - Platform: "windows", "linux", "macos", "arm64", "x86_64"
36 - Errors: "error", "fail", "broken", "issue"
37
383. **Prioritize open issues**: Focus on open issues first, then closed ones that might affect the target version
39
40### 3. Analyze Each Relevant Issue
41
42For each packaging-related issue found:
43
441. **Fetch issue details**: Use WebFetch to get the full issue page including:
45 - Issue description
46 - All comments
47 - Labels and milestones
48 - Current status (open/closed)
49
502. **Extract key information**:
51 - **Problem description**: What packaging/build problem is described?
52 - **Affected versions**: Which versions are mentioned as problematic?
53 - **Resolution status**: Is it fixed, pending, or unresolved?
54 - **Available fixes**: Are there PRs, commits, or workarounds mentioned?
55 - **Version inclusion**: If fixed, in which version was the fix included?
56
573. **Look for resolution indicators**:
58 - **Fixed with PR**: Comments mentioning "fixed in PR #XXX" or "merged in #XXX"
59 - **Fixed with commit**: Comments with commit SHAs or "fixed in commit XXX"
60 - **Version mentions**: "fixed in v1.X.X" or "available in next release"
61 - **Workarounds**: Comments with "workaround", "temporary fix", "try this"
62 - **Status updates**: "resolved", "closed as fixed", "duplicate of #XXX"
63
64### 4. Version Impact Assessment
65
66For each issue, determine:
67
681. **Does it affect the target version?**
69 - Compare mentioned problematic versions with target version
70 - Check if fix is included in target version
71 - Look for version-specific comments
72
732. **What's the resolution status?**
74 - **Fixed and Included**: Fix is available and included in target version
75 - **Fixed but Pending**: Fix exists but not yet in target version
76 - **Open with Workarounds**: No fix but workarounds available
77 - **Unresolved**: Open issue with no clear solution
78
79## Output Format
80
81Provide a structured analysis:
82
83```markdown
84# Packaging Issues Analysis for <package_name> [version]
85
86## Repository
87- URL: <repository_url>
88- Confidence: <high/medium/low>
89
90## Issues Found: X total
91
92### [Issue Status] Issue Title
93- **URL**: <issue_url>
94- **Status**: Open/Closed
95- **Labels**: <relevant_labels>
96- **Problem**: <brief_description>
97- **Affects Target Version**: Yes/No/Unknown
98- **Resolution**:
99 - Type: Fixed/Pending/Workaround/Unresolved
100 - Details: <fix_description>
101 - Available in: <version_if_applicable>
102- **Workarounds**: <list_of_workarounds>
103- **Recommendation**: <action_to_take>
104
105## Summary
106- Total packaging issues: X
107- Affecting target version: X
108- With available fixes: X
109- With workarounds only: X
110- Unresolved: X
111```
112
113## Issue Categories to Search For
114
115### Build System Issues
116- **Keywords**: "build fails", "compilation error", "setup.py error", "pyproject.toml", "cmake error"
117- **Typical problems**: Build configuration, missing dependencies, tool compatibility
118
119### Compiler Issues
120- **Keywords**: "gcc", "clang", "msvc", "compiler error", "linker error", "C++ standard"
121- **Typical problems**: Compiler version compatibility, C++ standard issues, linking problems
122
123### Platform-Specific Issues
124- **Keywords**: "windows", "linux", "macos", "arm64", "x86_64", "architecture"
125- **Typical problems**: Platform-specific build failures, architecture compatibility
126
127### Dependency Issues
128- **Keywords**: "dependency", "requirements", "version conflict", "missing"
129- **Typical problems**: Missing build dependencies, version conflicts, circular dependencies
130
131### Installation Issues
132- **Keywords**: "pip install", "wheel", "sdist", "packaging", "distribution"
133- **Typical problems**: Installation failures, wheel building issues, PyPI problems
134
135## Analysis Guidelines
136
137### Effective Issue Analysis
1381. **Read the original description carefully** - often contains version info and problem details
1392. **Scan all comments chronologically** - resolution often emerges in later comments
1403. **Look for maintainer responses** - project maintainers often provide authoritative status updates
1414. **Check linked PRs and commits** - follow references to understand fix implementation
1425. **Note milestone assignments** - indicates planned fix version
143
144### Common Resolution Patterns
145- **"Fixed in PR #XXX"** → Check if PR is merged and in which version
146- **"Workaround: use version X.Y"** → Temporary solution available
147- **"Duplicate of #XXX"** → Check the referenced issue for resolution
148- **"Resolved in latest"** → Fix may be in development branch
149- **Milestone assignments** → Indicates planned fix version
150
151The bug finder provides critical context for making informed decisions about package building, version selection, and issue avoidance strategies.