<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="141516" data-post-id="141516">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>The parser is complete and messaging formatting is also complete - both function and macro form.</p>
<p>Definitely interested in seeing if <code>Mezzofanti</code> and <code>cldr_messages</code> could work together. I’ll ping you a DM.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="141516" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/32">Post #31</a>
	                </div>
	            </div>
              <div id="likers-container-141516" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="141516"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #31"></div>
  </section>
</div>
    <div class="postbit" id="141718" data-post-id="141718">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>An update to <a href="https://hex.pm/packages/ex_cldr_calendars/1.2.0" rel="nofollow">ex_cldr_calendars 1.2.0</a> today to kickoff the weekend. It adds durations. A Duration is the difference between two dates, times and datetimes expressed in calendar time units.  Of course <code>Calendar.ISO</code> is supported, but so are any calendars defined by or defined with <code>Cldr.Calendar.new/3</code>.</p>
<p>Then these durations can be localised to humanise the duration of time.  Some examples:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir"># How long until the Tokyo Olympic Games start?
iex&gt; {:ok, d} = Cldr.Calendar.Duration.new(~D[2019-08-31], ~D[2020-07-24])
{:ok,
 %Cldr.Calendar.Duration{
   day: 24,
   hour: 0,
   microsecond: 0,
   minute: 0,
   month: 10,
   second: 0,
   year: 0
 }}
iex&gt; Cldr.Calendar.Duration.to_string d       
{:ok, "10 months and 24 days"}
iex&gt; Cldr.Calendar.Duration.to_string d, locale: "ar"                       
{:ok, "10 أشهر و24 يومًا"}
iex&gt; Cldr.Calendar.Duration.to_string d, locale: "he"                       
{:ok, "10 חודשים ו24 ימים"}
iex&gt; Cldr.Calendar.Duration.to_string d, style: :narrow                     
{:ok, "10m and 24d"}
iex&gt; Cldr.Calendar.Duration.to_string d, style: :narrow, list_options: [style: :unit_narrow]
{:ok, "10m 24d"}
</code></pre>
<p>All the localisation is driven, of course, by CLDR data encapsulated in <a href="https://hex.pm/packages/ex_cldr" rel="nofollow">ex_cldr</a>.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="141718" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/33">Post #32</a>
	                </div>
	            </div>
              <div id="likers-container-141718" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="141718"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #32"></div>
  </section>
</div>
    <div class="postbit" id="146275" data-post-id="146275">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<h2><a name="p-146275-ex_cldrhttpsgithubcomelixir-cldrcldr-211-release-supporting-cldr-3600-1" class="anchor" href="#p-146275-ex_cldrhttpsgithubcomelixir-cldrcldr-211-release-supporting-cldr-3600-1" aria-label="Heading link" rel="nofollow"></a><a href="https://github.com/elixir-cldr/cldr" rel="nofollow">ex_cldr</a> 2.11 release supporting CLDR 36.0.0</h2>
