v0.2.7
Release 0.2.7
Turn the connector's "NULL" string back into null
@tdengine/websocket 3.5.0 pushes the four characters "NULL" for an empty cell
whatever the column type — taosResult.js:186 for fixed-width columns and :200
for variable-length ones, both row.push("NULL") where the value should be null.
Reproduced against a live server with no eon code in the path; the server's own
REST endpoint returns null on the same rows.
The type is therefore right when the value is present and wrong when it is
absent: a BIGINT reads back as bigint on every row until the first null one,
where it becomes string. A typeof check written against the happy path holds
until the first empty cell, often months later. Through the ORM it was worse
than a wrong type — reviveBigInt could not revive "NULL", so one null cell made
a whole super-table unreadable, and a nullable decimal threw on construction.
Converted back for every type that cannot hold the string. Text and binary
columns are left alone and said so in the docs: there the bitmap that knew the
difference is already consumed, and converting would corrupt a real value to
repair an absent one.
Changes since v0.2.6.