Skip to content

Commit 95a0e0c

Browse files
authored
Merge pull request #12435 from TeamNewPipe/release-0.28.0
2 parents 81b4e3f + 4d97a76 commit 95a0e0c

File tree

286 files changed

+4980
-1372
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

286 files changed

+4980
-1372
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ jobs:
111111
path: app/build/reports/androidTests/connected/**
112112

113113
sonar:
114+
if: ${{ false }} # the key has expired and needs to be regenerated by the sonar admins
114115
runs-on: ubuntu-latest
115116

116117
permissions:

.github/workflows/image-minimizer.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ module.exports = async ({github, context}) => {
3333

3434
// Regex for finding images (simple variant) ![ALT_TEXT](https://*.githubusercontent.com/<number>/<variousHexStringsAnd->.<fileExtension>)
3535
const REGEX_USER_CONTENT_IMAGE_LOOKUP = /\!\[([^\]]*)\]\((https:\/\/[-a-z0-9]+\.githubusercontent\.com\/\d+\/[-0-9a-f]{32,512}\.(jpg|gif|png))\)/gm;
36-
const REGEX_ASSETS_IMAGE_LOCKUP = /\!\[([^\]]*)\]\((https:\/\/github\.com\/[-\w\d]+\/[-\w\d]+\/assets\/\d+\/[\-0-9a-f]{32,512})\)/gm;
36+
const REGEX_ASSETS_IMAGE_LOOKUP = /\!\[([^\]]*)\]\((https:\/\/github\.com\/(?:user-attachments\/assets|[-\w\d]+\/[-\w\d]+\/assets\/\d+)\/[\-0-9a-f]{32,512})\)/gm;
3737

3838
// Check if we found something
3939
let foundSimpleImages = REGEX_USER_CONTENT_IMAGE_LOOKUP.test(initialBody)
40-
|| REGEX_ASSETS_IMAGE_LOCKUP.test(initialBody);
40+
|| REGEX_ASSETS_IMAGE_LOOKUP.test(initialBody);
4141
if (!foundSimpleImages) {
4242
console.log('Found no simple images to process');
4343
return;
@@ -52,7 +52,7 @@ module.exports = async ({github, context}) => {
5252

5353
// Try to find and replace the images with minimized ones
5454
let newBody = await replaceAsync(initialBody, REGEX_USER_CONTENT_IMAGE_LOOKUP, minimizeAsync);
55-
newBody = await replaceAsync(newBody, REGEX_ASSETS_IMAGE_LOCKUP, minimizeAsync);
55+
newBody = await replaceAsync(newBody, REGEX_ASSETS_IMAGE_LOOKUP, minimizeAsync);
5656

5757
if (!wasMatchModified) {
5858
console.log('Nothing was modified. Skipping update');

README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,26 @@
1-
<h3 align="center">We are planning to <i>rewrite</i> large chunks of the codebase, to bring about <a href="https://github.com/TeamNewPipe/NewPipe/discussions/10118">a new, modern and stable NewPipe</a>!</h3>
2-
<h4 align="center">Please do <b>not</b> open pull requests for <i>new features</i> now, only bugfix PRs will be accepted.</h4>
1+
<h3 align="center">We are <i>rewriting</i> large chunks of the codebase, to bring about <a href="https://newpipe.net/blog/pinned/announcement/newpipe-0.27.6-rewrite-team-states/#the-refactor">a modern and stable NewPipe</a>! You can download nightly builds <a href="https://github.com/TeamNewPipe/NewPipe-refactor-nightly/releases">here</a>.</h3>
2+
<h4 align="center">Please work on the <code>refactor</code> branch if you want to contribute <i>new features</i>. The current codebase is in maintenance mode and will only receive <i>bugfixes</i>.</h4>
33

44
<p align="center"><a href="https://newpipe.net"><img src="assets/new_pipe_icon_5.png" width="150"></a></p>
55
<h2 align="center"><b>NewPipe</b></h2>
66
<h4 align="center">A libre lightweight streaming front-end for Android.</h4>
77

8-
<p align="center"><a href="https://f-droid.org/packages/org.schabi.newpipe/"><img src="https://fdroid.gitlab.io/artwork/badge/get-it-on-en.svg" alt="Get it on F-Droid" height=80/></a></p>
8+
<p align="center"><a href="https://f-droid.org/packages/org.schabi.newpipe/"><img src="https://fdroid.gitlab.io/artwork/badge/get-it-on-en.svg" alt="Get it on F-Droid" width=206/></a></p>
99

1010
<p align="center">
11-
<a href="https://github.com/TeamNewPipe/NewPipe/releases" alt="GitHub release"><img src="https://img.shields.io/github/release/TeamNewPipe/NewPipe.svg" ></a>
11+
<a href="https://github.com/TeamNewPipe/NewPipe/releases" alt="GitHub NewPipe releases"><img src="https://img.shields.io/github/release/TeamNewPipe/NewPipe.svg" ></a>
12+
<a href="https://github.com/TeamNewPipe/NewPipe-nightly/releases" alt="GitHub NewPipe nightly releases"><img src="https://img.shields.io/github/release/TeamNewPipe/NewPipe-nightly.svg?labelColor=purple&label=dev%20nightly"></a>
13+
<a href="https://github.com/TeamNewPipe/NewPipe-refactor-nightly/releases" alt="GitHub NewPipe refactor nightly releases"><img src="https://img.shields.io/github/release/TeamNewPipe/NewPipe-refactor-nightly.svg?labelColor=purple&label=refactor%20nightly"></a>
1214
<a href="https://www.gnu.org/licenses/gpl-3.0" alt="License: GPLv3"><img src="https://img.shields.io/badge/License-GPL%20v3-blue.svg"></a>
13-
<a href="https://github.com/TeamNewPipe/NewPipe/actions" alt="Build Status"><img src="https://github.com/TeamNewPipe/NewPipe/workflows/CI/badge.svg?branch=dev&event=push"></a>
15+
<a href="https://github.com/TeamNewPipe/NewPipe/actions" alt="Build Status"><img src="https://github.com/TeamNewPipe/NewPipe/actions/workflows/ci.yml/badge.svg?branch=dev&event=push"></a>
1416
<a href="https://hosted.weblate.org/engage/newpipe/" alt="Translation Status"><img src="https://hosted.weblate.org/widgets/newpipe/-/svg-badge.svg"></a>
17+
</p>
18+
19+
<p align="center">
1520
<a href="https://web.libera.chat/#newpipe" alt="IRC channel: #newpipe"><img src="https://img.shields.io/badge/IRC%20chat-%23newpipe-brightgreen.svg"></a>
1621
<a href="https://matrix.to/#/#newpipe:matrix.newpipe-ev.de" alt="Matrix channel: #newpipe"><img src="https://img.shields.io/badge/Matrix%20chat-%23newpipe-blue"></a>
1722
</p>
23+
1824
<hr>
1925
<p align="center"><a href="#screenshots">Screenshots</a> &bull; <a href="#supported-services">Supported Services</a> &bull; <a href="#description">Description</a> &bull; <a href="#features">Features</a> &bull; <a href="#installation-and-updates">Installation and updates</a> &bull; <a href="#contribution">Contribution</a> &bull; <a href="#donate">Donate</a> &bull; <a href="#license">License</a></p>
2026
<p align="center"><a href="https://newpipe.net">Website</a> &bull; <a href="https://newpipe.net/blog/">Blog</a> &bull; <a href="https://newpipe.net/FAQ/">FAQ</a> &bull; <a href="https://newpipe.net/press/">Press</a></p>

app/build.gradle

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ android {
2323
if (System.properties.containsKey('versionCodeOverride')) {
2424
versionCode System.getProperty('versionCodeOverride') as Integer
2525
} else {
26-
versionCode 1004
26+
versionCode 1005
2727
}
28-
versionName "0.27.7"
28+
versionName "0.28.0"
2929
if (System.properties.containsKey('versionNameSuffix')) {
3030
versionNameSuffix System.getProperty('versionNameSuffix')
3131
}
@@ -97,6 +97,10 @@ android {
9797
androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
9898
}
9999

100+
androidResources {
101+
generateLocaleConfig = true
102+
}
103+
100104
buildFeatures {
101105
viewBinding true
102106
buildConfig true
@@ -205,10 +209,12 @@ dependencies {
205209
// Or you can use a commit you pushed to GitHub by just replacing TeamNewPipe with your GitHub
206210
// name and the commit hash with the commit hash of the (pushed) commit you want to test
207211
// This works thanks to JitPack: https://jitpack.io/
208-
implementation 'com.github.TeamNewPipe:nanojson:1d9e1aea9049fc9f85e68b43ba39fe7be1c1f751'
212+
implementation 'com.github.TeamNewPipe:nanojson:e9d656ddb49a412a5a0a5d5ef20ca7ef09549996'
209213
// WORKAROUND: if you get errors with the NewPipeExtractor dependency, replace `v0.24.3` with
210-
// the corresponding commit hash, since JitPack is sometimes buggy
211-
implementation 'com.github.TeamNewPipe.NewPipeExtractor:NewPipeExtractor:v0.24.6'
214+
// the corresponding commit hash, since JitPack sometimes deletes artifacts.
215+
// If there’s already a git hash, just add more of it to the end (or remove a letter)
216+
// to cause jitpack to regenerate the artifact.
217+
implementation 'com.github.TeamNewPipe:NewPipeExtractor:v0.24.8'
212218
implementation 'com.github.TeamNewPipe:NoNonsense-FilePicker:5.0.0'
213219

214220
/** Checkstyle **/
@@ -219,7 +225,7 @@ dependencies {
219225
implementation "org.jetbrains.kotlin:kotlin-stdlib:${kotlin_version}"
220226

221227
/** AndroidX **/
222-
implementation 'androidx.appcompat:appcompat:1.6.1'
228+
implementation 'androidx.appcompat:appcompat:1.7.1'
223229
implementation 'androidx.cardview:cardview:1.0.0'
224230
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
225231
implementation 'androidx.core:core-ktx:1.12.0'

app/src/main/AndroidManifest.xml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,25 @@
5757
</intent-filter>
5858
</receiver>
5959

60+
<service
61+
android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
62+
android:enabled="false"
63+
android:exported="false">
64+
<meta-data
65+
android:name="autoStoreLocales"
66+
android:value="true" />
67+
</service>
68+
6069
<service
6170
android:name=".player.PlayerService"
6271
android:exported="true"
6372
android:foregroundServiceType="mediaPlayback">
6473
<intent-filter>
6574
<action android:name="android.intent.action.MEDIA_BUTTON" />
6675
</intent-filter>
76+
<intent-filter>
77+
<action android:name="android.media.browse.MediaBrowserService"/>
78+
</intent-filter>
6779
</service>
6880

6981
<activity
@@ -424,5 +436,10 @@
424436
<meta-data
425437
android:name="com.samsung.android.multidisplay.keep_process_alive"
426438
android:value="true" />
439+
<!-- Android Auto -->
440+
<meta-data android:name="com.google.android.gms.car.application"
441+
android:resource="@xml/automotive_app_desc" />
442+
<meta-data android:name="com.google.android.gms.car.notification.SmallIcon"
443+
android:resource="@mipmap/ic_launcher" />
427444
</application>
428445
</manifest>

app/src/main/java/org/schabi/newpipe/App.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ public void onCreate() {
102102
NewPipe.init(getDownloader(),
103103
Localization.getPreferredLocalization(this),
104104
Localization.getPreferredContentCountry(this));
105-
Localization.initPrettyTime(Localization.resolvePrettyTime(getApplicationContext()));
105+
Localization.initPrettyTime(Localization.resolvePrettyTime());
106106

107107
BridgeStateSaverInitializer.init(this);
108108
StateSaver.init(this);

app/src/main/java/org/schabi/newpipe/DownloaderImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
public final class DownloaderImpl extends Downloader {
3131
public static final String USER_AGENT =
32-
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0";
32+
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0";
3333
public static final String YOUTUBE_RESTRICTED_MODE_COOKIE_KEY =
3434
"youtube_restricted_mode_key";
3535
public static final String YOUTUBE_RESTRICTED_MODE_COOKIE = "PREF=f2=8000000";

0 commit comments

Comments
 (0)