🆙

Goa 更新情報 v3.7.4, v3.7.5

2022/05/15に公開

概要

Goa の更新情報メモです。

Goa v3.7.4, v3.7.5

更新内容

Goa が生成したフィールドの protobuf の型をメタタグ struct:field:proto を用いて上書きできるようになりました。すでにあった struct:field:type の protobuf 版です。

var Timestamp = Type("Timestamp", func() {
    Description("Google timestamp compatible design")
    Field(1, "seconds", Int64, "Unix timestamp in seconds", func() {
        Meta("struct:field:proto", "int64") // Goa generates sint64 by default
    })
    Field(2, "nanos", Int32, "Unix timestamp in nanoseconds", func() {
        Meta("struct:field:proto", "int32") // Goa generates sint32 by default
    })
})

var MyType = Type("MyType", func() {
    Field(1, "created_at", Timestamp, func() {
        Meta("struct:field:proto", "google.protobuf.Timestamp", "google/protobuf/timestamp.proto")
    })
})

追記:

v3.7.5 で quick fix が出ました。
https://github.com/goadesign/goa/compare/v3.7.4...v3.7.5

Happy hacking!

Discussion