Skip to content

Commit 22d0fd9

Browse files
Brian KruegerAlecAivazis
Brian Krueger
authored andcommitted
Broke out planning step for error handling; fixed memory leak (#81)
* Added in returning 400's for plan failure, data set as nil when it doesn't exist * fixed go.mod * tidied mods * close channel being held open forever * break on close
1 parent 52e4501 commit 22d0fd9

File tree

12 files changed

+126
-91
lines changed

12 files changed

+126
-91
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
bin/*
22
cmd
3+
.idea

examples/auth/go.mod

100755100644
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
module github.com/nautilus/gateway/examples/auth
22

33
require (
4+
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b
5+
github.com/kr/pretty v0.1.0 // indirect
46
github.com/nautilus/gateway v0.0.9
57
github.com/nautilus/graphql v0.0.3
8+
github.com/vektah/gqlparser v1.1.0
69
)
710

11+
go 1.13

examples/auth/go.sum

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,46 +2,56 @@ github.com/99designs/gqlgen v0.7.1 h1:uRf7C+/33spvj24B5fKAExQcHbZkJHE5yjoSgSYBmi
22
github.com/99designs/gqlgen v0.7.1/go.mod h1:KSQDfLlTTGmzlRgLGm6HeKKKo598l5E2svEM6Nz2Jnw=
33
github.com/agnivade/levenshtein v1.0.1 h1:3oJU7J3FGFmyhn8KHjmVaZCN5hxTr7GxgRue+sxIXdQ=
44
github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM=
5+
github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ=
56
github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8=
67
github.com/carted/graphql v0.7.6 h1:1DAom3l7Irln/hHlPMBR6w/RirCXjopsCY9WCZc7WUc=
78
github.com/carted/graphql v0.7.6/go.mod h1:aIVByVaa4avHzEnahcnHbP48OrkT/+gTtxBT+dPV2R0=
89
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
10+
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
911
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
10-
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
1112
github.com/graph-gophers/dataloader v5.0.0+incompatible h1:R+yjsbrNq1Mo3aPG+Z/EKYrXrXXUNJHOgbRt+U6jOug=
1213
github.com/graph-gophers/dataloader v5.0.0+incompatible/go.mod h1:jk4jk0c5ZISbKaMe8WsVopGB5/15GvGHMdMdPtwlRp4=
14+
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b h1:hrePtAgLPsHHKUv6l9EDI+QSH5cjPIYYzoIsIWfZ6qY=
1315
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b/go.mod h1:aRnZGurV3LlZ1Y+ygyx1mAV6OUfq+nu6OgpJ6jKgZ3g=
1416
github.com/graphql-go/graphql v0.7.7 h1:nwEsJGwPq9N6cElOO+NYyoWuELAQZ4GuJks0Rlco5og=
1517
github.com/graphql-go/graphql v0.7.7/go.mod h1:k6yrAYQaSP59DC5UVxbgxESlmVyojThKdORUqGDGmrI=
16-
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
17-
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
18+
github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk=
1819
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
20+
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
21+
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
22+
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
23+
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
24+
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
1925
github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE=
2026
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
27+
github.com/nautilus/gateway v0.0.9 h1:bAnn/dBxrqgG3RvGvYY5hlcMGxav1+CRmhpKl5AAXWc=
28+
github.com/nautilus/gateway v0.0.9/go.mod h1:byPYFcsR0/qeveNubjzSVWL8MRd+MRgKTpu+s+ZX1i4=
29+
github.com/nautilus/graphql v0.0.3 h1:yGXVdxvyZcZLfUvMlPT8oDUmPvYJrDY+1FE88gFMuLw=
30+
github.com/nautilus/graphql v0.0.3/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
2131
github.com/opentracing/opentracing-go v1.0.2 h1:3jA2P6O1F9UOrWVpwrIo17pu01KWvNWg4X946/Y5Zwg=
2232
github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
33+
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
2334
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
35+
github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
2436
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
2537
github.com/sirupsen/logrus v1.3.0 h1:hI/7Q+DtNZ2kINb6qt/lS+IyXnHQe9e90POfeewL/ME=
2638
github.com/sirupsen/logrus v1.3.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
2739
github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
28-
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
2940
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
3041
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
3142
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
43+
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
3244
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
3345
github.com/vektah/gqlparser v1.1.0 h1:3668p2gUlO+PiS81x957Rpr3/FPRWG6cxgCXAvTS1hw=
3446
github.com/vektah/gqlparser v1.1.0/go.mod h1:1ycwN7Ij5njmMkPPAOaRFY4rET2Enx7IkVv3vaXspKw=
47+
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I=
3548
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
36-
golang.org/x/crypto v0.0.0-20190130090550-b01c7a725664 h1:YbZJ76lQ1BqNhVe7dKTSB67wDrc2VPRR75IyGyyPDX8=
37-
golang.org/x/crypto v0.0.0-20190130090550-b01c7a725664/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
3849
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd h1:HuTn7WObtcDo9uEEU7rEqL0jYthdXAmZ6PP+meazmaU=
3950
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
51+
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33 h1:I6FyU15t786LL7oL/hn43zqTuEGr4PN7F4XJ1p4E3Y8=
4052
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
41-
golang.org/x/sys v0.0.0-20190130150945-aca44879d564 h1:o6ENHFwwr1TZ9CUPQcfo1HGvLP1OPsPOTB7xCIOPNmU=
42-
golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
4353
golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
44-
golang.org/x/tools v0.0.0-20190208185513-a3f91d6be4f3/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
54+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
4555
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
46-
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
56+
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
4757
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=

execute_test.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1498,11 +1498,14 @@ func TestExecutor_appliesRequestMiddlewares(t *testing.T) {
14981498
return
14991499
}
15001500

1501-
// execute any think
1502-
gateway.Execute(&RequestContext{
1501+
reqCtx := &RequestContext{
15031502
Context: context.Background(),
15041503
Query: "{ values }",
1505-
})
1504+
}
1505+
plan, _ := gateway.GetPlan(reqCtx)
1506+
1507+
// execute any think
1508+
gateway.Execute(reqCtx, plan)
15061509

15071510
// make sure we called the middleware
15081511
assert.True(t, called, "Did not call middleware")

gateway.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,19 @@ type RequestContext struct {
4141
CacheKey string
4242
}
4343

44-
// Execute takes a query string, executes it, and returns the response
45-
func (g *Gateway) Execute(ctx *RequestContext) (map[string]interface{}, error) {
44+
45+
func (g *Gateway) GetPlan(ctx *RequestContext) ([]*QueryPlan, error) {
4646
// let the persister grab the plan for us
47-
plan, err := g.queryPlanCache.Retrieve(&PlanningContext{
47+
return g.queryPlanCache.Retrieve(&PlanningContext{
4848
Query: ctx.Query,
4949
Schema: g.schema,
5050
Gateway: g,
5151
Locations: g.fieldURLs,
5252
}, &ctx.CacheKey, g.planner)
53-
if err != nil {
54-
return nil, err
55-
}
53+
}
5654

55+
// Execute takes a query string, executes it, and returns the response
56+
func (g *Gateway) Execute(ctx *RequestContext, plan []*QueryPlan) (map[string]interface{}, error) {
5757
// build up the execution context
5858
executionContext := &ExecutionContext{
5959
RequestContext: ctx.Context,

gateway_test.go

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -159,10 +159,16 @@ func TestGateway(t *testing.T) {
159159
}
160160

161161
// build a query plan that the executor will follow
162-
_, err = gateway.Execute(&RequestContext{
162+
reqCtx := &RequestContext{
163163
Context: context.Background(),
164164
Query: "{ allUsers { firstName } }",
165-
})
165+
}
166+
plan, err := gateway.GetPlan(reqCtx)
167+
if err != nil {
168+
t.Errorf("Encountered error building plan.")
169+
}
170+
171+
_, err = gateway.Execute(reqCtx, plan)
166172
if err == nil {
167173
t.Errorf("Did not encounter error executing plan.")
168174
}
@@ -192,12 +198,19 @@ func TestGateway(t *testing.T) {
192198
t.Error(err.Error())
193199
return
194200
}
195-
196-
// build a query plan that the executor will follow
197-
response, err := gateway.Execute(&RequestContext{
201+
reqCtx := &RequestContext{
198202
Context: context.Background(),
199203
Query: "{ allUsers { firstName } }",
200-
})
204+
}
205+
206+
plan, err := gateway.GetPlan(reqCtx)
207+
if err != nil {
208+
t.Errorf("Encountered error building plan: %s", err.Error())
209+
return
210+
}
211+
212+
// build a query plan that the executor will follow
213+
response, err := gateway.Execute(reqCtx, plan)
201214

202215
if err != nil {
203216
t.Errorf("Encountered error executing plan: %s", err.Error())
@@ -302,10 +315,17 @@ func TestGateway(t *testing.T) {
302315
return
303316
}
304317

305-
// execute the query
306-
res, err := gateway.Execute(&RequestContext{
318+
reqCtx := &RequestContext{
307319
Context: context.Background(), Query: query,
308-
})
320+
}
321+
plan, err := gateway.GetPlan(reqCtx)
322+
if err != nil {
323+
t.Error(err.Error())
324+
return
325+
}
326+
327+
// execute the query
328+
res, err := gateway.Execute(reqCtx, plan)
309329
if err != nil {
310330
t.Error(err.Error())
311331
return

go.mod

100755100644
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ module github.com/nautilus/gateway
33
require (
44
github.com/99designs/gqlgen v0.7.1
55
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b
6+
github.com/inconshreveable/mousetrap v1.0.0 // indirect
7+
github.com/kr/pretty v0.1.0 // indirect
68
github.com/mitchellh/mapstructure v1.1.2
79
github.com/nautilus/graphql v0.0.7
810
github.com/sirupsen/logrus v1.3.0
@@ -12,3 +14,5 @@ require (
1214
github.com/vektah/gqlparser v1.1.0
1315
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd
1416
)
17+
18+
go 1.13

go.sum

Lines changed: 9 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -9,53 +9,25 @@ github.com/carted/graphql v0.7.6/go.mod h1:aIVByVaa4avHzEnahcnHbP48OrkT/+gTtxBT+
99
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1010
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
1111
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
12-
github.com/gorilla/websocket v1.4.0 h1:WDFjx/TMzVgy9VdMMQi2K2Emtwi2QcUQsztZ/zLaH/Q=
13-
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
1412
github.com/graph-gophers/dataloader v5.0.0+incompatible h1:R+yjsbrNq1Mo3aPG+Z/EKYrXrXXUNJHOgbRt+U6jOug=
1513
github.com/graph-gophers/dataloader v5.0.0+incompatible/go.mod h1:jk4jk0c5ZISbKaMe8WsVopGB5/15GvGHMdMdPtwlRp4=
1614
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b h1:hrePtAgLPsHHKUv6l9EDI+QSH5cjPIYYzoIsIWfZ6qY=
1715
github.com/graph-gophers/graphql-go v0.0.0-20190108123631-d5b7dc6be53b/go.mod h1:aRnZGurV3LlZ1Y+ygyx1mAV6OUfq+nu6OgpJ6jKgZ3g=
1816
github.com/graphql-go/graphql v0.7.7 h1:nwEsJGwPq9N6cElOO+NYyoWuELAQZ4GuJks0Rlco5og=
1917
github.com/graphql-go/graphql v0.7.7/go.mod h1:k6yrAYQaSP59DC5UVxbgxESlmVyojThKdORUqGDGmrI=
20-
github.com/hashicorp/golang-lru v0.5.0 h1:CL2msUPvZTLb5O648aiLNJw3hnBxN2+1Jq8rCOH9wdo=
21-
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
2218
github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=
2319
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
2420
github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk=
2521
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
22+
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
23+
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
24+
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
25+
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
26+
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
2627
github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE=
2728
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
28-
github.com/nautilus/gateway v0.0.7/go.mod h1:X8SLkNOIO+C50p/tWCaywy93dmXM0TvcXS1OYaBqFSc=
29-
github.com/nautilus/gateway v0.0.9/go.mod h1:byPYFcsR0/qeveNubjzSVWL8MRd+MRgKTpu+s+ZX1i4=
30-
github.com/nautilus/gateway/examples/auth v0.0.0-20190724183827-01a4c663ce1e h1:e4vK+0MwZV/Io5OROcQh4qhfqCEhz1Oq7X9MrdA0r9c=
31-
github.com/nautilus/gateway/examples/auth v0.0.0-20190724183827-01a4c663ce1e/go.mod h1:NfFlJ/1B/LwwLJO7YkaQ7tXeUMtqedks87g2Oi3ZT2k=
32-
github.com/nautilus/gateway/examples/auth v0.0.0-20190813042451-750729497797 h1:S/bPZDPfVrtS9JGQlGyATYSh3TDlMSJiakSnglsbyDo=
33-
github.com/nautilus/gateway/examples/auth v0.0.0-20190813042451-750729497797/go.mod h1:ThxvpsrAAbz9xB3YcVtPHPNLw9UUNCwJXfA6jBRPlx8=
34-
github.com/nautilus/graphql v0.0.0-20190129081528-0d6bfc6f1842 h1:GQd8y2SVpLh6Eq2PDkzSE+QZq+ZUCs08/kCTDk9ioIY=
35-
github.com/nautilus/graphql v0.0.0-20190129081528-0d6bfc6f1842/go.mod h1:/gQq2EuE47owcG7BUzZF/XBnAA8uvPjKqO+bg6A7axM=
36-
github.com/nautilus/graphql v0.0.0-20190130220441-1aac49cfdb81 h1:MsH7IM4y34eenZWgvZRBYu4cwV+SF7bv0N50sy70f3A=
37-
github.com/nautilus/graphql v0.0.0-20190130220441-1aac49cfdb81/go.mod h1:aw58+1WuROPKYEN337vjRRaH9LfiiJKu6RwwFuF1wzw=
38-
github.com/nautilus/graphql v0.0.0-20190206230122-a60d56409fd3 h1:Ck8Xk1aJF/M7ms5qtSIXEUwrrqba0yHm6KEjqIiv/ps=
39-
github.com/nautilus/graphql v0.0.0-20190206230122-a60d56409fd3/go.mod h1:aw58+1WuROPKYEN337vjRRaH9LfiiJKu6RwwFuF1wzw=
40-
github.com/nautilus/graphql v0.0.0-20190208193207-6bb377f3952a h1:7sDoVtsm6RWyGTlJyoIMxC1uVIUgBgscUVcCslus1y8=
41-
github.com/nautilus/graphql v0.0.0-20190208193207-6bb377f3952a/go.mod h1:aw58+1WuROPKYEN337vjRRaH9LfiiJKu6RwwFuF1wzw=
42-
github.com/nautilus/graphql v0.0.0-20190220052332-1ec821cfd939 h1:dIhr36omlDy2IMlwbEDSQj6aEWR5BzQq8hmrY0UgGZc=
43-
github.com/nautilus/graphql v0.0.0-20190220052332-1ec821cfd939/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
44-
github.com/nautilus/graphql v0.0.0-20190220053332-42ac2d2a1f98 h1:xz+MM8U50sjgNR1qjvh7iO4SH9zF3+fbL/kZtEjtces=
45-
github.com/nautilus/graphql v0.0.0-20190220053332-42ac2d2a1f98/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
46-
github.com/nautilus/graphql v0.0.0/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
47-
github.com/nautilus/graphql v0.0.1 h1:TI0EfcqGvHVfPU/BjGYasFfjvMunPusmT3jn9m3AugY=
48-
github.com/nautilus/graphql v0.0.1/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
49-
github.com/nautilus/graphql v0.0.2 h1:yWsQs51LT4QKTTekhF3OxUW2BtvVYiiJ8+3Wk0PxL5k=
50-
github.com/nautilus/graphql v0.0.2/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
51-
github.com/nautilus/graphql v0.0.3 h1:yGXVdxvyZcZLfUvMlPT8oDUmPvYJrDY+1FE88gFMuLw=
52-
github.com/nautilus/graphql v0.0.3/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
53-
github.com/nautilus/graphql v0.0.4 h1:+UU6LqfOcHwOM8juIIaEbIZooio37Mlh8anx33DQ3XM=
54-
github.com/nautilus/graphql v0.0.4/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
55-
github.com/nautilus/graphql v0.0.5 h1:BtqfavjBdBjltfLfNooaDsCH4t+SoMlcGdHY10grWh0=
56-
github.com/nautilus/graphql v0.0.5/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
57-
github.com/nautilus/graphql v0.0.6 h1:/OgDKNLmigZ9JqfBiv8UHMxaWntbSzNDBuI+DWa7dlQ=
58-
github.com/nautilus/graphql v0.0.6/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
29+
github.com/nautilus/gateway v0.0.15 h1:I+Vf+RyGb538ZXczj81obP6duRcHCqSRuPpNNaFEIPI=
30+
github.com/nautilus/gateway v0.0.15/go.mod h1:RaBNEyu0ui+CZJiEFFmZA42fFnjxtUV3Uoin2EiA5lg=
5931
github.com/nautilus/graphql v0.0.7 h1:ZIPFGlSQjH3eJylXzVclrBZa9EwzOfhlsr69ZFUAz2w=
6032
github.com/nautilus/graphql v0.0.7/go.mod h1:58l1aeXqmU+gAfwagVHqTUv8C6LBfa63mZ6VHj1dbXQ=
6133
github.com/opentracing/opentracing-go v1.0.2 h1:3jA2P6O1F9UOrWVpwrIo17pu01KWvNWg4X946/Y5Zwg=
@@ -79,20 +51,12 @@ github.com/vektah/gqlparser v1.1.0 h1:3668p2gUlO+PiS81x957Rpr3/FPRWG6cxgCXAvTS1h
7951
github.com/vektah/gqlparser v1.1.0/go.mod h1:1ycwN7Ij5njmMkPPAOaRFY4rET2Enx7IkVv3vaXspKw=
8052
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I=
8153
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
82-
golang.org/x/crypto v0.0.0-20190130090550-b01c7a725664 h1:YbZJ76lQ1BqNhVe7dKTSB67wDrc2VPRR75IyGyyPDX8=
83-
golang.org/x/crypto v0.0.0-20190130090550-b01c7a725664/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
84-
golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3 h1:ulvT7fqt0yHWzpJwI57MezWnYDVpCAYBVuYst/L+fAY=
85-
golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
8654
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd h1:HuTn7WObtcDo9uEEU7rEqL0jYthdXAmZ6PP+meazmaU=
8755
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
8856
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33 h1:I6FyU15t786LL7oL/hn43zqTuEGr4PN7F4XJ1p4E3Y8=
8957
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
90-
golang.org/x/sys v0.0.0-20190130150945-aca44879d564 h1:o6ENHFwwr1TZ9CUPQcfo1HGvLP1OPsPOTB7xCIOPNmU=
91-
golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
9258
golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
93-
golang.org/x/tools v0.0.0-20190130214255-bb1329dc71a0/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
94-
golang.org/x/tools v0.0.0-20190206221403-44bcb96178d3/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
95-
golang.org/x/tools v0.0.0-20190208185513-a3f91d6be4f3/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
59+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
9660
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
97-
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
61+
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
9862
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=

0 commit comments

Comments
 (0)