Commit Graph

221 Commits

Author SHA1 Message Date
Bernhard Schussek
e35b57601d Fixed SyncPromiseAdapter::all() to not change the order of arrays 2017-02-23 11:45:13 +01:00
petecoop
664af3d44a use constants 2017-02-20 10:31:11 +00:00
petecoop
fc629a292d BuildSchema and SchemaPrinter 2017-02-19 19:26:56 +00:00
Adam Dumas
97674cbbb9 Fixed Utils::assign() bug relating to detecting missing required keys 2017-02-13 12:50:34 -05:00
jane-olszewska
060dc51595 Set schema element description to strings retrieved from a continuous chunk of comment tokens immediately preceding the element 2017-02-06 18:33:21 +00:00
jane-olszewska
dd31ab2b80 Added a description field to schema type definition classes 2017-02-06 18:33:18 +00:00
jane-olszewska
bbb5cf1e4d Fixed comment token extraction: will no longer read one character from the next line 2017-02-06 18:13:43 +00:00
vladar
c18cd16960 GraphQL\Server: set PromiseAdapter before executing query 2017-01-26 19:24:53 +07:00
vladar
d10e933a00 Merge branch 'master' of https://github.com/webonyx/graphql-php 2017-01-26 19:18:40 +07:00
vladar
c545474715 Fixed DocBlock comment 2017-01-26 19:00:10 +07:00
vladar
2ddae2bf88 Added EXPERIMENTAL note for code related to type resolution strategies 2017-01-26 18:59:14 +07:00
Daniel Tschinder
1ff9c429d6 Fix typo in DocBlock 2017-01-26 11:18:53 +01:00
vladar
e2875953e1 Tests for new GraphQL\Server facade 2017-01-19 19:23:00 +07:00
vladar
8e75cc3d60 Merge branch 'master' of https://github.com/webonyx/graphql-php 2017-01-19 11:55:10 +07:00
OwlyCode
d022b19b4e Added compatibility with php7 error handling. 2017-01-12 17:18:25 +01:00
vladar
ceaf798b07 Merge branch 'master' of https://github.com/webonyx/graphql-php 2016-12-23 22:42:05 +07:00
Juuso Leinonen
90c4b5d9fa Changed ReactPromiseAdapter::all to preserve the array key order and added tests 2016-12-22 15:08:28 +02:00
vladar
296cc7530d Added Server class as a new facade for library, including HTTP endpoint compatible with express-graphql format 2016-12-19 20:40:46 +07:00
vladar
ff3a40d329 Execution: modified deferred behavior to be more predictable (+added more tests for them) 2016-12-17 05:14:51 +07:00
vladar
9e8e77a071 Execution: Calling resolve function directly (vs calling it via call_user_func) 2016-12-15 15:34:27 +07:00
vladar
078a1efd50 Added GraphQL\GraphQL::setDefaultFieldResolver() 2016-12-14 20:18:10 +07:00
vladar
2043cc7e75 Introduced type resolution strategies: eager and lazy (for #69) 2016-12-14 17:12:09 +07:00
vladar
ae57a72461 Deleted unused SchemaValidator 2016-12-08 06:05:40 +07:00
vladar
51d816d280 Tests for Config 2016-12-08 04:16:13 +07:00
vladar
c5bba0e7d4 Cleaning up old unused messages 2016-12-06 03:45:52 +07:00
vladar
a165c3aaab Shortened method names of PromiseAdapter 2016-12-04 15:53:23 +07:00
vladar
7ab75cd05a Execution: tests are green 2016-12-03 04:11:14 +07:00
vladar
ab4ae779af Execution: fixed rejection issue in sync promise 2016-12-03 02:48:51 +07:00
vladar
e97ca7f971 Execution: added SyncPromiseAdapter and made it default for Executor (+removed GenericPromiseAdapter) 2016-12-03 02:14:14 +07:00
vladar
48d78412ec Execution: refactored promise adapters 2016-12-03 02:06:28 +07:00
vladar
3a375bb78e Simple implementation of Promises A+ for our sync case (using queue) 2016-12-02 18:43:54 +07:00
vladar
821e96508b Execution: added promiseForAssocArray method for cases when result contains promise 2016-12-01 18:29:50 +07:00
vladar
418ee48b20 Execution: moved then method to promise adapter 2016-12-01 17:52:42 +07:00
vladar
77244d3aab Refactored executor: now works as instance with exeContext and promise adapter as properties 2016-12-01 17:09:22 +07:00
Jeremiah VALERIE
dd9062d77e Add a generic promise support.
Make lib supports promises, using a promise adapter interface.
2016-11-26 20:50:01 +01:00
vladar
4945317406 Fixing broken build for 0.8 2016-11-25 18:45:38 +07:00
vladar
c08cc2b00b Fixing broken build for 0.8 2016-11-25 18:18:53 +07:00
vladar
0969073b8a Reverted DefinitionContainer (YAGNI) 2016-11-25 16:54:57 +07:00
vladar
7c0aa4ceec Better docs and comments on breaks and deprecations for 8.0 2016-11-25 16:37:00 +07:00
vladar
b665d267c3 Changed scope of Schema props (and some others) to private 2016-11-25 16:35:46 +07:00
vladar
16bfc12ab1 Moved directive location constants to separate class 2016-11-25 16:30:35 +07:00
vladar
018ac819cf Removed deprecated error classes and added class_alias for them instead in deprecated.php 2016-11-25 16:03:04 +07:00
vladar
3d4cd15678 Added file with deprecations (for moved/renamed classes) 2016-11-25 16:02:19 +07:00
vladar
63d44fe002 Disabled deprecation notice for ResolveInfo->fieldASTs (until next version) 2016-11-19 17:37:54 +07:00
vladar
660200ed50 GraphQL\Language\AST\NodeType -> GraphQL\Language\AST\NodeKind 2016-11-19 17:31:47 +07:00
vladar
7340e30753 Types are now serializable to JSON (output their name) 2016-11-19 17:25:34 +07:00
vladar
04550f805f Differentiate between input values with no default and with default = null 2016-11-19 17:21:22 +07:00
vladar
5a17ae8246 Clearer lexer errors 2016-11-19 17:08:20 +07:00
vladar
0ab55ec0d9 Replaced "AST" with "Node" in variable names for better readability 2016-11-19 06:47:55 +07:00
vladar
5aad8b596b Consistent docblock comments for arrays 2016-11-19 06:19:41 +07:00
vladar
8d696edee5 Renamed AST nodes to *Node to disambiguate types 2016-11-19 06:12:18 +07:00
vladar
5ce9a7009a Renamed default resolver 2016-11-19 04:22:08 +07:00
vladar
439959b292 Enforce input coercion rules 2016-11-19 04:15:40 +07:00
vladar
f672f0c90c Added validation rule for unique directives per location 2016-11-19 00:21:56 +07:00
vladar
8a676cde99 Support for NullValue 2016-11-18 23:59:28 +07:00
vladar
5d889ccacd Reverted several breaking changes from #75; tests are green 2016-11-16 18:37:35 +07:00
Andreas Heiberg
b2c8d8eeb1 [style changes] Lexer 2016-11-16 18:14:46 +07:00
Andreas Heiberg
d8ca5f4183 move to NodeType enum 2016-11-16 18:07:56 +07:00
Andreas Heiberg
816fa067b3 type hint Name node in visitor 2016-11-16 18:06:25 +07:00
Andreas Heiberg
46788f2ddb move NodeTypes enum to seperate class 2016-11-16 18:02:58 +07:00
Andreas Heiberg
2e25f51829 [style change] put VisitorOperation up top 2016-11-16 17:30:25 +07:00
Andreas Heiberg
80a662564e [style changes] arrays and callback 2016-11-16 17:29:50 +07:00
Andreas Heiberg
3c98963f72 remove static functions from Printer 2016-11-16 17:22:57 +07:00
vladar
bacb0649c2 Minor objectType refactoring 2016-11-11 01:00:32 +07:00
vladar
add2621a33 Replaced directive locations array with constants 2016-11-08 16:55:33 +07:00
vladar
1927102183 Minor executor tweaks 2016-11-07 19:52:44 +07:00
vladar
6023c0ff60 Refactoring abstract type resolution 2016-11-07 17:28:47 +07:00
vladar
afbd5dbc90 Removed last traces of field memoization 2016-11-07 16:26:02 +07:00
vladar
1672bd33e3 Minor comments improvement 2016-11-02 05:08:17 +07:00
vladar
61245213c4 Minor instanceof tweak 2016-11-02 00:41:44 +07:00
vladar
22e41a3729 Validate type/field/argument names 2016-11-02 00:14:44 +07:00
vladar
3b0e52f254 Updated AST Utils to match the behavior of reference implementation 2016-11-02 00:11:33 +07:00
vladar
443845d1f9 Added missing short-hand notation for input type fields 2016-11-02 00:07:10 +07:00
vladar
8f80389ecf Moved parse/serialize methods from abstract ScalarType class to LeafType interface (as EnumType implements them as well) 2016-11-01 23:50:18 +07:00
vladar
e56eb6e10d Replaced \UnexpectedValueException with GraphQL\Error\InvariantViolationException; Improved some instanceof checks 2016-11-01 23:40:37 +07:00
vladar
19436c326d Infer type name from className for enum and scalar types as well 2016-10-24 16:47:39 +07:00
vladar
e4fa881cc3 Infer type name from class name for those using inheritance 2016-10-23 21:32:54 +07:00
vladar
2ef58a615f Several minor tweaks 2016-10-23 05:06:36 +07:00
vladar
9941a0143a Added DefinitionContainer interface to enable compositional use of user-land types (vs extending ObjectType, InterfaceType, etc). Very similar to IteratorAggregate vs Iterator 2016-10-23 05:05:50 +07:00
vladar
c11f25794a Deprecated callbacks in "type" option of field/argument definitions (see #35) 2016-10-23 00:49:25 +07:00
vladar
276a58f6d1 Reverted one minor breaking change 2016-10-22 17:19:40 +07:00
vladar
a612b780c9 Return stdClass vs empty array for empty ObjectType values (see #59) 2016-10-22 17:16:47 +07:00
vladar
6c076e21d4 Another minor improvement to error formatting 2016-10-21 18:36:49 +07:00
vladar
7f1d74f980 Improved error reporting for invalid field definitions 2016-10-21 18:17:20 +07:00
vladar
927997a705 Various tools for better error reporting / formatting 2016-10-21 17:46:35 +07:00
vladar
2675b65095 Moved all error-related classes to separate namespace; fixed related broken tests 2016-10-21 16:40:56 +07:00
vladar
2b305ad6e2 Updated config validation rules 2016-10-21 15:52:58 +07:00
vladar
6d7a4a4f34 Fixed tests broken by recent changes to serialized error format 2016-10-21 15:28:24 +07:00
vladar
c25a29213c Fixed reported path for error; deprecated old FormattedError tool 2016-10-21 04:47:07 +07:00
vladar
2369454687 Minor comment tweaks + ability to define enum values as simple k=>v pairs 2016-10-21 03:10:06 +07:00
vladar
3ba187ec04 Added missing one-line shorthand for field arguments 2016-10-21 00:06:34 +07:00
vladar
fc37515ec2 Replaced instanceof check with is_array for shorthand notation of field definitions (as instanceof might be pretty slow) 2016-10-20 19:15:20 +07:00
vladar
5148c3bf03 Allow one-liner shorthand for field definitions (#47) 2016-10-20 19:09:48 +07:00
vladar
09cc313072 Allow to define enum values by simply passing array of strings, e.g. 'values' => ['ONE', 'TWO', 'THREE'] 2016-10-20 19:01:30 +07:00
vladar
0a79be8409 Updated introspection query and related tests for recent changes 2016-10-19 01:35:18 +07:00
vladar
236021acf8 Added deprecated directive; changed custom directives handling in schema; various minor tweaks 2016-10-19 01:34:46 +07:00
vladar
7625d6abf1 Scalar serialization now throws on spec-incompatible values vs returning null 2016-10-19 01:23:38 +07:00
vladar
0a182ac53c Improved enums (now they can handle complex values) 2016-10-19 01:21:47 +07:00
vladar
7f22d4b874 Spec compliance improvement: data key should not exist in response when it is null / missing (#56) 2016-10-18 22:25:39 +07:00
vladar
3e2d9459aa resolveType for interface/unions is now allowed to return type name vs instance 2016-10-18 22:23:20 +07:00