-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
build: evaluate using protolock in API build #3368
Comments
@mattklein123 are your messages/services ever in draft mode on the master branch? If only in another branch as drafts, the proto.lock file would be checked in and compared against at its (git) committed state. |
@nilslice we do have draft stuff committed to master. The way we do this currently is to use comment annotations: https://github.com/envoyproxy/envoy/blob/master/tools/protodoc/protodoc.py#L51 I'm wondering if potentially we could do something similar with protolock such that given annotations on a message we could set lock status for that message and submessages? That would allow us to lock non-draft protos but allow other ones to float that are draft/alpha status. |
@mattklein123 if you aren't opposed to dressing up a draft message with a more general annotation, i.e. The behavior there would be that an |
@nilslice yup that sounds perfect. |
support for skipping messages and services via comment annotation in: nilslice/protolock#15 |
Just updating the thread -- |
protolock now has full support for Enum, Map, and Oneof types within each pertinent rule func. I would be happy to implement the check before builds once I figure out where in Envoy this should occur. cc/ @mattklein123 @rodaine @twoism @htuch any pointers would be much appreciated. |
@nilslice we basically want to apply this over all protos in https://github.com/envoyproxy/envoy/tree/master/api. We would want to ignore any in directories containing |
@htuch - excellent, thank you for the direction. I'll get a branch up and may ask for further assistance once I take an initial swing. |
Moving this to post 1.12.0, since this is in the nice-to-have but not needed bucket. |
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions. |
This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted" or "no stalebot". Thank you for your contributions. |
@YaseenAlk is working on this. |
See https://github.com/nilslice/protolock. Should be able to help us codify avoiding accidental breaking changes. The one thing that comes to mind is we are likely going to need some type of mixed mode where certain messages are locked and others are not locked while they are draft. Not sure if that is supported but probably pretty easy to do via some type of comment annotation.
cc @nilslice @rodaine @twoism @htuch
The text was updated successfully, but these errors were encountered: