From 78bfd7678a624ad4ffd0a857dbd0e525ece916a8 Mon Sep 17 00:00:00 2001 From: Kip Cole Date: Thu, 2 Nov 2023 17:47:06 +0800 Subject: [PATCH] Fix compiler warnings on Elixir 1.16 --- CHANGELOG.md | 6 ++++-- lib/cldr/backend/interval/date.ex | 12 ++++++------ lib/cldr/backend/interval/date_time.ex | 12 ++++++------ lib/cldr/backend/interval/time.ex | 4 ++-- lib/cldr/datetime/relative.ex | 2 +- lib/cldr/format/datetime_format.ex | 2 +- mix.exs | 2 +- mix.lock | 10 +++++----- 8 files changed, 26 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e1dd948..2fd1d9c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,15 +4,17 @@ ## Cldr_Dates_Times v2.16.0 -This is the changelog for Cldr_Dates_Times v2.15.1 released on October 26th, 2023. For older changelogs please consult the release tag on [GitHub](https://github.com/elixir-cldr/cldr_cldr_dates_times/tags) +This is the changelog for Cldr_Dates_Times v2.15.1 released on November 2nd, 2023. For older changelogs please consult the release tag on [GitHub](https://github.com/elixir-cldr/cldr_cldr_dates_times/tags) ### Bug Fixes * Fix formatting time intervals when the `to` time is not greater than the `from` time. This allows time intervals that cross midnight to be formatted correctly. Thanks to @larshei for the report. Closes #42. +* Fix compiler warnings on Elixir 1.16. + ### Enhancements -* Adds options `:date_format` and `:time_format` to `Cldr.DateTime.Interval.to_string/2` and `Cldr.DateTime.to_string/2`. These options allow separate formatting of the date and time parts of a datetime, including those that are part of an interval. Thanks to @jmoldrich2b for the report (and patience). Closes #33. +* Adds options `:date_format` and `:time_format` to `Cldr.DateTime.Interval.to_string/2` and `Cldr.DateTime.to_string/2`. These options allow separate formatting of the date and time parts of a datetime, including those that are part of an interval. Thanks to @jmoldrich for the report (and patience). Closes #33. ## Cldr_Dates_Times v2.15.0 diff --git a/lib/cldr/backend/interval/date.ex b/lib/cldr/backend/interval/date.ex index 0918bcf..a62cc75 100644 --- a/lib/cldr/backend/interval/date.ex +++ b/lib/cldr/backend/interval/date.ex @@ -246,14 +246,14 @@ defmodule Cldr.Date.Interval.Backend do if Cldr.Code.ensure_compiled?(CalendarInterval) do @doc false def to_string!(%CalendarInterval{} = interval) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() Cldr.Date.Interval.to_string!(interval, unquote(backend), locale: locale) end end @doc false def to_string!(%Elixir.Date.Range{} = interval) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() Cldr.Date.Interval.to_string!(interval, unquote(backend), locale: locale) end @@ -342,21 +342,21 @@ defmodule Cldr.Date.Interval.Backend do if Cldr.Code.ensure_compiled?(CalendarInterval) do def to_string!(%CalendarInterval{} = interval, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.Date.Interval.to_string!(interval, unquote(backend), options) end end def to_string!(%Elixir.Date.Range{} = interval, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.Date.Interval.to_string!(interval, unquote(backend), options) end @doc false def to_string!(from, to) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() Cldr.Date.Interval.to_string!(from, to, unquote(backend), locale: locale) end @@ -460,7 +460,7 @@ defmodule Cldr.Date.Interval.Backend do end def do_to_string!(from, to, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.Date.Interval.to_string!(from, to, unquote(backend), options) end diff --git a/lib/cldr/backend/interval/date_time.ex b/lib/cldr/backend/interval/date_time.ex index 82778fa..e81d46b 100644 --- a/lib/cldr/backend/interval/date_time.ex +++ b/lib/cldr/backend/interval/date_time.ex @@ -33,7 +33,7 @@ defmodule Cldr.DateTime.Interval.Backend do if Cldr.Code.ensure_compiled?(CalendarInterval) do @doc false def to_string(%CalendarInterval{} = interval) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() Cldr.DateTime.Interval.to_string(interval, unquote(backend), locale: locale) end @@ -95,7 +95,7 @@ defmodule Cldr.DateTime.Interval.Backend do {:ok, String.t()} | {:error, {module, String.t()}} def to_string(%CalendarInterval{} = interval, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.DateTime.Interval.to_string(interval, unquote(backend), options) end @@ -187,7 +187,7 @@ defmodule Cldr.DateTime.Interval.Backend do end def do_to_string(from, to, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.DateTime.Interval.to_string(from, to, unquote(backend), options) end @@ -195,7 +195,7 @@ defmodule Cldr.DateTime.Interval.Backend do if Cldr.Code.ensure_compiled?(CalendarInterval) do @doc false def to_string!(%CalendarInterval{} = interval) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() Cldr.DateTime.Interval.to_string!(interval, unquote(backend), locale: locale) end @@ -257,7 +257,7 @@ defmodule Cldr.DateTime.Interval.Backend do String.t() | no_return def to_string!(%CalendarInterval{} = interval, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.DateTime.Interval.to_string!(interval, unquote(backend), options) end @@ -344,7 +344,7 @@ defmodule Cldr.DateTime.Interval.Backend do end def do_to_string!(from, to, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.DateTime.Interval.to_string!(from, to, unquote(backend), options) end diff --git a/lib/cldr/backend/interval/time.ex b/lib/cldr/backend/interval/time.ex index 776c7a4..6ce0b8a 100644 --- a/lib/cldr/backend/interval/time.ex +++ b/lib/cldr/backend/interval/time.ex @@ -126,7 +126,7 @@ defmodule Cldr.Time.Interval.Backend do end def do_to_string(from, to, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.Time.Interval.to_string(from, to, unquote(backend), options) end @@ -233,7 +233,7 @@ defmodule Cldr.Time.Interval.Backend do end def do_to_string!(from, to, options) do - locale = unquote(backend).get_locale + locale = unquote(backend).get_locale() options = Keyword.put_new(options, :locale, locale) Cldr.Time.Interval.to_string!(from, to, unquote(backend), options) end diff --git a/lib/cldr/datetime/relative.ex b/lib/cldr/datetime/relative.ex index e650bac..ec386c8 100644 --- a/lib/cldr/datetime/relative.ex +++ b/lib/cldr/datetime/relative.ex @@ -387,7 +387,7 @@ defmodule Cldr.DateTime.Relative do ## Example - iex> Cldr.DateTime.Relative.known_units + iex> Cldr.DateTime.Relative.known_units() [:day, :fri, :hour, :minute, :mon, :month, :quarter, :sat, :second, :sun, :thu, :tue, :wed, :week, :year] """ diff --git a/lib/cldr/format/datetime_format.ex b/lib/cldr/format/datetime_format.ex index cae1c75..2452b5e 100644 --- a/lib/cldr/format/datetime_format.ex +++ b/lib/cldr/format/datetime_format.ex @@ -459,7 +459,7 @@ defmodule Cldr.DateTime.Format do ## Example: - iex> Cldr.DateTime.Format.common_date_time_format_names + iex> Cldr.DateTime.Format.common_date_time_format_names() [ :Bh, :Bhm, diff --git a/mix.exs b/mix.exs index 8835ab7..fed8576 100644 --- a/mix.exs +++ b/mix.exs @@ -15,7 +15,7 @@ defmodule Cldr.DatesTimes.Mixfile do package: package(), start_permanent: Mix.env() == :prod, deps: deps(), - compilers: Mix.compilers(), + compilers: [:leex, :yecc] ++ Mix.compilers(), elixirc_paths: elixirc_paths(Mix.env()), dialyzer: [ ignore_warnings: ".dialyzer_ignore_warnings", diff --git a/mix.lock b/mix.lock index ddd1068..900a724 100644 --- a/mix.lock +++ b/mix.lock @@ -1,20 +1,20 @@ %{ "benchee": {:hex, :benchee, "1.1.0", "f3a43817209a92a1fade36ef36b86e1052627fd8934a8b937ac9ab3a76c43062", [:mix], [{:deep_merge, "~> 1.0", [hex: :deep_merge, repo: "hexpm", optional: false]}, {:statistex, "~> 1.0", [hex: :statistex, repo: "hexpm", optional: false]}], "hexpm", "7da57d545003165a012b587077f6ba90b89210fd88074ce3c60ce239eb5e6d93"}, "calendar_interval": {:hex, :calendar_interval, "0.2.0", "2b253b1e37ee1d4344639a3cbfb12abd0e996e4a8181537eb33c3e93fdfaffd9", [:mix], [], "hexpm", "c13d5e0108e61808a38f622987e1c5e881d96d28945213d3efe6dd06c28ba7b0"}, - "cldr_utils": {:hex, :cldr_utils, "2.24.1", "5ff8c8c55f96666228827bcf85a23d632022def200566346545d01d15e4c30dc", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.5", [hex: :certifi, repo: "hexpm", optional: true]}, {:decimal, "~> 1.9 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "1820300531b5b849d0bc468e5a87cd64f8f2c5191916f548cbe69b2efc203780"}, + "cldr_utils": {:hex, :cldr_utils, "2.24.2", "364fa30be55d328e704629568d431eb74cd2f085752b27f8025520b566352859", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.5", [hex: :certifi, repo: "hexpm", optional: true]}, {:decimal, "~> 1.9 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "3362b838836a9f0fa309de09a7127e36e67310e797d556db92f71b548832c7cf"}, "coerce": {:hex, :coerce, "1.0.1", "211c27386315dc2894ac11bc1f413a0e38505d808153367bd5c6e75a4003d096", [:mix], [], "hexpm", "b44a691700f7a1a15b4b7e2ff1fa30bebd669929ac8aa43cffe9e2f8bf051cf1"}, "decimal": {:hex, :decimal, "2.1.1", "5611dca5d4b2c3dd497dec8f68751f1f1a54755e8ed2a966c2633cf885973ad6", [:mix], [], "hexpm", "53cfe5f497ed0e7771ae1a475575603d77425099ba5faef9394932b35020ffcc"}, "deep_merge": {:hex, :deep_merge, "1.0.0", "b4aa1a0d1acac393bdf38b2291af38cb1d4a52806cf7a4906f718e1feb5ee961", [:mix], [], "hexpm", "ce708e5f094b9cd4e8f2be4f00d2f4250c4095be93f8cd6d018c753894885430"}, - "dialyxir": {:hex, :dialyxir, "1.4.1", "a22ed1e7bd3a3e3f197b68d806ef66acb61ee8f57b3ac85fc5d57354c5482a93", [:mix], [{:erlex, ">= 0.2.6", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "84b795d6d7796297cca5a3118444b80c7d94f7ce247d49886e7c291e1ae49801"}, + "dialyxir": {:hex, :dialyxir, "1.4.2", "764a6e8e7a354f0ba95d58418178d486065ead1f69ad89782817c296d0d746a5", [:mix], [{:erlex, ">= 0.2.6", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "516603d8067b2fd585319e4b13d3674ad4f314a5902ba8130cd97dc902ce6bbd"}, "digital_token": {:hex, :digital_token, "0.6.0", "13e6de581f0b1f6c686f7c7d12ab11a84a7b22fa79adeb4b50eec1a2d278d258", [:mix], [{:cldr_utils, "~> 2.17", [hex: :cldr_utils, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "2455d626e7c61a128b02a4a8caddb092548c3eb613ac6f6a85e4cbb6caddc4d1"}, "earmark": {:hex, :earmark, "1.4.14", "d04572cef64dd92726a97d92d714e38d6e130b024ea1b3f8a56e7de66ec04e50", [:mix], [{:earmark_parser, ">= 1.4.12", [hex: :earmark_parser, repo: "hexpm", optional: false]}], "hexpm", "df338b8b1852ee425180b276c56c6941cb12220e04fe8718fe4acbdd35fd699f"}, "earmark_parser": {:hex, :earmark_parser, "1.4.37", "2ad73550e27c8946648b06905a57e4d454e4d7229c2dafa72a0348c99d8be5f7", [:mix], [], "hexpm", "6b19783f2802f039806f375610faa22da130b8edc21209d0bff47918bb48360e"}, "erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"}, - "ex_cldr": {:hex, :ex_cldr, "2.37.2", "c45041534ec60af367c4c1af02a608576118044fe3c441c782fd424061d6b517", [:mix], [{:cldr_utils, "~> 2.21", [hex: :cldr_utils, repo: "hexpm", optional: false]}, {:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:gettext, "~> 0.19", [hex: :gettext, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: true]}], "hexpm", "c8467b1d5080716ace6621703b6656cb2f9545572a54b341da900791a0cf92ba"}, + "ex_cldr": {:hex, :ex_cldr, "2.37.5", "9da6d97334035b961d2c2de167dc6af8cd3e09859301a5b8f49f90bd8b034593", [:mix], [{:cldr_utils, "~> 2.21", [hex: :cldr_utils, repo: "hexpm", optional: false]}, {:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:gettext, "~> 0.19", [hex: :gettext, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: true]}], "hexpm", "74ad5ddff791112ce4156382e171a5f5d3766af9d5c4675e0571f081fe136479"}, "ex_cldr_calendars": {:hex, :ex_cldr_calendars, "1.22.1", "3e5150f1fe7698e0fa118aeedcca1b5920d0a552bc40c81cf65ca9b0a4ea4cc3", [:mix], [{:calendar_interval, "~> 0.2", [hex: :calendar_interval, repo: "hexpm", optional: true]}, {:ex_cldr_lists, "~> 2.10", [hex: :ex_cldr_lists, repo: "hexpm", optional: true]}, {:ex_cldr_numbers, "~> 2.31", [hex: :ex_cldr_numbers, repo: "hexpm", optional: false]}, {:ex_cldr_units, "~> 3.16", [hex: :ex_cldr_units, repo: "hexpm", optional: true]}, {:ex_doc, "~> 0.21", [hex: :ex_doc, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "e7408cd9e8318b2ef93b76728e84484ddc3ea6d7c894fbc811c54122a7140169"}, "ex_cldr_currencies": {:hex, :ex_cldr_currencies, "2.15.0", "aadd34e91cfac7ef6b03fe8f47f8c6fa8c5daf3f89b5d9fee64ec545ded839cf", [:mix], [{:ex_cldr, "~> 2.34", [hex: :ex_cldr, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "0521316396c66877a2d636219767560bb2397c583341fcb154ecf9f3000e6ff8"}, - "ex_cldr_numbers": {:hex, :ex_cldr_numbers, "2.32.2", "5e0e3031d3f54b51fe7078a7a94592987b70b06d631bdc88813b222dc5a8b1bd", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:digital_token, "~> 0.3 or ~> 1.0", [hex: :digital_token, repo: "hexpm", optional: false]}, {:ex_cldr, "~> 2.37", [hex: :ex_cldr, repo: "hexpm", optional: false]}, {:ex_cldr_currencies, ">= 2.14.2", [hex: :ex_cldr_currencies, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "91257684a9c4d6abdf738f0cc5671837de876e69552e8bd4bc5fa1bfd5817713"}, - "ex_doc": {:hex, :ex_doc, "0.30.6", "5f8b54854b240a2b55c9734c4b1d0dd7bdd41f71a095d42a70445c03cf05a281", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "bd48f2ddacf4e482c727f9293d9498e0881597eae6ddc3d9562bd7923375109f"}, + "ex_cldr_numbers": {:hex, :ex_cldr_numbers, "2.32.3", "b631ff94c982ec518e46bf4736000a30a33d6b58facc085d5f240305f512ad4a", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:digital_token, "~> 0.3 or ~> 1.0", [hex: :digital_token, repo: "hexpm", optional: false]}, {:ex_cldr, "~> 2.37", [hex: :ex_cldr, repo: "hexpm", optional: false]}, {:ex_cldr_currencies, ">= 2.14.2", [hex: :ex_cldr_currencies, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "7b626ff1e59a0ec9c3c5db5ce9ca91a6995e2ab56426b71f3cbf67181ea225f5"}, + "ex_doc": {:hex, :ex_doc, "0.30.9", "d691453495c47434c0f2052b08dd91cc32bc4e1a218f86884563448ee2502dd2", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "d7aaaf21e95dc5cddabf89063327e96867d00013963eadf2c6ad135506a8bc10"}, "exprintf": {:hex, :exprintf, "0.2.1", "b7e895dfb00520cfb7fc1671303b63b37dc3897c59be7cbf1ae62f766a8a0314", [:mix], [], "hexpm", "20a0e8c880be90e56a77fcc82533c5d60c643915c7ce0cc8aa1e06ed6001da28"}, "exprof": {:hex, :exprof, "0.2.4", "13ddc0575a6d24b52e7c6809d2a46e9ad63a4dd179628698cdbb6c1f6e497c98", [:mix], [{:exprintf, "~> 0.2", [hex: :exprintf, repo: "hexpm", optional: false]}], "hexpm", "0884bcb66afc421c75d749156acbb99034cc7db6d3b116c32e36f32551106957"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"},