proto-lens-jsonpb: JSON protobuf encoding for proto-lens

[ bsd3, library, web ] [ Propose Tags ]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.1, 0.2.2
Dependencies aeson (>=1.4.2.0 && <3), attoparsec (>=0.13.2.3), base (>=4.7 && <5), base64-bytestring (>=1), bytestring (>=0.10.8.2 && <0.13), proto-lens-runtime (>=0.5 && <0.8), text (>=1.2 && <3), vector (>=0.12.0.3) [details]
License BSD-3-Clause
Copyright 2019 Timothy Clem
Author Timothy Clem
Maintainer timothy.clem@gmail.com
Category Web
Home page https://github.com/tclem/proto-lens-jsonpb#readme
Bug tracker https://github.com/tclem/proto-lens-jsonpb/issues
Source repo head: git clone https://github.com/tclem/proto-lens-jsonpb
Uploaded by patrick_thomson at 2023-01-05T16:49:12Z
Distributions NixOS:0.2.2
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 1967 total (34 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for proto-lens-jsonpb-0.2.2

[back to package description]

proto-lens-jsonpb

Quick hack to generate orphan ToJSON/FromJSON instances for proto-lens.

This requires the use of proto-lens to generate haskell datatypes from proto messages.

Requirements

  1. Install protoc (e.g., brew install protoc)
  2. Install the required protoc plugins:
    • cabal install proto-lens-protoc
    • go install github.com/tclem/proto-lens-jsonpb/protoc-gen-jsonpb_haskell

Usage

Use the protoc plugin to generate associated protobuf types from a proto file.

protoc -I=. --proto_path=./proto \
  --plugin=protoc-gen-haskell=`which proto-lens-protoc` --haskell_out=./app \
  --plugin=protoc-gen-jsonpb_haskell=./script/run-jsonpb_haskell --jsonpb_haskell_out=./app \
  haberdasher.proto