deprecatedquery finds a deprecated query in your GraphQL query files.

# In your schema
type User {
    id: ID!
    addr: String! @deprecated(reason: "use address instead")
    address: String!

# Query
query user {
    user {
        addr # want "addr is deprecated reason: use address instead"

How to use

A runnable linter can be created with multichecker package. You can create own linter with your favorite Analyzers.

package main

import (

func main() {
	var excludes string
	flag.StringVar(&excludes, "excludes", "", "exclude GraphQL query field name. it can specify multiple values separated by `,`")


deprecatedquery provides a typical main function and you can install with go install command.

$ go install

The deprecatedquery command has two flags, schema and query which will be parsed and analyzed by deprecatedquery’s Analyzer.

$ deprecatedquery -schema="server/graphql/schema/**/*.graphql" -query="client/**/*.graphql" -excludes="field1,field2"

The default value of schema is “schema/*/**.graphql” and query is query/*/**.graphql.


Appify Technologies, Inc.


View Github