Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dataconnect: change grpc api version from "v1beta" to "v1" #6729

Merged
merged 4 commits into from
Feb 27, 2025

Conversation

dconeybe
Copy link
Contributor

The gRPC proto requests are changed to using the v1 endpoint, instead of the v1beta endpoint.

If interested, see #6299 for the similar change from v1alpha to v1beta.

Copy link
Contributor

github-actions bot commented Feb 26, 2025

📝 PRs merging into main branch

Our main branch should always be in a releasable state. If you are working on a larger change, or if you don't want this change to see the light of the day just yet, consider using a feature branch first, and only merge into the main branch when the code complete and ready to be released.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @dconeybe, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Summary of Changes

This pull request updates the gRPC proto requests to use the v1 endpoint instead of the v1beta endpoint. This change affects the CHANGELOG.md, dataconnect.yaml files in both the demo and emulator directories, and the connector_service.proto and graphql_error.proto files.

Highlights

  • API Version Update: The core change is the update from v1beta to v1 in the gRPC proto package, reflecting a move to a more stable API version.
  • Configuration Updates: The specVersion field in the dataconnect.yaml files for both the demo and emulator environments has been updated to v1.
  • Proto Package Update: The proto files connector_service.proto and graphql_error.proto have their package declarations updated from google.firebase.dataconnect.v1beta to google.firebase.dataconnect.v1.
  • Changelog Update: The CHANGELOG.md file has been updated to reflect the gRPC proto package change to v1.

Changelog

  • firebase-dataconnect/CHANGELOG.md
    • Added a changelog entry indicating the gRPC proto package has been changed to v1 from v1beta.
  • firebase-dataconnect/demo/firebase/dataconnect/dataconnect.yaml
    • Updated specVersion from v1beta to v1.
  • firebase-dataconnect/emulator/dataconnect/dataconnect.yaml
    • Updated specVersion from v1beta to v1.
  • firebase-dataconnect/src/main/proto/google/firebase/dataconnect/proto/connector_service.proto
    • Updated the package declaration from google.firebase.dataconnect.v1beta to google.firebase.dataconnect.v1.
  • firebase-dataconnect/src/main/proto/google/firebase/dataconnect/proto/graphql_error.proto
    • Updated the package declaration from google.firebase.dataconnect.v1beta to google.firebase.dataconnect.v1.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.


Trivia time!

What is Protocol Buffers (protobuf) and who developed it?

Click here for the answer
Protocol Buffers (protobuf) is a language-neutral, platform-neutral extensible mechanism for serializing structured data. It was developed by Google.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the gRPC proto requests to use the v1 endpoint instead of the v1beta endpoint. The changes are relatively small and focused, primarily involving updates to YAML files and proto definitions. Overall, the changes look good.

Summary of Findings

  • Clarity in Changelog: The changelog entry could be slightly more descriptive about the impact of the gRPC proto package change.
  • Consistency in YAML files: While the change updates the specVersion in the YAML files, it's worth ensuring that all other configurations are also compatible with the v1 endpoint.

Assessment

The pull request updates the gRPC proto requests to use the v1 endpoint instead of v1beta. The changes seem straightforward and necessary. I've provided a few minor suggestions to improve clarity and consistency. Overall, the changes look good and are on the right track. Please have others review and approve this code before merging.

@dconeybe dconeybe changed the title dataconnect: v1beta -> v1 dataconnect: change grpc api version from "v1beta" to "v1" Feb 26, 2025
@dconeybe dconeybe mentioned this pull request Feb 26, 2025
@google-oss-bot
Copy link
Contributor

google-oss-bot commented Feb 26, 2025

Coverage Report 1

