Commit Graph

224 Commits

Author SHA1 Message Date
Joel Stanley
5edcf055db
Update documentation 2021-06-29 19:12:10 -05:00
Joel Stanley
4987b2a27a
Change the nix-shell entry point back to grpc-haskell.env 2021-06-29 19:12:09 -05:00
Joel Stanley
4f9590bd63
Add pinned cabal-install (3.4.0.0) for use in the nix-shell
...to work around the missing grpc lib/header problem with cabal-3.2.0.0.

Also removes test-grpc-haskell, as it is no longer needed.
2021-06-29 19:11:58 -05:00
Joel Stanley
8239b5ed2b
Slight amendment to updated documentation 2021-06-29 13:49:49 -05:00
Joel Stanley
ea34dd70e5
Update documentation 2021-06-29 13:45:49 -05:00
Joel Stanley
a3414fe146
grpc-haskell: -Wall -Werror and fix warnings 2021-06-29 11:14:04 -05:00
Joel Stanley
179131a474
grpc-haskell-core: -Wall -Werror and fix warnings 2021-06-29 11:02:49 -05:00
Joel Stanley
c76656f9c4
Excise c2hs references
`cabal` seems to want to download a newer c2hs than what is available on path at
the current nixpkgs pin, and I haven't been able to figure out how to force it
to do otherwise (open to suggestions).

