Skip to content

Commit 629b394

Browse files
authored
Merge branch 'main' into mila/fix-utf8-encoded-string-comparison
2 parents 334970e + ad7618b commit 629b394

File tree

17 files changed

+291
-18
lines changed

17 files changed

+291
-18
lines changed

.github/workflows/dataconnect.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,10 +217,10 @@ jobs:
217217
if-no-files-found: warn
218218
compression-level: 9
219219

220-
- name: Check test result
220+
- name: Verify "Gradle connectedCheck" step was successful
221221
if: steps.connectedCheck.outcome != 'success'
222222
run: |
223-
echo "Failing the job since the connectedCheck step failed"
223+
echo 'Failing because the outcome of the "Gradle connectedCheck" step ("${{ steps.connectedCheck.outcome }}") was not successful'
224224
exit 1
225225
226226
# Check this yml file with "actionlint": https://github.com/rhysd/actionlint
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Metalava SemVer Check
2+
3+
on:
4+
pull_request:
5+
6+
jobs:
7+
semver-check:
8+
runs-on: ubuntu-latest
9+
permissions:
10+
pull-requests: write
11+
steps:
12+
- name: Checkout main
13+
uses: actions/[email protected]
14+
with:
15+
ref: ${{ github.base_ref }}
16+
17+
- name: Set up JDK 17
18+
uses: actions/[email protected]
19+
with:
20+
java-version: 17
21+
distribution: temurin
22+
cache: gradle
23+
24+
- name: Copy previous api.txt files
25+
run: ./gradlew copyApiTxtFile
26+
27+
- name: Checkout PR
28+
uses: actions/[email protected]
29+
with:
30+
ref: ${{ github.head_ref }}
31+
clean: false
32+
33+
- name: Run Metalava SemVer check
34+
run: ./gradlew metalavaSemver

