Add changelogs to other packages
This commit is contained in:
parent
f75583dbf1
commit
e1850175f7
5 changed files with 128 additions and 6 deletions
|
@ -4,10 +4,50 @@
|
||||||
0.14
|
0.14
|
||||||
----
|
----
|
||||||
|
|
||||||
- Add a `hoistClientMonad` method to the `HasClient` typeclass, for
|
- `Stream` takes a status code argument
|
||||||
changing the monad in which client functions run.
|
|
||||||
|
```diff
|
||||||
|
-Stream method framing ctype a
|
||||||
|
+Stream method status framing ctype a
|
||||||
|
```
|
||||||
|
|
||||||
|
([#966](https://github.com/haskell-servant/servant/pull/966)
|
||||||
|
[#972](https://github.com/haskell-servant/servant/pull/972))
|
||||||
|
|
||||||
|
- `ToStreamGenerator` definition changed, so it's possible to write an instance
|
||||||
|
for conduits.
|
||||||
|
|
||||||
|
```diff
|
||||||
|
-class ToStreamGenerator f a where
|
||||||
|
- toStreamGenerator :: f a -> StreamGenerator a
|
||||||
|
+class ToStreamGenerator a b | a -> b where
|
||||||
|
+ toStreamGenerator :: a -> StreamGenerator b
|
||||||
|
```
|
||||||
|
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- Added `NoFraming` streaming strategy
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- *servant-client-core* Free `Client` implementation.
|
||||||
|
Useful for testing `HasClient` instances.
|
||||||
|
([#920](https://github.com/haskell-servant/servant/pull/920))
|
||||||
|
|
||||||
|
- *servant-client-core* Add `hoistClient` to `HasClient`.
|
||||||
|
Just like `hoistServer` allows us to change the monad in which request handlers
|
||||||
|
of a web application live in, we also have `hoistClient` for changing the monad
|
||||||
|
in which *client functions* live.
|
||||||
|
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).
|
||||||
([#936](https://github.com/haskell-servant/servant/pull/936))
|
([#936](https://github.com/haskell-servant/servant/pull/936))
|
||||||
|
|
||||||
|
iF you have own combinators, you'll need to define a new method of
|
||||||
|
`HasClient` class, for example:
|
||||||
|
|
||||||
|
```haskell
|
||||||
|
type Client m (MyCombinator :> api) = MyValue :> Client m api
|
||||||
|
hoistClientMonad pm _ nt cl = hoistClientMonad pm (Proxy :: Proxy api) nt . cl
|
||||||
|
```
|
||||||
|
|
||||||
0.13.0.1
|
0.13.0.1
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|
|
@ -4,10 +4,45 @@
|
||||||
0.14
|
0.14
|
||||||
----
|
----
|
||||||
|
|
||||||
- Add `hoistClient` for changing the monad in which
|
- `Stream` takes a status code argument
|
||||||
client functions run.
|
|
||||||
|
```diff
|
||||||
|
-Stream method framing ctype a
|
||||||
|
+Stream method status framing ctype a
|
||||||
|
```
|
||||||
|
|
||||||
|
([#966](https://github.com/haskell-servant/servant/pull/966)
|
||||||
|
[#972](https://github.com/haskell-servant/servant/pull/972))
|
||||||
|
|
||||||
|
- `ToStreamGenerator` definition changed, so it's possible to write an instance
|
||||||
|
for conduits.
|
||||||
|
|
||||||
|
```diff
|
||||||
|
-class ToStreamGenerator f a where
|
||||||
|
- toStreamGenerator :: f a -> StreamGenerator a
|
||||||
|
+class ToStreamGenerator a b | a -> b where
|
||||||
|
+ toStreamGenerator :: a -> StreamGenerator b
|
||||||
|
```
|
||||||
|
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- Added `NoFraming` streaming strategy
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- *servant-client-core* Add `hoistClient` to `HasClient`.
|
||||||
|
Just like `hoistServer` allows us to change the monad in which request handlers
|
||||||
|
of a web application live in, we also have `hoistClient` for changing the monad
|
||||||
|
in which *client functions* live.
|
||||||
|
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).
|
||||||
([#936](https://github.com/haskell-servant/servant/pull/936))
|
([#936](https://github.com/haskell-servant/servant/pull/936))
|
||||||
|
|
||||||
|
- *servant-client* Add more constructors to `RequestBody`, including
|
||||||
|
`RequestBodyStream`.
|
||||||
|
*Note:* we are looking for http-library agnostic API,
|
||||||
|
so the might change again soon.
|
||||||
|
Tell us which constructors are useful for you!
|
||||||
|
([#913](https://github.com/haskell-servant/servant/pull/913))
|
||||||
|
|
||||||
0.13.0.1
|
0.13.0.1
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
name: servant-foreign
|
name: servant-foreign
|
||||||
version: 0.11.1
|
version: 0.11.1
|
||||||
|
x-revision: 1
|
||||||
synopsis: Helpers for generating clients for servant APIs in any programming language
|
synopsis: Helpers for generating clients for servant APIs in any programming language
|
||||||
description:
|
description:
|
||||||
Helper types and functions for generating client functions for servant APIs in any programming language
|
Helper types and functions for generating client functions for servant APIs in any programming language
|
||||||
|
|
|
@ -1,6 +1,52 @@
|
||||||
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md)
|
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md)
|
||||||
[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
|
[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
|
||||||
|
|
||||||
|
0.14
|
||||||
|
----
|
||||||
|
|
||||||
|
- `Stream` takes a status code argument
|
||||||
|
|
||||||
|
```diff
|
||||||
|
-Stream method framing ctype a
|
||||||
|
+Stream method status framing ctype a
|
||||||
|
```
|
||||||
|
|
||||||
|
([#966](https://github.com/haskell-servant/servant/pull/966)
|
||||||
|
[#972](https://github.com/haskell-servant/servant/pull/972))
|
||||||
|
|
||||||
|
- `ToStreamGenerator` definition changed, so it's possible to write an instance
|
||||||
|
for conduits.
|
||||||
|
|
||||||
|
```diff
|
||||||
|
-class ToStreamGenerator f a where
|
||||||
|
- toStreamGenerator :: f a -> StreamGenerator a
|
||||||
|
+class ToStreamGenerator a b | a -> b where
|
||||||
|
+ toStreamGenerator :: a -> StreamGenerator b
|
||||||
|
```
|
||||||
|
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- Added `NoFraming` streaming strategy
|
||||||
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
|
- *servant-server* File serving in polymorphic monad.
|
||||||
|
i.e. Generalised types of `serveDirectoryFileServer` etc functions in
|
||||||
|
`Servant.Utils.StaticFiles`
|
||||||
|
([#953](https://github.com/haskell-servant/servant/pull/953))
|
||||||
|
|
||||||
|
- *servant-server* `ReqBody` content type check is recoverable.
|
||||||
|
This allows writing APIs like:
|
||||||
|
|
||||||
|
```haskell
|
||||||
|
ReqBody '[JSON] Int :> Post '[PlainText] Int
|
||||||
|
:<|> ReqBody '[PlainText] Int :> Post '[PlainText] Int
|
||||||
|
```
|
||||||
|
|
||||||
|
which is useful when handlers are subtly different,
|
||||||
|
for example may do less work.
|
||||||
|
([#937](https://github.com/haskell-servant/servant/pull/937))
|
||||||
|
|
||||||
|
|
||||||
0.13.0.1
|
0.13.0.1
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|
|
@ -30,11 +30,11 @@
|
||||||
- Added `NoFraming` streaming strategy
|
- Added `NoFraming` streaming strategy
|
||||||
([#959](https://github.com/haskell-servant/servant/pull/959))
|
([#959](https://github.com/haskell-servant/servant/pull/959))
|
||||||
|
|
||||||
- *servant-client* Free `Client` implementation.
|
- *servant-client-core* Free `Client` implementation.
|
||||||
Useful for testing `HasClient` instances.
|
Useful for testing `HasClient` instances.
|
||||||
([#920](https://github.com/haskell-servant/servant/pull/920))
|
([#920](https://github.com/haskell-servant/servant/pull/920))
|
||||||
|
|
||||||
- *servant-client* Add `hoistClient` to `HasClient`.
|
- *servant-client-core* Add `hoistClient` to `HasClient`.
|
||||||
Just like `hoistServer` allows us to change the monad in which request handlers
|
Just like `hoistServer` allows us to change the monad in which request handlers
|
||||||
of a web application live in, we also have `hoistClient` for changing the monad
|
of a web application live in, we also have `hoistClient` for changing the monad
|
||||||
in which *client functions* live.
|
in which *client functions* live.
|
||||||
|
|
Loading…
Reference in a new issue