Releases: libre-tube/LibreTube
Releases Β· libre-tube/LibreTube
0.26.0
New features
- feat: audio player support for no internet activity by @Bnyro in #6641
- feat: downloads fragment rework, playing queue and audio player support by @Bnyro in #6596
- feat: ask user to play downloaded version if video already downloaded by @angolo and @Bnyro in #6599
- feat: support for importing watch history from YouTube by @Bnyro in #6543
- feat: support for shuffling downloaded audio content by @Bnyro in #6623
- feat: RYD support for local stream extraction by @janisslsm in #6483
Quality of Life changes
- feat: hide crash dialogs when developing by @FineFindus in #6719
- feat(VideosAdapter): clearly indicate future videos as upcoming by @FineFindus in #6716
- feat: delete indicator when dismissing videos/items by @Bnyro in #6673
- feat: highlight current selection in player options sheets by @Bnyro in #6482
- feat: support for selecting audio codec by @Bnyro in #6578
- feat: allow dash without piped proxy by @janisslsm in #6485
- feat: allow user to set custom preloading amount by @Bnyro in #6504
Bug fixes
- fix: autoplay countdown showing even if autoplay disabled by @Bnyro in #6481
- fix: back gesture handling in no internet activity by @Bnyro in #6646
- fix: background service stops when using add to queue/playlist/downlo⦠by @Bnyro in #6577
- fix: can't open audio player via notification in downloads by @Bnyro in #6626
- fix: can't paste channel/playlist urls to search bar by @Bnyro in #6575
- fix: click on video playlist won't load if autoplay is off by @Relwi in #6588
- fix: click on video playlist won't load if autoplay is off on background mode by @Relwi in #6589
- fix: crash in add to playlist dialog upon api error by @Bnyro in #6663
- fix: crash viewing live video in playlist by @Bnyro in #6689
- fix: crash when adding/removing channel to group by @Bnyro in #6529
- fix: crash when importing private videos in watch history by @Bnyro in #6571
- fix: display comments count (again) by @Bnyro in #6501
- fix: don't allow empty input in EditNumberPreference by @Bnyro in #6669
- fix: double click gesture inaccurate in landscape player by @Bnyro in #6480
- fix: hide download buttons when current video is live by @Bnyro in #6694
- fix: hide go to video action when in no internet mode by @Bnyro in #6611
- fix: import and export of FreeTube newline format by @Bnyro in #6674
- fix: import of new FreeTube playlist format by @Bnyro in #6639
- fix: incorrect FreeTube playlist export by @Bnyro in #6664
- fix: live videos shown as uploaded in 1970 in watch history by @Bnyro in #6695
- fix: missing separator in video info text by @Bnyro in #6621
- fix: missing top bar padding in portrait for downloaded video playback by @Bnyro in #6534
- fix: no chapters button shown if video highlight is the only chapter by @Bnyro in #6530
- fix: no horizontal padding in fullscreen player by @Bnyro in #6572
- fix: pip controls don't work if auto-PiP is disabled by @Bnyro in #6542
- fix: pip-to-audio action does not close pip window by @janisslsm in #6476
- fix: queue refill jobs don't finish when video session ended by @Bnyro in #6533
- fix: scroll position not remembered when closing comments sheet by @Bnyro in #6687
- fix: shuffle button crash when playlist is empty by @Relwi in #6561
- fix: uncaught local streams extractor exceptions by @Bnyro in #6532
- fix: unexpected behavior in offline audio player fragment by @Bnyro in #6645
- fix: video fails to play when shared to app with zero navbar tabs by @Bnyro in #6573
- fix: work around that some livestreams are not declared as such by NPE by @Bnyro in #6711
- fix: wrong chapter name shown if following video has only SB highlight by @Bnyro in #6531
Refactor
- refactor: also respect codec preference in audio mode by @Bnyro in #6579
- refactor: cleanup DashHelper.kt by @Bnyro in #6489
- refactor: click on video playlist won't load if autoplay is off by @Relwi in #6593
- refactor: error handling for stream extractor responses by @Bnyro in #6541
- refactor: improve performance when starting background shuffle mode by @Bnyro in #6627
- refactor: simplify swipe/drag listeners for recycler views by @Bnyro in #6672
- refactor: unify views string formatting logic to avoid bugs by @Bnyro in #6609
Chore
- chore: cleanup and update dependencies by @Bnyro in #6576
- chore: correct typos detected by typos-cli by @Bnyro in #6602
- chore: fix failing download for NewPipe Extractor dependency by @Bnyro in #6471
- chore: fix missing string resource by @Bnyro in #6671
- chore: fix unescaped escape sequence in username_email string by @Bnyro in #6472
New Contributors
Full Changelog: v0.25.2...v0.26.0
0.25.2
New features
- feat: download support for local streams extractor by @Bnyro in #6416
- feat: support download of private playlists via external downloader by @Bnyro in #6414
Bug fixes
- fix: related streams published 54 years ago with local extractor by @Bnyro in #6415
- fix: retain exoplayer on orientation change by @Pittvandewitt in #6428
- fix: videos in watch history uploaded in 1970 by @Bnyro in #6439
- fix: duplicated slash in custom instance's share url by @Bnyro in #6438
- fix: issues with channel name caused by textIsSelectable by @Bnyro in #6449
- fix: laggy behavior when using back gesture to minimize player by @Bnyro in #6448
Full Changelog: v0.25.1...v0.25.2
0.25.1
Most importantly, this release contains a workaround for the recent AntiBot protection changes by YouTube.
FAQ about the current situation
- Help! I can't play videos? If you rely on public Piped instances, go to
Settings
->Instance
and enableDisable Piped proxy
as well asLocal streams extraction
. Disclaimer: The bot-blocked API call will now be done directly from your IP address, which is obviously less privacy-friendly. Using a VPN is recommended, but might not always work since YouTube blocks IPs of VPN providers as well. - Help! I can't add videos to a playlist? If you're using the app with a Piped account, it's sometimes not possible to add videos to a playlist due to Piped. If you don't use a Piped account, playlists should work as expected after this release.
- If you're self-hosting a private Piped instance, everything is most likely still working normally anyways.
- Why did it take two weeks to publish a fix? Because open source developers also have a private life and do all that work in their free time without any monetary compensation.
- If you consider this project useful, please consider making a small donation to show your appreciation via https://liberapay.com/Bnyro or https://github.com/sponsors/Bnyro. Thank you!
- Can we expect more such breaking changes in the future? Only YouTube knows.
New features
- feat: local streams extraction by @Bnyro in #6381
- feat: quick share action to add video to playlist by @Bnyro in #6219
- feat: share dialog redesign (including copy link feature) by @Bnyro in #6236
- feat: show total playlist duration by @Bnyro in #6240
- feat: button to screenshot/capture current frame by @Bnyro in #6304
- feat: improve about activity and device info dialog by @Bnyro in #6269
- feat: button to play recent videos from a channel by @Bnyro in #6218
- feat: button to swap sponsorblock segment start and end time by @Bnyro in #6237
- feat: make video, playlist, channel title/description selectable by @Bnyro in #6272
- feat: support for directly playing urls inserted in search bar by @Bnyro in #6300
- feat: use watch position as timestamp when sharing by @Bnyro in #6382
- feat: watch history pagination by @Bnyro in #6339
- feat: added sorting method in downloads by @amandeepsinghjamwal in #6194
- feat: allow timestamp inputs in dearrow submit dialog by @Bnyro in #6238
Bug fixes
- fix: bugs in time parsing logic causing false (milli) second count by @Bnyro in #6239
- fix: crash when search view destroyed before suggestions fetched by @Bnyro in #6335
- fix: download fails due to filename length by @Bnyro in #6337
- fix: improve exoplayer scoping by @Pittvandewitt in #6307
- fix: same videos in channel fragment repeating 3/4 times by @Bnyro in #6273
- fix: scroll state of trends not preserved by @Bnyro in #6271
- fix: visibility of UI elements in Downloads by @nik-conder in #6314
- fix: welcome activity text in light mode by @Bnyro in #6268
Refactor
- refactor: Simplify serializable extensions by @Isira-Seneviratne in #6343
- refactor: add donation button to action menu by @Bnyro in #6386
- refactor: improve bookmarks performance and reliability by @Bnyro in #6385
- refactor: reduce amount of api calls for adding video to playlist by @Bnyro in #6384
- refactor: simplify ProxyHelper.kt by @Bnyro in #6383
Chore
- chore: optimize imports by @Bnyro in #6274
- chore: remove no longer needed safe dot calls by @Bnyro in #6220
- chore: shorten Picture in Picture string in player menu by @Bnyro in #6301
New Contributors
- @amandeepsinghjamwal made their first contribution in #6194
Full Changelog: v0.24.0...v0.25.1
0.25.0
Most importantly, this release contains a workaround for the recent AntiBot protection changes by YouTube.
FAQ about the current situation
- Help! I can't play videos? If you rely on public Piped instances, go to
Settings
->Instance
and enableDisable Piped proxy
as well asLocal streams extraction
. Disclaimer: The bot-blocked API call will now be done directly from your IP address, which is obviously less privacy-friendly. Using a VPN is recommended, but might not always work since YouTube blocks IPs of VPN providers as well. - Help! I can't add videos to a playlist? If you're using the app with a Piped account, it's sometimes not possible to add videos to a playlist due to Piped. If you don't use a Piped account, playlists should work as expected after this release.
- If you're self-hosting a private Piped instance, everything is most likely still working normally anyways.
- Why did it take two weeks to publish a fix? Because open source developers also have a private life and do all that work in their free time without any monetary compensation.
- If you consider this project useful, please consider making a small donation to show your appreciation via https://liberapay.com/Bnyro or https://github.com/sponsors/Bnyro. Thank you!
- Can we expect more such breaking changes in the future? Only YouTube knows.
New features
- feat: local streams extraction by @Bnyro in #6381
- feat: quick share action to add video to playlist by @Bnyro in #6219
- feat: share dialog redesign (including copy link feature) by @Bnyro in #6236
- feat: show total playlist duration by @Bnyro in #6240
- feat: button to screenshot/capture current frame by @Bnyro in #6304
- feat: improve about activity and device info dialog by @Bnyro in #6269
- feat: button to play recent videos from a channel by @Bnyro in #6218
- feat: button to swap sponsorblock segment start and end time by @Bnyro in #6237
- feat: make video, playlist, channel title/description selectable by @Bnyro in #6272
- feat: support for directly playing urls inserted in search bar by @Bnyro in #6300
- feat: use watch position as timestamp when sharing by @Bnyro in #6382
- feat: watch history pagination by @Bnyro in #6339
- feat: added sorting method in downloads by @amandeepsinghjamwal in #6194
- feat: allow timestamp inputs in dearrow submit dialog by @Bnyro in #6238
Bug fixes
- fix: bugs in time parsing logic causing false (milli) second count by @Bnyro in #6239
- fix: crash when search view destroyed before suggestions fetched by @Bnyro in #6335
- fix: download fails due to filename length by @Bnyro in #6337
- fix: improve exoplayer scoping by @Pittvandewitt in #6307
- fix: same videos in channel fragment repeating 3/4 times by @Bnyro in #6273
- fix: scroll state of trends not preserved by @Bnyro in #6271
- fix: visibility of UI elements in Downloads by @nik-conder in #6314
- fix: welcome activity text in light mode by @Bnyro in #6268
Refactor
- refactor: Simplify serializable extensions by @Isira-Seneviratne in #6343
- refactor: add donation button to action menu by @Bnyro in #6386
- refactor: improve bookmarks performance and reliability by @Bnyro in #6385
- refactor: reduce amount of api calls for adding video to playlist by @Bnyro in #6384
- refactor: simplify ProxyHelper.kt by @Bnyro in #6383
Chore
- chore: optimize imports by @Bnyro in #6274
- chore: remove no longer needed safe dot calls by @Bnyro in #6220
- chore: shorten Picture in Picture string in player menu by @Bnyro in #6301
New Contributors
- @amandeepsinghjamwal made their first contribution in #6194
Full Changelog: v0.24.0...v0.25.0
0.24.0
New Features
- feat: changed chips in channels to swipable tabs by @amandeepsinghjamwal in #6026
- feat: download popup that can be displayed over other apps by @Bnyro in #6034
- feat: support for external download apps by @Bnyro in #6084
- feat: remember selected channel group across app restarts by @Bnyro in #6132
- feat: support for duration inputs in submit segment dialog by @Bnyro in #6172
UI/UX improvements
- style: make audio player align with status bar color by @Bnyro in #6170
- style: minor channel page header redesign by @Bnyro in #6123
Bug Fixes
- fix: button to play previous video doesnt work when repeat enabled by @Bnyro in #6035
- fix: can't add channel to group if more than ~10 groups by @Bnyro in #6175
- fix: chapters dont work in audio mode by @Bnyro in #6055
- fix: Clear notification when app is killed from recent tasks. by @nur-shuvo in #6063
- fix: crash when destroying activity after media session by @Bnyro in #6190
- fix: crash when different threads access playing queue by @Bnyro in #6083
- fix: crash when entering audio mode via pip by @Bnyro in #6171
- fix: crash when playing video without upload date by @Bnyro in #6168
- fix: crash when refreshing channel page by @Bnyro in #6120
- fix: default value in behavior when minimized preference by @Bnyro in #6118
- fix: dismiss fullscreen dialog when activity gets destroyed by @Bnyro in #6212
- fix: download activity not dismissed when dialog closed by @Bnyro in #6054
- fix: explicitely set status bar color after app start by @Bnyro in #6080
- fix: hide add to group button when not subscribed by @Bnyro in #6166
- fix: input method for submitting sponsorblock segments by @Bnyro in #6215
- fix: misalignment of channel fragment header by @Bnyro in #6135
- fix: navigation bar color when pure theme disabled by @Bnyro in #6029
- fix: navigation bar missing nav items after closing player by @Bnyro in #6122
- fix: notification bell shown even though notifications disabled by @Bnyro in #6133
- fix: remembered channel group resets when switching fragment by @Bnyro in #6167
- fix: repeat current doesn't work if autoplay disabled by @Bnyro in #6032
- fix: respect sort order when playing private playlist by @Bnyro in #6199
- fix: search results scroll state not preserved when rotating by @Bnyro in #6033
- fix(SubscriptionsFragment): use null safe call by @FineFindus in #6142
- fix: use correct fragment manager for result callbacks by @Bnyro in #6067
- fix: use string ressource for channel video tab by @FineFindus in #6065
- fix: video codec preference doesn't work when HLS enabled by @Bnyro in #6200
Code refactor
- refactor: improve the structure of PreferenceKeys.kt by @Bnyro in #6131
- refactor: Use parcelable extensions with channel tabs by @Isira-Seneviratne in #6138
Chore
- chore: dont share with time code by default by @Bnyro in #6036
- ci: drop ktlint by @Bnyro in #6136
- ci: fix builds by @Bnyro in #6176
New Contributors
- @nur-shuvo made their first contribution in #6063
Full Changelog: v0.23.2...v0.24.0
0.23.2
Bug fixes
- fix: comments reloading on sheet reopen and scroll position not restored by @Bnyro in #5962
- fix: status bar doesn't follow app theme by @Bnyro in #5978
- fix: dearrow for playing video and watch history by @Bnyro in #5983
- fix: crash when trying to dearrow feed items by @Bnyro in #5989
- fix: auto fullscreen causes player layout issues by @Bnyro in #5992
- fix: crash when ending player service / fragment by @Bnyro in #5998
- fix: enter PiP mode when clicking link in description by @Bnyro in #5999
- fix: navigation bar missing when closing player in fullscreen by @Bnyro in #6000
- fix: welcome activity does not permit auto rotation by @Bnyro in #5974
- fix: http logging in debug builds not working due to cronet by @Bnyro in #5979
- fix: don't crash app when cronet thread fails by @Bnyro in #5981
- fix: only catch exceptions on okhttp dispatcher threads by @Bnyro in #5982
New features
- feat: implement collapsable toolbar in welcome activity by @Bnyro in #5973
- feat: add pagination to dearrow in feed by @Bnyro in #5984
Code changes
Full Changelog: v0.23.0...v0.23.2
0.23.1
Bug fixes
- fix: comments reloading on sheet reopen and scroll position not restored by @Bnyro in #5962
- fix: status bar doesn't follow app theme by @Bnyro in #5978
- fix: dearrow for playing video and watch history by @Bnyro in #5983
- fix: crash when trying to dearrow feed items by @Bnyro in #5989
- fix: auto fullscreen causes player layout issues by @Bnyro in #5992
- fix: crash when ending player service / fragment by @Bnyro in #5998
- fix: enter PiP mode when clicking link in description by @Bnyro in #5999
- fix: navigation bar missing when closing player in fullscreen by @Bnyro in #6000
- fix: welcome activity does not permit auto rotation by @Bnyro in #5974
- fix: http logging in debug builds not working due to cronet by @Bnyro in #5979
- fix: don't crash app when cronet thread fails by @Bnyro in #5981
- fix: only catch exceptions on okhttp dispatcher threads by @Bnyro in #5982
New features
- feat: implement collapsable toolbar in welcome activity by @Bnyro in #5973
- feat: add pagination to dearrow in feed by @Bnyro in #5984
Code changes
Full Changelog: v0.23.0...v0.23.1
0.23.0
New features
- feat: support for contributing to DeArrow by @Bnyro in #5889
- feat: support for importing temporary playlists from YouTube by @Bnyro in #5870
- feat: chapters support for downloaded videos by @Bnyro in #5871
- feat: now playing notification for downloaded videos by @Bnyro in #5924
- feat: pip controls for offline player by @Bnyro in #5923
- feat: preference to force maximum audio quality by @Bnyro in #5934
- feat: respect swipe controls option in audio mode by @Bnyro in #5850
- feat: automatically scroll to current chapter by @Bnyro in #5933
Bug fixes
- fix: activity is sometimes unnecessarily restarted by @Bnyro in #5949
- fix: change DeArrow title submission default by @ajayyy in #5909
- fix: crash in DownloadService if trying to read dead download item by @Bnyro in #5903
- fix: crash when importing subscriptions list with invalid avatars by @bodaciousbiscuits in #5931
- fix: default quality setting should respect video aspect ratio by @manish99verma in #5797
- fix: don't show autoplay countdown controls in PiP mode by @Bnyro in #5905
- fix: DownloadPlaylistDialog overflowing on small devices by @Bnyro in #5891
- fix: missing horizontal player spacing with display cutout by @Bnyro in #5948
- fix: missing spacing in comment info row by @Bnyro in #5927
- fix: options menu background color in pure black theme by @Bnyro in #5887
- fix: remove setUsePlatformDiagnostics being called twice by @FireMasterK in #5937
- fix: remove unnecessary margin at search results recycler view by @Bnyro in #5853
- fix: Respect USE_HLS_OVER_DASH preference when playing in audio mode by @0x24D in #5862
- fix: scroll state not preserved after rotation change at some places by @Bnyro in #5950
- fix: submit segment dialog closes when there are no segments yet by @Bnyro in #5902
- fix: thumbnail time defaults in contribute to DeArrow dialog by @Bnyro in #5907
- fix: video links dont open on android 10 and below by @Bnyro in #5951
- fix: wrong navigation bar color by @Bnyro in #5952
- fix: cronet not being used because of httpClient by @FireMasterK in #5936
- fix: properly apply pure black/white themes to navigation bar by @Bnyro in #5881
Refactor
- refactor: combine submitting and voting SponsorBlock segments into one dialog by @Bnyro in #5888
- refactor: enable http logging in debug builds by @Bnyro in #5849
- refactor: simplify notification/player actions logic by @Bnyro in #5925
Chore
- chore: fix typo by @FineFindus in #5834
- chore: enable hls for streaming by default by @Bnyro in #5953
- chore: remove example unit/instrumentation tests by @cortinico in #5860
- chore: Update Screenshots and Added Screenshot.md by @ARBoyGo in #5910
New Contributors
- @cortinico made their first contribution in #5860
- @ajayyy made their first contribution in #5909
- @bodaciousbiscuits made their first contribution in #5931
Full Changelog: v0.22.2...v0.23.0
0.22.2
What's Changed
- fix: unable to view subscribed channels by @Bnyro in #5823
- fix: channel groups duplicated after updating name by @Bnyro in #5825
- fix: autofullscreen stops working after orientation change by @Bnyro in #5827
- fix: various comment/replies related issues by @Bnyro in #5830
- feat: improve video end screen by @FineFindus in #5817
- feat: show confirm modal before deleting channel group by @Bnyro in #5826
- feat: dismiss keyboard at back press on search page by @Bnyro in #5828
- chore: use hls if piped proxy disabled, remove piped proxy fallback option by @Bnyro in #5829
Full Changelog: v0.22.1...v0.22.2
0.22.1
Bug fixes
- fix: back gesture doesn't work on some devices by @Bnyro in #5777
- fix: autoplay stops after turning screen off by @Bnyro in #5776
- fix: auto rotation stops working after having entered the fullscreen player by @Bnyro in #5771
- fix: comment expands when tapping in timestamp by @Bnyro in #5773
- fix: crashes during pagination on server side cancelled requests by @Bnyro in #5781
- fix: hide thumbnail space, buttons and filters when playlist empty by @nik-conder in #5759
- fix: icon color of toggle comments button by @Bnyro in #5761
- fix: importing backup doesn't immediately cancel/update notification worker by @Bnyro in #5782
- fix: respect feed filter on home tab by @Bnyro in #5772
- fix: search is showing inappropriate results by @Isira-Seneviratne in #5779
Full Changelog: v0.22.0...v0.22.1