<p>This week the <a href="https://unicode.org" rel="nofollow">Unicode Consortium</a> released <a href="https://cldr.unicode.org" rel="nofollow">CLDR version 36</a> upon which the hex package <a href="https://hex.pm/packages/ex_cldr" rel="nofollow">ex_cldr</a> is based.</p>
<p>The <a href="http://cldr.unicode.org/index/downloads/cldr-36" rel="nofollow">CLDR release notes</a> explain in detail the changes underlying the most comprehensive source of internationalisation and localisation data in the world, used by every major vendor.</p>
<h3><a name="p-146275-data-changes-that-may-affect-ex_cldr-formatting-2" class="anchor" href="#p-146275-data-changes-that-may-affect-ex_cldr-formatting-2" aria-label="Heading link" rel="nofollow"></a>Data changes that may affect ex_cldr formatting</h3>
<ul>
<li>zh: The currency symbol for CNY changed from fullwidth ￥(FFE5)  to halfwidth ¥ (00A5)</li>
<li>fr_CA : Switched to full year (not 2-digit year) in short date formats. [<a href="https://unicode-org.atlassian.net/browse/CLDR-11666" rel="nofollow">CLDR-11666</a>]</li>
<li>bg: Removed “ч.” from time formats. [<a href="https://unicode-org.atlassian.net/browse/CLDR-11545" rel="nofollow">CLDR-11545</a>]</li>
<li>The translations for the new name ‘North Macedonia’ has been refined for many languages by contributors, and those languages with no contributors have been reverted to code ‘MK’. All Alt values also have been removed [<a href="https://unicode-org.atlassian.net/browse/CLDR-13099" rel="nofollow">CLDR-13099</a>].</li>
</ul>
<h3><a name="p-146275-release-note-highlights-3" class="anchor" href="#p-146275-release-note-highlights-3" aria-label="Heading link" rel="nofollow"></a>Release note highlights</h3>
<ul>
<li>Approximately 32K items added
<ul>
<li>Significant increase (approx 50% or more) in moderate and/or modern coverage for: ceb (Cebuano), ha (Hausa / Latin script), ig (Igbo), kok (Konkani), qu (Quechua), to (Tongan), yo (Yoruba). Additionally, the following locales had at least a 15% increase in basic coverage: az (Azerbaijani / Latin script), so (Somali / Latin script).</li>
<li>Seed data for new locales, including three native languages of N. America: cic (Chickasaw), mus (Muscogee), osa (Osage, Osage script); an (Aragonese), su (Sundanese, Latin script), szl (Silesian).</li>
<li>Additional data for new items listed below.</li>
</ul>
</li>
<li>Emoji
<ul>
<li>Added names and keywords for Emoji 13.0 draft candidates; these are to be fleshed out further in v36.1.</li>
<li>Refined names and keywords for Emoji 12.0, including for English.</li>
</ul>
</li>
<li>Measurement units:
<ul>
<li>Additional compoundUnitPattern ({0}⋅{1} in root) for expressing units like newton-meter (N⋅m)</li>
<li>Additional units: dot-per-centimeter, dot-per-inch, em, megapixel, pixel, pixel-per-centimeter, pixel-per-inch; decade; therm-us; bar, pascal</li>
</ul>
</li>
<li>Locale identifiers and names
<ul>
<li>Extended Language Matching to have fallbacks for many encompassed languages. [<a href="https://unicode-org.atlassian.net/browse/CLDR-13244" rel="nofollow">CLDR-13244</a>]</li>
<li>Added more languageAliases from the BCP47 language subtag registry, for deprecated languages.</li>
<li>New alt=“menu” names for certain languages, intended to provide better sorting in menus. [<a href="https://unicode-org.atlassian.net/browse/CLDR-11834" rel="nofollow">CLDR-11834</a>]</li>
<li>Updated validity and collection information for geographic subregions; updated names especially for subregions of UK and Sweden.</li>
<li>Names have been added for “pseudo-regions” XA (Pseudo-Accents) and XB (Pseudo-Bidi). These are only intended for testing purposes, you may need to add special handling to remove them for production purposes. [<a href="https://unicode-org.atlassian.net/browse/CLDR-13100" rel="nofollow">CLDR-13100</a>]</li>
</ul>
</li>
<li>Other
<ul>
<li>Time zone data support for 2019c. [<a href="https://unicode-org.atlassian.net/browse/CLDR-13281" rel="nofollow">CLDR-13281</a>]</li>
</ul>
</li>
</ul>
<p>There are no changes to the public API of any of the <code>ex_cldr_*</code> packages. Updates are only to encapsulate the new data.</p>
<h3><a name="p-146275-upgrading-4" class="anchor" href="#p-146275-upgrading-4" aria-label="Heading link" rel="nofollow"></a>Upgrading</h3>
<p>Executing <code>mix deps.update ex_cldr</code> should be enough to get you on the latest version which is <code>2.11.0</code>.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="146275" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/34">Post #33</a>
	                </div>
	            </div>
              <div id="likers-container-146275" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="146275"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #33"></div>
  </section>
