Remix.run Logo
mulmen 6 hours ago

The issue here seems to be that the behavior of tzdata (correctly) changes over time. Can all this complexity be avoided by storing the tzdata version in the timestamp itself so it can decoded with the same rules?

dqv 3 hours ago | parent [-]

It's just a different kind of complexity and one that requires having a library that can arbitrarily load different versions of tzdata.

I've been thinking about it for a while though - a time zone conversion library that also accepts an additional "tzdata_version" argument.

mulmen 26 minutes ago | parent [-]

Yeah that's exactly what I am thinking. It could be a wrapper. But I think it would be better to take the (UTC) timestamp of the time of insertion instead of the TZDATA version itself. Then the Postgres instance can handle what version of TZDATA it had at that time.