6 Commits

Author SHA1 Message Date
5bfb5e64e2 Use mirrored URL for tzdata as data.iana.org apparently blocks requests 2025-12-31 11:52:25 +03:00
Manuel Rubio
0fc896df64 0.2.3 improve Makefile for building better for Elixir and Erlang 2022-06-26 03:42:10 +02:00
Manuel Rubio
3bfd5c35b7 0.2.2 - minor fix to retrieve tzdata 2019-10-21 12:20:02 +02:00
Manuel Rubio
498c0c566b Merge pull request #1 from danielribes/master
Updated URL with HTTPS and to avoid 302
2019-10-21 08:09:36 +02:00
Daniel Ribes
bbcef9a45b Updated URL with HTTPS and to avoid 302 2019-10-21 00:35:13 +02:00
Manuel Rubio
efa43dc02e ensure next day is calculated even if it means to go to the next/previous month 2019-07-30 08:19:14 +02:00
4 changed files with 34 additions and 23 deletions

View File

@@ -1,8 +1,15 @@
ifdef REBAR_BARE_COMPILER_OUTPUT_DIR
EBIN = ${REBAR_BARE_COMPILER_OUTPUT_DIR}/ebin
else ifdef REBAR_BUILD_DIR
EBIN = ${REBAR_BUILD_DIR}/lib/ezic/ebin
else
EBIN = "ebin"
endif
zones:
wget "http://www.iana.org/time-zones/repository/tzdata-latest.tar.gz"
wget "https://m1.xs7.ru/time-zones/tzdata-latest.tar.gz"
mkdir -p priv/tzdata
tar -xvzf tzdata-latest.tar.gz -C priv/tzdata
rm tzdata-latest.tar.gz
erl -pa ebin -s ezic_generator generate -s erlang halt -noinput -noshell
erlc -o ebin zones/*.erl
erl -pa ${EBIN} -s ezic_generator generate -s erlang halt -noinput -noshell
erlc -o ${EBIN} zones/*.erl

View File

@@ -76,6 +76,8 @@ A big thanks to ezic's contributors:
* [jrgdiz](https://github.com/jrgdiz)
* [arkdro](https://github.com/arkdro)
* [amasyura](https://github.com/amasyura)
* [manuel-rubio](https://github.com/manuel-rubio)
* [danielribes](https://github.com/danielribes)
The decision to release this into the public domain was inspired by the (anti-) license of the [SQLite project](http://www.sqlite.org/copyright.html).

View File

@@ -1,18 +1,10 @@
{application,ezic,
[
{registered, []},
{vsn, "0.2.0"},
[{registered,[]},
{vsn,"0.2.3"},
{description,"A set of Erlang utilities for the Olson timezone database files"},
{applications, [
kernel,
stdlib
]},
{applications,[kernel,stdlib]},
{env,[{tzdata_dir,"priv/tzdata"}]},
{maintainers, ["Manuel Rubio"]},
{licenses,["Public Domain"]},
{links, [
{"Github", "https://github.com/altenwald/ezic"}
]},
{exclude_files, []},
{include_files, ["Makefile"]}
]}.
{links,[{"Github","https://github.com/altenwald/ezic"}]},
{exclude_files,["priv"]},
{include_files,["Makefile"]}]}.

View File

@@ -281,9 +281,19 @@ last_day_of(Day, Y,M) ->
% returns a date tuple {Y,M,D} representing the first available date, given the filter
% same for all timezones
first_day_limited(Day, {geq, N}, Y,M) ->
next_day(Day, {Y,M,N});
try
next_day(Day, {Y,M,N})
catch
error:no_next_day ->
next_day(Day, {Y,M+1,1})
end;
first_day_limited(Day, {leq, N}, Y,M) ->
previous_day(Day, {Y,M,N}).
try
previous_day(Day, {Y,M,N})
catch
error:no_previous_day ->
previous_day(Day, {Y, M-1, calendar:last_day_of_the_month(Y, M-1)})
end.