</div>
    <div class="postbit" id="154083" data-post-id="154083">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Since the new <a href="https://hex.pm/packages/astro" rel="nofollow">astro</a> library is now out I was able to finish up the <a href="https://en.wikipedia.org/wiki/Solar_Hijri_calendar" rel="nofollow">Persian (Solar Hijri)</a> calendar which is now available on <a href="https://hex.pm/packages/ex_cldr_calendars_persian" rel="nofollow">hex</a>.</p>
<p>This is a calendar that starts the year on the March equinox (or a day later if the equinox is equal to or later than true solar noon on the day of equinox in Iran). The fact that it is observation based required the development first of a library to do the astro calculations - which turned out to be good fun (albeit there is much more to do to support more complex lunisolar calendars like the Islamic and Hebrew calendars).</p>
<p>Localisation is supported via <a href="https://hex.pm/packages/ex_cldr_calendars" rel="nofollow">ex_cldr_calendars</a> which is a dependency. And full date/time formatting is available via <a href="https://hex.pm/packages/ex_cldr_dates_times" rel="nofollow">ex_cldr_dates_times</a> which is not a dependency.</p>
<p>Since I’m back temporarily on calendars I’ll finish up the <a href="https://en.wikipedia.org/wiki/Coptic_calendar" rel="nofollow">Coptic Calendar</a> and the <a href="https://en.wikipedia.org/wiki/Ethiopian_calendar" rel="nofollow">Ethiopic Calendar</a> since they are quite straight forward.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="154083" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/35">Post #34</a>
	                </div>
	            </div>
              <div id="likers-container-154083" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="154083"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #34"></div>
  </section>
</div>
    <div class="postbit" id="154200" data-post-id="154200">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>The <a href="https://hex.pm/packages/ex_cldr_calendars_coptic" rel="nofollow">Coptic</a> and <a href="https://hex.pm/packages/ex_cldr_calendars_ethiopic" rel="nofollow">Ethiopic</a> calendars are now also published on hex.  End of calendars for a while … back to unicode sets and rules for word/sentence breaks and transformations …</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="154200" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/36">Post #35</a>
	                </div>
	            </div>
              <div id="likers-container-154200" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="154200"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #35"></div>
  </section>
</div>
    <div class="postbit" id="154209" data-post-id="154209">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kwando" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kwando/120/4092_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kwando
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I just want to thank you for all the time you are spending on this <img src="https://forum.elixirforum.com/images/emoji/apple/slightly_smiling_face.png?v=15" title=":slightly_smiling_face:" class="emoji" alt=":slightly_smiling_face:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="154209" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/37">Post #36</a>
	                </div>
	            </div>
              <div id="likers-container-154209" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="154209"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #36"></div>
  </section>
</div>
    <div class="postbit" id="156779" data-post-id="156779">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>With the impending release of Elixir 1.10, several of the <code>CLDR</code> libs have been updated to be compatible without compiler warnings or to leverage new capabilities. Feedback on any issues would be most welcome.  A simple <code>mix deps.update &lt;lib&gt;</code> will be enough to move to the latest version which is also backwards compatible for earlier Elixir versions (typically to Elixir 1.8).</p>
<p>The new releases are:</p>
<ul>
<li><a href="https://hex.pm/packages/ex_cldr_calendars/1.7.0" rel="nofollow">ex_cldr_calendars 1.7.0</a> which uses the new implementation of the <code>Inspect</code> protocol for calendar types to allow the inspecting and parsing of <code>Sigil_D</code>, <code>Sigil_N</code> and <code>Sigil_U</code> for any valid calendar.  For example:</li>
</ul>
<pre data-code-wrap="elixir"><code class="lang-elixir">iex&gt; ~D[2020-W01-1 Cldr.Calendar.ISOWeek] 
~D[2020-W01-1 Cldr.Calendar.ISOWeek]

