Commit Graph

35 Commits

Author SHA1 Message Date
anttiharju
177b1fc9a3 Update al-cheb/configure-pagefile-action to v1.4
Just a node20 update per
https://github.com/al-cheb/configure-pagefile-action/releases/tag/v1.4
2024-10-13 15:15:11 +03:00
anttiharju
8bde5ed262 Use actions/checkout for fetching submodules 2024-10-13 15:10:36 +03:00
anttiharju
247b37262d Bump actions/cache to v4
Just a node20 update per
https://github.com/actions/cache/releases/tag/v4.0.0
2024-10-13 14:58:18 +03:00
anttiharju
84230b32ef Bump gradle/actions/setup-gradle to v4
It includes caching improvements as described here:
https://github.com/gradle/actions/releases/tag/v4.0.0

windows-2022 includes node20 per
https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md#nodejs
2024-10-13 14:56:14 +03:00
anttiharju
a54444e919 Bump gradle-build-action to v3
Gradle v2 uses node16 which will be EOL soon.

"The only major breaking change from gradle-build-action@v2.12.0
is the update to require a Node 20 runtime environment.

Aside from that change, this release should generally serve as a
drop-in replacement for gradle-build-action@v2."

Gradle updated the action name, following the advice from
https://github.com/gradle/gradle-build-action/releases/tag/v3.0.0
2024-10-13 14:42:06 +03:00
anttiharju
4b55e2ce8b Bump checkout from v3 to v4
checkout v3 uses node16 which reaches EOL on 15th of Oct 2024
https://github.blog/changelog/2024-09-25-end-of-life-for-actions-node16/
2024-10-13 14:35:35 +03:00
Robert Ellegate
746dcd4c6b 🎨 style(issue_template): improve readability of bug report template
This commit improves the readability of the bug report template by changing the label of the "Version" information to "provide it below" instead of "provide it here". Additionally, the "Which version of Android are you on?" question is now a separate input field instead of a textarea, which makes it easier to answer. Finally, the markdown formatting of the instructions for finding the Android version is improved for better readability.
2023-04-09 11:20:44 -04:00
Robert Ellegate
37a6da5a3b 🎨 style(issue_template): add prefixes to issue titles
Add prefixes to issue titles to improve consistency and make it easier to identify the type of issue.

- `[FEAT]` for feature requests
- `[QUESTION]` for questions

Also, update the bug report template to move the instructions for finding the app version to a markdown section and remove the placeholder text from the version input field. This makes it clearer and easier to follow the instructions.
2023-04-09 11:16:01 -04:00
Robert Ellegate
1efe2e16a5 📝 chore(github): add issue templates for bug report, feature request, and question
The issue templates for bug report, feature request, and question have been added to the `.github/ISSUE_TEMPLATE` directory. These templates will help standardize the information provided in issues and make it easier for contributors to provide the necessary information. The bug report template includes checkboxes to ensure that the FAQ has been checked and open issues have been searched before submitting a new bug report. The feature request template is a simple template for suggesting new ideas for the project. The question template asks for the version of Keepass2Android being used to help with troubleshooting.
2023-04-08 13:37:07 -04:00
Philipp Crocoll
4949fede32 remove tab in yml file 2023-03-06 08:05:57 +01:00
Philipp Crocoll
48a6d0a2ad disable macos build action 2023-03-06 07:58:52 +01:00
Philipp Crocoll
85315d0ecc run unit tests in github action 2023-02-28 22:42:04 +01:00
Philipp Crocoll
c1f7460c3e disable linux runner, currently not supported 2023-01-30 08:00:36 +01:00
tenzap
91b59c7c9f github workflow: switch to JDK 11
Since Android Gradle plugin was updated, it now requires JDK 11.

Fixes:

> Could not resolve all files for configuration ':classpath'.
   > Could not resolve com.android.tools.build:gradle:7.4.0.
     Required by:
         project :
      > No matching variant of com.android.tools.build:gradle:7.4.0 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.6' but:
          - Variant 'apiElements' capability com.android.tools.build:gradle:7.4.0 declares a library, packaged as a jar, and its dependencies declared externally:
              - Incompatible because this component declares an API of a component compatible with Java 11 and the consumer needed a runtime of a component compatible with Java 8
              - Other compatible attribute:
                  - Doesn't say anything about org.gradle.plugin.api-version (required '7.6')
