Prepare 0.19 release

This commit is contained in:
Gaël Deest 2022-01-31 15:13:47 +01:00
parent 75db4a5327
commit e4945740aa
22 changed files with 222 additions and 36 deletions

View file

@ -71,6 +71,9 @@ allow-newer: servant-pagination-2.2.2:servant
allow-newer: servant-pagination-2.2.2:servant-server
allow-newer: servant-js:servant
allow-newer: servant-multipart:servant
allow-newer: servant-multipart:servant-server
allow-newer: servant-multipart-api:servant
-- ghc 9
allow-newer: tdigest:base

View file

@ -35,8 +35,8 @@ library
, bytestring >= 0.10.6.0 && < 0.11
, containers >= 0.5.6.2 && < 0.7
, servant-auth == 0.4.*
, servant >= 0.13 && < 0.19
, servant-client-core >= 0.13 && < 0.19
, servant >= 0.13 && < 0.20
, servant-client-core >= 0.13 && < 0.20
exposed-modules:
Servant.Auth.Client
@ -69,7 +69,7 @@ test-suite spec
, http-client >= 0.5.13.1 && < 0.8
, http-types >= 0.12.2 && < 0.13
, servant-auth-server >= 0.4.2.0 && < 0.5
, servant-server >= 0.13 && < 0.19
, servant-server >= 0.13 && < 0.20
, time >= 1.5.0.1 && < 1.13
, transformers >= 0.4.2.0 && < 0.6
, wai >= 3.2.1.2 && < 3.3

View file

@ -37,7 +37,7 @@ library
build-depends:
base >= 4.10 && < 4.16
, servant-docs >= 0.11.2 && < 0.12
, servant >= 0.13 && < 0.19
, servant >= 0.13 && < 0.20
, servant-auth == 0.4.*
, lens >= 4.16.1 && <5.1
exposed-modules:

View file

@ -46,9 +46,9 @@ library
, memory >= 0.14.16 && < 0.17
, monad-time >= 0.3.1.0 && < 0.4
, mtl >= 2.2.2 && < 2.3
, servant >= 0.13 && < 0.19
, servant >= 0.13 && < 0.20
, servant-auth == 0.4.*
, servant-server >= 0.13 && < 0.19
, servant-server >= 0.13 && < 0.20
, tagged >= 0.8.4 && < 0.9
, text >= 1.2.3.0 && < 1.3
, time >= 1.5.0.1 && < 1.10

View file

@ -35,7 +35,7 @@ library
, text >= 1.2.3.0 && < 1.3
, servant-swagger >= 1.1.5 && < 2
, swagger2 >= 2.2.2 && < 3
, servant >= 0.13 && < 0.19
, servant >= 0.13 && < 0.20
, servant-auth == 0.4.*
, lens >= 4.16.1 && < 5.1
if impl(ghc >= 9)

View file

@ -38,7 +38,7 @@ library
, aeson >= 1.3.1.1 && < 3
, jose >= 0.7.0.0 && < 0.10
, lens >= 4.16.1 && < 5.1
, servant >= 0.15 && < 0.19
, servant >= 0.15 && < 0.20
, text >= 1.2.3.0 && < 1.3
, unordered-containers >= 0.2.9.0 && < 0.3
exposed-modules:

View file