iex&gt; ~D[2020-01-02 Cldr.Calendar.Gregorian]
~D[2020-01-02 Cldr.Calendar.Gregorian]
</code></pre>
<ul>
<li>
<p><a href="https://hex.pm/packages/ex_cldr/2.12.0" rel="nofollow">ex_cldr 2.12.0</a> which removes calls to the deprecated <code>Code.ensure_compiled?/1</code></p>
</li>
<li>
<p><a href="https://hex.pm/packages/ex_money/4.4.2" rel="nofollow">ex_money 4.4.2</a> which also removes calls to <code>Code.ensure_compiled?/1</code>. It now has a dependency on <code>ex_cldr</code> of a minimum of <code>2.12.0</code>.</p>
</li>
</ul>
<p>The other <code>CLDR</code> packages do not require any updating to support Elixir 1.10,</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="156779" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/38">Post #37</a>
	                </div>
	            </div>
              <div id="likers-container-156779" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="156779"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #37"></div>
  </section>
</div>
    <div class="postbit" id="160676" data-post-id="160676">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>With Elixir 1.10 now out its time to release <a href="https://hex.pm/packages/ex_cldr_units" rel="nofollow">ex_cldr_units 2.8.0</a> that supports the new Elixir <code>Enum/sort/2</code> by introducing <code>Cldr.Unit.compare/2</code>. Any two units that can be converted to each other can be compared.</p>
<h3><a name="p-160676-examples-1" class="anchor" href="#p-160676-examples-1" aria-label="Heading link" rel="nofollow"></a>Examples</h3>
<pre data-code-wrap="elixir"><code class="lang-elixir">iex&gt; alias Cldr.Unit                                                                             
Cldr.Unit

