packages feed

proto-lens-protoc-0.1.0.2: proto-lens-protoc.cabal

name:                proto-lens-protoc
version:             0.1.0.2
synopsis:            Protocol buffer compiler for the proto-lens library.
description:
  Turn protocol buffer files (.proto) into Haskell files (.hs) which
  can be used with the proto-lens package.

  The library component of this package contains compiler code (namely
  Data.ProtoLens.Compiler.*) that is not guaranteed to have stable APIs.
license:             BSD3
license-file:        LICENSE
author:              Judah Jacobson
maintainer:          judahjacobson@google.com
copyright:           Google Inc.
category:            Data
build-type:          Simple
cabal-version:       >=1.21

library
  exposed-modules:
      Bootstrap.Proto.Google.Protobuf.Compiler.Plugin
      Bootstrap.Proto.Google.Protobuf.Descriptor
      Data.ProtoLens.Compiler.Combinators
      Data.ProtoLens.Compiler.Definitions
      Data.ProtoLens.Compiler.Generate
      Data.ProtoLens.Compiler.Plugin
      Data.ProtoLens.Setup
  default-language:  Haskell2010
  hs-source-dirs:    src
  build-depends:
        Cabal >= 1.22 && < 1.25
      , base >= 4.8 && < 4.10
      , bytestring == 0.10.*
      , containers == 0.5.*
      , data-default-class == 0.0.*
      , directory == 1.2.*
      , filepath == 1.4.*
      , haskell-src-exts == 1.17.*
      , lens-family == 1.2.*
      , process >= 1.2 && < 1.5
      , proto-lens == 0.1.0.2
      , text == 1.2.*
  reexported-modules:
      -- Modules that are needed by the generated Haskell files.
      -- For forwards compatibility, reexport them as new module names so that
      -- other packages don't accidentally write non-generated code that
      -- relies on these modules being reexported by proto-lens-protoc.
        Data.ByteString as Data.ProtoLens.Reexport.Data.ByteString
      , Data.Default.Class as Data.ProtoLens.Reexport.Data.Default.Class
      , Data.Map as Data.ProtoLens.Reexport.Data.Map
      , Data.ProtoLens as Data.ProtoLens.Reexport.Data.ProtoLens
      , Data.ProtoLens.Message.Enum as Data.ProtoLens.Reexport.Data.ProtoLens.Message.Enum
      , Data.Text as Data.ProtoLens.Reexport.Data.Text
      , Lens.Family2 as Data.ProtoLens.Reexport.Lens.Family2
      , Lens.Family2.Unchecked as Data.ProtoLens.Reexport.Lens.Family2.Unchecked

executable proto-lens-protoc
  main-is:  protoc-gen-haskell.hs

  build-depends:
        base >= 4.8 && < 4.10
      , bytestring == 0.10.*
      , containers == 0.5.*
      , data-default-class == 0.0.*
      , filepath == 1.4.*
      , haskell-src-exts == 1.17.*
      , lens-family == 1.2.*
      -- Specify an exact version of `proto-lens`, since it's tied closely
      -- to the generated code.
      , proto-lens == 0.1.0.2
      , text == 1.2.*
  hs-source-dirs:      src
  other-modules:
      Bootstrap.Proto.Google.Protobuf.Compiler.Plugin
      Bootstrap.Proto.Google.Protobuf.Descriptor
      Data.ProtoLens.Compiler.Combinators
      Data.ProtoLens.Compiler.Definitions
      Data.ProtoLens.Compiler.Generate
      Data.ProtoLens.Compiler.Plugin

  default-language:    Haskell2010