We changed how we chose the method to encode parameters from being inferred from the JS type, to using the Postgres "Describe" wire protocol message to ask what types Postgres is expecting for each parameter. This is how postgres.js does it, rather than node-postgres.
What this meant was that if you manually ran JSON.stringify on a JS object and passed it as a parameter to PGlite it was inserted into the JSON(B) column as a JSON string (think stringifying twice) not a JSON object. If you then tried to extract vales from it, they would be null.
This is obv not the expected behavour, a user would want to be able to pass a string thats already JSON encoded to as a param.
We changed how we chose the method to encode parameters from being inferred from the JS type, to using the Postgres "Describe" wire protocol message to ask what types Postgres is expecting for each parameter. This is how postgres.js does it, rather than node-postgres.
What this meant was that if you manually ran JSON.stringify on a JS object and passed it as a parameter to PGlite it was inserted into the JSON(B) column as a JSON string (think stringifying twice) not a JSON object. If you then tried to extract vales from it, they would be null.
This is obv not the expected behavour, a user would want to be able to pass a string thats already JSON encoded to as a param.