fsprojects / FSharp.Data.GraphQL

FSharp implementation of Facebook GraphQL query language.
http://fsprojects.github.io/FSharp.Data.GraphQL/
MIT License
399 stars 73 forks source link

GraphQL error customization, coerce input/output fix, variable object coersion, improved Giraffe integration #418

Closed xperiandri closed 11 months ago

xperiandri commented 1 year ago
  1. Implemented IGQLError and IGQLErrorExtensions to return errors according to the latest GraphQL specification
  2. Added InputParameterValue to distinguish between InlineConstant which comes from GraphQL operation and Variable which comes from variables
  3. Renamed CoerceValue to CoerceOutput
  4. Implemented the whole object construction that comes from variables using coercion of each scalar that it requires
  5. Made Giraffe handler more concise and traceable
xperiandri commented 1 year ago

2 tests are broken: One because of the need to use Skippable instead of Option The second is because of the change of the Observable order between home-brew implementation and FSharp.Control.Reactive

xperiandri commented 1 year ago

WebSockets middleware is broken React samples not tested

xperiandri commented 1 year ago

Updated branch

xperiandri commented 1 year ago

Added some fixes. But integration tests are fixed in #436

valbers commented 1 year ago

Do we want to finish https://github.com/fsprojects/FSharp.Data.GraphQL/pull/436 (PR from input-objects-creation-with-coercion to IGQLError) before approving this one (which is a PR from IGQLError to dev)?

xperiandri commented 1 year ago

Yes.

  1. Merge #436 into #418
  2. Merge #418 into dev
  3. Rebase and merge #437 into dev
  4. We are ready to apply your #430