Packages

ex_cldr

2.47.1
2.47.5 2.47.4 2.47.3 2.47.2 2.47.1 2.47.0 2.46.0 2.45.2 2.45.1 2.45.0 2.44.1 2.44.0 2.43.2 2.43.1 2.43.0 2.42.0 2.41.1 2.41.0 2.40.4 2.40.3 2.40.2 2.40.1 2.40.0 2.39.2 2.39.1 2.39.0 2.38.1 2.38.0 2.37.5 2.37.4 2.37.3 retired 2.37.2 2.37.1 2.37.0 2.36.0 2.35.1 2.35.0 retired 2.34.2 2.34.1 2.34.0 2.33.2 2.33.1 2.33.1-rc.0 2.33.0 2.32.1 2.32.0 2.31.0 2.30.0 2.29.0 2.28.0 2.27.1 2.27.0 retired 2.26.3 2.26.2 2.26.1 2.26.0 2.25.0 2.24.2 2.24.1 2.24.0 2.24.0-rc.6 2.24.0-rc.5 2.24.0-rc.4 2.24.0-rc.3 2.24.0-rc.2 2.24.0-rc.1 2.24.0-rc.0 2.23.2 2.23.1 2.23.0 2.22.1 2.22.0 2.21.0 2.20.0 2.20.0-rc.3 2.20.0-rc.2 2.20.0-rc.1 2.20.0-rc.0 2.19.1 2.19.0 2.18.2 2.18.1 2.18.0 2.18.0-rc.0 2.17.2 2.17.1 2.17.0 2.16.2 2.16.1 2.16.1-rc.0 2.16.0 2.15.0 2.14.1 2.14.0 2.14.0-rc.0 2.13.0 2.12.1 2.12.0 2.11.1 2.11.0 2.10.2 2.10.1 2.10.0 retired 2.9.0 2.8.1 2.8.0 2.7.2 2.7.1 2.7.0 2.6.2 2.6.1 2.6.0 2.5.0 2.4.3 2.4.2 2.4.1 2.4.0 2.3.2 2.3.1 2.3.0 2.2.7 2.2.6 2.2.5 2.2.4 2.2.3 2.2.2 2.2.1 2.2.0 2.1.0 2.0.4 2.0.3 2.0.2 2.0.1 2.0.0 2.0.0-rc.3 retired 2.0.0-rc.2 retired 2.0.0-rc.1 retired 2.0.0-rc.0 retired 1.8.2 1.8.1 1.8.0 1.7.1 1.7.0 1.6.4 1.6.3 1.6.2 1.6.1 1.6.0 1.5.2 1.5.1 1.5.0 1.4.5 1.4.4 1.4.3 1.4.2 1.4.1 1.4.0 retired 1.4.0-rc.3 retired 1.4.0-rc.2 retired 1.4.0-rc.1 retired 1.4.0-rc.0 retired 1.3.2 1.3.1 1.3.0 1.2.0 1.1.0 1.0.0 1.0.0-rc.3 retired 1.0.0-rc.2 retired 1.0.0-rc.1 retired 1.0.0-rc.0 retired 0.13.1 0.13.0 0.12.2 retired 0.12.1 retired 0.12.0 retired 0.11.0 retired 0.10.0 retired 0.9.0 retired 0.8.3 retired 0.8.2 retired 0.8.1 retired 0.8.0 retired 0.7.0 retired 0.6.2 retired 0.6.1 retired 0.6.0 retired 0.5.2 retired 0.5.1 retired 0.5.0 retired 0.4.2 retired 0.4.1 retired 0.4.0 retired 0.3.0 retired 0.2.1 retired 0.2.0 retired 0.1.3 retired 0.1.2 retired 0.1.1 retired 0.1.0 retired 0.0.20 retired 0.0.19 retired 0.0.18 retired 0.0.17 retired 0.0.16 retired 0.0.15 retired 0.0.14 retired 0.0.13 retired 0.0.12 retired 0.0.11 retired 0.0.10 retired 0.0.8 retired 0.0.7 retired 0.0.6 retired 0.0.5 retired 0.0.4 retired 0.0.3 retired

