Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.20.7 blog post #211

Merged
merged 9 commits into from
Dec 25, 2020
60 changes: 60 additions & 0 deletions _posts/2020-12-24-newpipe-0.20.7.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
layout: post
title: "NewPipe 0.20.7 released: YouTube Mix support, bug fixes and many improvements"
short: "NewPipe 0.20.7 released"
date: 2020-12-24 19:00:00
categories: [pinned, release]
author: Poolitzer, Opusforlife
image: newpipe
excerpt_separator: <!-- more -->
---

Merry Christmas, if you celebrate that, and almost Happy New Year, if you use a calendar at least close to the Gregorian one. We want to present you a little gift as a good way to start 2021 AD/CE (or the year 12021 in the [Human Era](https://en.wikipedia.org/wiki/Holocene_calendar), according to Kurzgesagt): The next release of NewPipe. It comes with a lot of improvements, fixes, and even a big new feature. So let us dive into this release post!

<!-- more -->

## New in this version
YouTube Mixes are a thing now, and they are dropping in hot (and with a lot of bass). Opening a mix in previous versions resulted in just the first video of the mix playing, nothing else. Now you see the full playlist and even a nice radio icon as an indicator. Enjoy listening to never-ending playlists and thank [@XiangRongLin](https://github.com/XiangRongLin) for this feature, as well as [@Stypox](https://github.com/Stypox) for reviewing it thoroughly.

This release includes support for another feature from YouTube: video metadata. The little boxes that appear sometimes - telling you that a channel belongs to a public broadcaster, or giving you further information regarding specific search queries - appear in NewPipe as well now. If you do not want to see them, head over to <code><nobr><img src="{{ site.baseurl }}/img/icons/baseline-settings-20px.svg" /> Settings</nobr> > <nobr><img src="{{ site.baseurl }}/img/icons/baseline-language-20px.svg" /> Content</nobr> > <nobr>Show meta info</nobr></code> and disable the toggle there. If you enjoy these boxes however, thank [@TobiGr](https://github.com/TobiGr) for baking them into this release.
Poolitzer marked this conversation as resolved.
Show resolved Hide resolved

On a somewhat more personal note, we have a new domain now - [https://newpipe.net](https://newpipe.net). This makes us look more professional (we hope), but also means that the website URLs in the app needed to be updated. This was done by [@TiA4f8R](https://github.com/TiA4f8R).

## Bugs, be gone!
We aim for the best version of NewPipe with every release we do. Because of that, we improve on issues in every update. This time around, we fixed an issue where the app would crash when you tried to delete a video from your playlist while the app was refreshing your subscriptions. This was discovered by [@gasull](https://github.com/gasull), reproduced by [@chilliger](https://github.com/chilliger) and fixed by [@hlloreda](https://github.com/hlloreda). Big thanks to all three of them.

In another attempt to improve the ReCaptcha experience, [@Stypox](https://github.com/Stypox) fixed a situation where only a blank page was shown. They also prevented device information from being leaked inside the user agent used for the ReCaptcha service, and are likely very exhausted with that topic at this point. We thank them massively for taking up this issue time and time again.

Talking about time - when sharing video URLs from services other than YouTube, the app doesn't try to append a timestamp to the URL anymore, which used to make them invalid. In the future, we hope to support the timestamp formats of every platform, but for now, you get non-timestamped URLs that work. This was provided by [@B0pol](https://github.com/B0pol). Thank you!
TobiGr marked this conversation as resolved.
Show resolved Hide resolved

The last big fix is brought to you by [@TobiGr](https://github.com/TobiGr), who got YouTube Music's search to work once again. Search all the music that you want now (with the filters in the 3-dot menu next to the search bar) and enjoy listing to Christmas songs that you cannot get out of your head.
Poolitzer marked this conversation as resolved.
Show resolved Hide resolved

## Nerd talk

There were quite a few very technical changes under the hood in this release. We decided to provide you this nice list with changes not affecting you at all, because we still want to publicly thank their creators:

- The Invidious (an alternative YouTube frontend) URL list in the manifest was updated by [@opusforlife2](https://github.com/opusforlife2)
- Our CI tests were switched from Travis to GitHub by [@FireMasterK](https://github.com/FireMasterK)
- Some internal variables and comments had typos, and [@mhmdanas](https://github.com/mhmdanas) fixed them
- We use `ContextCompat.getDataDir()`, `ServiceCompat.stopForeground()` and `ActivityCompat.recreate()` now, because [@Isira-Seneviratne](https://github.com/Isira-Seneviratne) decided that is good and everyone agreed, and also because older Android versions can now use the existing code without needing special caveats and corner case handling
- [@Isira-Seneviratne](https://github.com/Isira-Seneviratne) changed how the file hash calculation in the Downloads menu is displayed - it does not use ProgressDialog anymore because that is deprecated
- The database export logic got its own class so that we can create unit tests for it, thanks to [@XiangRongLin](https://github.com/XiangRongLin)
- [@Isira-Seneviratne](https://github.com/Isira-Seneviratne) is on fire this release; they also changed Kotlin synthetics to view bindings because of deprecation of the former
- It also works with PeerTube's stream URLs now when they don't have tags, because [@B0pol](https://github.com/B0pol) did some code. Bopol code good. We like Bopol code.
- [@Isira-Seneviratne](https://github.com/Isira-Seneviratne) made one last appearance in this release, because they added Object methods to the extractor.

## Where to get this brand-new version

NewPipe notifies you about new versions. You can download them when you press the notification, which will take you to the [GitHub release page](https://github.com/TeamNewPipe/NewPipe/releases).

If you use the [F-Droid app](https://f-droid.org/), it, too, notifies you about updates for [NewPipe](https://f-droid.org/packages/org.schabi.newpipe/). Please keep in mind that it can take F-Droid a while to update their repository. If you have problems installing you may need to uninstall NewPipe and then install it afresh. (Make sure to backup data by exporting your database from the Content settings menu.)

If you already installed NewPipe from F-Droid's repository, to get this version of NewPipe you can do one of the following:
- Wait for them to update (_there seem to be problems with that lately, so better_)
- Switch to NewPipe's custom repository by following the [directions in the announcement post]({% post_url 2020-05-30-f-droid-repo %})

Note: If you installed NewPipe from GitHub Releases you will not have to uninstall NewPipe to switch to our custom repo. Just let it update your current version.

Now that you've updated, please let us know what your experience of the latest release is, especially bugs in need of fixing. As usual, you can reach out to us via IRC ([#newpipe on freenode](https://webchat.freenode.net/?channels=newpipe)), [open issues on GitHub](TeamNewPipe/NewPipe/issues/new) or, ideally, use our built-in crash reporter to send us machine-readable issue reports. You can even [send in fixes](https://github.com/TeamNewPipe/NewPipe/blob/dev/.github/CONTRIBUTING.md#bug-fixing) yourself.

If you have any other questions feel free to send them in the comments here and someone will reply to you.