@ -1,6 +1,35 @@
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-client-core/CHANGELOG.md)
[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
Package versions follow the [Package Versioning Policy](https://pvp.haskell.org/): in A.B.C, bumps to either A or B represent major versions.
0.19
----
### Significant changes
- Drop support for GHC < 8.6.
- Support GHC 9.0 (GHC 9.2 should work as well, but isn't fully tested yet).
- Support Aeson 2 ([#1475](https://github.com/haskell-servant/servant/pull/1475)).
- Add `NamedRoutes` combinator, making support for records first-class in Servant
([#1388](https://github.com/haskell-servant/servant/pull/1388)).
- Add custom type errors for partially applied combinators
([#1289](https://github.com/haskell-servant/servant/pull/1289),
[#1486](https://github.com/haskell-servant/servant/pull/1486)).
- *servant-client* / *servant-client*: Fix erroneous behavior, where only 2XX
status codes would be considered successful, irrelevant of the status
parameter specified by the verb combinator.
([#1469](https://github.com/haskell-servant/servant/pull/1469))
- *servant-client* / *servant-client-core*: Fix `Show` instance for
`Servant.Client.Core.Request`.
- *servant-client* / *servant-client-core*: Allow passing arbitrary binary data
in Query parameters.
([#1432](https://github.com/haskell-servant/servant/pull/1432)).
### Other changes
- Various version bumps.
0.18.3
------

View file

@ -1,6 +1,6 @@
cabal-version: 2.2
name: servant-client-core
version: 0.18.3
version: 0.19
synopsis: Core functionality and class for client function generation for servant APIs
category: Servant, Web
@ -65,7 +65,7 @@ library
-- Servant dependencies
build-depends:
servant >= 0.18.3 && <0.19
servant >= 0.19
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.
-- Here can be exceptions if we really need features from the newer versions.

View file

@ -56,8 +56,8 @@ library
-- strict, as we re-export stuff
build-depends:
servant >=0.16 && <0.17
, servant-client-core >=0.16 && <0.16.1
servant >=0.16 && <0.20
, servant-client-core >=0.16 && <0.20
hs-source-dirs: src
default-language: Haskell2010

View file

@ -1,6 +1,35 @@
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-client/CHANGELOG.md)
[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
Package versions follow the [Package Versioning Policy](https://pvp.haskell.org/): in A.B.C, bumps to either A or B represent major versions.
0.19
----
### Significant changes
- Drop support for GHC < 8.6.
- Support GHC 9.0 (GHC 9.2 should work as well, but isn't fully tested yet).
- Support Aeson 2 ([#1475](https://github.com/haskell-servant/servant/pull/1475)).
- Add `NamedRoutes` combinator, making support for records first-class in Servant
([#1388](https://github.com/haskell-servant/servant/pull/1388)).
- Add custom type errors for partially applied combinators
([#1289](https://github.com/haskell-servant/servant/pull/1289),
[#1486](https://github.com/haskell-servant/servant/pull/1486)).
- *servant-client* / *servant-client*: Fix erroneous behavior, where only 2XX
status codes would be considered successful, irrelevant of the status
parameter specified by the verb combinator.
([#1469](https://github.com/haskell-servant/servant/pull/1469))
- *servant-client* / *servant-client-core*: Fix `Show` instance for
`Servant.Client.Core.Request`.
- *servant-client* / *servant-client-core*: Allow passing arbitrary binary data
in Query parameters.
([#1432](https://github.com/haskell-servant/servant/pull/1432)).
### Other changes
- Various version bumps.
0.18.3
------

View file

@ -1,6 +1,6 @@
cabal-version: 2.2
name: servant-client
version: 0.18.3
version: 0.19
synopsis: Automatic derivation of querying functions for servant
category: Servant, Web
@ -58,8 +58,8 @@ library
-- Servant dependencies.
-- Strict dependency on `servant-client-core` as we re-export things.
build-depends:
servant == 0.18.*
, servant-client-core >= 0.18.3 && <0.18.4
servant >= 0.18 && < 0.20
, servant-client-core >= 0.19 && < 0.19.1
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.
-- Here can be exceptions if we really need features from the newer versions.
@ -128,8 +128,8 @@ test-suite spec
, HUnit >= 1.6.0.0 && < 1.7
, network >= 2.8.0.0 && < 3.2
, QuickCheck >= 2.12.6.1 && < 2.15
, servant == 0.18.*
, servant-server == 0.18.*
, servant == 0.19.*
, servant-server == 0.19.*
, tdigest >= 0.2 && < 0.3
build-tool-depends:

View file

@ -33,7 +33,7 @@ library
, conduit >=1.3.1 && <1.4
, mtl >=2.2.2 && <2.3
, resourcet >=1.2.2 && <1.3
, servant >=0.15 && <0.19
, servant >=0.15 && <0.20
, unliftio-core >=0.1.2.0 && <0.3
hs-source-dirs: src
default-language: Haskell2010
@ -54,8 +54,8 @@ test-suite example
, resourcet
, servant
, servant-conduit
, servant-server >=0.15 && <0.19
, servant-client >=0.15 && <0.19
, servant-server >=0.15 && <0.20
, servant-client >=0.15 && <0.20
, wai >=3.2.1.2 && <3.3
, warp >=3.2.25 && <3.4
, http-client

View file

@ -47,7 +47,7 @@ library
-- Servant dependencies
build-depends:
servant >= 0.18 && <0.19
servant >= 0.18 && <0.20
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.
-- Here can be exceptions if we really need features from the newer versions.

View file

@ -46,7 +46,7 @@ library
-- Servant dependencies
build-depends:
servant >=0.18 && <0.19
servant >=0.18 && <0.20
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.
-- Here can be exceptions if we really need features from the newer versions.

View file

@ -54,8 +54,8 @@ library
-- Servant dependencies.
-- Strict dependency on `servant-client-core` as we re-export things.
build-depends:
servant == 0.18.*
, servant-client-core >= 0.18.3 && <0.18.4
servant >= 0.18 && < 0.20
, servant-client-core >= 0.18.3 && <0.20
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.
-- Here can be exceptions if we really need features from the newer versions.
@ -116,8 +116,8 @@ test-suite spec
, HUnit >= 1.6.0.0 && < 1.7
, network >= 2.8.0.0 && < 3.2
, QuickCheck >= 2.12.6.1 && < 2.15
, servant == 0.18.*
, servant-server == 0.18.*
, servant == 0.19.*
, servant-server == 0.19.*
, tdigest >= 0.2 && < 0.3
build-tool-depends:

View file

@ -32,7 +32,7 @@ library
, bytestring >=0.10.8.1 && <0.12
, machines >=0.6.4 && <0.8
, mtl >=2.2.2 && <2.3
, servant >=0.15 && <0.19
, servant >=0.15 && <0.20
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
@ -51,8 +51,8 @@ test-suite example
, servant
, machines
, servant-machines
, servant-server >=0.15 && <0.19
, servant-client >=0.15 && <0.19
, servant-server >=0.15 && <0.20
, servant-client >=0.15 && <0.20
, wai >=3.2.1.2 && <3.3
, warp >=3.2.25 && <3.4
, http-client

View file

@ -34,7 +34,7 @@ library
, pipes-safe >=2.3.1 && <2.4
, mtl >=2.2.2 && <2.3
, monad-control >=1.0.2.3 && <1.1
, servant >=0.15 && <0.19
, servant >=0.15 && <0.20
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
@ -55,8 +55,8 @@ test-suite example
, pipes-safe
, servant-pipes
, pipes-bytestring >=2.1.6 && <2.2
, servant-server >=0.15 && <0.19
, servant-client >=0.15 && <0.19
, servant-server >=0.15 && <0.20
, servant-client >=0.15 && <0.20
, wai >=3.2.1.2 && <3.3
, warp >=3.2.25 && <3.4
, http-client

View file

@ -1,6 +1,22 @@
[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)
Package versions follow the [Package Versioning Policy](https://pvp.haskell.org/): in A.B.C, bumps to either A or B represent major versions.
0.19
----
### Significant changes
- Drop support for GHC < 8.6.
- Support GHC 9.0 (GHC 9.2 should work as well, but isn't fully tested yet).
- Support Aeson 2 ([#1475](https://github.com/haskell-servant/servant/pull/1475)).
- Add `NamedRoutes` combinator, making support for records first-class in Servant
([#1388](https://github.com/haskell-servant/servant/pull/1388)).
- Add custom type errors for partially applied combinators
([#1289](https://github.com/haskell-servant/servant/pull/1289),
[#1486](https://github.com/haskell-servant/servant/pull/1486)).
0.18.3
------

View file

@ -1,6 +1,6 @@
cabal-version: 2.2
name: servant-server
version: 0.18.3
version: 0.19
synopsis: A family of combinators for defining webservices APIs and serving them
category: Servant, Web
@ -72,7 +72,7 @@ library
-- Servant dependencies
-- strict dependency as we re-export 'servant' things.
build-depends:
servant >= 0.18.3 && < 0.18.4
servant >= 0.19
, http-api-data >= 0.4.1 && < 0.4.4
-- Other dependencies: Lower bound around what is in the latest Stackage LTS.

View file

@ -77,7 +77,7 @@ library
, http-media >=0.7.1.3 && <0.9
, insert-ordered-containers >=0.2.1.0 && <0.3
, lens >=4.17 && <6
, servant >=0.18.1 && <0.19
, servant >=0.18.1 && <0.20
, singleton-bool >=0.1.4 && <0.2
, swagger2 >=2.3.0.1 && <3
, text >=1.2.3.0 && <1.3

View file

@ -1,5 +1,114 @@
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
Package versions follow the [Package Versioning Policy](https://pvp.haskell.org/): in A.B.C, bumps to either A or B represent major versions.
0.19
----
### Significant changes
- Drop support for GHC < 8.6.
- Support GHC 9.0 (GHC 9.2 should work as well, but isn't fully tested yet).
- Support Aeson 2 ([#1475](https://github.com/haskell-servant/servant/pull/1475)).
- Add `NamedRoutes` combinator, making support for records first-class in Servant
([#1388](https://github.com/haskell-servant/servant/pull/1388)).
Users can now directly mark part as an API as defined by a record, instead of
using `(:<|>)` to combine routes. Concretely, the anonymous:
```haskell
type API =
"version" :> Get '[JSON] String :<|>
"products" :> Get '[JSON] [Product]
```
can be replaced with the explicitly-named:
```haskell
type API = NamedRoutes NamedAPI
data NamedAPI mode = NamedAPI
{ version :: mode :- "version" :> Get '[JSON] String
, products :: mode :- "products" :> Get '[JSON] [Product]
}
```
`NamedRoutes` builds upon `servant-generic`, but improves usability by freeing
users from the need to perform `toServant` / `fromServant` conversions
manually. Serving `NamedRoutes NamedAPI` is now done directly by providing a
record of handlers, and servant generates clients directly as records as well.
In particular, it makes it much more practical to work with nested hierarchies
of named routes.
Two convenience functions, `(//)` and `(/:)`, have been added to make the
usage of named route hierarchies more pleasant:
```haskell
rootClient :: RootApi (AsClientT ClientM)
rootClient = client (Proxy @API)
hello :: String -> ClientM String
hello name = rootClient // hello /: name
endpointClient :: ClientM Person
endpointClient = client // subApi /: "foobar123" // endpoint
type Api = NamedRoutes RootApi
data RootApi mode = RootApi
{ subApi :: mode :- Capture "token" String :> NamedRoutes SubApi
, hello :: mode :- Capture "name" String :> Get '[JSON] String
, …
} deriving Generic
data SubApi mode = SubApi
{ endpoint :: mode :- Get '[JSON] Person
, …
} deriving Generic
```
- Add custom type errors for partially applied combinators
([#1289](https://github.com/haskell-servant/servant/pull/1289),
[#1486](https://github.com/haskell-servant/servant/pull/1486)).
For example, forgetting to document the expected type for a query parameter,
as in:
``` haskell
type API = QueryParam "param" :> Get '[JSON] NoContent
```
will raise to the following error when trying to serve the API:
```
• There is no instance for HasServer (QueryParam'
'[Optional, Strict] "param" :> ...)
QueryParam' '[Optional, Strict] "1" expects 1 more arguments
```
As a consequence of this change, unsaturated types are now forbidden before `(:>)`.
- Add a `HeadNoContent` verb ([#1502](https://github.com/haskell-servant/servant/pull/1502)).
- *servant-client* / *servant-client*: Fix erroneous behavior, where only 2XX
status codes would be considered successful, irrelevant of the status
parameter specified by the verb combinator.
([#1469](https://github.com/haskell-servant/servant/pull/1469))
- *servant-client* / *servant-client-core*: Fix `Show` instance for
`Servant.Client.Core.Request`.
- *servant-client* / *servant-client-core*: Allow passing arbitrary binary data
in Query parameters.
([#1432](https://github.com/haskell-servant/servant/pull/1432)).
### Other changes
- Various bit rotten cookbooks have been updated and re-introduced on
`haskell-servant.github.io`.
- Various version bumps.
0.18.3
------

View file

@ -1,6 +1,6 @@
cabal-version: 2.2
name: servant
version: 0.18.3
version: 0.19
synopsis: A family of combinators for defining webservices APIs
category: Servant, Web