Skip to content

ProtoBuffer compatibility support #1197

Description

@chaokunyang

Is your feature request related to a problem? Please describe.

ProtoBuf is used commonly. For ProtoBuf, users define the message in IDL

syntax = "proto3";

message SearchRequest {
  string query = 1;
  int32 page_number = 2;
  int32 results_per_page = 3;
}

then use the protoc to compile the schema IDL into generated data holder and serializer class.

If users want to migrate from ProtoBuf to Fury for better performance or future reference/polymorphism
support, they must define struct in every language manually. This may take some cost if there are many struct to write.

Describe the solution you'd like

Fury can implement a static schema compiler furyc, which support parsing ProtoBuf IDL, then generate fury serializer code plain data holder struct.

The furyc can be implemented by python, and use antllr4-python to parse ProtoBuf IDL grammer.

Additional context

#1017

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions