<div dir="ltr"><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">@Kerry Shetline: I think you are saying that that tubular/time parses the TZDB files into its own format, and packages the data into the library. It looks like you provide 3 versions of the database. As far as I can tell, the version number is stored only as comments in `src/timezone-small.ts`, `src/timezone-large-alt.ts`, and `src/timezone-large.ts`. Your Readme does not mention the TZDB version number. I found the version number in the GitHub release notes, but I wasn't able to find the release notes from the <a href="http://npmjs.com" target="_blank">npmjs.com</a> site. Would consider adding an API to provide programmatic access to the TZDB version number? <br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">@Paul Gilmartin: With regards to how many TZDB versions I want to support, ideally I want to be able to specify the last several versions. Within the same OS version or Docker image, I would like at least 2 versions: One version for the most recent TZDB release (e.g. 2021a), so that I can test it as soon as it is released, and one version for the previous release (e.g. 2020f). Often I want a 3rd version, for whichever version was packaged with the JDK that comes on that particular Docker image. But sometimes the version that comes with the `python-pytz` library is different, so I need a 4th version. Your hint about the TZ environment variable is interesting, and it might be useful for the `python-dateutil` library. (I found the instructions for regenerating the `/usr/share/zoneinfo` files here: <a href="https://unix.stackexchange.com/questions/457862/how-can-i-install-the-tz-database-on-an-embedded-linux-platform" target="_blank">https://unix.stackexchange.com/questions/457862/how-can-i-install-the-tz-database-on-an-embedded-linux-platform</a>). I had to give up on python-dateutil, because although it comes bundled with a specific TZDB version, it overrides that with  the OS tz files if they exist, so I could not get reproducible test results on different Docker images.<br></div></div><br><div class="gmail_quote"><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"><div dir="ltr"><span class="gmail_default" style="font-family:arial,helvetica,sans-serif"></span>@Jon Skeet: Thanks for confirming that Noda Time has support for selecting the TZDB version. I was aware of your library, and was impressed with its documentation, but I don't know .NET or C# so I didn't want to invest the time without knowing whether it had support for this feature. But now that I do, maybe I'll learn enough C# to validate against your library. With regards to java.time, I knew about ZoneRulesProvider, but I could never find sufficient documentation about how to actually generate my own tz database for java.time. <br></div><div dir="ltr"><br></div><div dir="ltr"><div dir="ltr" class="gmail_attr"><span class="gmail_default" style="font-family:arial,helvetica,sans-serif">@</span>David Braverman<span class="gmail_default" style="font-family:arial,helvetica,sans-serif">: Thanks for the pointer to InnerDrive.TimeZones. I'm not familiar with the .NET ecosystem, so I can't quite figure out what the InnerDrive framework does. But I will keep it in mind.<br></span></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default"></div></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div><div><blockquote style="border-color:currentcolor currentcolor currentcolor rgb(204,204,204);border-style:none none none solid;border-width:medium medium medium 1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm"><div><blockquote style="border-color:currentcolor currentcolor currentcolor rgb(204,204,204);border-style:none none none solid;border-width:medium medium medium 1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm"><div><div>
</div>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</div>

</blockquote></div></div>