b9ed537f64
* Remove unnecessary self-dependency * Regenerate core/default.nix and build -core via callCabal2nix * grpc-haskell-core: -Wall -Werror and fix warnings * grpc-haskell: -Wall -Werror and fix warnings * Update documentation * Remove LD_LIBRARY_PATH sets from usesGRPC ...as they no longer seem to be needed. * Remove dead code * Remove core/default.nix ...as suggested by @evanrelf. |
||
---|---|---|
.github/workflows | ||
bench | ||
bin | ||
core | ||
examples | ||
nix | ||
src/Network/GRPC | ||
tests | ||
.gitignore | ||
default.nix | ||
grpc-haskell.cabal | ||
LICENSE | ||
nixpkgs.nix | ||
README.md | ||
release.nix | ||
Setup.hs | ||
shell.nix | ||
stack.yaml |
Attribution
This library is a fork of https://github.com/aloiscochard/grpc-haskell that we
have extended and released under the same LICENSE
Installation
The current version of this library requires gRPC version 1.34.1. Newer versions may work but have not been tested.
Usage
There is a tutorial here
Building and testing
nix-build release.nix -A grpc-haskell
will build and test the whole thing and
put the completed package into the nix store. nix-shell
can be used to give
you a development environment where you can use cabal
for development and
testing:
$ nix-shell
[nix-shell]$ cabal configure --enable-tests && cabal build && cabal test
Using the Library
You must compile with -threaded
, because we rely on being able to execute
Haskell while blocking on foreign calls to the gRPC library. If not using code
generation, the recommended place to start is in the
Network.GRPC.HighLevel.Server.Unregistered
module, where serverLoop
provides
a handler loop.