Skip to content

v1.1.0

Latest

Choose a tag to compare

@jadmadi jadmadi released this 06 Jun 06:37
· 2 commits to master since this release

Go-OPML v1.1.0 - Infrastructure & Quality Improvements

🚀 Major Infrastructure Enhancements

This release focuses on significantly improving the project's infrastructure, development workflow, and code quality without breaking existing functionality.

✨ What's New

🔄 CI/CD Pipeline & Automation

  • GitHub Actions Workflow: Complete CI/CD pipeline with automated testing
  • Multi-Version Testing: Automated testing across Go 1.20, 1.21, and 1.22
  • Automated Binary Building: Cross-platform binaries built automatically on release
  • Automated Release Uploads: Binaries automatically uploaded to GitHub releases

🔍 Code Quality & Linting

  • golangci-lint Integration: Comprehensive linting configuration
  • Code Quality Checks: Automated code quality validation in CI
  • Deprecated Linter Removal: Updated to use current, maintained linters
  • Type Safety Improvements: Fixed type checking and import issues

📦 Missing Components Added

  • pkg/rss Package: Previously missing RSS fetching functionality now properly implemented
  • Episode Struct: Proper data structures for podcast episode information
  • RSS Integration: Full integration between OPML parsing and RSS fetching

📋 Project Governance

  • Issue Templates: Structured bug reports and feature request templates
  • Pull Request Template: Standardized PR workflow and checklist
  • Security Policy: Comprehensive security reporting and best practices
  • Contributing Guidelines: Clear contribution process and standards

🧪 Testing Improvements

  • Fixed Test Structure: Resolved import issues and undefined function calls
  • Cross-Platform Testing: Ensures compatibility across different environments
  • Automated Test Execution: Tests run automatically on every PR and push

📦 Available Downloads

Windows

  • Go-OPML.exe - Windows 64-bit

macOS

  • Go-OPML-mac-intel - macOS Intel 64-bit
  • Go-OPML-mac-arm64 - macOS Apple Silicon (M1/M2/M3)

Linux

  • Go-OPML-linux - Linux 64-bit

🔧 Quick Start

  1. Download the appropriate binary for your platform
  2. Make it executable: chmod +x Go-OPML-*
  3. Run: ./Go-OPML-* -input your_file.opml -output result.json

📋 Checksums

SHA256 checksums are provided in checksums.txt for verification.

🛠️ For Developers

New Development Features

  • Automated Linting: Run golangci-lint run for code quality checks
  • CI Integration: All changes automatically tested in CI
  • Release Automation: Use ./release.sh for automated releases
  • Template Guidance: Use provided templates for issues and PRs

Breaking Changes

❌ None - This release maintains full backward compatibility

Deprecations

⚠️ None - All existing functionality remains unchanged

🔐 Security Enhancements

  • Updated Security Policy: Comprehensive vulnerability reporting process
  • Automated Security Checks: CI pipeline includes security scanning
  • Dependency Monitoring: Automated dependency update monitoring
  • Best Practices Documentation: Security guidelines for users

🐛 Bug Fixes

  • Fixed linting issues throughout the codebase
  • Resolved undefined type and function references
  • Fixed import paths and package structure
  • Corrected deprecated configuration warnings

📈 Performance & Reliability

  • Improved Error Handling: Better error messages and handling
  • Code Optimization: Cleaner, more maintainable code structure
  • Testing Coverage: Enhanced test coverage and reliability
  • Documentation: Improved inline documentation and comments

🔗 Links

🙏 Acknowledgments

This release significantly improves the project's maintainability and contributor experience while maintaining the same reliable OPML to JSON conversion functionality users expect.


Full Changelog: v1.0.3...v1.1.0