Skip to content

Pull in 26.0 finals of nifgen driver grpc-device metadata#1254

Open
WengLoon-NI wants to merge 2 commits intoni:mainfrom
WengLoon-NI:main
Open

Pull in 26.0 finals of nifgen driver grpc-device metadata#1254
WengLoon-NI wants to merge 2 commits intoni:mainfrom
WengLoon-NI:main

Conversation

@WengLoon-NI
Copy link
Copy Markdown

@WengLoon-NI WengLoon-NI commented Apr 1, 2026

What does this Pull Request accomplish?

Pulls in the 26.0 final grpc-device metadata for the nifgen drivers.

Why should this Pull Request be merged?

The nifgen.proto file was outdated, leading to a mismatch in message extraction between the gRPC client and server.

What testing has been done?

  • Local build suceeded

Breaking Changes / Removals

  • Enum Field Update
    • In the following RPC requests, the field edge has been updated:
      • ConfigureDigitalEdgeScriptTriggerRequest
      • ConfigureDigitalEdgeStartTriggerRequest
    • Clients must now use either:
      • edge_raw (raw integer field), or
      • edge (enum-based field).

Impact: Any client code referencing the old edge field must be updated.

  • RPC Removals
    • GetNextCoercionRecord
    • GetNextInterchangeWarning

Impact: Clients relying on these RPCs must remove or refactor calls, as they are no longer available.

import "session.proto";

service NiFgen {
rpc AbortGeneration(AbortGenerationRequest) returns (AbortGenerationResponse);
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I'm trying to figure out why the hapigen produced proto file is messing with the order of things. I'll circle back on this when I figure that out with guidance.

Copy link
Copy Markdown
Collaborator

@reckenro reckenro Apr 2, 2026

Choose a reason for hiding this comment

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

Figured out the issue on the hapigen side.
Working on a fix in this AzDo PR
And reflecting updated NI Fake service as validation in this GitHub PR

But even after those go in, it won't fix the sorting in this older FGEN proto generated by hapigen.

So, for this PR, I'm okay with you getting past this issue by:

  • Copying generated/nifgen/nifgen.proto to source/codegen/metadata/nifgen/nifgen.proto.

The metadata is the same generating the proto, and the content is the same in resulting protos, it's just a sorting issue so I'm fine with this mitigation for now. For the next FGEN release, the proto coming from hapigen should be sorted again.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@WengLoon-NI , you're going to have to do this to get the build passing:

  • Replace source/codegen/metadata/nifgen/nifgen.proto with a copy of generated/nifgen/nifgen.proto

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Done replace the nifgen.proto in source/codegen/metadata/nifgen/ with a copy of generated/nifgen. thanks for the point out

@reckenro reckenro added the binary-breaking Change to proto file that requires client updates label Apr 2, 2026
Copy link
Copy Markdown
Collaborator

@reckenro reckenro left a comment

Choose a reason for hiding this comment

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

Reset me after you address the comments and I'll take another look through

@WengLoon-NI WengLoon-NI requested a review from reckenro April 3, 2026 01:52
Copy link
Copy Markdown
Collaborator

@reckenro reckenro left a comment

Choose a reason for hiding this comment

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

Looks good, just need to replace metadata proto with generated one to get the build to pass because of hapigen sorting issue.

@WengLoon-NI WengLoon-NI requested a review from reckenro April 7, 2026 02:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

binary-breaking Change to proto file that requires client updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants