Skip to content

Commit f0184bc

Browse files
fix(compiler): Skip analysis of queries without a name annotation (#3072)
* fix(compiler): Skip analysis of queries without a `name` annotation Also update tests to work with new behavior * Only run builtins test in base context for now
1 parent 94c460d commit f0184bc

File tree

58 files changed

+819
-7
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+819
-7
lines changed

internal/compiler/parse.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@ func (c *Compiler) parseQuery(stmt ast.Node, src string, o opts.Parser) (*Query,
4646
return nil, err
4747
}
4848

49+
if name == "" {
50+
return nil, nil
51+
}
52+
4953
if err := validate.Cmd(raw.Stmt, name, cmd); err != nil {
5054
return nil, err
5155
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"contexts": ["base"]
3+
}

internal/endtoend/testdata/builtins/postgresql/go/query.sql.go

Lines changed: 274 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/builtins/postgresql/query.sql

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,48 @@
1+
-- name: Abs :one
12
SELECT abs(-17.4);
3+
-- name: Cbrt :one
24
SELECT cbrt(27.0);
5+
-- name: Ceil :one
36
SELECT ceil(-42.8);
7+
-- name: Ceiling :one
48
SELECT ceiling(-95.3);
9+
-- name: Degrees :one
510
SELECT degrees(0.5);
11+
-- name: Div :one
612
SELECT div(9,4);
13+
-- name: Exp :one
714
SELECT exp(1.0);
15+
-- name: Floor :one
816
SELECT floor(-42.8);
17+
-- name: Ln :one
918
SELECT ln(2.0);
19+
-- name: Log :one
1020
SELECT log(100.0);
21+
-- name: Logs :one
1122
SELECT log(2.0, 64.0);
23+
-- name: Mod :one
1224
SELECT mod(9,4);
25+
-- name: Pi :one
1326
SELECT pi();
27+
-- name: Power :one
1428
SELECT power(9.0, 3.0);
29+
-- name: Radians :one
1530
SELECT radians(45.0);
31+
-- name: Round :one
1632
SELECT round(42.4);
33+
-- name: Rounds :one
1734
SELECT round(42.4382, 2);
35+
-- name: Scale :one
1836
SELECT scale(8.41);
37+
-- name: Sign :one
1938
SELECT sign(-8.4);
39+
-- name: Sqrt :one
2040
SELECT sqrt(2.0);
41+
-- name: Trunc :one
2142
SELECT trunc(42.8);
43+
-- name: Truncs :one
2244
SELECT trunc(42.4382, 2);
45+
-- name: WidthBucketNumerics :one
2346
SELECT width_bucket(5.35, 0.024, 10.06, 5);
47+
-- name: WidthBucketTimestamps :one
2448
SELECT width_bucket(now(), array['yesterday', 'today', 'tomorrow']::timestamptz[]);
25-
create schema if not exists sqlc;

internal/endtoend/testdata/datatype/mysql/go/query.sql.go

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
-- name: Test :one
12
SELECT 1;

internal/endtoend/testdata/datatype/pgx/v4/go/query.sql.go

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
-- name: Test :one
12
SELECT 1;

0 commit comments

Comments
 (0)