Affected Products

  • firebase-dataconnect

    Overall coverage changed from ? (00c2919) to 14.82% (46853e2) by ?.

    57 individual files with coverage change

    FilenameBase (00c2919)Merge (46853e2)Diff
    AlphanumericStringUtil.kt?0.00%?
    AnyValue.kt?0.00%?
    AnyValueSerializer.kt?0.00%?
    Comparisons.kt?0.00%?
    ConnectorConfig.kt?33.33%?
    CoroutineExceptionHandler.kt?50.00%?
    DataConnectAppCheck.kt?71.43%?
    DataConnectAuth.kt?71.43%?
    DataConnectCredentialsTokenManager.kt?32.32%?
    DataConnectError.kt?0.00%?
    DataConnectException.kt?0.00%?
    DataConnectGrpcClient.kt?0.00%?
    DataConnectGrpcMetadata.kt?65.82%?
    DataConnectGrpcRPCs.kt?0.00%?
    DataConnectSettings.kt?33.33%?
    DataConnectUntypedData.kt?0.00%?
    DataConnectUntypedVariables.kt?0.00%?
    ExperimentalFirebaseDataConnect.kt?0.00%?
    FirebaseDataConnect.kt?50.00%?
    FirebaseDataConnectFactory.kt?29.17%?
    FirebaseDataConnectImpl.kt?46.67%?
    FirebaseDataConnectRegistrar.kt?100.00%?
    GeneratedConnector.kt?0.00%?
    GeneratedMutation.kt?0.00%?
    GeneratedOperation.kt?0.00%?
    GeneratedQuery.kt?0.00%?
    Globals.kt?0.00%?
    JavaTimeLocalDateSerializer.kt?0.00%?
    KotlinxDatetimeLocalDateSerializer.kt?0.00%?
    LiveQueries.kt?0.00%?
    LiveQuery.kt?0.00%?
    LocalDate.kt?0.00%?
    LocalDateSerializer.kt?0.00%?
    Logger.kt?73.68%?
    LogLevel.kt?72.73%?
    MutationRef.kt?0.00%?
    MutationRefImpl.kt?12.36%?
    NullableReference.kt?40.00%?
    NullOutputStream.kt?0.00%?
    OperationRef.kt?0.00%?
    OperationRefImpl.kt?20.45%?
    OptionalVariable.kt?0.00%?
    ProtoStructDecoder.kt?0.00%?
    ProtoStructEncoder.kt?0.00%?
    ProtoUtil.kt?0.00%?
    QueryManager.kt?0.00%?
    QueryRef.kt?0.00%?
    QueryRefImpl.kt?14.08%?
    QuerySubscription.kt?0.00%?
    QuerySubscriptionImpl.kt?0.00%?
    QuerySubscriptionInternal.kt?0.00%?
    ReferenceCounted.kt?0.00%?
    RegisteredDataDeserialzer.kt?0.00%?
    SequencedReference.kt?0.00%?
    SuspendingLazy.kt?31.58%?
    TimestampSerializer.kt?0.00%?
    UUIDSerializer.kt?0.00%?

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/ycziYTK84O.html

Copy link
Contributor

github-actions bot commented Feb 26, 2025

Test Results

   64 files  ±0     64 suites  ±0   1m 10s ⏱️ +4s
  542 tests ±0    541 ✅ ±0  1 💤 ±0  0 ❌ ±0 
1 084 runs  ±0  1 082 ✅ ±0  2 💤 ±0  0 ❌ ±0 

Results for commit dc35eac. ± Comparison against base commit 00c2919.

♻️ This comment has been updated with latest results.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Feb 26, 2025

Size Report 1

Affected Products

  • base

    TypeBase (00c2919)Merge (46853e2)Diff
    apk (aggressive)?8.80 kB? (?)
    apk (release)?9.77 kB? (?)
  • firebase-dataconnect

    TypeBase (00c2919)Merge (46853e2)Diff
    aar?709 kB? (?)
    apk (aggressive)?440 kB? (?)
    apk (release)?10.0 MB? (?)

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/npCPUeuHMe.html

…as v1.7.7)

