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 |
|
vladar
|
89eb6dede9
|
Breaking change when returning Closure from resolver: this closure is expected to have different signature now (shouldn't affect most of the users)
|
2016-10-18 22:20:51 +07:00 |
|
vladar
|
a94640f9d2
|
Enabled GraphQL\Error to include path to failed value during execution step (not location in source query, but exact path to value, including index in array, etc) + tests for errors
|
2016-10-18 22:15:21 +07:00 |
|
vladar
|
357166791a
|
Consistent coding style + doc block comments for Types and Utils
|
2016-10-17 19:14:29 +07:00 |
|
vladar
|
cd14146032
|
Updated parser to consume latest lexer; New public parser API methods: parseType and parseValue; added directives to schema parser/printer
|
2016-10-17 02:57:24 +07:00 |
|
vladar
|
3eeb4d450b
|
Reworked lexer: tokens are now represented as double linked list
|
2016-10-17 02:53:50 +07:00 |
|
Vladimir Razuvaev
|
f91cbf3409
|
Merge pull request #51 from geshido/master
Fix fatal error with deprecated directive fields in introspection query
|
2016-09-16 16:48:07 +07:00 |
|
vladar
|
4b651d80a5
|
Fixed php notice with deprecated schema constructor
|
2016-09-15 17:32:54 +07:00 |
|
Yury
|
6b97439877
|
Fix fatal error when GraphiQL tries to run introspection query
|
2016-09-15 15:47:56 +07:00 |
|
Yury
|
dab3e52242
|
Fix fatal error
|
2016-09-15 14:34:50 +07:00 |
|
vladar
|
f7c8c670fe
|
Fixed syntax errors specific to PHP5.5- to still support PHP5.4+
|
2016-09-14 18:47:34 +07:00 |
|
vladar
|
26db43e7c4
|
Enabled subscriptions in executor
|
2016-09-14 18:47:34 +07:00 |
|
vladar
|
31f40f5e26
|
Fixed scalar Int to respect min/max values according to graphql spec; added descriptions to scalars
|
2016-09-14 18:47:34 +07:00 |
|
vladar
|
c3d7a49a08
|
Updated executor and it's tests for april2016 specs
|
2016-09-14 18:47:34 +07:00 |
|
vladar
|
00f12b3197
|
Fixed definition tests; added enum tests
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
183a9d72cf
|
Introspection for april 2016 spec + fixed tests
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
e7c7924dc0
|
New AST utils + test
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
a6a4f7862b
|
Several validator fixes
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
e82f887918
|
Fixed visitor; more visitor tests
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
800d8ba25f
|
Continue updating validator rules for april2016 spec
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
8ab7a9a438
|
Implemented covariant return types for interface fields (#23)
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
f1ddc98390
|
Updating validator rules for april2016 spec
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
17081cec1c
|
More AST visitor tests
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
687b023616
|
Schema language parsing / printing
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
4f4776726d
|
Updated parser to 2016 spec version; schema language parsing
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
86adfde0a0
|
Updated AST to 2016 spec version
|
2016-09-14 18:41:02 +07:00 |
|
vladar
|
c053169671
|
Updated Lexer and LexerTest to april 2016 spec
|
2016-09-14 18:41:02 +07:00 |
|
Matthew Leverton
|
7c6f216578
|
Change Lexer::readString to decode escaped characters to their literal values
|
2016-07-14 13:32:57 -05:00 |
|
Jeremiah VALERIE
|
3ae6c73367
|
Removed memoization on executor resolveField (see #43)
|
2016-06-10 11:57:43 +02:00 |
|
Jeremiah VALERIE
|
be46b14441
|
Fix ResolveInfo::getFieldSelection() when using multiple fragments on the same field.
|
2016-05-18 16:20:53 +02:00 |
|
Jeremiah VALERIE
|
de4eba7077
|
Fix interface implementaion when interface is extends.
|
2016-04-25 14:44:08 +02:00 |
|
Jérémiah VALERIE
|
327cc52601
|
Add ExecutionResult $extensions
https://facebook.github.io/graphql/#sec-Response-Format
|
2016-04-25 14:44:08 +02:00 |
|
vladar
|
4d024ee85e
|
Test for lazy interface initialization + minor related tweak
|
2016-04-20 18:04:11 +06:00 |
|
Jeremiah VALERIE
|
3c6305c121
|
* Optimized implementation to interfaces using lazy loader
* Union types now accepting callback
|
2016-04-19 21:26:13 +02:00 |
|
Jeremiah VALERIE
|
545fe616a0
|
Add Complexity and Depth Query Security
|
2016-04-09 15:31:07 +02:00 |
|
Jeremiah VALERIE
|
2168d56d2d
|
* Named default rules
* add accessors to ease rules management
* replace self by static on public methods to help extending DocumentValidator class
|
2016-04-09 08:44:57 +02:00 |
|
vladar
|
68d8681983
|
#30 Fixed recursion bug in ResolveInfo::getFieldSelection()
|
2016-04-01 16:30:52 +06:00 |
|
Jérémiah VALERIE
|
8763c94ea3
|
setDefaultResolveFn should be static
To ease override of $defaultResolveFn the setter should be `static`
|
2016-03-12 00:30:46 +01:00 |
|
vladar
|
d37fb34e96
|
Ability to define interface fields with closure
|
2016-02-27 12:29:45 +06:00 |
|
vladar
|
f548de59fe
|
Fixes for definition config validation after recent changes
|
2016-02-25 15:23:42 +06:00 |
|
vladar
|
b890ef7cfe
|
Ability to define InputObjectType fields with closure (#22)
|
2016-02-24 23:25:36 +06:00 |
|
vladar
|
cc6c6a14f5
|
Expose original type configs for custom app-level metadata
|
2016-01-21 17:07:05 +07:00 |
|
vladar
|
98e5835620
|
Avoid infinite loop when using recursive types and interfaces (#16)
|
2016-01-01 19:16:25 +06:00 |
|
Andy Truong
|
968da9d122
|
Add subscriptionType.
|
2015-12-21 06:35:22 +07:00 |
|
vladar
|
68fb4ceb9c
|
Refactored facade to simplify custom output formatting
|
2015-11-02 20:39:51 +06:00 |
|
vladar
|
c81605bfb1
|
Fixed bug with failing error reporting for mismatching interface / union implementations
|
2015-10-25 19:35:36 +06:00 |
|
vladar
|
ea4d43f00f
|
Better approach for latest performance tweaks (#8)
|
2015-10-25 19:08:24 +06:00 |
|
vladar
|
3b3da9e066
|
Several performance improvements (#8)
|
2015-10-25 14:23:15 +06:00 |
|
vladar
|
d982bad63a
|
Make sure default argument values are passed to resolve function (#4)
|
2015-10-23 17:30:02 +06:00 |
|
vladar
|
965c3ff743
|
Minor executor refactoring related to handling "resolve" errors
|
2015-10-23 15:45:40 +06:00 |
|
vladar
|
83f42825f8
|
Reverted mapping executor (#6)
|
2015-10-23 15:44:01 +06:00 |
|
vladar
|
197c2d3532
|
Allow thunks for Union possible types + preserve original type config with Union (for custom user-land definitions)
|
2015-10-17 17:37:40 +06:00 |
|
vladar
|
5f2b2376e0
|
Allow custom attributes in type definitions for user-land metadata
|
2015-10-17 17:35:56 +06:00 |
|
vladar
|
2d54f654c2
|
Fine-grained type checks for Executor
|
2015-10-17 17:34:51 +06:00 |
|
vladar
|
25c42e6b52
|
Added Utils::groupBy as a convenience tool
|
2015-09-06 15:50:16 +06:00 |
|
vladar
|
c312f73df3
|
Oops, added missing parseValue for EnumType
|
2015-09-06 15:49:23 +06:00 |
|
vladar
|
83e33659cb
|
Do not mess with original value in executor. Copy it instead.
|
2015-09-06 15:48:16 +06:00 |
|
vladar
|
3edf6248b0
|
Mapping Executor
|
2015-09-01 01:44:03 +06:00 |
|
vladar
|
aeb56d139a
|
Ability to receive list of requested fields from ResolveInfo (recursively)
|
2015-08-30 13:48:17 +06:00 |
|
vladar
|
74b922ce68
|
Use name as value for Enums if value wasn't set in definition
|
2015-08-30 13:47:09 +06:00 |
|
vladar
|
9ccfb93ef2
|
Saving original field config with field definition to allow custom app-level definitions
|
2015-08-30 13:46:20 +06:00 |
|
vladar
|
c6a9712790
|
Several useful utils for Traversables
|
2015-08-30 13:44:52 +06:00 |
|
vladar
|
003fa005ed
|
Ability to set type-level "resolveField" method
|
2015-08-30 13:43:55 +06:00 |
|
vladar
|
5241c8a5d3
|
Better error messages for config validation
|
2015-08-30 13:41:41 +06:00 |
|
vladar
|
841d6ab851
|
Updated to latest version of graphql-js
|
2015-08-17 20:01:55 +06:00 |
|
vladar
|
022c962942
|
New language features (NamedType, directives rethinking)
|
2015-08-17 02:53:11 +06:00 |
|
vladar
|
698b2cb862
|
Minor errors refactoring
|
2015-08-16 17:17:48 +06:00 |
|
David Mongeau-Petitpas
|
b3932c8fbe
|
Updated listOfType validation to Traversable
|
2015-08-09 19:00:05 -04:00 |
|
David Mongeau-Petitpas
|
7431f2dcc5
|
Edit character bug
|
2015-08-09 14:26:36 -04:00 |
|
David Mongeau-Petitpas
|
afe28da475
|
Check on ListOfType is on ArrayAccess instead of ArrayObject
|
2015-08-09 14:25:01 -04:00 |
|
vladar
|
b2b08f2a07
|
Fixed missing cleanup in TypeInfo::leave
|
2015-07-16 15:16:27 +06:00 |
|
vladar
|
20c482ce2f
|
Version 0.1
|
2015-07-15 23:05:46 +06:00 |
|