-
Notifications
You must be signed in to change notification settings - Fork 381
Build system improvements #2645
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
Build system improvements #2645
Conversation
|
Please don't mind unexpected changes to |
|
Nice! This looks good so far. Note I usually run |
I usually run Following is the output of I have reviewed breaking changes on the packages that would get a major or a minor bump, here's a quick summary:
About the discontinued package: |
|
Here's the final chart for all changed constraints: The actual packages that got upgraded were mentioned in my previous comment. |
|
Thanks, I did not know about |
287a1a1 to
140f725
Compare
|
I'm afraid that I will be going to a hackathon the following week so this PR will unfortunately have to wait a bit. TODO for me (@deminearchiver) when I come back:
|
97e80a0 to
868e2ef
Compare
- Bumped Dart SDK to 3.10.1 - Bumped Flutter SDK to 3.38.0 - Bumped NDK to 28.2.13676358 - Bumped com.android.application to 8.11.1 - Bumped org.jetbrains.kotlin.android to 2.2.20 - Bumped Java to 17 - Changed formatting in Gradle configuration files to align with a fresh Flutter project's
…ined flutter_markdown_plus package.
Renamed the flavor dimension to align with Flutter's recommendations. Changed keystore properties to casts, and allowed the store file to be nullable. Introduced handling of an absent key.properties file during release builds.
The following case is now properly being handled: ``` Execution failed for task ':app:packageRelease'. > A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable > SigningConfig "release" is missing required property "storeFile". ```
838d023 to
73ee705
Compare
|
@ImranR98 I think I'm done here. Could you please review this PR to make sure everything is alright? I'm not in a hurry, take your time. I added a workaround to only show the signing warning when building for release. It works, but I'm not sure about how reliable it is. I think it'll satisfy this use case though. |
|
I have verified that the latest dependency upgrade doesn't affect any app behaviors. Outdated versions of certain packages were constrained like that because Obtainium was using the @ImranR98 I know you might be busy currently, but just reminding you to take a look at this whenever you can. |
|
Thanks, yes busier than usual lately. Will get around to this and other PRs by next weekend. |
|
Thanks @deminearchiver, merged. |
|
Fyi I did have to make one change: https://github.com/ImranR98/Obtainium/pull/2718/files I use GitHub actions to create unsigned release builds, then sign them manually offline later -- that means I can use GH for a more reproducible/stable build environment without giving them my signing key. Didn't occur to me when looking at the PR earlier. |
This is a draft pull request, I'll mark it as open as soon as it can be considered ready.
Suggestions and comments are always welcome, though!
This pull request will be the first in a hopefully large set of pull request focusing on improving certain aspects of Obtainium's functionality and development.
For example, I am not ready to contribute to Obtainium if it is not using at least the latest stable Flutter version, as it makes development uncomfortable for me by making me have to install another Flutter version. I think other developers looking to contribute to this project are going to support the initiative of making the developer experience a little bit better.
The main goal of this pull request is to improve the developer experience for contributing to Obtainium without introducing code style and linting changes. I will try to limit the changes to configuration files only. I will not be modifying anything Docker or Bash related.
Changes planned in this pull request:
Migrate to Flutter 3.38:
>=3.38.017com.android.applicationplugin version to8.11.1org.jetbrains.kotlin.androidplugin version to2.2.20ndkVersionto28.2.136763588.14Migrate to Dart 3.10:
^3.10.1Upgrade
background_fetchto1.5.0:background_fetchversion constraint to^1.5.0android/build.gradle.ktsImprove Android build system configuration
keystore.propertiesfile optional for release builds - show a warning during build and use thedebugsigning configMigrate from discontinued
flutter_markdowntoflutter_markdown_plus