fc9ad9c4a1
Consider __typename when evaluating fragments
...
Fixes #30 .
2019-12-02 07:43:19 +01:00
Sam Nolan
def52ddc20
Fix strings not consuming spaces
...
Fixes #28
2019-11-28 19:09:26 +11:00
3497784984
Release 0.6.0.0
2019-11-27 08:26:51 +01:00
587aab005e
Add a reader instance to the resolvers
...
The Reader contains a Name/Value hashmap, which will contain resolver
arguments.
2019-11-23 09:49:12 +01:00
625d7100ca
Try type parsers in a different order
2019-11-22 08:00:50 +01:00
Sam Nolan
73e21661b4
Fix failed parsing on multiple required arguments
...
Fixes #25 .
2019-11-21 08:51:42 +01:00
7b92e5bcfd
Rewrite selections into a Sequence. Fix #21
2019-11-16 11:41:40 +01:00
115aa02672
Fail on cyclic fragments, fix #22
2019-11-14 20:40:09 +01:00
31c516927d
Support nested fragments in any order
...
Fix #19 .
2019-11-12 10:47:10 +01:00
1dd6b7b013
Support nested fragments
...
... without forward lookup.
2019-11-09 23:24:31 +01:00
b77da3d492
AST.Transform: Pass down a reader
...
The reader contains variable substitution functions and fragments.
2019-11-07 06:34:36 +01:00
73fc334bf8
Move related modules to Language.GraphQL.AST
...
Fixes #18 .
- `Language.GraphQL.Encoder` moved to `Language.GraphQL.AST.Encoder`.
- `Language.GraphQL.Parser` moved to `Language.GraphQL.AST.Parser`.
- `Language.GraphQL.Lexer` moved to `Language.GraphQL.AST.Lexer`.
- All `Language.GraphQL.AST.Value` data constructor prefixes were removed. The
module should be imported qualified.
- All `Language.GraphQL.AST.Core.Value` data constructor prefixes were removed.
The module should be imported qualified.
- `Language.GraphQL.AST.Transform` is now isn't exposed publically anymore.
2019-11-03 11:00:18 +01:00
417ff5da7d
Propagate Maybe in the transform tree
...
Since the transform tree can already find some errors, it may fail here
and there. Almost all functions return a Maybe to signalize an error.
Will be replaced with an Either of course.
2019-11-02 06:24:21 +01:00
0e3b6184be
Save fragments in a hash map
...
Fixes #20 .
2019-10-31 07:32:51 +01:00
51d39b69e8
Remove deprecated functions and aliases
2019-10-25 09:07:45 +02:00
75bc3b8509
Release 0.5.1.0
2019-10-22 07:07:54 +02:00
c7d5b02911
Handle top-level fragments
...
Fixes #17 .
2019-10-19 10:00:25 +02:00
37254c8c95
Inline fragments without type
...
Fixes #11 .
2019-10-11 23:28:55 +02:00
856efc5d25
Support inline fragments on types
2019-10-08 09:03:07 +02:00
b2a9ec7d82
Deprecate plural type aliases
...
Fixes #16 . Deprecates:
- Language.GraphQL.AST.Arguments
- Language.GraphQL.AST.Directives
- Language.GraphQL.AST.VariableDefinitions
2019-10-01 07:24:25 +02:00
0d142fb01c
Set STACK_ROOT to cache dependencies in the CI
...
Set STACK_ROOT to cache dependencies between the builds.
2019-09-30 07:09:58 +02:00
f767f6cd40
Ignore graphql.cabal
...
This file is generated and for releases another version is generated
anyway.
2019-09-29 07:39:18 +02:00
eb98c36258
Introduce hspec-megaparsec
...
Fixes #13 .
2019-09-27 10:50:38 +02:00
70f7e1bd8e
Document undocumented modules
...
Fixes #15 .
2019-09-25 05:35:36 +02:00
2b5c719ab0
Fix haddoc warnings
...
Fix #14 .
2019-09-20 08:47:14 +02:00
c075a41582
Add pending inline fragment tests
2019-09-13 20:33:39 +02:00
721cbaee17
Release 0.5.0.1
2019-09-10 10:20:40 +02:00
1704022e74
Fix #12
2019-09-06 07:48:01 +02:00
63d4de485d
Deprecate enum, enumA, wrappedEnum, wrappedEnumA
...
These functions are from Language.GraphQL.Schema.
There are actually only two generic types in GraphQL: Scalars and objects.
Enum is a scalar value. According to the specification enums may be
serailized to strings. And in the current implementation they used
untyped strings anyway, so there is no point to have differently named
functions with the same implementation as their scalar counterparts.
2019-09-01 03:16:27 +02:00
22313d05df
Deprecate Language.GraphQL.Execute.Schema
...
It is not a schema (at least not a complete one), but a resolver list,
and the resolvers should be provided by the user separately, because the
schema can originate from a GraphQL document. Schema name should be free
to provide a data type for the real schema later.
2019-08-30 07:26:04 +02:00
c1943c1979
Document all public symbols.
...
Mostly basic documentation. Fixes #4 .
2019-08-29 07:40:50 +02:00
5175586def
Provide more documentation on functions and types
2019-08-26 10:14:46 +02:00
f54e9451d2
Release 0.5.0.0
2019-08-14 08:49:07 +02:00
045b6d15fb
Escape special characters in the encoded strings
...
Fixes #2 .
2019-08-13 07:24:05 +02:00
6604fba7f4
Update stack snapshot to 14.0
2019-08-12 07:25:40 +02:00
a3354e7f58
Make all encoder functions return lazy text
2019-08-05 09:00:11 +02:00
f9dd363457
Provide more information in the REAME
...
Provide more information and documentation references in the README.
2019-08-04 12:38:01 +02:00
7a8a90aba8
Implement indentation in the encoder
2019-08-03 23:57:27 +02:00
989e418cc2
Put spaces between tokens in the pretty printer
2019-08-02 13:52:51 +02:00
4812c8f039
Introduce formatter type for the encoder
...
... to distinguish between minified and pretty printing.
2019-07-31 05:40:17 +02:00
d690d22ce8
Test the encoder with the unminified document
2019-07-27 07:31:09 +02:00
15568a3b99
Implement multiple operation support
2019-07-25 07:37:36 +02:00
282946560e
Add singleError utility function
2019-07-23 07:22:32 +02:00
1b5094b6a3
Parse the BOM header if any
2019-07-22 05:50:00 +02:00
9d15b83164
Make the tutorial to compile again
...
- Remove generated documentation leaving only documentation sources.
- Add CI job checking that the tutorial is up to date.
2019-07-20 07:11:10 +02:00
5cf10b38ec
Report parse errors with line and column numbers
2019-07-19 06:38:54 +02:00
bc6a7dddd1
Reuse common types from AST.Core
2019-07-18 05:10:02 +02:00
74801b0483
Remove TODO
...
Issues should be created instead.
2019-07-17 07:06:35 +02:00
f3b8d9b74c
Make all exports explicit
2019-07-14 05:58:05 +02:00
eb40810f25
Replace tasty and HUnit with Hspec
2019-07-10 05:57:35 +02:00