Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
Name: ghc-servant | Distribution: openSUSE:Factory:zSystems |
Version: 0.20.2 | Vendor: openSUSE |
Release: 1.3 | Build date: Fri Aug 30 04:25:17 2024 |
Group: Unspecified | Build host: reproducible |
Size: 1277979 | Source RPM: ghc-servant-0.20.2-1.3.src.rpm |
Packager: https://bugs.opensuse.org | |
Url: https://hackage.haskell.org/package/servant | |
Summary: A family of combinators for defining webservices APIs |
A family of combinators for defining webservices APIs and serving them . You can learn about the basics in the <http://docs.servant.dev/en/stable/tutorial/index.html tutorial>. . <https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md CHANGELOG>.
BSD-3-Clause
* Fri Aug 30 2024 Peter Simons <[email protected]> - Update servant to version 0.20.2. 0.20.2 - --- - Full query string helpers [#1604](https://github.com/haskell-servant/servant/pull/1604) This PR introduces `DeepQuery`, a route combinator that implements a pattern commonly known as deep objects. It builds upon the convention of using `[]` for a list of parameters: `books?filter[search]=value&filter[author][name]=value`. The corresponding type would be `DeepQuery "filter" BookQuery :> Get '[JSON] [Book]`. - Add IsIn instance for NamedRoutes [#1707](https://github.com/haskell-servant/servant/pull/1707) - Renamed `AtLeastOneFragment` type class to `AtMostOneFragment` [#1727](https://github.com/haskell-servant/servant/pull/1727) The previously named `AtLeastOneFragment` type class defined in the `Servant.API.TypeLevel` module has been renamed to `AtMostOneFragment`, since the previous name was misleading. - Use `Header'` in response headers. [#1697](https://github.com/haskell-servant/servant/pull/1697) Use `Header'` instead of `Header` in response, so it's possible to provide `Description`, for example: ``` type PaginationTotalCountHeader = Header' '[ Description "Indicates to the client total count of items in collection" , Optional , Strict ] "Total-Count" Int ``` Note: if you want to add header with description you should use `addHeader'` or `noHeader'` which accepts `Header'` with all modifiers. * Mon Aug 12 2024 Peter Simons <[email protected]> - Update servant to version 0.20.1 revision 5. Upstream has revised the Cabal build instructions on Hackage. * Fri May 17 2024 Peter Simons <[email protected]> - Update servant to version 0.20.1 revision 4. Upstream has revised the Cabal build instructions on Hackage. * Mon Nov 27 2023 Peter Simons <[email protected]> - Update servant to version 0.20.1 revision 2. Upstream has revised the Cabal build instructions on Hackage. * Mon Oct 02 2023 Peter Simons <[email protected]> - Update servant to version 0.20.1. 0.20.1 - --- - Support aeson-2.2 [#1695](https://github.com/haskell-servant/servant/pull/1695) 0.20 - --- - Headers support in UVerb responses [#1570](https://github.com/haskell-servant/servant/issues/1570) [#1571](https://github.com/haskell-servant/servant/pull/1571) - Generalize type of `Servant.Types.SourceT.source` to any foldable [#1593](https://github.com/haskell-servant/servant/pull/1593) - Make `Mime(Un)Render PlainText String` instances encode/decode UTF-8 [#1645](https://github.com/haskell-servant/servant/issues/1645) - Add HasStatus instance for Headers (that defers StatusOf to underlying value) [#1649](https://github.com/haskell-servant/servant/pull/1649) - Make fromSourceIO run in IO [#1661](https://github.com/haskell-servant/servant/pull/1661) Some streaming abstractions, like io-streams, require stateful initialization. Since all actual call sites of `fromSourceIO` are in a context where `IO` actions can be executed, these streaming sources can be accomodated by having letting `fromSourceIO` run in `IO`. To migrate your existing `FromSourceIO` instance, simply put a `pure`/`return` in front of it. - Fix the handling of multiple headers with the same name. [#1666](https://github.com/haskell-servant/servant/pull/1666) * Fri Jul 07 2023 Peter Simons <[email protected]> - Update servant to version 0.19.1 revision 2. Upstream has revised the Cabal build instructions on Hackage. * Thu Mar 30 2023 Peter Simons <[email protected]> - Updated spec file to conform with ghc-rpm-macros-2.5.2. * Mon Mar 13 2023 Peter Simons <[email protected]> - Update servant to version 0.19.1 revision 1. Upstream has revised the Cabal build instructions on Hackage. * Thu Oct 27 2022 Peter Simons <[email protected]> - Update servant to version 0.19.1. Upstream has edited the change log file since the last release in a non-trivial way, i.e. they did more than just add a new entry at the top. You can review the file at: http://hackage.haskell.org/package/servant-0.19.1/src/CHANGELOG.md * Mon Mar 21 2022 Peter Simons <[email protected]> - Update servant to version 0.19 revision 4. Upstream has revised the Cabal build instructions on Hackage. * Wed Feb 23 2022 Peter Simons <[email protected]> - Update servant to version 0.19 revision 1. Upstream has revised the Cabal build instructions on Hackage. * Wed Feb 02 2022 Peter Simons <[email protected]> - Update servant to version 0.19. 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)), which fixes a [DOS vulnerability](https://github.com/haskell/aeson/issues/864) related to hash collisions. - 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-core* / *servant-http-streams*: 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)). - *servant-docs*: Generate sample cURL requests ([#1401](https://github.com/haskell-servant/servant/pull/1401/files)). Breaking change: requires sample header values to be supplied with `headers`. [#]## Other changes - Various bit rotten cookbooks have been updated and re-introduced on [docs.servant.dev](https://docs.servant.dev). - Various version bumps. * Tue Sep 07 2021 Ondřej Súkup <[email protected]> - relax constraints on base-compat * Tue Aug 17 2021 Ondřej Súkup <[email protected]> - relax constraints on transformers-compat * Thu Jun 24 2021 [email protected] - Update servant to version 0.18.3. 0.18.3 - ----- [#]## Significant changes - Add response header support to UVerb (#1420). - Use Capture Description if available (#1423). [#]## Other changes - Support GHC-9.0.1. - Bump `bytestring`, `attoparsec`, `hspec` and `singleton-bool` dependencies. * Sat May 15 2021 [email protected] - Update servant to version 0.18.2 revision 1. Upstream has revised the Cabal build instructions on Hackage. * Tue Apr 06 2021 Ondřej Súkup <[email protected]> - relax overconstrained deps on singleton-bool * Thu Mar 25 2021 Ondřej Súkup <[email protected]> - relax dep on attoparsec * Tue Jan 19 2021 Ondřej Súkup <[email protected]> - relax dep on http-api-data
/usr/lib64/ghc-9.8.3/lib/libHSservant-0.20.2-BNdwaj79KlCDapObTAcpBE-ghc9.8.3.so /usr/share/licenses/ghc-servant /usr/share/licenses/ghc-servant/LICENSE
Generated by rpm2html 1.8.1
Fabrice Bellet, Wed Dec 4 00:10:59 2024