News for hackers. Stuff that matters.
Re:TypeScript 5.2's New Keyword: 'using' by kriz9 on Monday June 19, 2023 @12:48PM (#36393252)
Using libraries we already don't have to write cleanup code. What does the new keyword add that we can't already do? https://node-postgres.com/apis/pool#poolquery
Re:TypeScript 5.2's New Keyword: 'using' by ajanuary on Monday June 19, 2023 @01:03PM (#36393511)
From what I can tell from that documentation, you do still have to remember to call `client.release()`. There's even a big warning saying "You must release a client when you are finished with it."

Presumably you would want to wrap that in a try/finally so that you don't accidentally not release the client if there is an exception.

You would go from:

  const client = await pool.connect()
  try {
    // Do stuff. Possibly throw.
  } finally {
    client.release()
  }
to

  await using client = pool.connect()
  // Do stuff. Possibly throw.
Re:TypeScript 5.2's New Keyword: 'using' by kriz9 on Monday June 19, 2023 @01:44PM (#36394216)
I linked the wrong example. This is the one without having to specifically call release. https://node-postgres.com/apis/pool#poolquery