Open
Description
What do you want to change?
Current state
In current state of the library, using queries with arrays generates code with a dependency to github.com/lib/pq
, which is in maintenance mode.
Example from the docs:
func (q *Queries) ListAuthorsByIDs(ctx context.Context, ids []int) ([]Author, error) {
rows, err := q.db.QueryContext(ctx, listAuthors, pq.Array(ids))
It would be great if it was possible to not have pq
dependency here.
Implications
This might lead to some misleading situations, example:
The pgx
lib, which is used often as a replacement for lib/pq
, is possible to use in such way:
db, err := sql.Open("pgx", os.Getenv("DATABASE_URL"))
This means that if you use sqlc
in the default database/sql
mode with such command, you end up with:
- imported
pq
dependency - but actually you're using
pgx
as a driver
Thank you in advance for looking into this issue.
What database engines need to be changed?
PostgreSQL
What programming language backends need to be changed?
Go