on master help sign in
Add changelogs to other packages
ca2573bOleg Grenrus
servant-client-core/CHANGELOG.md+42−2
@@ -4,10 +4,50 @@
40.14
40.14
5----
5----
6
6
7−- Add a `hoistClientMonad` method to the `HasClient` typeclass, for
7+- `Stream` takes a status code argument
8+
9+ ```diff
10+ -Stream method framing ctype a
11+ +Stream method status framing ctype a
12+ ```
13+
14+ ([#966](https://github.com/haskell-servant/servant/pull/966)
15+ [#972](https://github.com/haskell-servant/servant/pull/972))
16+
17+- `ToStreamGenerator` definition changed, so it's possible to write an instance
18+ for conduits.
19+
20+ ```diff
21+ -class ToStreamGenerator f a where
22+ - toStreamGenerator :: f a -> StreamGenerator a
23+ +class ToStreamGenerator a b | a -> b where
24+ + toStreamGenerator :: a -> StreamGenerator b
25+ ```
26+
27+ ([#959](https://github.com/haskell-servant/servant/pull/959))
28+
29+- Added `NoFraming` streaming strategy
30+ ([#959](https://github.com/haskell-servant/servant/pull/959))
31+
32+- *servant-client-core* Free `Client` implementation.
33+ Useful for testing `HasClient` instances.
34+ ([#920](https://github.com/haskell-servant/servant/pull/920))
35+
36+- *servant-client-core* Add `hoistClient` to `HasClient`.
37+ Just like `hoistServer` allows us to change the monad in which request handlers
38+ of a web application live in, we also have `hoistClient` for changing the monad
8− changing the monad in which client functions run.
39+ in which *client functions* live.
40+ Read [tutorial section for more information](https://haskell-servant.readthedocs.io/en/release-0.14/tutorial/Client.html#changing-the-monad-the-client-functions-live-in).
9 ([#936](https://github.com/haskell-servant/servant/pull/936))
41 ([#936](https://github.com/haskell-servant/servant/pull/936))
10
42
43+ iF you have own combinators, you'll need to define a new method of
44+ `HasClient` class, for example:
45+
46+ ```haskell
47+ type Client m (MyCombinator :> api) = MyValue :> Client m api
48+ hoistClientMonad pm _ nt cl = hoistClientMonad pm (Proxy :: Proxy api) nt . cl
49+ ```
50+
110.13.0.1
510.13.0.1
12--------
52--------
13
53
servant-client/CHANGELOG.md+37−2
@@ -4,10 +4,45 @@
40.14
40.14
5----
5----
6
6
7−- Add `hoistClient` for changing the monad in which
7+- `Stream` takes a status code argument
8+
9+ ```diff
10+ -Stream method framing ctype a
11+ +Stream method status framing ctype a
12+ ```
13+
14+ ([#966](https://github.com/haskell-servant/servant/pull/966)
15+ [#972](https://github.com/haskell-servant/servant/pull/972))
16+
17+- `ToStreamGenerator` definition changed, so it's possible to write an instance
18+ for conduits.
19+
20+ ```diff
21+ -class ToStreamGenerator f a where
22+ - toStreamGenerator :: f a -> StreamGenerator a
23+ +class ToStreamGenerator a b | a -> b where
24+ + toStreamGenerator :: a -> StreamGenerator b
25+ ```
26+
27+ ([#959](https://github.com/haskell-servant/servant/pull/959))
28+
29+- Added `NoFraming` streaming strategy
30+ ([#959](https://github.com/haskell-servant/servant/pull/959))
31+
32+- *servant-client-core* Add `hoistClient` to `HasClient`.
33+ Just like `hoistServer` allows us to change the monad in which request handlers
34+ of a web application live in, we also have `hoistClient` for changing the monad
8− client functions run.
35+ in which *client functions* live.
36+ Read [tutorial section for more information](https://haskell-servant.readthedocs.io/en/release-0.14/tutorial/Client.html#changing-the-monad-the-client-functions-live-in).
9 ([#936](https://github.com/haskell-servant/servant/pull/936))
37 ([#936](https://github.com/haskell-servant/servant/pull/936))
10
38
39+- *servant-client* Add more constructors to `RequestBody`, including
40+ `RequestBodyStream`.
41+ *Note:* we are looking for http-library agnostic API,
42+ so the might change again soon.
43+ Tell us which constructors are useful for you!
44+ ([#913](https://github.com/haskell-servant/servant/pull/913))
45+
110.13.0.1
460.13.0.1
12--------
47--------
13
48
servant-foreign/servant-foreign.cabal+1
@@ -1,5 +1,6 @@
1name: servant-foreign
1name: servant-foreign
2version: 0.11.1
2version: 0.11.1
3+x-revision: 1
3synopsis: Helpers for generating clients for servant APIs in any programming language
4synopsis: Helpers for generating clients for servant APIs in any programming language
4description:
5description:
5 Helper types and functions for generating client functions for servant APIs in any programming language
6 Helper types and functions for generating client functions for servant APIs in any programming language
servant-server/CHANGELOG.md+46
@@ -1,6 +1,52 @@
1[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md)
1[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md)
2[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
2[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
3
3
4+0.14
5+----
6+
7+- `Stream` takes a status code argument
8+
9+ ```diff
10+ -Stream method framing ctype a
11+ +Stream method status framing ctype a
12+ ```
13+
14+ ([#966](https://github.com/haskell-servant/servant/pull/966)
15+ [#972](https://github.com/haskell-servant/servant/pull/972))
16+
17+- `ToStreamGenerator` definition changed, so it's possible to write an instance
18+ for conduits.
19+
20+ ```diff
21+ -class ToStreamGenerator f a where
22+ - toStreamGenerator :: f a -> StreamGenerator a
23+ +class ToStreamGenerator a b | a -> b where
24+ + toStreamGenerator :: a -> StreamGenerator b
25+ ```
26+
27+ ([#959](https://github.com/haskell-servant/servant/pull/959))
28+
29+- Added `NoFraming` streaming strategy
30+ ([#959](https://github.com/haskell-servant/servant/pull/959))
31+
32+- *servant-server* File serving in polymorphic monad.
33+ i.e. Generalised types of `serveDirectoryFileServer` etc functions in
34+ `Servant.Utils.StaticFiles`
35+ ([#953](https://github.com/haskell-servant/servant/pull/953))
36+
37+- *servant-server* `ReqBody` content type check is recoverable.
38+ This allows writing APIs like:
39+
40+ ```haskell
41+ ReqBody '[JSON] Int :> Post '[PlainText] Int
42+ :<|> ReqBody '[PlainText] Int :> Post '[PlainText] Int
43+ ```
44+
45+ which is useful when handlers are subtly different,
46+ for example may do less work.
47+ ([#937](https://github.com/haskell-servant/servant/pull/937))
48+
49+
40.13.0.1
500.13.0.1
5--------
51--------
6
52
servant/CHANGELOG.md+2−2
@@ -30,11 +30,11 @@
30- Added `NoFraming` streaming strategy
30- Added `NoFraming` streaming strategy
31 ([#959](https://github.com/haskell-servant/servant/pull/959))
31 ([#959](https://github.com/haskell-servant/servant/pull/959))
32
32
33−- *servant-client* Free `Client` implementation.
33+- *servant-client-core* Free `Client` implementation.
34 Useful for testing `HasClient` instances.
34 Useful for testing `HasClient` instances.
35 ([#920](https://github.com/haskell-servant/servant/pull/920))
35 ([#920](https://github.com/haskell-servant/servant/pull/920))
36
36
37−- *servant-client* Add `hoistClient` to `HasClient`.
37+- *servant-client-core* Add `hoistClient` to `HasClient`.
38 Just like `hoistServer` allows us to change the monad in which request handlers
38 Just like `hoistServer` allows us to change the monad in which request handlers
39 of a web application live in, we also have `hoistClient` for changing the monad
39 of a web application live in, we also have `hoistClient` for changing the monad
40 in which *client functions* live.
40 in which *client functions* live.