-
Notifications
You must be signed in to change notification settings - Fork 1
Releases: SRGSSR/castor
Maintenance release
1950b67 This release addresses stability issues.
Fixes
- Fixed crash still sometimes occurring when devices are updated.
What's Changed
- Bump json from 2.18.1 to 2.19.2 by @dependabot[bot] in #263
- Bump github.com/apple/swift-collections from 1.4.0 to 1.4.1 in the packages group by @dependabot[bot] in #262
- Bump addressable from 2.8.9 to 2.9.0 by @dependabot[bot] in #265
- Avoid crashes during device discovery by @waliid in #266
Full Changelog: 2.0.1...2.0.2
Assets 2
Maintenance release
8ffb6db This release addresses stability issues.
Fixes
- Fixed crash sometimes occurring when devices are updated.
What's Changed
- Bump fastlane from 2.231.1 to 2.232.0 in the gems group by @dependabot[bot] in #254
- Bump fastlane from 2.232.0 to 2.232.1 in the gems group by @dependabot[bot] in #255
- Bump faraday from 1.10.4 to 1.10.5 by @dependabot[bot] in #256
- Bump fastlane from 2.232.1 to 2.232.2 in the gems group by @dependabot[bot] in #258
- Bump github.com/apple/swift-collections from 1.3.0 to 1.4.0 in the packages group by @dependabot[bot] in #259
- Avoid unsafe mutations by @defagos in #260
Full Changelog: 2.0.0...2.0.1
Assets 2
Support paired devices
b5a0be8 This release introduces support for paired devices to handle multiple Google Cast receivers.
Improvements
- Migrate to modern localization API (#233)
- Enhance settings screen (#224)
- Refine UI interaction (#215)
- Fix loading issue on Android TV receivers (#214)
- Fix queue synchronization with Android TV receiver (#240)
- Provide menu integration for device selection (#247)
Dependency Update
- Update Google Cast SDK to version
4.8.4(#216)
Breaking Change
- Introduce paired device support (#218)
Toolchain Updates
- Update Swift compiler version to 6.2.
What's Changed
- Update showcase for iOS 26 by @defagos in #213
- Revisit hit testing by @defagos in #215
- Bump github.com/srgssr/google-cast-sdk from 4.8.3 to 4.8.4 in the packages group by @dependabot[bot] in #217
- Avoid item loading issues on Android TV receivers by @defagos in #214
- Update Google Cast SDK to version 4.8.4 by @defagos in #216
- Bump mikepenz/action-junit-report from 5 to 6 in the actions group by @dependabot[bot] in #222
- Support paired devices by @defagos in #218
- Improve settings by @defagos in #224
- Use modern localization references by @defagos in #233
- Update to Xcode 26.1 by @waliid in #234
- Bump actions/checkout from 5 to 6 in the actions group by @dependabot[bot] in #235
- Update CI tool versions by @waliid in #238
- Bump fastlane from 2.228.0 to 2.229.0 in the gems group by @dependabot[bot] in #236
- Update SwiftLint rules and Xcode version by @defagos in #243
- Bump fastlane from 2.229.0 to 2.229.1 in the gems group by @dependabot[bot] in #239
- Bump fastlane from 2.229.1 to 2.231.1 in the gems group by @dependabot[bot] in #245
- Update Pillarbox to version 15.0.0 by @defagos in #244
- Fix queue synchronization with Android TV receiver by @waliid in #240
- Improve and fix crash for standard Cast views by @defagos in #246
- Provide menu integration for device selection by @waliid in #247
- Update Swift tools version by @waliid in #248
- Replace ImageMagick by GraphicsMagick by @waliid in #249
- Fix pkgx "no intersection possible" issue by @defagos in #250
- Avoid pulling conflicting dependencies in the same environment by @defagos in #251
- Update Pillarbox to version 15.1.0 by @defagos in #252
Full Changelog: 1.0.0...2.0.0
Assets 2
First Official Release 🎉
6537bf4 This is the first official release of Castor, an SDK that simplifies Google Cast integration in iOS applications.
Tip
Have questions, ideas, or need assistance? Please use our issue tracker or join a discussion.
Features
Refer to the documentation for a complete list of features.
Improvements
- Added comprehensive documentation through a DocC catalog, making it easier to learn and explore the SDK.
- Ensured playback settings (repeat mode, playback speed, etc.) are transferred between sender and receiver.
- Unified playlist navigation APIs to consistently respect the
navigationModeacross all use cases.
Breaking Changes
- Removed
Player.canReturnToPrevious(),Player.canAdvanceToNext(),Player.returnToPrevious()andPlayer.advanceToNext().
What's Changed
- Add readme by @defagos in #173
- Add Swift Package Index manifest by @waliid in #174
- Polish header documentation by @defagos in #175
- Add framework welcome page by @defagos in #176
- Improve layout and interaction by @waliid in #177
- Write article about subtitles and alternative audio tracks by @defagos in #178
- Write playback speed article by @waliid in #179
- Bump actions/stale from 9 to 10 in the actions group by @dependabot[bot] in #181
- Add state observation article by @defagos in #180
- Fix CastDelegate lifecycle when no Castable object is provided by @waliid in #182
- Fix local player top bar taps by @waliid in #184
- Add playback article by @waliid in #185
- Write article explaining setup and Cast lifecycle management by @waliid in #183
- Add optimization article by @waliid in #186
- Add metadata article by @waliid in #187
- Update toolchain to Xcode, iOS and tvOS 26 by @defagos in #188
- Avoid white shadows in dark mode by @defagos in #189
- Add Setup and Lifecycle article reference to the main page by @waliid in #190
- Fix nightly configuration to use release settings by @defagos in #192
- Update screenshots with iOS 26 by @defagos in #193
- Add an article for the standard provided views by @waliid in #191
- Document sender and receiver considerations by @defagos in #194
- Improve playback article by @waliid in #195
- Bump rexml from 3.4.1 to 3.4.2 in the bundler group across 1 directory by @dependabot[bot] in #196
- Add VoiceOver support to standard views by @defagos in #198
- Classify APIs in documentation by @defagos in #199
- Remove useless @mainactor by @waliid in #200
- Apply subtitles correctly for the first session by @waliid in #202
- Add missing documentation links by @defagos in #203
- Add HLS audio DVR example by @defagos in #204
- Add icon to disconnected message by @defagos in #205
- Transfer playback parameters between sender and receiver by @defagos in #206
- Animate mini player view when appearing or disappearing by @defagos in #207
- Update Pillarbox to version 13.0.0 by @defagos in #208
- Add a link to local network settings when no devices are found by @waliid in #210
- Polish API by @defagos in #211
Full Changelog: 0.3.0...1.0.0
Assets 2
0.3.0
17b15ff This is a beta release. While it implements most of the core features required for Google Cast integration in application, none of it is documented yet.
Features
- Volume Controls — Adjust volume for the current receiver.
- Standard Player User Interfaces — Integrate standard player and mini player user interfaces, supporting all features of
CastPlayer, including playlists. - Standard Cast Button, Cast Icon and Volume Button — Integrate standard Cast status icons and controls in your app.
- Synchronization Between Sender and Receiver — Move playback seamlessly between sender and receiver, including subtitles and audio tracks.
- Playback Transfer Between Receivers — Seamlessly move playback from a receiver to another one.
- Image Retrieval with Hints Support — Fetch images matching specific criteria.
- Smart Playlist Navigation — Support previous/next navigation in playlists with/without returning to the beginning of the current item first.
- Entity Support — Support modern deep link based content identifiers.
- Custom Data Support — Send arbitrary data between sender and receiver.
- Swift 6 Strict Concurrency Adoption.
- French Localization.
Breaking Changes
Too many, but mostly:
- Removal of
CastQueue, merged intoCastPlayer. - Removal of Google Cast SDK native view wrappers.
Demo Improvements
- Standard and unified Cast player view integration.
Miscellaneous Improvements
- Dependabot support.
Fixes
- Fix blurry skip button images.
What's Changed
- Implement volume and mute/unmute audio by @waliid in #105
- Remove certificate import by @defagos in #108
- Restore certificate import by @defagos in #109
- Add an Android TV receiver by @waliid in #110
- Revisit state synchronization by @defagos in #111
- Merge CastQueue into CastPlayer by @waliid in #113
- Add TODO to improve cast sync between app windows by @defagos in #116
- Adopt Swift 6 strict concurrency by @defagos in #117
- Support smart navigation by @waliid in #118
- Improve times reported during item transitions by @defagos in #119
- Use volume range provided by the receiver by @defagos in #121
- Add Dependabot configuration file by @defagos in #122
- Bump actions/stale from 8 to 9 in the actions group by @dependabot[bot] in #123
- Fix Dependabot issue with bundler dependencies by @defagos in #124
- Bump fastlane from 2.227.2 to 2.228.0 in the gems group by @dependabot[bot] in #125
- Use same label for each Dependabot package ecosystem by @defagos in #126
- Support image retrieval hints by @defagos in #127
- Avoid blurry images for skip buttons by @waliid in #128
- Support transitions between local and remote playback by @waliid in #132
- Provide a custom Cast button by @waliid in #136
- Transfer session when switching between Google Cast receivers by @waliid in #138
- Provide custom views for Cast players by @waliid in #139
- Ensure playlist management buttons have the same height by @defagos in #140
- Support custom data by @defagos in #141
- Bump actions/checkout from 4 to 5 in the actions group by @dependabot[bot] in #142
- Provide examples of unified local and remote player experience by @defagos in #143
- Improve content support by @defagos in #147
- Restore subtitles and audio tracks when moving between local and remote playbacks by @defagos in #148
- Prepare for localization by @defagos in #151
- Add link to app settings by @waliid in #153
- Fix a crash on macOS app designed for iPad by @waliid in #154
New Contributors
- @dependabot[bot] made their first contribution in #123
Full Changelog: 0.2.0...0.3.0
Assets 2
Playback and Playlist Support
390f931 This is an alpha release. While it implements most of the core features required for Google Cast integration in applications, it is not yet production-ready. Documentation is currently limited and will be expanded in future updates.
Features
- Device Discovery — Automatically detect available Google Cast devices on the network.
- Playback Management — Control playback with support for play, pause, seek, and playback speed adjustments.
- Playlist Support — Manage media playlists.
- Subtitles and Audio Tracks — Select and switch between available subtitles and audio tracks during playback.
What's Changed
- Add a splash screen by @waliid in #6
- Provide tools for a default Google Cast experience by @waliid in #9
- Provide a device manager by @waliid in #14
- Provide basic cast player by @defagos in #23
- Animate loading indicator by @defagos in #24
- Avoid code signing when checking that the demo compiles by @waliid in #25
- Introduce a new type to manage devices by @waliid in #27
- Introduce Cast type by @waliid in #28
- Enhance session state when the session manager is suspended by @waliid in #29
- Support basic playlist by @waliid in #34
- Improve media queue item loading by @waliid in #36
- Improve device selection management by @defagos in #37
- Improve media queue item selection by @defagos in #38
- Improve playlist item selection by @waliid in #39
- Make selection APIs more consistent by @defagos in #40
- Update Xcode to version 16.2 by @defagos in #42
- Reactivate Ruby linter by @waliid in #44
- Provide load insertion and deletion APIs by @waliid in #48
- Add move and remove APIs by @waliid in #52
- Revisit device list management by @defagos in #53
- Support current item selection and playlist navigation by @defagos in #54
- Fix sync between sender and receiver by @defagos in #56
- Fetch item and associated metadata asynchronously by @defagos in #58
- Add load and insertion APIs by @waliid in #61
- Add receiver type selection to the demo by @waliid in #62
- Apply remote changes efficiently by @defagos in #63
- Split cast player view implementation by @defagos in #65
- Remove non-needed workarounds by @defagos in #67
- Add presenter mode by @defagos in #69
- Improve demo device support by @defagos in #70
- Make the SRGSSR receiver support URLs by @waliid in #71
- Update to Xcode 16.3 by @defagos in #73
- Fix device cell alignment by @defagos in #72
- Update gems by @waliid in #74
- Fix memory management issues by @defagos in #75
- Document known issues by @defagos in #77
- Avoid resizable playback button by @waliid in #78
- Add DASH streams by @waliid in #79
- Support position updates by @defagos in #80
- Support Skips by @waliid in #81
- Fix player layout on narrow devices by @defagos in #82
- Avoid potential name conflicts by @defagos in #83
- Add playback speed by @waliid in #90
- Fix Google Cast SDK issue tracker link by @defagos in #91
- Support skips symbols based on player configuration by @waliid in #94
- Provide default values for settings by @defagos in #95
- Support subtitles and audio tracks by @waliid in #92
- Make amtins receiver support URNs by @waliid in #97
- Polish player UI by @waliid in #98
- Reduce artwork image size by @waliid in #99
- Support repeat modes by @waliid in #101
- Fix nightly builds by @waliid in #102
- Fix release workflow by @defagos in #104
Full Changelog: 0.1.0...0.2.0
Assets 2
Setting up the SDK
0f8aef5 Initial Setup
This is the first alpha release of Castor, which is mainly used to set up the TestFlight apps.
What's Changed
- Add logo by @defagos in #2
- Create Swift Package by @waliid in #4
- Improve Info.plist by @defagos in #5
New Contributors
Full Changelog: https://github.com/SRGSSR/castor/commits/0.1.0