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

Generate Swagger description for service methods using proto comments. #134

Merged
merged 11 commits into from
May 17, 2016

Commits on Apr 18, 2016

  1. Generate Swagger description for service methods using proto comments.

    While this is a first step in resolving grpc-ecosystem#128, this
    needs to be cleaned up, and the same approach needs to be used for
    messages, message fields, et al.
    
    echo_service.proto has been annotated with extra comments in order to
    demo the new descriptions.
    
    Only the Swagger example has been regenerated, as my local generator
    does not output all the expected fields in proto struct tags.
    ivucica committed Apr 18, 2016
    Configuration menu
    Copy the full SHA
    d2fd8af View commit details
    Browse the repository at this point in the history

Commits on Apr 27, 2016

  1. Configuration menu
    Copy the full SHA
    06b3e56 View commit details
    Browse the repository at this point in the history
  2. Generate Swagger description for enum types, enum values and nested m…

    …essages using proto comments
    t-yuki committed Apr 27, 2016
    Configuration menu
    Copy the full SHA
    97558d4 View commit details
    Browse the repository at this point in the history

Commits on May 1, 2016

  1. Documented protoPathIndex. Improved error handling.

    Also, fixed a few typos and renamed protoPath into protoPathIndex
    (as we are not returning the entire path in that method).
    ivucica committed May 1, 2016
    Configuration menu
    Copy the full SHA
    081be28 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8bdac72 View commit details
    Browse the repository at this point in the history
  3. Fix test which was not setting the SourceCodeInfo field.

    This field should generally be non-nil while running the generator.
    This commit also adds a trivial check to make panic more informative
    in case a future test breaks in a similar fashion.
    ivucica committed May 1, 2016
    Configuration menu
    Copy the full SHA
    bdceda1 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2016

  1. Swagger: summary, description, custom JSON, package docs.

    This patch will extract summary separately from description in
    Swagger objects that happen to support both summary and
    description. It will do so by splitting the relevant proto
    comment based on paragraphs, and using the first paragraph
    as the summary.
    
    This patch will also allow updating the Swagger schema's
    otherwise hard-to-map fields by allowing custom JSON to be
    placed within the proto comment. The syntax leaves something to
    be desired, but it works. Use of JSON is, on the other hand,
    rather universal.
    
    This patch will also allow describing the whole API by attaching
    the comments to the 'package' stanza inside the proto. In this
    case, summary will be applied to info.title, and description
    will be applied to info.description. Other properties have to be
    set through JSON.
    
    Schema has been slightly updated to allow for fields such as
    termsOfService, contact, license, externalDocs, etc.
    
    If a method is not documented, stub summary for Swagger
    Operation is no longer generated.
    
    Documentation for enum values is now multiline with dashes
    before values.
    ivucica committed May 7, 2016
    Configuration menu
    Copy the full SHA
    26727f7 View commit details
    Browse the repository at this point in the history
  2. Swagger: Default response's key is now 200.

    While the spec does not seem to dictate this, most of the
    examples seem to have HTTP status codes as the keys. This
    patch replaces the text 'default' with value of '200'.
    ivucica committed May 7, 2016
    Configuration menu
    Copy the full SHA
    cc33223 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0d71621 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f45fe56 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    562956f View commit details
    Browse the repository at this point in the history