Skip to content

Commit 2cfa624

Browse files
committed
merge main branch
2 parents c6583dd + dedff68 commit 2cfa624

File tree

91 files changed

+4796
-2991
lines changed

Some content is hidden

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

91 files changed

+4796
-2991
lines changed

.github/workflows/dataconnect.yml

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -84,16 +84,21 @@ jobs:
8484
- name: tool versions
8585
continue-on-error: true
8686
run: |
87-
set +e -v
88-
uname -a
89-
which java
90-
java -version
91-
which javac
92-
javac -version
93-
which node
94-
node --version
95-
${{ env.FDC_FIREBASE_COMMAND }} --version
96-
./gradlew --version
87+
function run_cmd {
88+
echo "==============================================================================="
89+
echo "Running Command: $*"
90+
("$@" 2>&1) || echo "WARNING: command failed with non-zero exit code $?: $*"
91+
}
92+
93+
run_cmd uname -a
94+
run_cmd which java
95+
run_cmd java -version
96+
run_cmd which javac
97+
run_cmd javac -version
98+
run_cmd which node
99+
run_cmd node --version
100+
run_cmd ${{ env.FDC_FIREBASE_COMMAND }} --version
101+
run_cmd ./gradlew --version
97102
98103
- name: Gradle assembleDebugAndroidTest
99104
run: |
@@ -174,8 +179,16 @@ jobs:
174179
cd firebase-dataconnect/emulator
175180
${{ env.FDC_FIREBASE_COMMAND }} emulators:start --only=auth >firebase.emulator.auth.log 2>&1 &
176181
182+
- name: Capture Logcat Logs
183+
run: adb logcat >logcat.log &
184+
177185
- name: Gradle connectedCheck
186+
id: connectedCheck
178187
uses: reactivecircus/android-emulator-runner@v2
188+
# Allow this GitHub Actions "job" to continue even if the tests fail so that logs from a
189+
# failed test run get uploaded as "artifacts" and are available to investigate failed runs.
190+
# A later step in this "job" will fail the job if this step fails
191+
continue-on-error: true
179192
with:
180193
api-level: ${{ env.FDC_ANDROID_EMULATOR_API_LEVEL }}
181194
arch: x86_64
@@ -185,20 +198,28 @@ jobs:
185198
script: |
186199
set -eux && ./gradlew ${{ (inputs.gradleInfoLog && '--info') || '' }} :firebase-dataconnect:connectedCheck :firebase-dataconnect:connectors:connectedCheck
187200
188-
- uses: actions/upload-artifact@v4
201+
- name: Upload log file artifacts
202+
uses: actions/upload-artifact@v4
189203
with:
190-
name: logs
204+
name: integration_test_logs
191205
path: "**/*.log"
192206
if-no-files-found: warn
193207
compression-level: 9
194208

195-
- uses: actions/upload-artifact@v4
209+
- name: Upload Gradle build report artifacts
210+
uses: actions/upload-artifact@v4
196211
with:
197-
name: gradle_build_reports
212+
name: integration_test_gradle_build_reports
198213
path: firebase-dataconnect/**/build/reports/
199214
if-no-files-found: warn
200215
compression-level: 9
201216

217+
- name: Check test result
218+
if: steps.connectedCheck.outcome != 'success'
219+
run: |
220+
echo "Failing the job since the connectedCheck step failed"
221+
exit 1
222+
202223
# Check this yml file with "actionlint": https://github.com/rhysd/actionlint
203224
# To run actionlint yourself, run `brew install actionlint` followed by
204225
# `actionlint .github/workflows/dataconnect.yml`

.github/workflows/dataconnect_demo_app.yml

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,20 @@ jobs:
8989
- name: tool versions
9090
continue-on-error: true
9191
run: |
92-
set +e -v
93-
which java
94-
java -version
95-
which javac
96-
javac -version
97-
which node
98-
node --version
99-
${{ env.FDC_FIREBASE_COMMAND }} --version
100-
./gradlew --version
92+
function run_cmd {
93+
echo "==============================================================================="
94+
echo "Running Command: $*"
95+
("$@" 2>&1) || echo "WARNING: command failed with non-zero exit code $?: $*"
96+
}
97+
98+
run_cmd which java
99+
run_cmd java -version
100+
run_cmd which javac
101+
run_cmd javac -version
102+
run_cmd which node
103+
run_cmd node --version
104+
run_cmd ${{ env.FDC_FIREBASE_COMMAND }} --version
105+
run_cmd ./gradlew --version
101106
102107
- name: ./gradlew assemble test
103108
run: |

.github/workflows/make-bom.yml

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ jobs:
1111
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3
1212
with:
1313
python-version: '3.10'
14+
1415
- uses: actions/[email protected]
16+
1517
- name: Set up JDK 17
1618
uses: actions/[email protected]
1719
with:
@@ -21,19 +23,25 @@ jobs:
2123

2224
- name: Build
2325
run: |
24-
./ci/run.sh \
25-
--artifact-target-dir=./logs/artifacts \
26-
--artifact-patterns=bom.zip \
27-
--artifact-patterns=bomReleaseNotes.md \
28-
--artifact-patterns=recipeVersionUpdate.txt \
29-
gradle \
30-
-- \
31-
--build-cache \
32-
buildBomZip
33-
34-
- name: Upload generated artifacts
26+
./gradlew buildBomBundleZip
27+
28+
- name: Upload bom
29+
uses: actions/[email protected]
30+
with:
31+
name: bom
32+
path: build/bom/
33+
retention-days: 15
34+
35+
- name: Upload release notes
36+
uses: actions/[email protected]
37+
with:
38+
name: bom_release_notes
39+
path: build/bomReleaseNotes.md
40+
retention-days: 15
41+
42+
- name: Upload recipe version update
3543
uses: actions/[email protected]
3644
with:
37-
name: artifacts
38-
path: ./logs/artifacts/
39-
retention-days: 5
45+
name: recipe_version
46+
path: build/recipeVersionUpdate.txt
47+
retention-days: 15

appcheck/firebase-appcheck-debug-testing/api.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.appcheck.debug.testing {
33

44
public final class DebugAppCheckTestHelper {
5-
method @NonNull public static com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper fromInstrumentationArgs();
6-
method public <E extends java.lang.Throwable> void withDebugProvider(@NonNull com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper.MaybeThrowingRunnable<E>) throws E;
7-
method public <E extends java.lang.Throwable> void withDebugProvider(@NonNull com.google.firebase.FirebaseApp, @NonNull com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper.MaybeThrowingRunnable<E>) throws E;
5+
method public static com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper fromInstrumentationArgs();
6+
method public <E extends java.lang.Throwable> void withDebugProvider(com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper.MaybeThrowingRunnable<E!>) throws E;
7+
method public <E extends java.lang.Throwable> void withDebugProvider(com.google.firebase.FirebaseApp, com.google.firebase.appcheck.debug.testing.DebugAppCheckTestHelper.MaybeThrowingRunnable<E!>) throws E;
88
}
99

1010
public static interface DebugAppCheckTestHelper.MaybeThrowingRunnable<E extends java.lang.Throwable> {

appcheck/firebase-appcheck-debug/api.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.appcheck.debug {
33

44
public class DebugAppCheckProviderFactory implements com.google.firebase.appcheck.AppCheckProviderFactory {
5-
method @NonNull public com.google.firebase.appcheck.AppCheckProvider create(@NonNull com.google.firebase.FirebaseApp);
6-
method @NonNull public static com.google.firebase.appcheck.debug.DebugAppCheckProviderFactory getInstance();
5+
method public com.google.firebase.appcheck.AppCheckProvider create(com.google.firebase.FirebaseApp);
6+
method public static com.google.firebase.appcheck.debug.DebugAppCheckProviderFactory getInstance();
77
}
88

99
}

appcheck/firebase-appcheck-interop/api.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.appcheck {
33

44
public abstract class AppCheckTokenResult {
55
ctor public AppCheckTokenResult();
6-
method @Nullable public abstract Exception getError();
7-
method @NonNull public abstract String getToken();
6+
method public abstract Exception? getError();
7+
method public abstract String getToken();
88
}
99

1010
}
1111

1212
package com.google.firebase.appcheck.interop {
1313

1414
public interface AppCheckTokenListener {
15-
method public void onAppCheckTokenChanged(@NonNull com.google.firebase.appcheck.AppCheckTokenResult);
15+
method public void onAppCheckTokenChanged(com.google.firebase.appcheck.AppCheckTokenResult);
1616
}
1717

1818
}

appcheck/firebase-appcheck-playintegrity/api.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.appcheck.playintegrity {
33

44
public class PlayIntegrityAppCheckProviderFactory implements com.google.firebase.appcheck.AppCheckProviderFactory {
55
ctor public PlayIntegrityAppCheckProviderFactory();
6-
method @NonNull public com.google.firebase.appcheck.AppCheckProvider create(@NonNull com.google.firebase.FirebaseApp);
7-
method @NonNull public static com.google.firebase.appcheck.playintegrity.PlayIntegrityAppCheckProviderFactory getInstance();
6+
method public com.google.firebase.appcheck.AppCheckProvider create(com.google.firebase.FirebaseApp);
7+
method public static com.google.firebase.appcheck.playintegrity.PlayIntegrityAppCheckProviderFactory getInstance();
88
}
99

1010
}

appcheck/firebase-appcheck/api.txt

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,53 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.appcheck {
33

44
public interface AppCheckProvider {
5-
method @NonNull public com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken> getToken();
5+
method public com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken!> getToken();
66
}
77

88
public interface AppCheckProviderFactory {
9-
method @NonNull public com.google.firebase.appcheck.AppCheckProvider create(@NonNull com.google.firebase.FirebaseApp);
9+
method public com.google.firebase.appcheck.AppCheckProvider create(com.google.firebase.FirebaseApp);
1010
}
1111

1212
public abstract class AppCheckToken {
1313
ctor public AppCheckToken();
1414
method public abstract long getExpireTimeMillis();
15-
method @NonNull public abstract String getToken();
15+
method public abstract String getToken();
1616
}
1717

1818
public abstract class FirebaseAppCheck implements com.google.firebase.appcheck.interop.InteropAppCheckTokenProvider {
1919
ctor public FirebaseAppCheck();
20-
method public abstract void addAppCheckListener(@NonNull com.google.firebase.appcheck.FirebaseAppCheck.AppCheckListener);
21-
method @NonNull public abstract com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken> getAppCheckToken(boolean);
22-
method @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck getInstance();
23-
method @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck getInstance(@NonNull com.google.firebase.FirebaseApp);
24-
method @NonNull public abstract com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken> getLimitedUseAppCheckToken();
25-
method public abstract void installAppCheckProviderFactory(@NonNull com.google.firebase.appcheck.AppCheckProviderFactory);
26-
method public abstract void installAppCheckProviderFactory(@NonNull com.google.firebase.appcheck.AppCheckProviderFactory, boolean);
27-
method public abstract void removeAppCheckListener(@NonNull com.google.firebase.appcheck.FirebaseAppCheck.AppCheckListener);
20+
method public abstract void addAppCheckListener(com.google.firebase.appcheck.FirebaseAppCheck.AppCheckListener);
21+
method public abstract com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken!> getAppCheckToken(boolean);
22+
method public static com.google.firebase.appcheck.FirebaseAppCheck getInstance();
23+
method public static com.google.firebase.appcheck.FirebaseAppCheck getInstance(com.google.firebase.FirebaseApp);
24+
method public abstract com.google.android.gms.tasks.Task<com.google.firebase.appcheck.AppCheckToken!> getLimitedUseAppCheckToken();
25+
method public abstract void installAppCheckProviderFactory(com.google.firebase.appcheck.AppCheckProviderFactory);
26+
method public abstract void installAppCheckProviderFactory(com.google.firebase.appcheck.AppCheckProviderFactory, boolean);
27+
method public abstract void removeAppCheckListener(com.google.firebase.appcheck.FirebaseAppCheck.AppCheckListener);
2828
method public abstract void setTokenAutoRefreshEnabled(boolean);
2929
}
3030

3131
public static interface FirebaseAppCheck.AppCheckListener {
32-
method public void onAppCheckTokenChanged(@NonNull com.google.firebase.appcheck.AppCheckToken);
32+
method public void onAppCheckTokenChanged(com.google.firebase.appcheck.AppCheckToken);
3333
}
3434

3535
public final class FirebaseAppCheckKt {
36-
method @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck appCheck(@NonNull com.google.firebase.Firebase, @NonNull com.google.firebase.FirebaseApp app);
37-
method @NonNull public static operator String component1(@NonNull com.google.firebase.appcheck.AppCheckToken);
38-
method public static operator long component2(@NonNull com.google.firebase.appcheck.AppCheckToken);
39-
method @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck getAppCheck(@NonNull com.google.firebase.Firebase);
36+
method public static com.google.firebase.appcheck.FirebaseAppCheck appCheck(com.google.firebase.Firebase, com.google.firebase.FirebaseApp app);
37+
method public static operator String component1(com.google.firebase.appcheck.AppCheckToken);
38+
method public static operator long component2(com.google.firebase.appcheck.AppCheckToken);
39+
method public static com.google.firebase.appcheck.FirebaseAppCheck getAppCheck(com.google.firebase.Firebase);
4040
}
4141

4242
}
4343

4444
package com.google.firebase.appcheck.ktx {
4545

4646
public final class FirebaseAppCheckKt {
47-
method @Deprecated @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck appCheck(@NonNull com.google.firebase.ktx.Firebase, @NonNull com.google.firebase.FirebaseApp app);
48-
method @Deprecated @NonNull public static operator String component1(@NonNull com.google.firebase.appcheck.AppCheckToken);
49-
method @Deprecated public static operator long component2(@NonNull com.google.firebase.appcheck.AppCheckToken);
50-
method @Deprecated @NonNull public static com.google.firebase.appcheck.FirebaseAppCheck getAppCheck(@NonNull com.google.firebase.ktx.Firebase);
47+
method @Deprecated public static com.google.firebase.appcheck.FirebaseAppCheck appCheck(com.google.firebase.ktx.Firebase, com.google.firebase.FirebaseApp app);
48+
method @Deprecated public static operator String component1(com.google.firebase.appcheck.AppCheckToken);
49+
method @Deprecated public static operator long component2(com.google.firebase.appcheck.AppCheckToken);
50+
method @Deprecated public static com.google.firebase.appcheck.FirebaseAppCheck getAppCheck(com.google.firebase.ktx.Firebase);
5151
}
5252

5353
}
Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1 @@
1-
// Signature format: 2.0
2-
package com.google.firebase.appcheck.ktx {
3-
4-
public final class LoggingKt {
5-
}
6-
7-
}
8-
1+
// Signature format: 3.0

encoders/firebase-decoders-json/api.txt

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
1-
// Signature format: 2.0
1+
// Signature format: 3.0
22
package com.google.firebase.decoders {
33

44
public abstract class Safe<T> {
55
ctor public Safe();
66
}
77

88
public abstract class TypeToken<T> {
9-
method @NonNull public static <T> com.google.firebase.decoders.TypeToken<T> of(@NonNull com.google.firebase.decoders.Safe<T>);
10-
method @NonNull public static <T> com.google.firebase.decoders.TypeToken<T> of(@NonNull Class<T>);
9+
method public static <T> com.google.firebase.decoders.TypeToken<T!> of(com.google.firebase.decoders.Safe<T!>);
10+
method public static <T> com.google.firebase.decoders.TypeToken<T!> of(Class<T!>);
1111
}
1212

13-
public static class TypeToken.ArrayToken<T> extends com.google.firebase.decoders.TypeToken<T> {
14-
method @NonNull public com.google.firebase.decoders.TypeToken<?> getComponentType();
13+
public static class TypeToken.ArrayToken<T> extends com.google.firebase.decoders.TypeToken<T!> {
14+
method public com.google.firebase.decoders.TypeToken<? extends java.lang.Object!> getComponentType();
1515
}
1616

17-
public static class TypeToken.ClassToken<T> extends com.google.firebase.decoders.TypeToken<T> {
18-
method @NonNull public Class<T> getRawType();
19-
method @NonNull public com.google.firebase.decoders.TypeTokenContainer getTypeArguments();
17+
public static class TypeToken.ClassToken<T> extends com.google.firebase.decoders.TypeToken<T!> {
18+
method public Class<T!> getRawType();
19+
method public com.google.firebase.decoders.TypeTokenContainer getTypeArguments();
2020
}
2121

2222
public final class TypeTokenContainer {
23-
ctor public TypeTokenContainer(@NonNull com.google.firebase.decoders.TypeToken[]);
24-
method @NonNull public <T> com.google.firebase.decoders.TypeToken<T> at(int);
25-
field @NonNull public static final com.google.firebase.decoders.TypeTokenContainer EMPTY;
23+
ctor public TypeTokenContainer(com.google.firebase.decoders.TypeToken![]);
24+
method public <T> com.google.firebase.decoders.TypeToken<T!> at(int);
25+
field public static final com.google.firebase.decoders.TypeTokenContainer EMPTY;
2626
}
2727

2828
}

0 commit comments

Comments
 (0)