<div dir="ltr">If you&#39;re interested in keeping up with C++ APIs, check out ours as well:<br><a href="https://bloomberg.github.io/bde/group__baltzo.html">https://bloomberg.github.io/bde/group__baltzo.html</a><br><br>It is built atop date/time types (John Lakos designed) in a lower package. bdlt::Datetime (no offset/tz), bdlt::DatetimeTz (datetime + offset), and baltzo::LocalDatetime (datetime + iana tz string) to cover all the use cases. The baltzo package allows efficient conversion from one timezone to another using these types. Included in the package is a default process-wide cache to help speed everything up.<div><br></div><div>baltzo::TimeZoneUtil contains the high level conversion routines:<br><a href="https://bloomberg.github.io/bde/group__baltzo__timezoneutil.html">https://bloomberg.github.io/bde/group__baltzo__timezoneutil.html</a></div><div><br></div><div>Feedback always welcome :)</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 28, 2015 at 1:12 PM, Matt Johnson <span dir="ltr">&lt;<a href="mailto:mj1856@hotmail.com" target="_blank">mj1856@hotmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div><div dir="ltr">I for one am happy to see progress made WRT time zone APIs in the C++ world.  cctz may not be entirely comprehensive (like the new Java 8 date/time api, etc.) , but it does what it does quite well.<br><br><div><hr>From: <a href="mailto:mj1856@hotmail.com" target="_blank">mj1856@hotmail.com</a><br>To: <a href="mailto:brian.inglis@systematicsw.ab.ca" target="_blank">brian.inglis@systematicsw.ab.ca</a>; <a href="mailto:tz@iana.org" target="_blank">tz@iana.org</a><br>Subject: RE: [tz] CCTZ time zone library for C++ from Google<br>Date: Wed, 28 Oct 2015 10:10:10 -0700<br><br>


<div dir="ltr"><span class="">Could be worse.  Could be like the Boost date_time api, which somehow thought it would be acceptable to map tzdb identifiers to fixed offset pairs, and never even bothered to keep them updated.</span><div><a href="http://www.boost.org/doc/libs/1_59_0/doc/html/date_time/local_time.html#date_time.local_time.tz_database" target="_blank">http://www.boost.org/doc/libs/1_59_0/doc/html/date_time/local_time.html#date_time.local_time.tz_database</a><br><div><a href="https://github.com/boostorg/date_time/tree/master/data" target="_blank">https://github.com/boostorg/date_time/tree/master/data</a></div><div><br></div><span class=""><div><br><div>&gt; To: <a href="mailto:tz@iana.org" target="_blank">tz@iana.org</a><br>&gt; From: <a href="mailto:Brian.Inglis@systematicsw.ab.ca" target="_blank">Brian.Inglis@systematicsw.ab.ca</a><br>&gt; Date: Wed, 28 Oct 2015 09:52:32 -0600<br>&gt; Subject: Re: [tz] CCTZ time zone library for C++ from Google<br>&gt; <br>&gt; On 2015-10-21 13:34, Tim Parenti wrote:<br>&gt; &gt; FYI, last month, Google released and open-sourced cctz &lt;<a href="https://github.com/google/cctz" target="_blank">https://github.com/google/cctz</a>&gt;, a new time zone library for C++.<br>&gt; &gt;<br>&gt; &gt; My favorite quote from the announcement &lt;<a href="http://google-opensource.blogspot.com/2015/09/introducing-cctz-simple-time-zone.html" target="_blank">http://google-opensource.blogspot.com/2015/09/introducing-cctz-simple-time-zone.html</a>&gt; on their Open Source Blog:<br>&gt; &gt;<br>&gt; &gt;     /&quot;Time zones are logical and easy to use.&quot; —no one ever/<br>&gt; <br>&gt; Don&#39;t think that project will help much, as the zone is not part of the opaque structure, but is a separate parameter in their API: that won&#39;t cause many problems! ;^&gt;<br>&gt; If we think back 15+ years, many problems were due to messing around with sub-chunks of dates, whether string, integer, or bits, instead of using the APIs provided to convert from one date representation to another. Is it September again in the date/time domain?<br>&gt; <br>&gt; -- <br>&gt; Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada<br></div></div></span></div>                                               </div></div>                                               </div></div>
</blockquote></div><br></div>