2018-07-01から1ヶ月間の記事一覧

protobufのboolはどこまでcompatibleなのか

Protocol Buffers(以下、protobuf)におけるboolのcompatibilityは、Language Guideで以下のように述べられています。 int32, uint32, int64, uint64, and bool are all compatible これを読むと、もともとboolだったMessage Typeをint32にアップデートできる…

gRPCでリクエストパラメータのValidation

goのgRPCで便利ツールを使うで紹介されているGo gRPC MiddlewareとGolang ProtoBuf Validator CompilerでgRPCのvalidationをします。 今回の例では、Userの年齢は負数にならない、電話番号やメールアドレスを正規表現でvalidationするといったことを実装しま…

vgoを試してみる

Go1.11から導入されるvgoを試してみたメモ書きです。 基本的な流れは、和訳: A Tour of Versioned Go (vgo) (Go & Versioning, Part2)に沿っています。versioningが必要な理由や議論などは本記事では扱いません。 上記記事からvgoの開発が進みコマンドがいく…

RustでTOMLを読み込む

toml-rsで、以下のPerson.tomlを読み込みます。 # Person.toml [profile] name = "Alice" age = 20 準備 toml-rsに加えて、 DeserializeにSerdeを使うので、Cargo.tomlに以下を追記します。 # Cargo.toml [dependencies] serde = "1.0" serde_derive = "1.0"…