Open shayneczyzewski opened 2 years ago
Hello, can I take this task?
could you assign me with this issue
@weedertree last time we went after this one it proved to be a bit more complex than we expected. I will remove "good first issue" from it as I don't think is qualifies as one any more. If you do wish to go after this, I recommend giving a look at this PR https://github.com/wasp-lang/wasp/pull/744 and continuing conversation with that knowledge.
When saving things to the database with Prisma, many things can potentially go wrong. We need to indicate them to clients in ways that are actionable when they can correct them (e.g., status code
422
on bad input), or otherwise when they cannot (e.g., status code500
when things are really wrong on backend).We currently have a basic helper in place [
waspc/data/Generator/templates/server/src/utils.js
] that can check if anError
is a Prisma client error, and convert it to anHttpError
. It is used during the sign up flow [waspc/data/Generator/templates/server/src/routes/auth/signup.js
]. However, the mapping is incomplete. We need to thoroughly review https://www.prisma.io/docs/reference/api-reference/error-reference and determine what HTTP status code/message we should send from the controller to the frontend in each case.This may also require refactoring the existing helpers, and allowing more flexible uses.