firebase-dataconnect/CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Unreleased
2-
2+
* [changed] Changed gRPC proto package to v1 (was v1beta).
3+
([#6729](https://github.com/firebase/firebase-android-sdk/pull/6729))
34

45
# 16.0.0-beta04
56
* [changed] `FirebaseDataConnect.logLevel` type changed from `LogLevel` to

firebase-dataconnect/demo/firebase/dataconnect/dataconnect.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
specVersion: v1beta
1+
specVersion: v1
22
serviceId: srv3ar8skbsza
33
location: us-central1
44
schema:

firebase-dataconnect/emulator/dataconnect/dataconnect.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
specVersion: "v1beta"
1+
specVersion: "v1"
22
serviceId: "sid2ehn9ct8te"
33
location: "us-central1"
44
schema:

firebase-dataconnect/gradleplugin/plugin/src/main/resources/com/google/firebase/dataconnect/gradle/plugin/DataConnectExecutableVersions.json

Lines changed: 73 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"defaultVersion": "1.7.7",
2+
"defaultVersion": "1.8.3",
33
"versions": [
44
{
55
"version": "1.3.4",
@@ -414,6 +414,78 @@
414414
"os": "linux",
415415
"size": 25268376,
416416
"sha512DigestHex": "f55feb1ce670b4728bb30be138ab427545f77f63f9e11ee458096091c075699c647d5b768c642a1ef6b3569a2db87dbbed6f2fdaf64febd1154d1a730fda4a9c"
417+
},
418+
{
419+
"version": "1.8.0",
420+
"os": "windows",
421+
"size": 25903616,
422+
"sha512DigestHex": "753a5e4be35c544317bcdbaaa860f079a9c9d8a24ca3db17fed601d30b64f083a9203fbb76718d23f3ad77f1556adfb5a4226751ec48c202bd227479c57d1ae9"
423+
},
424+
{
425+
"version": "1.8.0",
426+
"os": "macos",
427+
"size": 25469696,
428+
"sha512DigestHex": "23c1e405b196799a7c84b9783ca110459bba3aa86405d2fc03d83f90530642d590b02cd06588a8428e0e7bb7d1c59e6d03113bbc5c41e12cff7a7c46674fc430"
429+
},
430+
{
431+
"version": "1.8.0",
432+
"os": "linux",
433+
"size": 25383064,
434+
"sha512DigestHex": "9546bb62d54b67086847d3e129397f4cfceb5b715d64f0a1cc0a053b5dfe918e8372142b7e9bacd11dede77ddd17840058efb8ed6a7073e99fd5a684fdc57bea"
435+
},
436+
{
437+
"version": "1.8.1",
438+
"os": "windows",
439+
"size": 25904128,
440+
"sha512DigestHex": "26dc987e38d5d07a910da647920cc2fe990f1da0db56206def71a9833f8eeb66272d8f32ba091b0d4d6e065a3d5cd950cd835a891895c6a55d735a6f240bf4b7"
441+
},
442+
{
443+
"version": "1.8.1",
444+
"os": "macos",
445+
"size": 25469696,
446+
"sha512DigestHex": "d7bcb01912b1949a003fd0a7ebbc1bb42e79e97b7fd880ba9164b62e05d1ffb634662d97fd4664343e28780e69953aadecd5fb799a8f51229a4c0fbf552936ac"
447+
},
448+
{
449+
"version": "1.8.1",
450+
"os": "linux",
451+
"size": 25383064,
452+
"sha512DigestHex": "2a28ba7947f84ede9062b5f5efa145b29862be0a8724ac6b6a4210f6823024d33363bd3379a6474965fbd60376baae9103ce7e4509db9d52c2b13886bca5df92"
453+
},
454+
{
455+
"version": "1.8.2",
456+
"os": "windows",
457+
"size": 25936384,
458+
"sha512DigestHex": "f2aed75baaeed388d8fcd8a3d18e629f9ed012f60de0401bc365227094688f130ce7aa02db565002fe7b06a339b1cb133a7c87da365d480fb10cdb47d55c7dfa"
459+
},
460+
{
461+
"version": "1.8.2",
462+
"os": "macos",
463+
"size": 25506560,
464+
"sha512DigestHex": "d4ac9e15f5a42fed28fd2f3cb2c80bc3f4def60f76517661323c502fa7a4b085bda3d26eb62cdcb630a13999e2fb0428ee45d335e20641229a9439cc60a9e798"
465+
},
466+
{
467+
"version": "1.8.2",
468+
"os": "linux",
469+
"size": 25415832,
470+
"sha512DigestHex": "fec0fb97fb3ad30bdd9d0e3b65095e2dfdcfccd15e7c6ae9fe827ec1c3b5b9b592c80c59cadb3540e387d4adcf3560922094399c5ca3d162288a33403308104d"
471+
},
472+
{
473+
"version": "1.8.3",
474+
"os": "windows",
475+
"size": 25965568,
476+
"sha512DigestHex": "9b6ded9ddac61d5f137ac65944409003906d621bb3a03ba6bf037b1aeddabf23f9410de6fbc05b8ea0c9afa2a8328bb02a57ed225f8ebaa3c8d6921755ad715c"
477+
},
478+
{
479+
"version": "1.8.3",
480+
"os": "macos",
481+
"size": 25535232,
482+
"sha512DigestHex": "0c88a14ae64308e68957f5e79f9e20b4b946977187132dcc24193370c81b9117487fb0ee1c5be4e8f2368945add7ed37d6d97b015c3ea8232e09664458c8e802"
483+
},
484+
{
485+
"version": "1.8.3",
486+
"os": "linux",
487+
"size": 25448600,
488+
"sha512DigestHex": "6734188ed2dc41fdf9922e152848d46a4bd6a30083c918ac0de5197e1f998f8dc2b4e190c47b02c176f68b93591132c29be142b4b61a36c81aec2358a81864c6"
417489
}
418490
]
419491
}

firebase-dataconnect/src/main/proto/google/firebase/dataconnect/proto/connector_service.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
syntax = "proto3";
2020

21-
package google.firebase.dataconnect.v1beta;
21+
package google.firebase.dataconnect.v1;
2222

2323
import "google/firebase/dataconnect/proto/graphql_error.proto";
2424
import "google/protobuf/struct.proto";

firebase-dataconnect/src/main/proto/google/firebase/dataconnect/proto/graphql_error.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
syntax = "proto3";
2020

21-
package google.firebase.dataconnect.v1beta;
21+
package google.firebase.dataconnect.v1;
2222

2323
import "google/protobuf/struct.proto";
2424

firebase-vertexai/src/main/kotlin/com/google/firebase/vertexai/type/ImagenGenerationResponse.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@
1616

1717
package com.google.firebase.vertexai.type
1818

19+
import com.google.firebase.vertexai.ImagenModel
1920
import kotlinx.serialization.Serializable
2021

2122
/**
22-
* Represents a response from a call to [ImagenModel#generateImages]
23+
* Represents a response from a call to [ImagenModel.generateImages]
2324
*
2425
* @param images contains the generated images
2526
* @param filteredReason if fewer images were generated than were requested, this field will contain

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ hamcrestLibrary = "2.2"
3838
httpclientAndroid = "4.3.5.1"
3939
integrity = "1.2.0"
4040
jacksonCore = "2.13.1"
41-
jacksonDatabind = "2.13.1"
41+
jacksonDatabind = "2.18.2"
4242
javalite = "3.25.5"
4343
jsonassert = "1.5.0"
4444
kotest = "5.9.0" # Do not use 5.9.1 because it reverts the fix for https://github.com/kotest/kotest/issues/3981
@@ -71,7 +71,7 @@ serialization-plugin = "1.8.22"
7171
slf4jNop = "2.0.9"
7272
spotless = "7.0.0.BETA3"
7373
testServices = "1.2.0"
74-
truth = "1.4.2"
74+
truth = "1.4.4"
7575
truthProtoExtension = "1.0"
7676
wiremockStandalone = "2.26.3"
7777

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
/*
2+
* Copyright 2025 Google LLC
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
package com.google.firebase.gradle.plugins
18+
19+
import org.gradle.api.DefaultTask
20+
import org.gradle.api.file.RegularFileProperty
21+
import org.gradle.api.tasks.InputFile
22+
import org.gradle.api.tasks.OutputFile
23+
import org.gradle.api.tasks.TaskAction
24+
25+
abstract class CopyApiTask : DefaultTask() {
26+
@get:InputFile abstract val apiTxtFile: RegularFileProperty
27+
@get:OutputFile abstract val output: RegularFileProperty
28+
29+
@TaskAction
30+
fun run() {
31+
output.get().asFile.writeText(apiTxtFile.get().asFile.readText())
32+
}
33+
}

plugins/src/main/java/com/google/firebase/gradle/plugins/FirebaseAndroidLibraryPlugin.kt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,19 @@ class FirebaseAndroidLibraryPlugin : BaseFirebaseLibraryPlugin() {
160160
.getLatestReleasedVersion()
161161
)
162162
}
163+
164+
project.tasks.register<CopyApiTask>("copyApiTxtFile") {
165+
apiTxtFile.set(project.file("api.txt"))
166+
output.set(project.file("previous_api.txt"))
167+
}
168+
169+
project.tasks.register<SemVerTask>("metalavaSemver") {
170+
apiTxtFile.set(project.file("api.txt"))
171+
otherApiFile.set(project.file("previous_api.txt"))
172+
outputApiFile.set(project.file("opi.txt"))
173+
currentVersionString.value(firebaseLibrary.version)
174+
previousVersionString.value(firebaseLibrary.previousVersion)
175+
}
163176
}
164177

165178
private fun setupApiInformationAnalysis(project: Project, android: LibraryExtension) {

plugins/src/main/java/com/google/firebase/gradle/plugins/FirebaseJavaLibraryPlugin.kt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,19 @@ class FirebaseJavaLibraryPlugin : BaseFirebaseLibraryPlugin() {
103103

104104
dependsOn("copyPreviousArtifacts")
105105
}
106+
107+
project.tasks.register<CopyApiTask>("copyApiTxtFile") {
108+
apiTxtFile.set(project.file("api.txt"))
109+
output.set(project.file("previous_api.txt"))
110+
}
111+
112+
project.tasks.register<SemVerTask>("metalavaSemver") {
113+
apiTxtFile.set(project.file("api.txt"))
114+
otherApiFile.set(project.file("previous_api.txt"))
115+
outputApiFile.set(project.file("opi.txt"))
116+
currentVersionString.value(firebaseLibrary.version)
117+
previousVersionString.value(firebaseLibrary.previousVersion)
118+
}
106119
}
107120

108121
private fun setupApiInformationAnalysis(project: Project) {

plugins/src/main/java/com/google/firebase/gradle/plugins/FirebaseLibraryExtension.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,9 @@ constructor(val project: Project, val type: LibraryType) {
241241
val version: String
242242
get() = project.version.toString()
243243

244+
val previousVersion: String
245+
get() = project.properties["latestReleasedVersion"].toString()
246+
244247
val path: String = project.path
245248

246249
val runtimeClasspath: String =

plugins/src/main/java/com/google/firebase/gradle/plugins/Metalava.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ fun Project.runMetalavaWithArgs(
5555
) {
5656
val allArgs =
5757
listOf(
58-
"--no-banner",
5958
"--hide",
6059
"HiddenSuperclass", // We allow having a hidden parent class
6160
"--hide",

0 commit comments

Comments
 (0)