2.8 KiB
[0.9.0] 2017-12-03
Changes
This is the first release in a long time.
Quite a few changes have accumulated since 0.8.1
, including multiple breaking
changes.
Custom derive & macros
Juniper has gained custom derive implementations for input objects, objects and enums.
#[derive(GraphQLInputObject)]
#[derive(GraphQLEnum)]
#[derive(GraphQLObject)]
The graphql_enum!
and graphql_input_object!
macros did not provide any more
benefits, so they have been removed!
All functionality is now covered by custom derive.
Check the docs to find out more.
Web framework integrations - Iron & Rocket
The iron and rocket integrations were removed from the main crate, and are now available via the juniper_iron and juniper_rocket crates.
FieldError rewrite (custom data)
The FieldError
type now supports custom data with the Value
type from
serde_json. Use this to populate the data
field in returned errors.
This also means that try! and ?
now work in resolvers, which is quite nice.
Also, the ResultExt
extension and the jtry!
macro were removed, since they
are redundant now!
Dynamic Schemas
Juniper has gained support for dynamic schemas, thanks to @srijs.
That also means the type of RootNode
has changed to include a lifetime.
The repository was restructured to a multi crate workspace to enable several new features like custom_derive and an extracted parser.
##66
Data Type Integrations
Integrations with multiple popular crates was added to make working with them easier.
- uuid
- url
- chrono
Field Order
To better comply with the specification, order of requested fields is now preserved.
[#82](https://github.com/graphql-rust/juniper/issues/82
From/ToInputValue
The ::from
and ::to
methods in From/ToInputValue
were renamed to
from/to_input_value()
to not conflict with other methods.
Other changes
- Several small performance improvements
- Use fnv hash map for better performance
Contributors
A big shoutout to the many contributors for this version, sorted alphabetically.
- Cameron Eldridge cameldridge+git@gmail.com
- Christian Legnitto christian@legnitto.com
- Jacob Haslehurst jacob@haslehurst.net
- Jane Keibler wanderingelf14@gmail.com
- Magnus Hallin mhallin@fastmail.com
- rushmorem rushmore@webenchanter.com
- Rushmore Mushambi rushmore@webenchanter.com
- Sagie Gur-Ari sagiegurari@gmail.com
- Sam Rijs srijs@airpost.net
- Stanko Krtalić stanko.krtalic@gmail.com
- theduke chris@theduke.at
- thomas-jeepe penguinSoccer@outlook.com