You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've been working on improving the issue templates and adding automated RSS/Atom feed validation for Planet Python feed requests. This addresses #579 by implementing automated feed validation in CI.
While #579 requested periodic validation of existing feeds (cron job), this implementation provides:
Immediate validation for new feed submissions via issues
CI-based validation that runs automatically on GitHub Actions
Foundation for future work: The validation scripts can easily be extended to run as a periodic cron job to check all existing feeds
The current implementation focuses on the submission workflow (validating new feeds), which is the most critical use case. Adding periodic validation of all existing feeds would be a natural next step.
Current Status
⚠️Note: This is still in early testing phase. I haven't completed all test scenarios yet, but the initial results look very promising! The workflow successfully validates feeds and provides helpful feedback. I'm opening this issue to get early feedback from maintainers before investing more time in comprehensive testing and refinement.
Initial Testing
The workflow has been tested on my fork with the following scenario:
✅ Valid feed with good Python content (Real Python)
Python content analysis (keyword detection in titles and summaries)
However, I haven't systematically tested all error scenarios yet. The implementation looks solid, but comprehensive testing across different feed types and failure modes is still needed.
Python Content Detection Details
The workflow analyzes up to 10 recent articles and searches for Python-related keywords in titles and article summaries:
Hi @hugovk! 👋
Summary
I've been working on improving the issue templates and adding automated RSS/Atom feed validation for Planet Python feed requests. This addresses #579 by implementing automated feed validation in CI.
What I've Implemented
I've created a complete GitHub Actions workflow in my fork (https://github.com/matrixise/planet) that includes:
1. Modernized Issue Templates
2. Automated Feed Validation Workflow
The workflow automatically validates feeds when issues are submitted, addressing the concerns raised in #579:
This provides immediate CI validation for new feed submissions, catching issues before manual review.
3. Validation Results
The workflow posts a comprehensive comment showing:
Example Output
See my test issue for a live example: matrixise#2
Benefits
Implementation Details
New Files:
.github/workflows/validate-feed-request.yml- Main validation workflow.github/scripts/validate_feed.py- Feed validation logic (~450 lines).github/scripts/format_comment.py- Comment formatting (~250 lines).github/scripts/get_labels.py- Label extraction helperDependencies:
feedparser- RSS/Atom parsingrequests- HTTP accessibility checksLabels Used:
feed-request- Triggers the workflowvalidation-passed- All checks passedvalidation-warning- Passed with warningsvalidation-failed- Critical failureduplicate-feed- Feed already existsHow This Addresses #579
While #579 requested periodic validation of existing feeds (cron job), this implementation provides:
The current implementation focuses on the submission workflow (validating new feeds), which is the most critical use case. Adding periodic validation of all existing feeds would be a natural next step.
Current Status
Initial Testing
The workflow has been tested on my fork with the following scenario:
The code includes logic to handle:
However, I haven't systematically tested all error scenarios yet. The implementation looks solid, but comprehensive testing across different feed types and failure modes is still needed.
Python Content Detection Details
The workflow analyzes up to 10 recent articles and searches for Python-related keywords in titles and article summaries:
python,django,flask,fastapi,pytest,pip,pandas,numpy,asyncio,pypi,virtualenv,conda,jupyter,matplotlib,scikit,tensorflow,pytorchNext Steps
I'd like to contribute this to the main python/planet repository. The workflow is:
Would you be interested in this addition? I'm happy to:
Let me know if you'd like me to proceed with a PR or if you'd like to see more testing first!