diff --git a/firebase-dataconnect/gradleplugin/plugin/src/main/resources/com/google/firebase/dataconnect/gradle/plugin/DataConnectExecutableVersions.json b/firebase-dataconnect/gradleplugin/plugin/src/main/resources/com/google/firebase/dataconnect/gradle/plugin/DataConnectExecutableVersions.json
index 1854796df..bc2038801 100644
--- a/firebase-dataconnect/gradleplugin/plugin/src/main/resources/com/google/firebase/dataconnect/gradle/plugin/DataConnectExecutableVersions.json
+++ b/firebase-dataconnect/gradleplugin/plugin/src/main/resources/com/google/firebase/dataconnect/gradle/plugin/DataConnectExecutableVersions.json
@@ -1,5 +1,5 @@
 {
-  "defaultVersion": "1.7.7",
+  "defaultVersion": "1.8.3",
   "versions": [
     {
       "version": "1.3.4",
@@ -414,6 +414,78 @@
       "os": "linux",
       "size": 25268376,
       "sha512DigestHex": "f55feb1ce670b4728bb30be138ab427545f77f63f9e11ee458096091c075699c647d5b768c642a1ef6b3569a2db87dbbed6f2fdaf64febd1154d1a730fda4a9c"
+    },
+    {
+      "version": "1.8.0",
+      "os": "windows",
+      "size": 25903616,
+      "sha512DigestHex": "753a5e4be35c544317bcdbaaa860f079a9c9d8a24ca3db17fed601d30b64f083a9203fbb76718d23f3ad77f1556adfb5a4226751ec48c202bd227479c57d1ae9"
+    },
+    {
+      "version": "1.8.0",
+      "os": "macos",
+      "size": 25469696,
+      "sha512DigestHex": "23c1e405b196799a7c84b9783ca110459bba3aa86405d2fc03d83f90530642d590b02cd06588a8428e0e7bb7d1c59e6d03113bbc5c41e12cff7a7c46674fc430"
+    },
+    {
+      "version": "1.8.0",
+      "os": "linux",
+      "size": 25383064,
+      "sha512DigestHex": "9546bb62d54b67086847d3e129397f4cfceb5b715d64f0a1cc0a053b5dfe918e8372142b7e9bacd11dede77ddd17840058efb8ed6a7073e99fd5a684fdc57bea"
+    },
+    {
+      "version": "1.8.1",
+      "os": "windows",
+      "size": 25904128,
+      "sha512DigestHex": "26dc987e38d5d07a910da647920cc2fe990f1da0db56206def71a9833f8eeb66272d8f32ba091b0d4d6e065a3d5cd950cd835a891895c6a55d735a6f240bf4b7"
+    },
+    {
+      "version": "1.8.1",
+      "os": "macos",
+      "size": 25469696,
+      "sha512DigestHex": "d7bcb01912b1949a003fd0a7ebbc1bb42e79e97b7fd880ba9164b62e05d1ffb634662d97fd4664343e28780e69953aadecd5fb799a8f51229a4c0fbf552936ac"
+    },
+    {
+      "version": "1.8.1",
+      "os": "linux",
+      "size": 25383064,
+      "sha512DigestHex": "2a28ba7947f84ede9062b5f5efa145b29862be0a8724ac6b6a4210f6823024d33363bd3379a6474965fbd60376baae9103ce7e4509db9d52c2b13886bca5df92"
+    },
+    {
+      "version": "1.8.2",
+      "os": "windows",
+      "size": 25936384,
+      "sha512DigestHex": "f2aed75baaeed388d8fcd8a3d18e629f9ed012f60de0401bc365227094688f130ce7aa02db565002fe7b06a339b1cb133a7c87da365d480fb10cdb47d55c7dfa"
+    },
+    {
+      "version": "1.8.2",
+      "os": "macos",
+      "size": 25506560,
+      "sha512DigestHex": "d4ac9e15f5a42fed28fd2f3cb2c80bc3f4def60f76517661323c502fa7a4b085bda3d26eb62cdcb630a13999e2fb0428ee45d335e20641229a9439cc60a9e798"
+    },
+    {
+      "version": "1.8.2",
+      "os": "linux",
+      "size": 25415832,
+      "sha512DigestHex": "fec0fb97fb3ad30bdd9d0e3b65095e2dfdcfccd15e7c6ae9fe827ec1c3b5b9b592c80c59cadb3540e387d4adcf3560922094399c5ca3d162288a33403308104d"
+    },
+    {
+      "version": "1.8.3",
+      "os": "windows",
+      "size": 25965568,
+      "sha512DigestHex": "9b6ded9ddac61d5f137ac65944409003906d621bb3a03ba6bf037b1aeddabf23f9410de6fbc05b8ea0c9afa2a8328bb02a57ed225f8ebaa3c8d6921755ad715c"
+    },
+    {
+      "version": "1.8.3",
+      "os": "macos",
+      "size": 25535232,
+      "sha512DigestHex": "0c88a14ae64308e68957f5e79f9e20b4b946977187132dcc24193370c81b9117487fb0ee1c5be4e8f2368945add7ed37d6d97b015c3ea8232e09664458c8e802"
+    },
+    {
+      "version": "1.8.3",
+      "os": "linux",
+      "size": 25448600,
+      "sha512DigestHex": "6734188ed2dc41fdf9922e152848d46a4bd6a30083c918ac0de5197e1f998f8dc2b4e190c47b02c176f68b93591132c29be142b4b61a36c81aec2358a81864c6"
     }
   ]
 }
\ No newline at end of file
@dconeybe
Copy link
Contributor Author

This work is tracked internally in Google by b/396213533

@dconeybe dconeybe merged commit 16d2ba8 into main Feb 27, 2025
45 checks passed
@dconeybe dconeybe deleted the dconeybe/dataconnect/fdcv1api branch February 27, 2025 21:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants