Skip to content

Commit 7925d6b

Browse files
committed
Merge PR #2058
2 parents 4174b44 + 16297e4 commit 7925d6b

File tree

105 files changed

+891
-741
lines changed

Some content is hidden

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

105 files changed

+891
-741
lines changed

.github/workflows/android.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
distribution: 'temurin'
1414
java-version: '17'
1515

16-
- uses: actions/checkout@v5
16+
- uses: actions/checkout@v6
1717
with:
1818
path: 'app'
1919

@@ -69,7 +69,7 @@ jobs:
6969
run: android/scripts/collect-artifacts.sh ${GITHUB_REF}
7070
working-directory: ./app
7171

72-
- uses: actions/upload-artifact@v4
72+
- uses: actions/upload-artifact@v6
7373
with:
7474
name: yubico-authenticator-android
7575
path: app/artifacts/*

.github/workflows/check-strings.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
runs-on: ubuntu-latest
99

1010
steps:
11-
- uses: actions/checkout@v5
11+
- uses: actions/checkout@v6
1212

1313
- name: Read variables from repo
1414
run: cat .github/workflows/env >> $GITHUB_ENV

.github/workflows/codeql-analysis.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828

2929
steps:
3030
- name: Initialize CodeQL
31-
uses: github/codeql-action/init@v3
31+
uses: github/codeql-action/init@v4
3232
with:
3333
languages: ${{ matrix.language }}
3434
setup-python-dependencies: false
@@ -39,7 +39,7 @@ jobs:
3939
distribution: 'temurin'
4040
java-version: '17'
4141

42-
- uses: actions/checkout@v5
42+
- uses: actions/checkout@v6
4343
with:
4444
path: 'app'
4545

@@ -81,7 +81,7 @@ jobs:
8181

8282
- if: matrix.language == 'python'
8383
name: autobuild
84-
uses: github/codeql-action/autobuild@v3
84+
uses: github/codeql-action/autobuild@v4
8585

8686
- name: Perform CodeQL Analysis
87-
uses: github/codeql-action/analyze@v3
87+
uses: github/codeql-action/analyze@v4

.github/workflows/env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
FLUTTER=3.35.3
2-
PYVER=3.13.8
1+
FLUTTER=3.38.5
2+
PYVER=3.14.2

.github/workflows/linux-arm64.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
runs-on: ubuntu-22.04-arm
99

1010
steps:
11-
- uses: actions/checkout@v5
11+
- uses: actions/checkout@v6
1212
with:
1313
sparse-checkout: .github/workflows/env
1414

@@ -44,21 +44,21 @@ jobs:
4444
echo "Expected: $PYVER"
4545
exit 1
4646
47-
- uses: actions/checkout@v5
47+
- uses: actions/checkout@v6
4848

4949
- name: Check app versions
5050
run: |
5151
python3 set-version.py
5252
git diff --exit-code
5353
5454
- name: Install uv
55-
uses: astral-sh/setup-uv@v6
55+
uses: astral-sh/setup-uv@v7
5656
with:
5757
enable-cache: true
5858

5959
- name: Cache helper
6060
id: cache-helper
61-
uses: actions/cache@v4
61+
uses: actions/cache@v5
6262
with:
6363
path: |
6464
build/linux/helper
@@ -128,7 +128,7 @@ jobs:
128128
tar -czf deploy/${BASENAME}.tar.gz -C build "${BASENAME}"
129129
130130
- name: Upload artifact
131-
uses: actions/upload-artifact@v4
131+
uses: actions/upload-artifact@v6
132132
with:
133133
name: yubioath-desktop-linux-arm64
134134
path: deploy

.github/workflows/linux.yml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
DEBIAN_FRONTEND: noninteractive
1313

1414
steps:
15-
- uses: actions/checkout@v5
15+
- uses: actions/checkout@v6
1616
with:
1717
sparse-checkout: .github/workflows/env
1818

@@ -30,10 +30,10 @@ jobs:
3030
apt-get install -qq git
3131
git config --global --add safe.directory "$GITHUB_WORKSPACE"
3232
33-
- uses: actions/checkout@v5
33+
- uses: actions/checkout@v6
3434

3535
- name: Install uv
36-
uses: astral-sh/setup-uv@v6
36+
uses: astral-sh/setup-uv@v7
3737
with:
3838
enable-cache: true
3939

@@ -48,7 +48,7 @@ jobs:
4848
4949
- name: Cache helper
5050
id: cache-helper
51-
uses: actions/cache@v4
51+
uses: actions/cache@v5
5252
with:
5353
path: |
5454
build/linux/helper
@@ -58,7 +58,11 @@ jobs:
5858
- name: Build the Helper
5959
if: steps.cache-helper.outputs.cache-hit != 'true'
6060
run: |
61-
apt-get install -qq swig libpcsclite-dev build-essential cmake
61+
add-apt-repository ppa:ubuntu-toolchain-r/test -y
62+
apt update -y
63+
apt-get install -qq swig libpcsclite-dev build-essential cmake gcc-13 g++-13
64+
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 60 --slave /usr/bin/g++ g++ /usr/bin/g++-13
65+
update-alternatives --config gcc
6266
./build-helper.sh
6367
6468
- name: Install Flutter dependencies
@@ -111,7 +115,7 @@ jobs:
111115
tar -czf deploy/${BASENAME}.tar.gz -C build "${BASENAME}"
112116
113117
- name: Upload artifact
114-
uses: actions/upload-artifact@v4
118+
uses: actions/upload-artifact@v6
115119
with:
116120
name: yubioath-desktop-linux
117121
path: deploy

.github/workflows/macos.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
runs-on: macos-latest
99

1010
steps:
11-
- uses: actions/checkout@v5
11+
- uses: actions/checkout@v6
1212

1313
- name: Read variables from repo
1414
run: |
@@ -32,13 +32,13 @@ jobs:
3232
podfile-path: macos/Podfile.lock
3333

3434
- name: Install uv
35-
uses: astral-sh/setup-uv@v6
35+
uses: astral-sh/setup-uv@v7
3636
with:
3737
enable-cache: true
3838

3939
- name: Cache helper
4040
id: cache-helper
41-
uses: actions/cache@v4
41+
uses: actions/cache@v5
4242
with:
4343
path: |
4444
build/macos/helper
@@ -102,7 +102,7 @@ jobs:
102102
mv macos/release-macos.sh deploy
103103
104104
- name: Upload artifact
105-
uses: actions/upload-artifact@v4
105+
uses: actions/upload-artifact@v6
106106
with:
107107
name: yubioath-desktop-macos
108108
path: deploy

.github/workflows/windows.yml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
build:
77
runs-on: windows-latest
88
steps:
9-
- uses: actions/checkout@v5
9+
- uses: actions/checkout@v6
1010

1111
- name: Read variables from repo
1212
shell: bash
@@ -29,13 +29,13 @@ jobs:
2929
run: python -m pip install --upgrade pip
3030

3131
- name: Install uv
32-
uses: astral-sh/setup-uv@v6
32+
uses: astral-sh/setup-uv@v7
3333
with:
3434
enable-cache: true
3535

3636
- name: Cache helper
3737
id: cache-helper
38-
uses: actions/cache@v4
38+
uses: actions/cache@v5
3939
with:
4040
path: |
4141
build/windows/helper
@@ -88,7 +88,7 @@ jobs:
8888
mv resources deploy
8989
9090
- name: Upload artifact
91-
uses: actions/upload-artifact@v4
91+
uses: actions/upload-artifact@v6
9292
with:
9393
name: yubioath-desktop-windows
9494
path: deploy
@@ -108,10 +108,10 @@ jobs:
108108
fi
109109
110110
- name: checkout repo
111-
uses: actions/checkout@v5
111+
uses: actions/checkout@v6
112112

113113
- name: download artifacts
114-
uses: actions/download-artifact@v5
114+
uses: actions/download-artifact@v7
115115
with:
116116
path: yubioath-desktop-windows
117117

@@ -156,7 +156,7 @@ jobs:
156156
cp signed/authenticator.exe yubioath-desktop-windows/*/authenticator.exe
157157
158158
- name: upload signed artifacts
159-
uses: actions/upload-artifact@v4
159+
uses: actions/upload-artifact@v6
160160
with:
161161
name: signed-files
162162
path: yubioath-desktop-windows
@@ -178,10 +178,10 @@ jobs:
178178
exit 1
179179
fi
180180
181-
- uses: actions/checkout@v5
181+
- uses: actions/checkout@v6
182182

183183
- name: Download /signed dir
184-
uses: actions/download-artifact@v5
184+
uses: actions/download-artifact@v7
185185

186186
- name: Read variables from repo
187187
shell: bash
@@ -206,7 +206,7 @@ jobs:
206206
mv yubioath-desktop.msi installer
207207
208208
- name: Upload artifact
209-
uses: actions/upload-artifact@v4
209+
uses: actions/upload-artifact@v6
210210
with:
211211
name: installer
212212
path: installer
@@ -226,10 +226,10 @@ jobs:
226226
fi
227227
228228
- name: checkout repo
229-
uses: actions/checkout@v5
229+
uses: actions/checkout@v6
230230

231231
- name: download artifacts
232-
uses: actions/download-artifact@v5
232+
uses: actions/download-artifact@v7
233233

234234
- name: docker login
235235
uses: docker/login-action@v3
@@ -291,7 +291,7 @@ jobs:
291291
rm 1.zip
292292
293293
- name: upload signed artifacts
294-
uses: actions/upload-artifact@v4
294+
uses: actions/upload-artifact@v6
295295
with:
296296
name: signed-installer
297297
path: signed/*

android/app/build.gradle

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ if (flutterVersionName == null) {
2626

2727
android {
2828

29-
namespace 'com.yubico.authenticator'
29+
namespace = 'com.yubico.authenticator'
3030

3131
compileSdkVersion project.compileSdkVersion
3232

@@ -53,21 +53,21 @@ android {
5353

5454
buildTypes {
5555
release {
56-
minifyEnabled true
57-
shrinkResources true
58-
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
56+
minifyEnabled = true
57+
shrinkResources = true
58+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
5959
}
6060
debug {
6161
applicationIdSuffix ".debug"
6262
}
6363
}
6464

6565
buildFeatures {
66-
buildConfig true
66+
buildConfig = true
6767
}
6868

6969
lint {
70-
abortOnError false
70+
abortOnError = false
7171
}
7272

7373
applicationVariants.all { variant ->
@@ -84,13 +84,14 @@ android {
8484
exclude 'META-INF/versions/9/OSGI-INF/bcpkix.provider.bc.Licenses'
8585
}
8686

87+
ndkVersion = flutter.ndkVersion
8788
}
8889

8990
apply from: "signing.gradle"
9091
apply from: "collect_licenses.gradle"
9192

9293
flutter {
93-
source '../..'
94+
source = '../..'
9495
}
9596

9697
dependencies {
@@ -105,7 +106,7 @@ dependencies {
105106
implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.9.0'
106107

107108
// Lifecycle
108-
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.9.3'
109+
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.10.0'
109110

110111
implementation "androidx.core:core-ktx:1.17.0"
111112
implementation 'androidx.fragment:fragment-ktx:1.8.9'
@@ -115,11 +116,20 @@ dependencies {
115116

116117
implementation 'com.github.tony19:logback-android:3.0.0'
117118

118-
implementation 'org.bouncycastle:bcprov-jdk18on:1.81'
119-
implementation 'org.bouncycastle:bcpkix-jdk18on:1.81'
119+
implementation 'org.bouncycastle:bcprov-jdk18on:1.83'
120+
implementation 'org.bouncycastle:bcpkix-jdk18on:1.83'
120121

121122
// testing dependencies
122123
testImplementation "junit:junit:$project.junitVersion"
123124
testImplementation "org.mockito:mockito-core:$project.mockitoVersion"
124-
testImplementation 'android.arch.core:core-testing:1.1.1'
125+
testImplementation 'androidx.arch.core:core-testing:2.2.0'
125126
}
127+
128+
// disable OssLicensesTask during testing
129+
gradle.taskGraph.whenReady { taskGraph ->
130+
if (taskGraph.hasTask(":app:test") || taskGraph.allTasks.any { it.name.contains("Test") }) {
131+
tasks.matching { it.name.contains("OssLicensesTask") }.configureEach { task ->
132+
task.enabled = false
133+
}
134+
}
135+
}

android/app/collect_licenses.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def collectLicenses(File rootDir, File ossPluginResDir, File outDir) {
6161

6262
// add zxing_licenses which are not detected
6363
println "adding zxing licenses"
64-
licenseList.add(PackageName: "ZXing Core (3.5.2)", PackageLicense: "https://www.apache.org/licenses/LICENSE-2.0.txt")
64+
licenseList.add(PackageName: "ZXing Core (3.5.4)", PackageLicense: "https://www.apache.org/licenses/LICENSE-2.0.txt")
6565
licenseList.add(PackageName: "ZXing Android Core (3.3.0)", PackageLicense: "https://www.apache.org/licenses/LICENSE-2.0.txt")
6666

6767
outFile.write(new JsonOutput().toJson(licenseList))
@@ -85,7 +85,7 @@ def collectLicenses(File rootDir, File ossPluginResDir, File outDir) {
8585
tasks.register('collectLicenses') {
8686
dependsOn(":app:releaseOssLicensesTask")
8787
doLast {
88-
def ossPluginResDir = new File(project.buildDir, "generated/third_party_licenses/release/res/raw/")
88+
def ossPluginResDir = new File(project.buildDir, "generated/res/releaseOssLicensesTask/raw/")
8989
collectLicenses(project.rootDir, ossPluginResDir, new File(project.rootDir.parent, "assets/licenses/raw/"))
9090
}
9191
}

0 commit comments

Comments
 (0)