Common Locale Data Repository (CLDR) functions for Elixir to localize and format numbers, dates, lists, messages, languages, territories and units with support for over 700 locales for internationalized (i18n) and localized (L10N) applications.

Current section

Files

Jump to
ex_cldr mix.exs
Raw

mix.exs

defmodule Cldr.Mixfile do
use Mix.Project
@version "2.47.1"
def project do
[
app: :ex_cldr,
version: @version,
elixir: "~> 1.12",
name: "Cldr",
source_url: "https://github.com/elixir-cldr/cldr",
docs: docs(),
build_embedded: Mix.env() == :prod,
start_permanent: Mix.env() == :prod,
deps: deps(),
description: description(),
package: package(),
test_coverage: [tool: ExCoveralls],
aliases: aliases(),
elixirc_paths: elixirc_paths(Mix.env()),
dialyzer: [
plt_add_apps: ~w(gettext inets jason mix sweet_xml nimble_parsec)a,
ignore_warnings: ".dialyzer_ignore-warnings",
flags: [
:error_handling,
:unknown,
:underspecs,
:extra_return,
:missing_return
]
],
compilers: [:yecc, :leex] ++ Mix.compilers()
]
|> Keyword.merge(maybe_add_preferred_cli())
end
defp maybe_add_preferred_cli() do
if Version.compare(System.version(), "1.19.0-dev") == :lt do
[preferred_cli_env: cli()]
else
[]
end
end
defp description do
"""
Common Locale Data Repository (CLDR) functions for Elixir to localize and format numbers,
dates, lists, messages, languages, territories and units with support for over 700 locales
for internationalized (i18n) and localized (L10N) applications.
"""
end
def application do
if Mix.env() == :dev do
[
extra_applications: [:logger, :inets, :ssl, :observer, :wx]
]
else
[
extra_applications: [:logger, :inets, :ssl]
]
end
end
defp deps do
[
{:cldr_utils, "~> 2.28"},
{:decimal, "~> 1.6 or ~> 2.0"},
{:jason, "~> 1.0", optional: true},
{:ex_doc, "~> 0.18", only: [:release, :dev]},
{:nimble_parsec, "~> 0.5 or ~> 1.0", optional: true},
{:gettext, "~> 0.19 or ~> 1.0", optional: true},
{:stream_data, "~> 1.0", only: :test},
{:dialyxir, "~> 1.0", only: [:dev, :test], runtime: false, optional: true},
{:sweet_xml, "~> 0.6", only: [:dev, :test, :generate], optional: true}
# {:benchee, "~> 1.0", only: :dev, runtime: false, optional: true}
]
end
defp package do
[
maintainers: ["Kip Cole"],
licenses: ["Apache-2.0"],
links: links(),
files: [
"lib",
"src/plural_rules_lexer.xrl",
"src/plural_rules_parser.yrl",
"config",
"mix.exs",
"README*",
"CHANGELOG*",
"LICENSE*",
"priv/cldr/locales/en.json",
"priv/cldr/locales/en-001.json",
"priv/cldr/locales/und.json",
"priv/cldr/available_locales.json",
"priv/cldr/number_systems.json",
"priv/cldr/plural_rules.json",
"priv/cldr/version.json",
"priv/cldr/currencies.json",
"priv/cldr/territory_currencies.json",
"priv/cldr/weeks.json",
"priv/cldr/calendars.json",
"priv/cldr/calendar_preferences.json",
"priv/cldr/day_periods.json",
"priv/cldr/likely_subtags.json",
"priv/cldr/aliases.json",
"priv/cldr/territory_containers.json",
"priv/cldr/territory_containment.json",
"priv/cldr/territories.json",
"priv/cldr/territory_subdivisions.json",
"priv/cldr/territory_subdivision_containment.json",
"priv/cldr/territory_codes.json",
"priv/cldr/plural_ranges.json",
"priv/cldr/timezones.json",
"priv/cldr/metazones.json",
"priv/cldr/metazone_mapping.json",
"priv/cldr/metazone_ids.json",
"priv/cldr/primary_zones.json",
"priv/cldr/units.json",
"priv/cldr/grammatical_features.json",
"priv/cldr/grammatical_gender.json",
"priv/cldr/parent_locales.json",
"priv/cldr/time_preferences.json",
"priv/cldr/script_metadata.csv",
"priv/cldr/language_tags.ebin",
"priv/cldr/language_data.json",
"priv/cldr/deprecated/measurement_system.json",
"priv/cldr/deprecated/unit_preference.json",
"priv/cldr/validity/territories.json",
"priv/cldr/validity/languages.json",
"priv/cldr/validity/scripts.json",
"priv/cldr/validity/subdivisions.json",
"priv/cldr/validity/variants.json",
"priv/cldr/validity/units.json",
"priv/cldr/bcp47/u.json",
"priv/cldr/bcp47/t.json",
"priv/cldr/language_matching.json"
]
]
end
def links do
%{
"GitHub" => "https://github.com/elixir-cldr/cldr",
"Readme" => "https://github.com/elixir-cldr/cldr/blob/v#{@version}/README.md",
"Changelog" => "https://github.com/elixir-cldr/cldr/blob/v#{@version}/CHANGELOG.md"
}
end
def docs do
[
source_ref: "v#{@version}",
main: "readme",
logo: "logo.png",
extras: [
"README.md",
"LICENSE.md",
"CHANGELOG.md"
],
formatters: ["html"],
deps: [
ex_cldr_numbers: "https://hexdocs.pm/ex_cldr_numbers",
ex_cldr_dates_times: "https://hexdocs.pm/ex_cldr_dates_times",
ex_cldr_units: "https://hexdocs.pm/ex_cldr_units",
ex_cldr_lists: "https://hexdocs.pm/ex_cldr_lists",
ex_cldr_calendars: "https://hexdocs.pm/ex_cldr_calendars",
ex_cldr_html: "https://hexdocs.pm/ex_cldr_html",
ex_cldr_messages: "https://hexdocs.pm/ex_cldr_messages",
ex_cldr_routes: "https://hexdocs.pm/ex_cldr_routes",
ex_cldr_person_names: "https://hexdocs.pm/ex_cldr_person_names"
],
groups_for_modules: groups_for_modules(),
skip_undefined_reference_warnings_on: ["changelog", "CHANGELOG.md"]
]
end
@doc false
def cli() do
[
"cldr.generate_language_tags": :generate,
"cldr.download.iso_currency": :generate,
"cldr.consolidate": :generate
]
end
def aliases do
[]
end
defp groups_for_modules do
[
"Language Tag": [
~r/^Cldr.LanguageTag.?/,
~r/^Cldr.Locale.?/
],
"Plural Rules": ~r/^Cldr.Number.?/,
Protocols: [
Cldr.Chars,
Cldr.DisplayName
],
Plugs: ~r/^Cldr.Plug.?/,
Gettext: ~r/^Cldr.Gettext.?/,
Helpers: [
Cldr.Calendar.Conversion,
Cldr.Digits,
Cldr.Helpers,
Cldr.Locale.Cache,
Cldr.Locale.Loader,
Cldr.Macros,
Cldr.Map,
Cldr.Math,
Cldr.String,
Cldr.Config,
Cldr.Install,
Cldr.Substitution,
Cldr.IsoCurrency,
Cldr.Timezone
],
"Example Backend": ~r/^MyApp.?/
]
end
defp elixirc_paths(:test), do: ["lib", "src", "dev", "mix/support/units", "mix/tasks", "test"]
defp elixirc_paths(:generate), do: ["lib", "src", "mix"]
defp elixirc_paths(:dev), do: ["lib", "mix", "src", "dev", "bench"]
defp elixirc_paths(:release), do: ["lib", "src"]
defp elixirc_paths(_), do: ["lib", "src"]
end