@@ -27,6 +27,7 @@ import (
2727 "github.com/kyleconroy/sqlc/internal/opts"
2828 "github.com/kyleconroy/sqlc/internal/plugin"
2929 "github.com/kyleconroy/sqlc/internal/shfmt"
30+ "github.com/kyleconroy/sqlc/internal/vet"
3031)
3132
3233var ErrFailedChecks = errors .New ("failed checks" )
@@ -76,22 +77,22 @@ func Vet(ctx context.Context, e Env, dir, filename string, stderr io.Writer) err
7677 cel .StdLib (),
7778 ext .Strings (ext .StringsVersion (1 )),
7879 cel .Types (
79- & plugin. VetConfig {},
80- & plugin. VetQuery {},
81- & plugin. PostgreSQLExplain {},
82- & plugin. MySQLExplain {},
80+ & vet. Config {},
81+ & vet. Query {},
82+ & vet. PostgreSQL {},
83+ & vet. MySQL {},
8384 ),
8485 cel .Variable ("query" ,
85- cel .ObjectType ("plugin.VetQuery " ),
86+ cel .ObjectType ("vet.Query " ),
8687 ),
8788 cel .Variable ("config" ,
88- cel .ObjectType ("plugin.VetConfig " ),
89+ cel .ObjectType ("vet.Config " ),
8990 ),
9091 cel .Variable ("postgresql" ,
91- cel .ObjectType ("plugin .PostgreSQL" ),
92+ cel .ObjectType ("vet .PostgreSQL" ),
9293 ),
9394 cel .Variable ("mysql" ,
94- cel .ObjectType ("plugin .MySQL" ),
95+ cel .ObjectType ("vet .MySQL" ),
9596 ),
9697 )
9798 if err != nil {
@@ -170,7 +171,7 @@ func (p *pgxConn) Prepare(ctx context.Context, name, query string) error {
170171}
171172
172173func (p * pgxConn ) Explain (ctx context.Context , query string , args ... * plugin.Parameter ) (* vetEngineOutput , error ) {
173- eQuery := "EXPLAIN (ANALYZE false, VERBOSE, COSTS, SETTINGS, BUFFERS, FORMAT JSON) " + query
174+ eQuery := "EXPLAIN (ANALYZE false, VERBOSE, COSTS, SETTINGS, BUFFERS, FORMAT JSON) " + query
174175 eArgs := make ([]any , len (args ))
175176 row := p .c .QueryRow (ctx , eQuery , eArgs ... )
176177 var result []json.RawMessage
@@ -181,11 +182,11 @@ func (p *pgxConn) Explain(ctx context.Context, query string, args ...*plugin.Par
181182 fmt .Println (eQuery )
182183 fmt .Println (string (result [0 ]))
183184 }
184- var explain plugin .PostgreSQLExplain
185+ var explain vet .PostgreSQLExplain
185186 if err := pjson .Unmarshal (result [0 ], & explain ); err != nil {
186187 return nil , err
187188 }
188- return & vetEngineOutput {PostgreSQL : & plugin .PostgreSQL {Explain : & explain }}, nil
189+ return & vetEngineOutput {PostgreSQL : & vet .PostgreSQL {Explain : & explain }}, nil
189190}
190191
191192type dbPreparer struct {
@@ -207,7 +208,7 @@ type mysqlExplainer struct {
207208}
208209
209210func (me * mysqlExplainer ) Explain (ctx context.Context , query string , args ... * plugin.Parameter ) (* vetEngineOutput , error ) {
210- eQuery := "EXPLAIN FORMAT=JSON " + query
211+ eQuery := "EXPLAIN FORMAT=JSON " + query
211212 eArgs := make ([]any , len (args ))
212213 row := me .QueryRowContext (ctx , eQuery , eArgs ... )
213214 var result json.RawMessage
@@ -218,14 +219,14 @@ func (me *mysqlExplainer) Explain(ctx context.Context, query string, args ...*pl
218219 fmt .Println (eQuery )
219220 fmt .Println (string (result ))
220221 }
221- var explain plugin .MySQLExplain
222+ var explain vet .MySQLExplain
222223 if err := pjson .Unmarshal (result , & explain ); err != nil {
223224 return nil , err
224225 }
225226 if explain .QueryBlock .Message != "" {
226227 return nil , fmt .Errorf ("mysql explain: %s" , explain .QueryBlock .Message )
227228 }
228- return & vetEngineOutput {MySQL : & plugin .MySQL {Explain : & explain }}, nil
229+ return & vetEngineOutput {MySQL : & vet .MySQL {Explain : & explain }}, nil
229230}
230231
231232type rule struct {
@@ -377,7 +378,8 @@ func (c *checker) checkSQL(ctx context.Context, s config.SQL) error {
377378 }
378379
379380 // Get explain output for this query if we need it
380- _ , pgsqlOK := evalMap ["postgresql" ]; _ , mysqlOK := evalMap ["mysql" ]
381+ _ , pgsqlOK := evalMap ["postgresql" ]
382+ _ , mysqlOK := evalMap ["mysql" ]
381383 if rule .NeedsExplain && ! (pgsqlOK || mysqlOK ) {
382384 if expl == nil {
383385 fmt .Fprintf (c .Stderr , "%s: %s: %s: error explaining query: database connection required\n " , query .Filename , query .Name , name )
@@ -420,23 +422,23 @@ func (c *checker) checkSQL(ctx context.Context, s config.SQL) error {
420422 return nil
421423}
422424
423- func vetConfig (req * plugin.CodeGenRequest ) * plugin. VetConfig {
424- return & plugin. VetConfig {
425+ func vetConfig (req * plugin.CodeGenRequest ) * vet. Config {
426+ return & vet. Config {
425427 Version : req .Settings .Version ,
426428 Engine : req .Settings .Engine ,
427429 Schema : req .Settings .Schema ,
428430 Queries : req .Settings .Queries ,
429431 }
430432}
431433
432- func vetQuery (q * plugin.Query ) * plugin. VetQuery {
433- var params []* plugin. VetParameter
434+ func vetQuery (q * plugin.Query ) * vet. Query {
435+ var params []* vet. Parameter
434436 for _ , p := range q .Params {
435- params = append (params , & plugin. VetParameter {
437+ params = append (params , & vet. Parameter {
436438 Number : p .Number ,
437439 })
438440 }
439- return & plugin. VetQuery {
441+ return & vet. Query {
440442 Sql : q .Text ,
441443 Name : q .Name ,
442444 Cmd : strings .TrimPrefix (":" , q .Cmd ),
@@ -445,6 +447,6 @@ func vetQuery(q *plugin.Query) *plugin.VetQuery {
445447}
446448
447449type vetEngineOutput struct {
448- PostgreSQL * plugin .PostgreSQL
449- MySQL * plugin .MySQL
450+ PostgreSQL * vet .PostgreSQL
451+ MySQL * vet .MySQL
450452}
0 commit comments