For now, we just cabal slurp it from Hackage rather than using the nixpkgs
version. /shrug
2021-06-29 10:48:08 -05:00
Joel Stanley
b7c0b7552b
Remove dead code
We no longer need the additional test packages for the grpc-haskell derivation
since we now use test-grpc-haskell to obtain the nix-shell environment.
2021-06-29 10:47:16 -05:00
Joel Stanley
82070a9b16
Use test-grpc-haskell as the default nix-shell entry
...as I believe this will be the most common reason to enter the `nix-shell` for
the project.
2021-06-29 08:53:45 -05:00
Joel Stanley
f7ee958dbd
Fix test-grpc-haskell shell
These changes seemed necessary in order to actually build and run the tests
sucessfully inside `nix-shell release.nix --attr test-grpc-haskell`.
2021-06-29 08:52:54 -05:00
Joel Stanley
e80dd2ff31
Factor out shell-hook-common 2021-06-29 08:52:26 -05:00
Joel Stanley
c92a053981
Build grpc-haskell-core via callCabal2nix 2021-06-29 08:50:55 -05:00
Joel Stanley
1ba20e3d86
Remove unnecessary self-dependency 2021-06-29 08:50:04 -05:00
Matt Friede
28e9e68f3b
Add 1 to malloc'd buffer size for null terminator (#128) 2021-06-22 14:58:44 -07:00
Evan Relf
7cfe19fe14
Switch from Travis CI to GitHub Actions (#127) 2021-06-10 15:38:15 -07:00
Gabriel Gonzalez
8525994a4f
grpc-haskell-core: Version 0.0.0.0 → 0.1.0 (#126) 2021-05-14 14:34:57 -07:00
Gabriel Gonzalez
d821e58c2b
Fix lower bound on proto3-suite dependency (#124)
Fixes https://github.com/awakesecurity/gRPC-haskell/issues/122
2021-04-26 12:33:51 -07:00
Tristan de Cacqueray
0d1f54b6b8
Add the overlay to the release.nix with extend instruction (#123)
This change enables the integration of grpc-haskell within
foreign package set by exporting its overlay.
2021-04-26 10:24:33 -07:00
Gabriel Gonzalez
1bdc3662db
Version 0.1.0 (#119)
This is to prepare for an upcoming release to Hackage.  I increased the
version to 0.1.0 to reflect what I believe is a breaking change in #117
(since `grpc-haskell` will now require a newer version of the C `grpc`
dependency).
2021-03-23 10:40:51 -07:00
Tim McGilchrist
0c57ab0785
Upgrade gRPC C library (#117) 2021-03-08 13:44:36 -08:00
Gabriel Gonzalez
641f0bab04
Remove support for stack (#116)
Fixes #113
2021-01-13 15:56:23 -08:00
Gabriel Gonzalez
01e138e98d
Add Travis CI (#64) 2021-01-11 14:24:41 -08:00
Gabriel Gonzalez
2af32db3a9
Fix examples (#115)
Fixes https://github.com/awakesecurity/gRPC-haskell/issues/112
2021-01-11 09:24:25 -08:00
Nick
0cb7999e9e
Fixed typo. (#111) 2020-11-23 11:28:46 -06:00
intractable
6382857e2c
grpc-haskell-0.2.0.0: Upgrade to proto3-wire-1.2.0, proto3-suite-0.4.2.0 (#110)
* .gitignore

* release.nix: Minor cleanup

* Fix warning

* Expose max receive message length channel arg in `ServiceOptions`

* Fix warning

* Bump upstream dependencies and patch parameterized-0.5.0.0

* grpc-haskell 0.0.1.0 -> 0.0.2.0
2020-11-16 11:43:28 -06:00
Gabriel Gonzalez
d8f6e0b476
Fix Arithmetic example (#107)
The instructions for testing the `Arithmetic` example were
out of date
2020-09-04 12:04:30 -07:00
Gabriel Gonzalez
d7c3c3847a
Add new test-derivation target to release.nix (#108)
This comes in handy for `nix-shell` when you want to test
against an already built `grpc-haskell`
2020-09-04 11:02:41 -07:00
Gabriel Gonzalez
d532cec4d1
Make server process killable (#105)
35163c3 introduced a new use of `mask` which makes the server
process uninterruptible while waiting for a new incoming request.
This change fixes that by surrounding the logic that waits for a
new request with `unmask`.  This new `unmask` should still
respect the finalization guarantees of the surrounding masked
code.
2020-05-28 13:56:03 -04:00
Gabriel Gonzalez
595cb6a3bf
Update Arithmetic example to use newer proto3-suite (#102)
Related to https://github.com/awakesecurity/proto3-suite/issues/119
2020-02-10 10:19:29 -08:00
Fabian Schneider
bc155c1a52 format correction (#99)
changed , to . to correct the ordering
2019-12-20 08:13:53 -08:00
Moritz Kiefer
4164623844 Don’t free op array values in op_array_destroy (#98)
These values are all already freed in freeOpContext and doing it twice
is an error, see #91
2019-11-21 15:47:55 -08:00
Cj-bc
3defd1dcc5 Fix stack.yaml format to support stack 2.0 configuration (#93)
Information is here:
http://docs.haskellstack.org/en/stable/yaml_configuration/#packages
2019-09-18 08:25:00 -05:00
Moritz Kiefer
be70fc49b0 Mask body of runOps to avoid a heap corruption (#89) 2019-08-29 11:15:48 -05:00
Moritz Kiefer
01b17286b6 Free slice in OpSendStatusFromServerContext (#90)
We allocate the slice in createOpContext via byteStringToSlice but we
never freed it.
2019-08-28 09:46:14 -05:00
Moritz Kiefer
11681ec6b9
Fix sdist tarballs (#88)
A bunch of files have been missing from the tarballs created by `cabal
sdist`. I’ve changed the nix config to check for this and also found
some examples that I forgot to update in a previous PR (sorry about
that).
2019-08-28 09:28:26 +02:00
Moritz Kiefer
5ceeae74cc Upgrade to gRPC 1.22 (#85) 2019-08-22 11:12:21 -05:00
Moritz Kiefer
35163c3c18 Fix async exception handling (#86)
Previously, grpc-haskell used a lot of code in the form of

```
do x <- acquireResource
   f x `finally` releaseResource x
```

This is not safe since you can get killed after acquiring the resource
but before installing the exception handler via `finally`. We have
seen various gRPC assertion errors and crashes on shutdown when this
got triggered.
2019-08-22 10:55:33 -05:00
Moritz Kiefer
a26497c82c Expose ClientCall in ClientReaderHandler and ClientRWHandler (#87)
This allows you to cancel the call from within the callback using
`clientCallCancel`.
2019-08-22 10:53:41 -05:00
Moritz Kiefer
6e09678dc7 Upgrade nixpkgs to the latest nixpkgs-unstable (#84)
* Upgrade nixpkgs to the latest nixpkgs-unstable

* Bump proto3-suite
2019-08-20 10:47:32 -05:00
intractable
a818985323
Provide Network.GRPC.HighLevel.Client.simplifyServerStreaming (#82) 2019-08-12 13:03:25 -05:00
j6carey
c83eacd1f3
Move to newer proto3-suite. (#81) 2019-06-18 12:51:25 -07:00
j6carey
75cf21839b
Port grpc-haskell[-core] to ghc-8.6 and modern tasty. (#77)
Note that even though we can now build grpc-haskell and grpc-haskell-core
with modern tasty, the environment in which we built those test programs
did not support actually running all them successfully, due to the need to test
generated code in the context of the appropriate libraries.  We do not yet
know whether test programs built with new versions of tasty would succeed
in the appropriate environment.  In principle this could be discovered, but
the work involved is far from trivial, and therefore we defer it to another
time.  Tests built with the old tasty still succeed.
2019-03-25 16:52:04 -07:00
j6carey
c2a3aa6496
Allow dependency upon async-2.2.* (#75) 2019-02-11 10:44:16 -08:00
Manoj P R
e17f2cee46 Fix broken links to proto3-wire and proto3-suite (#72) 2019-01-22 08:40:55 -06:00
j6carey
bc457cc4e3
Shut down server when serverLoop thread is killed. (#71)
Previously, killing the thread running serverLoop
would not actually shut down the server, leading
to file descriptor leaks and perhaps worse effects.
2019-01-07 15:53:10 -08:00
intractable
28288a17b7
Client helpers, re-exports, and fixups (#70)
* Derive `Show` instance for `ClientSSLKeyCertPair`

* Add a couple client helper functions & add additional exports

* Add `grpc-haskell-core` target; add `c2hs` dep

* Fix examples broken by #68

* rm `build-tools` and `include-dirs` directives from toplevel `.cabal`

* More `ClientConfig` fixes

* Ensure examples are built
2018-10-14 17:52:59 -05:00
ryan4729
c80269089c fix tests broken by previous commit (#69) 2018-10-09 19:29:29 -05:00
ryan4729
24bdacca3a allow clients to set authority header (#68) 2018-09-24 08:37:05 -07:00
Travis Athougies
991b389a16 Add max metadata size option (#67) 2018-07-27 10:41:18 -05:00