I think this really simplifies a lot. However in regards to:
I don’t think there has been much decisions made about how breaking changes will be handled and in this early fragile stage, it is probably best to stay away from breaking changes.
Would it be possible to put the count inside of the generated type itself?
Instead of:
type Data {
id: ID!
name: String!
intList: [Int]
stringList: [String]
metaData: [Data]
}
query {
queryData(filter: DataFilter): (Int, [Data])
# I think the correct annotation would be {Int, [Data]}
}
It could easily be:
type Data {
count: Int # a generated field with a new reserved keyword
id: ID!
name: String!
intList: [Int]
stringList: [String]
metaData: [Data]
}
query {
queryData(filter: DataFilter): [Data]
}
Sorry, bad terminology, I did not mean the 1st directive but rather the first: Int filter. If I limit my results to the first page of 10, I would want the count for all and not just the first page, because I already know that is <=10.