Commit Graph

165 Commits

Author SHA1 Message Date
andremarianiello 751350ba9e
WithResource combinator for Servant-managed resources (#1630) 2022-12-29 19:00:47 +01:00
Teo Camarasu 3f6886ad2d Bump depedency bounds 2022-10-27 13:05:38 +01:00
l-epple e4650de303
Allow lens 5.2 (#1607) 2022-10-02 17:21:43 +02:00
Maxim Koltsov ced5f1a655
Allow hspec-2.9 2022-03-21 15:44:10 +01:00
Janus Troelsen 17e3eb1041 Allow GHC 9.2 for compatible packages 2022-03-08 08:59:35 -06:00
Janus Troelsen 67da8514a0 Allow newer hashable, lens, text 2022-02-06 16:12:25 -06:00
Gaël Deest e4945740aa Prepare 0.19 release 2022-02-01 10:17:03 +01:00
Matthieu Coudron 73c87bc2bc
bumped cabal-version field (#1498)
* bumped cabal-version field

Cabal supports two types of licenses, native and SPDX, which can be seen here hackage.haskell.org/package/Cabal-3.6.2.0/docs/Distribution-Types-PackageDescription.html#v:licenseRaw

Several packages use BSD-3-Clause as a license, in conjonction with cabal-version: >=1.10 which cabal parses as Right (UnknownLicense "BSD-3").
If I change teh cabal-version to cabal-version: 2.2 , cabal correctly identifdies the license License (ELicense (ELicenseId BSD_3_Clause)).

* changed license from cabal to spdx format

aka BSD3 -> BSD-3-Clause: next cabal may deprecate the old format
2022-01-04 22:06:23 +01:00
Théophile Choutri 4e4ad495ef Change the license value to a valid SPDX identifier 2021-10-31 22:37:56 +01:00
Théophile Choutri 9df5195710
Merge pull request #1463 from sorki/srk/foreignTypo
servant-foreign: fix haddock/example typo
2021-10-11 11:32:29 +02:00
Richard Marko 51c8edb74d servant-foreign: fix haddock/example typo 2021-10-11 10:29:06 +02:00
akhesacaro e56f0092d7 remove tested-with (GHC < 8.6.5) from cabal 2021-10-02 13:13:33 +02:00
akhesaCaro 6e5dffbb91 unsupporting GHC < 8.6.5, removing unecessary imports 2021-10-02 13:13:24 +02:00
Maxim Koltsov 21682f6b72
servant-foreign 0.15.4 2021-06-23 23:47:01 +02:00
Maxim Koltsov 61111178f0
Support GHC-9.0.1 2021-06-23 23:06:07 +02:00
Maxim Koltsov da8e64b534
Allow lens-5.0 (#1426) 2021-06-06 00:37:35 +03:00
Maxim Koltsov 507f0a4671
Allow hspec < 2.9
https://github.com/commercialhaskell/stackage/issues/6010
2021-05-14 12:34:04 +03:00
Philip Patsch e4865644c1 doc(servant-foreign): Document module
I spend some considerable time reverse engineering the module, so I
thought I’d write the documentation I would have liked to see.

The strategy here is that a user not necessarily has insight into how
servant works internally, or even how to write complex servant routes,
they just want to generate a list of endpoints and convert the `Req`
type into e.g. generated code in $language. Thus, they need to know
the semantics of all fields of Req, how they interact and how they
relate to a plain http route.

I made sure every `f` is replaced with `ftype`, so we have one
conventional way of referring to the foreign type argument everywhere.

Some enums are not set at all, they are marked as such.

`_reqBodyContentType` introduces a major restriction of the module, so
that is mentioned in the documentation for now, until the time it will
be fixed.

A few TODO’s describe places where types don’t make sense but would
introduce API-breaking changes, so these should probably be
simplified,
but bundled in one go.
2021-03-25 11:26:53 +01:00
Philip Patsch 07f7954cc6 chore(servant-foreign): remove dead type `Frag`
It is not used anywhere and also not exported.
2021-03-25 11:26:53 +01:00
Philip Patsch a0265097e8 doc(servant-foreign): reorder imports
The imports were ordered in the worst possible way, with all
undocumented small type definitions coming first and the actual meat
of the module coming at the very end, mixed in with irrelevant
functions.

This inverses that toxic ordering, showing the main function
first (`listFromAPI`) and then the main data type (`Req`) and the main
class (`HasForeignType`).
2021-03-25 11:26:53 +01:00
Philip Patsch c3a517cb4f doc(servant-foreign): Inflection docs & module docs 2021-03-25 11:26:53 +01:00
Maxim Koltsov 0ad2bd221a
Prepare 0.18.2 release (#1364) 2020-11-22 17:51:32 +03:00
Andrey Prokopenko da0c83d318
Add URI fragment as a separate combinator (#1324) 2020-11-18 21:57:20 +03:00
fisx 64f3543034
bump "tested-with" ghc versions. (#1350) 2020-10-25 14:24:06 +01:00
Matthias Fischmann 1760cc8527
Bump more package versions. 2020-09-01 14:21:26 +02:00
Maxim Koltsov 43cf589e0e
Bump version to 0.18 2020-07-30 19:03:58 +03:00
Maxim Koltsov cb0224d063
Add 8.10.1 to tested-with, haskell-ci regenerate 2020-07-17 17:17:45 +03:00
Maxim Koltsov 1a09b1d3a4
Update GHC 8.8.x versions to 8.8.3 2020-07-17 17:10:31 +03:00
Leif Warner 0530671ad6
Allow newer versions of base, template-haskell, lens, & unliftio-core 2020-07-03 06:57:52 +02:00
Jan Hrcek b9d8fbcdc1
Fix typos and grammar (#1304)
* Fix typos and grammar

* Remove redundant words, fix articles

* More language fixes

* More typo fixes and resolve TODO about missing links
2020-06-06 00:43:51 -04:00
Taylor Fausak 6bd3ee80ca
Allow lens 4.19
https://github.com/ekmett/lens/blob/v4.19.1/CHANGELOG.markdown
2020-04-05 12:15:30 -04:00
Oleg Grenrus b519014f96 Update other changelogs 2020-01-23 13:43:19 +02:00
Oleg Grenrus 3bf4b100a8 Bump version to 0.17 2020-01-23 12:50:07 +02:00
Oleg Grenrus d29b0cc8f1 Use GHC-8.8.2 on Travis 2020-01-21 16:52:20 +02:00
Catherine Galkina 0cbed24f23 Added HasClient and HasForeign instances for NoContentVerb 2019-09-29 14:18:13 +03:00
Oleg Grenrus f089f8d0b2 Relax bounds for ghc-8.8 2019-09-29 00:43:53 +03:00
Oleg Grenrus ecbc04bbee Regenerate .travis.yml; GHC-8.6.5; add GHCJS 2019-09-07 14:03:46 +03:00
Oleg Grenrus e52e11a0ad Use ghc-8.6.4 on travis 2019-03-06 12:39:18 +02:00
Alp Mestanogullari a386dd2095 point to www.servant.dev (website) and docs.servant.dev (self-explanatory) 2019-03-02 10:08:03 +01:00
Oleg Grenrus b17c8bb8bd It's year 2019 2019-02-27 18:13:35 +02:00
Oleg Grenrus 58b401558d Bump versions to 0.16 2019-02-20 19:06:10 +02:00
Oleg Grenrus 525b74c6f4 Update travis once again
- Update GHC-8.6.2 to GHC-8.6.3
- Build cookbook only with GHC-8.4.4 and GHC-8.6.3, thus
  making 8.0 and 8.2 jobs a little faster
2019-02-12 01:33:30 +02:00
Oleg Grenrus b685efecbe Allow network-3.0 2019-01-23 02:20:16 +02:00
Oleg Grenrus a1a99552b5 Changelog and cabal file edits
- Add #1079, #1011 entry
- Stricter internal dependencies
- Unify .cabal files
- Correct -conduit, -machines, -pipes changelog
- Fix years in LICENSEs
- Remove tinc.yamls
- Tweaks to 0.15 changelog
- Add changelogs for all packages
- Add changelogs for new packages (extra-source-files)
2018-11-13 09:58:42 +02:00
Oleg Grenrus 3001ed7990 Add mods to StreamBody 2018-11-09 21:49:53 +02:00
Oleg Grenrus 5f947d1c43 Bump version numbers
- Almost everything 0.15; also servant-foreign jumped to 0.15, for
  consistency
- Bump lower bounds of dependencies to most recent versions atm
- Use hspec-2.6.0
- Update `stack.yaml` accordingly
- Use base-compat a bit more
- Drop aeson-compat dependency (in tests and tutorial)
2018-11-09 20:20:26 +02:00
Oleg Grenrus 4195fd04d4 tested-with: GHC==8.6.2 2018-11-09 17:41:00 +02:00
Oleg Grenrus 80a047d1d4
Merge pull request #1035 from afcady/multipart-foreign
Implement HasForeign instance
2018-11-07 14:34:58 +02:00
Oleg Grenrus 7634e08352 Make ComprehensiveAPI part of public API
We cannot simply tweak it, it will break tests of other packages.
Including packages not in this repository.
2018-11-06 13:35:47 +02:00
Oleg Grenrus 45c1cbdfd5 Refactor Stream stuff
- Introduce SourceT, which is simple variant of "correct `ListT`".
  There are another variants possible (like in `streaming`),
  but I'm not sure there's much real difference.

- Introduce `Codensity`. There's a flag if people don't want to depend
  on `kan-extensions`.

- `StreamGenerator` and `ResultStream` are both `SourceT`.
  `Stream` combinator in `servant-client` uses `Codensity` for CPS.

- Add servant-machines, servant-conduit, servant-pipes
- Add streaming cookbook: just code, no explanations.
- Add a script to run streaming 'benchmarks'
2018-11-05 15:48:47 +02:00