iex&gt; unit_list = [Unit.new(:millimeter, 100), Unit.new(:centimeter, 100), Unit.new(:meter, 100), Unit.new(:kilometer, 100)]
[#Unit&lt;:millimeter, 100&gt;, #Unit&lt;:centimeter, 100&gt;, #Unit&lt;:meter, 100&gt;,
 #Unit&lt;:kilometer, 100&gt;]

iex&gt; Enum.sort unit_list, Cldr.Unit
[#Unit&lt;:millimeter, 100&gt;, #Unit&lt;:centimeter, 100&gt;, #Unit&lt;:meter, 100&gt;,
 #Unit&lt;:kilometer, 100&gt;]

iex&gt; Enum.sort unit_list, {:desc, Cldr.Unit}
[#Unit&lt;:kilometer, 100&gt;, #Unit&lt;:meter, 100&gt;, #Unit&lt;:centimeter, 100&gt;,
 #Unit&lt;:millimeter, 100&gt;]

iex&gt; Enum.sort unit_list, {:asc, Cldr.Unit}
[#Unit&lt;:millimeter, 100&gt;, #Unit&lt;:centimeter, 100&gt;, #Unit&lt;:meter, 100&gt;,
 #Unit&lt;:kilometer, 100&gt;]
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="160676" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/39">Post #38</a>
	                </div>
	            </div>
              <div id="likers-container-160676" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="160676"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #38"></div>
  </section>
</div>
    <div class="postbit" id="175073" data-post-id="175073">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Updates released to hex for most of <a href="https://github.com/elixir-cldr" rel="nofollow">elixir-cldr</a> libraries based on <a href="https://cldr.unicode.org" rel="nofollow">CLDR</a>.</p>
<h3><a name="p-175073-summary-of-updates-1" class="anchor" href="#p-175073-summary-of-updates-1" aria-label="Heading link" rel="nofollow"></a>Summary of updates</h3>
<ol>
<li>
<p>Ensure certificate verification when downloading locales. This should automatically detect the certificate trust store on most platforms (except Windows). Therefore in most cases no configuration is required. If you think it should detect the trust store on your platform but it doesn’t, please <a href="https://github.com/elixir-cldr/cldr/issues/new" rel="nofollow">raise an issue</a>. It will also detect that either <a href="https://hex.pm/packages/castore" rel="nofollow">castore</a> or <a href="https://hex.pm/packages/certifi" rel="nofollow">certifi</a> is installed and use the package’s trust store in preference to the platform trust store.</p>
</li>
<li>
<p>Updates the data to <a href="http://cldr.unicode.org/index/downloads/cldr-37" rel="nofollow">CLDR version 37</a>. Adds about 20 new locales for a total of 566. Can you say <code>ff-Adlam-CM</code>? It’s <a href="https://en.wikipedia.org/wiki/Fula_language" rel="nofollow">the Fula language with the Adlam script as spoken in Cameroon</a>.</p>
</li>
<li>
<p>Significant updates to the Unit of Measure data which is supported by <a href="https://hex.pm/packages/ex_cldr_units/3.0.0" rel="nofollow">ex_cldr_units version 3.0.0</a>. The units engine now supports compound units and algebraic units.  <code>square ampere per yoktolumen</code> anyone?  The units do not have to be obviously meaningful - just algebraically resolvable.  Built in support for SI prefixes and square- and cubic- prefixes. The output formatting via <code>Cldr.Unit.to_string/3</code> needs some more work for complex units but is otherwise sound.</p>
</li>
</ol>
<ul>
<li>
<p>Adds the <code>Cldr.Chars</code> protocol which is implemented for numbers, dates, times, units, money to continue the journey towards low-friction localisation of applications</p>
</li>
<li>
<p>Adds much better support for the <a href="http://www.unicode.org/reports/tr35/#Locale_Extension_Key_and_Type_Data" rel="nofollow">BCP47 U extension</a> which continues the work towards having the <a href="https://www.unicode.org/reports/tr35/#Identifiers" rel="nofollow">language tag</a> become a preferred way to express user intent in localised applications. For example, this allows a user to specify default currency, default number system, default calendar and so on.</p>
</li>
</ul>
<h3><a name="p-175073-release-versions-and-links-2" class="anchor" href="#p-175073-release-versions-and-links-2" aria-label="Heading link" rel="nofollow"></a>Release versions and links</h3>
<ul>
<li><a href="https://hex.pm/packages/ex_cldr/2.14.0" rel="nofollow">ex_cldr version 2.14.0</a>.  <a href="https://github.com/elixir-cldr/cldr/blob/v2.14.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_numbers/2.13.0" rel="nofollow">ex_cldr_numbers version 2.13.0</a>.  <a href="https://github.com/elixir-cldr/cldr_numbers/blob/v2.13.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_numbers" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_dates_times/2.4.0" rel="nofollow">ex_cldr_dates_times version 2.4.0</a>.  <a href="https://github.com/elixir-cldr/cldr_dates_times/blob/v2.4.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_dates_times" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_lists/2.5.0" rel="nofollow">ex_cldr_lists version 2.5.0</a>.  <a href="https://github.com/elixir-cldr/cldr_lists/blob/v2.5.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_lists" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_units/3.0.0" rel="nofollow">ex_cldr_units version 3.0.0</a>.  <a href="https://github.com/elixir-cldr/cldr_units/blob/v3.0.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_units" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_calendars/1.8.0" rel="nofollow">ex_cldr_calendars version 1.8.0</a>.  <a href="https://github.com/elixir-cldr/cldr_calendars/blob/v1.8.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_calendars" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_calendars_format/0.4.0" rel="nofollow">ex_cldr_calendars_format version 0.4.0</a>.  <a href="https://github.com/elixir-cldr/cldr_calendars_format/blob/v0.4.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_calendars_format" rel="nofollow">Github</a>.</li>
<li><a href="https://hex.pm/packages/ex_cldr_currencies/2.5.0" rel="nofollow">ex_cldr_currencies version 2.5.0</a>.  <a href="https://github.com/elixir-cldr/cldr_currencies/blob/v2.5.0/CHANGELOG.md" rel="nofollow">Changelog</a>. <a href="https://github.com/elixir-cldr/cldr_currencies" rel="nofollow">Github</a>.</li>
</ul> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="175073" data-batch-url="/posts/batch_likers">
                        4
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/40">Post #39</a>
	                </div>
	            </div>
              <div id="likers-container-175073" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="175073"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #39"></div>
  </section>
</div>
    <div class="postbit" id="177056" data-post-id="177056">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a href="https://hex.pm/packages/ex_cldr_numbers" rel="nofollow">ex_cldr_numbers version 2.14.0</a> is released today. This release makes it <strong>easy to parse numbers and currencies in a localised manner</strong>.  Some examples:</p>
<h4><a name="p-177056-parsing-1" class="anchor" href="#p-177056-parsing-1" aria-label="Heading link" rel="nofollow"></a>Parsing</h4>
<pre data-code-wrap="elixir"><code class="lang-elixir"># Interpret grouping and decimal marker in
# a localised way
iex&gt; Cldr.Number.Parser.parse("＋1.000,34", locale: "de")
{:ok, 1000.34}

# Using underscore as a separator is supported
iex&gt; Cldr.Number.Parser.parse("-1_000_000.34")
{:ok, -1000000.34}

# The type of number can be specified: integer, float, Decimal
iex&gt; Cldr.Number.Parser.parse("1.000", locale: "de", number: :integer)
{:ok, 1000}

# If the string doesn't fit the type an error is returned
iex&gt; Cldr.Number.Parser.parse("＋1.000,34", locale: "de", number: :integer)
{:error, "+1000.34"}
</code></pre>
<h4><a name="p-177056-scanning-2" class="anchor" href="#p-177056-scanning-2" aria-label="Heading link" rel="nofollow"></a>Scanning</h4>
<pre data-code-wrap="elixir"><code class="lang-elixir">Scan the string and separate numbers and string
iex&gt; Cldr.Number.Parser.scan("£1_000_000.34")
["£", 1000000.34]

# In any arbitrary string
iex&gt; Cldr.Number.Parser.scan("I want £1_000_000 dollars")
["I want £", 1000000, " dollars"]

iex&gt; Cldr.Number.Parser.scan("The prize is 23")
["The prize is ", 23]

iex&gt; Cldr.Number.Parser.scan("The lottery number is 23 for the next draw")
["The lottery number is ", 23, " for the next draw"]

iex&gt; Cldr.Number.Parser.scan("The loss is -1.000 euros", locale: "de", number: :integer)
["The loss is ", -1000, " euros"]
</code></pre>
<h4><a name="p-177056-resolving-currencies-from-strings-3" class="anchor" href="#p-177056-resolving-currencies-from-strings-3" aria-label="Heading link" rel="nofollow"></a>Resolving currencies from strings</h4>
<pre data-code-wrap="elixir"><code class="lang-elixir"># Try to find the currency that reflects 
# string description
iex&gt; Cldr.Number.Parser.scan("100 US dollars")
...&gt; |&gt; Cldr.Number.Parser.resolve_currencies
[100, :USD]

# Even with a fuzzy match
iex&gt; Cldr.Number.Parser.scan("100 eurosports")
...&gt; |&gt; Cldr.Number.Parser.resolve_currencies(fuzzy: 0.8)
[100, :EUR]

# and in a locale-aware way
iex&gt; Cldr.Number.Parser.scan("100 dollars des États-Unis")
...&gt; |&gt; Cldr.Number.Parser.resolve_currencies(locale: "fr")
[100, :USD]
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="177056" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/41">Post #40</a>
	                </div>
	            </div>
              <div id="likers-container-177056" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="177056"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #40"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/17350/load_more?page=5">Load more posts (80 remaining)</a>
</div></template></turbo-stream>