Skip to content

Port to gRPC #5

@sfkleach

Description

@sfkleach

Goal

Implement a gRPC service as another executable in the main monogram repository. It should provide the ParseToAST function. This is a way of providing Monogram parsing capability to programming languages that otherwise haven't got a port.

The list of gRPC Supported languages (according to Copilot) is - C++, Java, Python, C# (.NET), Ruby, Node.js (JavaScript & TypeScript), PHP, Objective-C, Swift, Kotlin and Dart.

Outputs

Key Outputs

  • Source code for the executable, codenamed monogram-grpcd in this issue
  • Integrated into the reference implementation, which lives in ~/go/monogram/
    • Most likely in ~/go/monogram/cmd/monogram-grpcd/main.go
  • Integration tests using (say) grpcurl or Python's grpc_testing.

Documentation

  • Add new page to ~/docs/ folder that describes how to use monogram-grpcd.
  • Add a link from README.md.
  • Add link to CHANGELOG.md.

Automation

  • On push to main: Would be built as part of the CI and the integration tests would be run.

  • On release: And would be generated as a prebuilt binary for the 5 different target environments.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Approved

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions