Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Most major packages, including all androidx packages are now being upgraded to minSdk 23. This means we also need to upgrade now otherwise we will be stuck unable to continue upgrading at all. Additionally, there really isnt a need to keep supporting API 21 and API 22 (Both are only Android 5).
I understand there is hesitation, this is not immediately urgent anyway, but I am just putting out there. For the ease of confirming that is actually necessary, I have attached references here for releases and other things about the change. So far only
workhas a stable release with the change, however others will follow soon. This is also not an exhaustive list.References:
I have also only bumped the minSdk and set
useLegacyPackaginghere, and not removed any backwards compatible code for pre 23, that is because it will be done in a follow-up after this is determined whether we will do it and that doesn't any issues.useLegacyPackagingwas set because starting when targeting minSdk 23, it doesn't compress things by default causing the total base APK size to nearly double. The change was to improve app loading speed because when an app is loaded, it decompresses, but the trade was larger app size in return for faster start time. To maintain the same behavior I set that here. If we ever decide we want to utilize the new behavior we can remove it.In my personal opinion (perhaps a bit less popular of an opinion), CloudStream3 should follow to use the same minSdk as androidx, if another package doesn't support it, we just don't upgrade unless we absolutely have to then we can figure out an alternative, but androidx packages (in particular media3 comes to mind which has already bumped to minSdk 23) often have very good bug fixes and are also needed for future targetSdk, which we can't just simply never bump.
I'm mostly creating this just to document a lot of this, its still up to whether or not this is merged and we go that route. But it has been asked in the past for a very good reason to bump minSdk and I believe being required to for core dependent packages is a fairly good reason to do so, which is why I am creating with documentation and references, etc...