Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions internal/codegen/golang/opts/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"fmt"
"maps"
"path/filepath"
"slices"

"github.com/sqlc-dev/sqlc/internal/plugin"
)
Expand Down Expand Up @@ -153,6 +154,9 @@ func parseGlobalOpts(req *plugin.GenerateRequest) (*GlobalOptions, error) {
if err := json.Unmarshal(req.GlobalOptions, &options); err != nil {
return nil, fmt.Errorf("unmarshalling global options: %w", err)
}
options.Overrides = slices.DeleteFunc(options.Overrides, func(o Override) bool {
return o.Engine != "" && o.Engine != req.GetSettings().GetEngine()
})
for i := range options.Overrides {
if err := options.Overrides[i].parse(req); err != nil {
return nil, err
Expand Down
31 changes: 31 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/mysql/db.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/mysql/models.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/mysql/query.sql.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

31 changes: 31 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/pg/db.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/pg/models.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/pg/query.sql.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

45 changes: 45 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/sqlc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
version: "1"
overrides:
- db_type: text
engine: postgresql
go_type: string
go_struct_tag: 'backend:"postgresql"'
- db_type: text
engine: mysql
go_type: "database/sql.NullString"
go_struct_tag: 'backend:"mysql"'
- db_type: text
engine: sqlite
go_type:
type: byte
slice: true
go_struct_tag: 'backend:"sqlite"'
- column: entries.code
engine: postgresql
go_type:
import: encoding/json
type: RawMessage
- column: entries.code
engine: mysql
go_type:
type: byte
slice: true
- column: entries.code
engine: sqlite
go_type: string
packages:
- engine: postgresql
schema: ../v2/schema.sql
queries: ../v2/query.sql
name: pg
path: pg
- engine: mysql
schema: ../v2/schema.sql
queries: ../v2/query.sql
name: mysql
path: mysql
- engine: sqlite
schema: ../v2/schema.sql
queries: ../v2/query.sql
name: sqlite
path: sqlite
31 changes: 31 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/sqlite/db.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/sqlite/models.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

27 changes: 27 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v1/sqlite/query.sql.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

31 changes: 31 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v2/mysql/db.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v2/mysql/models.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v2/mysql/query.sql.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

31 changes: 31 additions & 0 deletions internal/endtoend/testdata/overrides_engine/v2/pg/db.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading