grpc-labview icon indicating copy to clipboard operation
grpc-labview copied to clipboard

Regenerating helloworld.proto doesn't generate client VI for new RPC

Open bkeryan opened this issue 2 years ago • 2 comments

I'm trying to follow QuickStart.md. When I add a SayHelloAgain RPC to helloworld.proto and run the code generator, it creates a new folder helloworld_client/RPC Service/Greeter/helloworld_greeter_SayHelloAgain, but no corresponding VI:

QuickStart.md says

Note: In case, Client Code is not fully regenerated (as the tool is in beta version), delete the already created client code from the project and file explorer, and generate from scratch again

It doesn't say exactly which code to delete, but if I delete the RPC Messages and RPC Service folders from disk (without modifying the .lvproj or .lvlib files), I get error 7, file helloworld_server\RPC Messages\helloworld_HelloReply.ctl not found:

If I also remove the RPC Messages and RPC Service folders from the project and select File >> Save All (this Project), then I get error 1055, object reference is invalid, which is the same as https://github.com/ni/grpc-labview/issues/84:

Versions:

  • grpc-labview 4.7.1
  • LabVIEW 2021 SP1 (64-bit)

bkeryan avatar Jun 15 '22 19:06 bkeryan

LabVIEW 2019 SP1 (64-bit) has the same behavior.

bkeryan avatar Jun 15 '22 20:06 bkeryan

Create Message Data Clusters (simple).vi assumes the RPC Messages virtual folder already exists. If I delete it from the project, then Create Client from Template.vi doesn't re-create it because the lvlib's folder already exists and the code for updating an existing lvlib is disabled using a diagram disable structure.

It seems like there is more work to do in order to support updating an existing project or lvlib. In the mean time, it would be helpful for QuickStart.md to say exactly what to delete from disk and/or the project.

bkeryan avatar Jun 15 '22 21:06 bkeryan