2023-01-26 22:02:25 +01:00
tenzap
7ba6a44888 github workflow: restore download of 'platforms;android-26'
Some targets still target v8.0 (api26):

src/KeePassLib2Android/KeePassLib2Android.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/KP2AKdbLibraryBinding/KP2AKdbLibraryBinding.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/ZlibAndroid/ZlibAndroid.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/PluginSdkBinding/PluginSdkBinding.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/PCloudBindings/PCloudBindings.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/AndroidFileChooserBinding/AndroidFileChooserBinding.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
src/TwofishCipher/TwofishCipher.csproj:    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>

So we need it in ANDROID_SDK_ROOT.

Otherwise build fails with this error (on macos & windows):

C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Xamarin\Android\Xamarin.Android.Tooling.targets(100,5): error XA5207: Could not find android.jar for API level 26. This means the Android SDK platform for API level 26 is not installed. Either install it in the Android SDK Manager (Tools > Android > Android SDK Manager...), or change the Xamarin.Android project to target an API version that is installed. (C:\Android\android-sdk\platforms\android-26\android.jar missing.) [D:\a\keepass2android\keepass2android\src\TwofishCipher\TwofishCipher.csproj]
2023-01-25 09:16:31 +01:00
tenzap
187d4c8f41 github workflow: fix typo 2023-01-25 09:13:41 +01:00
tenzap
58b0b666ce github workflow: restore download of xamarin.android only if it isn't in cache 2023-01-25 09:13:22 +01:00
tenzap
8393694e6c github workflow: restore 'Setup Xamarin.Android' step 2023-01-25 09:11:24 +01:00
tenzap
b99f82d3d7 github workflow: remove 'Install NDK' step
Not needed and I believe nowadays we should use the sdkmanager or cmdline-tools/latest/bin
2023-01-25 09:10:22 +01:00
tenzap
3c9a8341ae github workflow: use gradle/gradle-build-action@v2 to manage gradle cache
Should be better than the custom way we used and manages the lock
made on windows runners
2023-01-25 09:06:52 +01:00
Philipp Crocoll
8f69a60307 remove gradle caching on Windows as well 2023-01-24 20:55:37 +01:00
Philipp Crocoll
14c2e64e2f disable gradle cache 2023-01-24 20:50:52 +01:00
Philipp Crocoll
554338012e now really remove install workload 2023-01-24 19:57:16 +01:00
Philipp Crocoll
3185cf1a9c re-enable download of xamarin build tools for linux 2023-01-24 19:43:54 +01:00
Philipp Crocoll
ed91d0db0b fix syntax error 2023-01-24 19:36:10 +01:00
Philipp Crocoll
dd7cb0a088 enable usage of xamarin_url for linux again 2023-01-24 19:31:01 +01:00
Philipp Crocoll
874e1dbae8 remove download of xamarin-33 2023-01-24 19:22:52 +01:00
Philipp Crocoll
649c0739f6 github action: install ndk for windows also, use "workload install" on linux 2023-01-23 20:39:17 +01:00
Philipp Crocoll
3db5ea4713 fix syntax error 2023-01-23 12:53:07 +01:00
Philipp Crocoll
96b5e1c10e install NDK 21.0.6113669 on github workflow runner 2023-01-23 12:41:14 +01:00
Philipp Crocoll
2bf5222505 update github workflow to use Visual studio 2022 and Xamarin for target sdk 33 2023-01-23 12:15:28 +01:00
tenzap
3483654830 github workflow: make use of caches for nuget, gradle & xamarin
Speeds job by up to ~3-5 minutes
2022-12-13 14:10:00 +01:00
tenzap
548b92ffe9 Makefile: improve nuget restore & clean
In some cases, nuget restore isn't sufficient to restore everything, especially if project.assets.json files
are missing or were removed. So we add a call to MSBuild -t:restore to build it.

Both nuget & msbuild are required because msbuild can only restore packages in 'packages.config' from version
16.5
2022-12-13 14:07:15 +01:00
tenzap
cf0e8a1926 [nonet migration] adapt Makefile and github worklow, update build doc
This will permit to build on the github workflow both the 'net' and 'nonet'
variant
2022-12-10 20:44:55 +01:00
tenzap
b99272e850 add github actions workflow (build with macos, windows, linux) 2022-12-08 12:29:15 +01:00