Magnus Hallin
2f79f33a82
Document input object default values
2017-02-19 12:51:12 +01:00
Magnus Hallin
0b07dbe99a
Add support for default values in input objects
2017-02-19 12:08:52 +01:00
Magnus Hallin
e0c6b03171
Add more input value null value tests
...
These correspond to the table in "3.1.6 Input Objects" in the GraphQL
specification.
2017-02-19 10:29:37 +01:00
Michael Macias
b2e75bf4f6
Update to iron 0.5
...
* `Url::into_generic_url` was deprecated in 0.4.1. The `Into` trait is
used instead.
* iron/logger removed support for ANSI terminal colors in 0.2.0, which
makes logging work in the Command Prompt on Windows.
Fixes #21
2017-02-16 02:08:26 -06:00
Magnus Hallin
708b99be62
Add PR links to changelog
2017-02-05 13:57:17 +01:00
Magnus Hallin
987aa40da1
Prepare for 0.6.2 release
2017-02-04 16:55:58 +01:00
Magnus Hallin
40cc76d2b9
Merge pull request #26 from zaeleus/explicit-null
...
Accept explicit null input values in queries
2017-02-04 13:25:15 +01:00
Magnus Hallin
1aedc69d59
Remove some older Rusts from CI
...
Some dependencies don't build on 1.11 and 1.10, so we'll have to scrap
them unfortunately.
2017-02-04 11:57:33 +01:00
Magnus Hallin
90054cf9d1
(Maybe) fix macro compatibility for older Rusts
2017-02-04 11:52:27 +01:00
Magnus Hallin
3d8f88f59e
Fix 1.12.1 compatibility
2017-02-04 11:37:01 +01:00
Magnus Hallin
3fe3c76106
Add package to web programming category
2017-02-04 11:36:39 +01:00
Magnus Hallin
351815357e
Run CI against the six latest Rust releases
2017-02-04 11:16:05 +01:00
Magnus Hallin
c5a1f975ed
Allow strings to be parsed into enums in variables
...
Fixes #17 .
2017-02-04 11:08:00 +01:00
Magnus Hallin
d8b07e8c68
Implement __typename for GraphQL objects
...
Fixes #22 .
2017-02-04 10:45:25 +01:00
Magnus Hallin
d87c6e4fa4
Don't attach Iron logger middleware on Windows
...
Fixes #15 .
2017-02-04 10:30:46 +01:00
Magnus Hallin
c1d8e6c19b
Remove some unused imports
2017-02-04 10:29:53 +01:00
Magnus Hallin
c51930aae5
Merge pull request #25 from zaeleus/serde-0.9
...
Update to serde 0.9
2017-02-04 10:16:26 +01:00
Magnus Hallin
555962c915
Merge pull request #20 from zaeleus/warnings
...
Fix compiler warnings when testing
2017-02-04 10:16:06 +01:00
Magnus Hallin
7b6bf74dac
Merge pull request #19 from zaeleus/id
...
Implement traits for ID to make it usable outside its module
2017-02-04 10:15:31 +01:00
Michael Macias
98b662c88e
Accept explicit null input values in queries
...
Explicit `null` values are valid for nullable input values. See
<https://facebook.github.io/graphql/#sec-Types.Non-Null >.
Fixes #23
2017-01-27 01:45:29 -06:00
Michael Macias
a834115d87
Update to serde 0.9
...
serde 0.9.0 introduces breaking changes. See the release notes for more
details: <https://github.com/serde-rs/serde/releases/tag/v0.9.0 >.
2017-01-26 17:25:17 -06:00
Michael Macias
b61281b63a
Implement traits for ID to make it usable outside its module
...
ID is a named tuple with a private String field. This prevents any
creation of an ID outside its own module. Traits, such as conversion and
dereference, are added to make ID usable without exposing its inner
field.
2017-01-20 03:29:37 -06:00
Michael Macias
c7adbaede7
Fix compiler warnings when testing
2017-01-20 03:29:26 -06:00
Magnus Hallin
907d78d41b
Merge pull request #14 from zaeleus/variables-type-alias
...
Add type alias for query variables
2017-01-19 09:28:52 -08:00
Michael Macias
e3500dff50
Add type alias for query variables
2017-01-15 13:37:30 -06:00
Magnus Hallin
80a2aceb85
Merge pull request #16 from zaeleus/graphiql-body
...
Fix graphQLFetcher body serialization
2017-01-15 11:49:37 +01:00
Magnus Hallin
ba4c54f1a2
Merge pull request #12 from zaeleus/rustc_serialize
...
Make rustc-serialize optional
2017-01-15 11:46:45 +01:00
Michael Macias
fe96029e3a
Fix graphQLFetcher body serialization
...
`params.variables` is already an object when passed to the fetcher and
does not need to be parsed.
2017-01-14 15:10:18 -06:00
Michael Macias
b78aef715d
Make rustc-serialize optional
...
This extracts rustc-serialize JSON serialization into its own module,
decoupling all core structures from its use.
rustc-serialize can now be completely disabled, removing it as a
dependency if serde (or none) is used instead. It is, however, still the
default serializer. In Cargo, the `default-features` field must be set
to `false` to disable it, e.g.,
[dependencies.juniper]
version = "0.6"
default-features = false
features = ["serde"]
The Iron handlers still require rustc-serialize.
The default values for attributes changed from being formatted as JSON
to how it is defined in [the reference implementation][printer.js].
[printer.js]: https://github.com/graphql/graphql-js/blob/v0.8.2/src/language/printer.js
2017-01-06 21:34:44 -06:00
Magnus Hallin
8620eb1e7a
Prepare for 0.6.1 release
2017-01-06 13:15:16 +01:00
Magnus Hallin
1af950401c
Add support for declaring input objects as public structs
...
Fixes #5 .
2017-01-06 13:08:39 +01:00
Magnus Hallin
fce45ece3f
Merge pull request #8 from zaeleus/serde
...
Add optional Serde serialization support
2017-01-06 12:48:12 +01:00
Magnus Hallin
0e65a20c77
Merge pull request #9 from zaeleus/to_camel_case
...
Rename erroneously named to_snake_case
2017-01-06 12:43:28 +01:00
Magnus Hallin
ccf6b8399a
Merge pull request #10 from zaeleus/graphqlerror-to-json
...
Remove JSON wrapper object from GraphQLError::to_json
2017-01-06 12:43:19 +01:00
Magnus Hallin
aed959176f
Merge pull request #11 from zaeleus/graphiql
...
Update to graphiql 0.8.1
2017-01-06 12:42:41 +01:00
Michael Macias
4fce6062f0
Update to graphiql 0.8.1
2017-01-04 22:05:37 -06:00
Michael Macias
bd00e6c23d
Remove JSON wrapper object from GraphQLError::to_json
...
This should be the responsibility of the caller and makes it consistent
with how the successful case is handled.
2017-01-04 21:40:15 -06:00
Michael Macias
b0c43341e4
Rename erroneously named to_snake_case
...
This function is transforming snake_case to camelCase.
2017-01-04 21:07:01 -06:00
Michael Macias
aa056dd562
Add optional Serde serialization support
...
This adds the Serde serialization trait to the following:
* `ExecutionError`
* `GraphQLError`
* `InputValue` (+ deserialization)
* `RuleError`
* `SourcePosition`
* `Spanning<ParseError>`
* `Value`
Serde support is enabled via the "serde" feature flag.
2017-01-04 20:50:12 -06:00
Magnus Hallin
f33213e17e
Release version 0.6.0
2017-01-02 13:15:45 +01:00
Magnus Hallin
8f3e60a71c
Add notes about new API breaking changes
2016-12-28 19:15:54 +01:00
Magnus Hallin
853c92a0b7
Use borrowed string references in all AST nodes
2016-12-28 19:09:19 +01:00
Magnus Hallin
f066fca1f4
Use borrowed names when constructing Type instances
2016-12-28 19:09:19 +01:00
Magnus Hallin
1f62b628f9
Don't clone directive lists during execution
2016-12-28 12:03:23 +01:00
Magnus Hallin
5ce330a0e8
Don't clone argument names when building final argument hashmap
2016-12-28 11:59:50 +01:00
Magnus Hallin
d7e98d955a
Don't clone field names when recursing down in selection sets
2016-12-28 11:51:37 +01:00
Magnus Hallin
13903d7628
Don't clone selection sets during execution
2016-12-28 11:28:48 +01:00
Magnus Hallin
6a4b883b97
Don't clone fragment names in executor
2016-12-28 11:13:45 +01:00
Magnus Hallin
96c1ad0ef9
Use bencher crate to run benchmarks on stable rust
2016-12-26 12:16:19 +01:00
Magnus Hallin
7a0439bad7
Add changelog
2016-12-23 23:58:21 +01:00