You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The update was easier than expected. Here are some of the bigger
changes:
- Our custom graphql scalars needed some rewriting, as they are defined
differently now.
- Lots duplicate methods were removed where the main function was
defined in a normal `impl` block and the `graphql_object` impl block
contained a method with same name and just called the first one. With
this update, Juniper automatically adds all methods defined in the
special impl block as normal methods, so this dance is not necessary
anymore.
- This also updates GraphiQL, which looks nicer now. The changelog
mentions that this requires websocket integration now, but I can't
find any information about this and everything seems to work.
- The generated schema seems to have a deterministic order, which is
great.
- Also see below.
I ran `graphql-inspector diff` on schema.graphql and the following
changes were printed. For one, that means no one has to manually review
schema.graphql: lots of stuff moved around, but hardly anything actually
changed. Below I explain every change.
✖ Type DateTimeUtc was removed
✔ Type DateTime was added
✖ Field AuthorizedEvent.created changed type from DateTimeUtc! to DateTime!
✖ Field AuthorizedEvent.tobiraDeletionTimestamp changed type from DateTimeUtc to DateTime
✖ Input field Filters.end changed type from DateTimeUtc to DateTime
✖ Input field Filters.start changed type from DateTimeUtc to DateTime
✖ Field SearchEvent.created changed type from DateTimeUtc! to DateTime!
✖ Field SearchEvent.endTime changed type from DateTimeUtc to DateTime
✖ Field SearchEvent.startTime changed type from DateTimeUtc to DateTime
✖ Field Series.created changed type from DateTimeUtc to DateTime
✖ Field SyncedEventData.endTime changed type from DateTimeUtc to DateTime
✖ Field SyncedEventData.startTime changed type from DateTimeUtc to DateTime
✖ Field SyncedEventData.updated changed type from DateTimeUtc! to DateTime!
The integration of `chrono` was slightly adjusted to better comply with public
standards. See graphql-rust/juniper#1010
Not really a problem for us, I just adjusted the relay config.
✖ AuthorizedEventData object type no longer implements Node interface
✖ SyncedEventData object type no longer implements Node interface
Removed some useless and wrong `impl = NodeValue` attributes, that were ignored
before and now error. This was a mistake, those types cannot implement `Node` as
they don't have an ID. I am confused how this compiled before.
✖ Type RealmNameSourceBlock was removed
✖ Field RealmNameFromBlock.block changed type from RealmNameSourceBlock! to Block!
✖ PlaylistBlock object type no longer implements RealmNameSourceBlock interface
✖ SeriesBlock object type no longer implements RealmNameSourceBlock interface
✖ VideoBlock object type no longer implements RealmNameSourceBlock interface
Removed `RealmNameSourceBlock` interface: it did not serve any practical
purpose. It only hinted at the fact that not all blocks can be used as name
source, but again, not actually needed for API or type safety. And making it
work was annoying.
✖ Type for argument order on field User.myVideos changed from EventSortOrder to EventSortOrder!
This is now using a proper "default value" that GraphQL understands. It's
`foo: Baz! = ...` which is correct according to the GraphQL spec. The argument
can still be omitted, in which case the default is used. Curiously, GraphiQL
does not seem to understand that yet. In any case, the runtime behavior did
not change.
⚠ AuthorizedPlaylist object implements Node interface
⚠ Series object implements Node interface
`Series` and `AuthorizedPlaylist` implement `Node` now. This was just an
oversight before and caused compiler errors after the update.
⚠ Default value [] was added to argument newRealms on field Mutation.mountSeries
The runtime behavior was like this already, but now it's properly
specified in the schema.
✔ Description A string in different languages on type TranslatedString has changed to A string in different languages.
Added a '.' at the end.
0 commit comments