Skip to content

Implement proper Opml import - and do some cleanup in the SubscriptioptionManager#1395

Merged
gzsombor merged 2 commits intoSkyTubeTeam:masterfrom
gzsombor:opml-export
Jan 26, 2026
Merged

Implement proper Opml import - and do some cleanup in the SubscriptioptionManager#1395
gzsombor merged 2 commits intoSkyTubeTeam:masterfrom
gzsombor:opml-export

Conversation

@gzsombor
Copy link
Member

No description provided.

@gzsombor gzsombor requested a review from Copilot January 25, 2026 23:28
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements proper OPML import functionality for YouTube subscriptions and refactors the SubscriptionsBackupsManager to improve code organization and maintainability.

Changes:

  • Added a dedicated OpmlParser class with comprehensive test coverage for parsing OPML files
  • Refactored SubscriptionsBackupsManager to extract duplicate callback logic and simplify threading management
  • Added UI elements and strings to support OPML import functionality in the backup preferences

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
OpmlParser.java New parser implementation for OPML files with support for various YouTube URL formats
OpmlParserTest.java Comprehensive test suite for OPML parser covering basic parsing, folders, parameters, and edge cases
SubscriptionsBackupsManager.java Refactored to use new OpmlParser, extracted UriReceivedCallback class, simplified threading logic
OpmlExporterTest.java Added test to verify exported OPML can be parsed back
OpmlExporter.java Removed unused imports
preference_backup.xml Added OPML import preference UI element
strings_preferences.xml Added strings for OPML import feature
strings_subs.xml Updated error message text
BackupPreferenceFragment.java Added click handler for OPML import preference
app/build.gradle Added XML Pull Parser test dependency
basic.opml, empty.opml, missing_attrs.opml, user_urls.opml, with_folders.opml, with_params.opml Test resource files for OPML parsing

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@gzsombor gzsombor merged commit 1e5ecf8 into SkyTubeTeam:master Jan 26, 2026
1 check passed
@gzsombor gzsombor deleted the opml-export branch January 26, 2026 06:44
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.

2 participants