Patch Changes
- 0641b37: Fix custom filesystems not receiving times set with
FS.utime. Emscripten'sFS.utimecallssetattrwithatimeandmtime, but theBaseFilesystembridge only handled the oldertimestampfield, soutimeswas never called on OPFS AHP or any otherBaseFilesystem. Files restored from a tarball kept the time they were written instead of the time stored in the tarball. - e752dbe: Run initdb with
TZ=UTC, like the backend, so a new database getstimezone = 'UTC'inpostgresql.conf. Before, initdb wrote the host's zone as a fixed offset without daylight saving (e.g.Etc/GMT+5for America/New_York), sotimestamptzinput without an offset was stored at a different instant on each non-UTC machine. - c31130c: Start under the Node.js permission model (
node --permission). Emscripten's NODEFS read the fs open flags withprocess.binding('constants'), which Node always denies in that mode, sonew PGlite()threwERR_ACCESS_DENIEDeven formemory://. The bundled build now reads them fromrequire('fs').constants, which holds the same values. - 0641b37: Fix files restored from a tarball getting a January 1970 modification time.
loadTarpassed the tar header's time to Emscripten'sFS.utimein seconds, butFS.utimetakes milliseconds. This affected every new database (initdb's data dir is restored from a tarball) and everyloadDataDir. With the Node filesystem the files on disk got those dates too.