Skip to content

Partial Solution to Server Regeneration When Modifying .proto File#509

Open
Madd3DScientist wants to merge 2 commits into
ni:masterfrom
3DSystems:server-transfer
Open

Partial Solution to Server Regeneration When Modifying .proto File#509
Madd3DScientist wants to merge 2 commits into
ni:masterfrom
3DSystems:server-transfer

Conversation

@Madd3DScientist

Copy link
Copy Markdown
Contributor
  • Purpose: During development of a gRPC server, it is common to add, subtract, and modify commands. It is expected that modifying the .proto file then regenerating the server would work. It does not. Currently, the programmer must generate a differently named server, copy the code from the event structures from the old to the new, delete the old and rename the new. As servers get larger, this gets more difficult and it is easy to make mistakes.
  • Changes Made: This change introduces a script which automates this copying. The included README explains the process and lists conditions and known bugs. Total of two files added, the script and its README.
  • Related Issues: Not able to regenerate client code after changing .proto file #494, Server fails to rebuild if adding new rpc to .proto file #480
  • Testing: Take an existing server, modify its .proto file, and follow the directions in the README. This script has been tested with both large and small projects. It will fail if the restrictions in the README are not followed.

Ideally, the server creation script would scan the project for current elements and modify if present, rather than failing. However, writing that script would take awhile. Thus, this workaround.

- script and README
- facilitates addition or subtraction of functionality from server

Signed-off-by: Damien Gray <damien.gray@3dsystems.com>
Signed-off-by: Damien Gray <damien.gray@3dsystems.com>
@jasonmreding

Copy link
Copy Markdown
Collaborator

@Madd3DScientist I posted #513 which I'm hoping eliminates the need to submit these types of scripting/tooling work arounds. If you have time to look at and test these changes against the services you have been working with, I would be interested to hear your feedback. In particular, I'm curious whether that PR mostly addresses the needs that caused you to write this script or what other pain points remain where you would still keep this script around.

@Madd3DScientist

Copy link
Copy Markdown
Contributor Author

I should get a chance to check it this week. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants