CI maintenance because of deprecations on Oct 15 and Nov 30 2024
What
I made small careful commits and tried to explain each in their message. Reviewing this PR commit-by-commit might be the easiest way to understand it.
Why
https://github.blog/changelog/label/actions+deprecation/ is a good resource for staying up-to-date on action deprecations. There are a few that would affect this repo, so I went ahead and updated the build workflow.
-
End of life for Actions Node16
From the 15th of October, we will no longer include Node16 in the Actions runner and customers will no longer be able to use Node16 Actions or operating systems that do not support Node20.
-
Deprecation notice: v3 of the artifact actions
Starting November 30, 2024, GitHub Actions customers will no longer be able to use v3 of actions/upload-artifact or actions/download-artifact. Customers should update workflows to begin using v4 of the artifact actions as soon as possible.
I like this app quite a bit, hopefully this PR is helpful. Thanks for all the work so far.
thanks a lot! That nicely goes hand-in-hand with my current efforts to upgrade Gradle version, Target SDK version, some used libraries etc.
There seems to be some validation issues, sorry about those. I'll try to debug them in a private fork where CI runs wouldn't need maintainer approval.
Are your current efforts available in a branch?
I pushed a few more commits, validation is no longer an issue.
The issue seems to be that the dependencies com.onedrive.sdk:onedrive-sdk-android:1.2.0 and com.microsoft.services.msa:msa-auth:0.8.6 are no longer available as jCenter has gone offline (see the logs snippet in the spoiler below). I took a stab at looking for alternative sources, but couldn't find any. I'm afraid I can't help further with this as I'm completely unfamiliar with gradle.
logs
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
> Could not find com.onedrive.sdk:onedrive-sdk-android:1.2.0.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/onedrive/sdk/onedrive-sdk-android/1.2.0/onedrive-sdk-android-1.2.0.pom
- https://repo.maven.apache.org/maven2/com/onedrive/sdk/onedrive-sdk-android/1.2.0/onedrive-sdk-android-1.2.0.pom
- https://jcenter.bintray.com/com/onedrive/sdk/onedrive-sdk-android/1.2.0/onedrive-sdk-android-1.2.0.pom
Required by:
project :app > project :JavaFileStorage
> Could not find com.microsoft.services.msa:msa-auth:0.8.6.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/microsoft/services/msa/msa-auth/0.8.6/msa-auth-0.8.6.pom
- https://repo.maven.apache.org/maven2/com/microsoft/services/msa/msa-auth/0.8.6/msa-auth-0.8.6.pom
- https://jcenter.bintray.com/com/microsoft/services/msa/msa-auth/0.8.6/msa-auth-0.8.6.pom
Required by:
project :app > project :JavaFileStorage
One dependency that was previously on jCenter was available from GitHub so that's updated in 65092dcccffd6c4d2f0df11fb52bd79e7cef2b35
Hi @anttiharju sorry for the late response. I haven't pushed my changes yet because I wasn't able to build the app with the updated libraries yet. I got stuck on in issue with the Xamarin bindings library for the new dropbox API which now includes an .aar which I wasn't yet able to bind. I only have some time again today, hopefully I will be successful later.
Regarding OneDrive: In my local branch I removed these old libraries. I have implemented OneDrive using a more recent SDK a while ago, but kept the old API for users who already used it. But now it's been around for so long that I think I can safely remove it.
I'll hopefully push my changes later!
fyi: I have merged this into https://github.com/PhilippC/keepass2android/pull/2692. After some further smaller changes, the build succeeded there now!
I'll close this here and merge the changes as part of https://github.com/PhilippC/keepass2android/pull/2692
thanks for all the work!