porsager/postgres

Incorrect constructor parameter types for class `PostgresError`

Open

#703 aberto em 19 de out. de 2023

Ver no GitHub
 (0 comments) (0 reactions) (0 assignees)JavaScript (6.221 stars) (230 forks)batch import
Typescripthelp wanted

Description

According to the types, to construct a new PostgresError the first argument is a message string:

With this code:

import postgres from "postgres";

const error = new postgres.PostgresError("Error message.");

console.log(Object.entries(error));

What actually logs is:

[
  [ '0', 'E' ],
  [ '1', 'r' ],
  [ '2', 'r' ],
  [ '3', 'o' ],
  [ '4', 'r' ],
  [ '5', ' ' ],
  [ '6', 'm' ],
  [ '7', 'e' ],
  [ '8', 's' ],
  [ '9', 's' ],
  [ '10', 'a' ],
  [ '11', 'g' ],
  [ '12', 'e' ],
  [ '13', '.' ],
  [ 'name', 'PostgresError' ]
]

That's because actually the first argument it seems is supposed to be an Error instance:

https://github.com/porsager/postgres/blob/0428b30937400a7dadc8ed09587c44ef917052a6/src/errors.js#L1-L7

Guia do colaborador