From 08b033ba31258341d764b656ba74770198320b02 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:57:47 +0300
Subject: [PATCH 1/9] RELEASE: "Regenerate tests list", "Last check that all
tests are passed OK" steps are added
---
RELEASE | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/RELEASE b/RELEASE
index 420a124e..f80c40ea 100644
--- a/RELEASE
+++ b/RELEASE
@@ -6,17 +6,20 @@
- `COPYRIGHT` file;
- `_COPYRIGHT` exported constant in the main module.
3. Update version in `_VERSION` exported constant in the main module.
-4. Regenerate exports list (performed by `./make.sh`)
-5. Generate `scm-1` rockspec (performed by `./make.sh`)
-6. Generate `VERSION-1` rockspec, where VERSION is the version to be released.
+4. Regenerate tests list (performed by `./make.sh`)
+5. Regenerate exports list (performed by `./make.sh`)
+6. Generate `scm-1` rockspec (performed by `./make.sh`)
+7. Generate `VERSION-1` rockspec, where VERSION is the version to be released.
Example:
```
lua etc/rockspec/generate.lua 1.1.0-1 v1.1.0 > rockspec/lua-nucleo-1.1.0-1.rockspec
````
-7. Regenerate API docs: `./make-doc.sh`
-8. Make sure that all the changes is in the working tree.
-9. Tag the working tree head with the version name, e.g. `v1.1.0`.
-10. Push tag to origin.
+8. Regenerate API docs: `./make-doc.sh`
+9. Make sure that all the changes is in the working tree.
+10. Last check that all tests are passed OK in latest Lua 5.1, Lua 5.2, Lua 5.3
+ Lua 5.4
+10. Tag the working tree head with the version name, e.g. `v1.1.0`.
+11. Push tag to origin.
# Publish on [LuaRocks.org](https://luarocks.org)
From 56d3eedd84caa65e9777bd327db6ec4fb146a59e Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:55:19 +0300
Subject: [PATCH 2/9] HISTORY: add entry for 1.1.0 release
---
HISTORY | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/HISTORY b/HISTORY
index c6708474..e18d3a29 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,3 +1,59 @@
+Version 1.1.0 (2021-02-15)
+==========================
+
+Additions and improvements:
+
+ Lua up to 5.4 support is added.
+
+ make.sh:
+ More strict bash is set.
+ Updating list-exports only if a rock is installed.
+ Allow local luarocks installation with "--local" option.
+
+ datetime-utils (new module):
+ make_time_table is added.
+ get_days_in_month is added.
+ get_day_of_week is added.
+ day_of_week_name_to_number is added.
+ month_name_to_number is added.
+
+ dsl/common_load_schema:
+ A heuristics to find a source location for dsl node is added.
+
+ ensure:
+ ensure_strvariant is added.
+ ensure_strlist is added.
+ ensure_strpermutations is added.
+
+ enumenator:
+ make_enumerator_from_set is added.
+ make_enumerator_from_interval is added.
+
+ language:
+ Exports are added: lua52_types, lua52_keywords, lua53_types,
+ lua53_keywords, lua54_types, lua54_keywords, lua_types, lua_keywords.
+
+ legacy (new module):
+ loadstring is added.
+
+ language:
+ update to support all current Lua versions >= 5.1
+
+ table-utils:
+ tdeepfilter is added.
+ tisarray_not is added.
+ tifindallpermutations is added.
+
+ tdeepequals:
+ tless_kv: optimization is made.
+ tmore: prevent crashes fix is made.
+
+ Test framework is enhanced, new extensions are added.
+
+ More tests are added (including tests for new features).
+
+ Documentation is updated.
+
Version 1.0.0 (2016-12-15)
==========================
From 9de7123908b396f2899b2ef63cec51744c544c24 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:56:10 +0300
Subject: [PATCH 3/9] COPYRIGHT: update year
---
COPYRIGHT | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/COPYRIGHT b/COPYRIGHT
index 3763390c..b5bb8e7c 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -7,7 +7,7 @@ and commercial purposes at absolutely no cost.
===============================================================================
-Copyright (C) 2009-2017 Lua-NĂșcleo authors
+Copyright (C) 2009-2021 Lua-NĂșcleo authors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
From a491c013a00da51ed9c0aa274e4f697a87306b64 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:56:42 +0300
Subject: [PATCH 4/9] AUTHORS: actualize e-mail
---
AUTHORS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/AUTHORS b/AUTHORS
index 157c671e..2489d19a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -9,7 +9,7 @@ Alexander V. Nikolaev
Valeriy Skurikhin
Vladimir Dronnikov
Alexander Altshuler
-Alexey Romanov
+Alexey Romanoff
Rafis Ganeyev
Mark Gurevich
Vladimir Stebunov
From ef7a0aa6a14180833530e482843badc4f51d8510 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:49:48 +0300
Subject: [PATCH 5/9] test/test-list: regenerated
---
test/test-list.lua | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/test/test-list.lua b/test/test-list.lua
index f74d4ffe..fc614fc8 100644
--- a/test/test-list.lua
+++ b/test/test-list.lua
@@ -190,6 +190,10 @@ return
type = 'cases';
path = 'test/cases/0320-timestamp.lua';
};
+ {
+ type = 'cases';
+ path = 'test/cases/0325-datetime-utils.lua';
+ };
{
type = 'cases';
path = 'test/cases/0330-tpretty.lua';
@@ -290,6 +294,10 @@ return
type = 'cases';
path = 'test/cases/0640-quicksort.lua';
};
+ {
+ type = 'cases';
+ path = 'test/cases/0650-enumerator.lua';
+ };
{
type = 'cases';
path = 'test/cases/0650-legacy.lua';
From b40b566700cf9452227c49c9da819c87b3f6e887 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:50:33 +0300
Subject: [PATCH 6/9] lua-nucleo/code/exports: regenerated
---
lua-nucleo/code/exports.lua | 100 ++++++++++++++++++++++++++++++++++++
1 file changed, 100 insertions(+)
diff --git a/lua-nucleo/code/exports.lua b/lua-nucleo/code/exports.lua
index fba92b20..d54658de 100644
--- a/lua-nucleo/code/exports.lua
+++ b/lua-nucleo/code/exports.lua
@@ -30,6 +30,10 @@ return
{
{ "lua-nucleo/log.lua", w = 0 };
};
+ MAX_TIMESTAMP =
+ {
+ { "lua-nucleo/timestamp.lua", w = 0 };
+ };
amap =
{
{ "lua-nucleo/args.lua", w = 0 };
@@ -162,6 +166,10 @@ return
{
{ "lua-nucleo/string.lua", w = 0 };
};
+ day_of_week_name_to_number =
+ {
+ { "lua-nucleo/datetime-utils.lua", w = 0 };
+ };
decoraror_checker_helper =
{
{ "lua-nucleo/testing/decorators.lua", w = 0 };
@@ -238,6 +246,18 @@ return
{
{ "lua-nucleo/ensure.lua", w = 0 };
};
+ ensure_strlist =
+ {
+ { "lua-nucleo/ensure.lua", w = 0 };
+ };
+ ensure_strpermutations =
+ {
+ { "lua-nucleo/ensure.lua", w = 0 };
+ };
+ ensure_strvariant =
+ {
+ { "lua-nucleo/ensure.lua", w = 0 };
+ };
ensure_tdeepequals =
{
{ "lua-nucleo/ensure.lua", w = 0 };
@@ -286,10 +306,18 @@ return
{
{ "lua-nucleo/log.lua", w = 0 };
};
+ get_day_of_week =
+ {
+ { "lua-nucleo/datetime-utils.lua", w = 0 };
+ };
get_day_timestamp =
{
{ "lua-nucleo/timestamp.lua", w = 0 };
};
+ get_days_in_month =
+ {
+ { "lua-nucleo/datetime-utils.lua", w = 0 };
+ };
get_decasecond_timestamp =
{
{ "lua-nucleo/timestamp.lua", w = 0 };
@@ -402,6 +430,10 @@ return
{
{ "lua-nucleo/dsl/walk_data_with_schema.lua", w = 0 };
};
+ loadstring =
+ {
+ { "lua-nucleo/legacy.lua", w = 0 };
+ };
looped_linear_interpolator =
{
{ "lua-nucleo/util/anim/interpolator.lua", w = 0 };
@@ -426,6 +458,38 @@ return
{
{ "lua-nucleo/language.lua", w = 0 };
};
+ lua52_keywords =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua52_types =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua53_keywords =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua53_types =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua54_keywords =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua54_types =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua_keywords =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
+ lua_types =
+ {
+ { "lua-nucleo/language.lua", w = 0 };
+ };
make_checker =
{
{ "lua-nucleo/checker.lua", w = 0 };
@@ -450,6 +514,14 @@ return
{
{ "lua-nucleo/dsl/dsl_loader.lua", w = 0 };
};
+ make_enumerator_from_interval =
+ {
+ { "lua-nucleo/enumerator.lua", w = 0 };
+ };
+ make_enumerator_from_set =
+ {
+ { "lua-nucleo/enumerator.lua", w = 0 };
+ };
make_generator_mt =
{
{ "lua-nucleo/functional.lua", w = 0 };
@@ -498,14 +570,26 @@ return
{
{ "lua-nucleo/stack_with_factory.lua", w = 0 };
};
+ make_time_table =
+ {
+ { "lua-nucleo/datetime-utils.lua", w = 0 };
+ };
make_timed_queue =
{
{ "lua-nucleo/timed_queue.lua", w = 0 };
};
+ make_timestamp_from_string =
+ {
+ { "lua-nucleo/timestamp.lua", w = 0 };
+ };
method_arguments =
{
{ "lua-nucleo/args.lua", w = 0 };
};
+ month_name_to_number =
+ {
+ { "lua-nucleo/datetime-utils.lua", w = 0 };
+ };
nargs =
{
{ "lua-nucleo/args.lua", w = 0 };
@@ -598,6 +682,10 @@ return
{
{ "lua-nucleo/tdeepequals.lua", w = 0 };
};
+ tdeepfilter =
+ {
+ { "lua-nucleo/table-utils.lua", w = 0 };
+ };
tequals =
{
{ "lua-nucleo/table-utils.lua", w = 0 };
@@ -638,6 +726,10 @@ return
{
{ "lua-nucleo/table-utils.lua", w = 0 };
};
+ tifindallpermutations =
+ {
+ { "lua-nucleo/table-utils.lua", w = 0 };
+ };
tifindvalue_nonrecursive =
{
{ "lua-nucleo/table-utils.lua", w = 0 };
@@ -690,6 +782,10 @@ return
{
{ "lua-nucleo/table-utils.lua", w = 0 };
};
+ tisarray_not =
+ {
+ { "lua-nucleo/table-utils.lua", w = 0 };
+ };
tisempty =
{
{ "lua-nucleo/table-utils.lua", w = 0 };
@@ -882,6 +978,10 @@ return
{
{ "lua-nucleo/misc.lua", w = 0 };
};
+ unpack_timestamp =
+ {
+ { "lua-nucleo/timestamp.lua", w = 0 };
+ };
upper_bound =
{
{ "lua-nucleo/algorithm.lua", w = 0 };
From 1534c8dabc595cd011f03cb39ad242e0fddc21c8 Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 10:59:26 +0300
Subject: [PATCH 7/9] rockspec/lua-nucleo-scm-1.rockspec: regenerated
---
rockspec/lua-nucleo-scm-1.rockspec | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/rockspec/lua-nucleo-scm-1.rockspec b/rockspec/lua-nucleo-scm-1.rockspec
index 23fba651..121a06d8 100644
--- a/rockspec/lua-nucleo-scm-1.rockspec
+++ b/rockspec/lua-nucleo-scm-1.rockspec
@@ -10,7 +10,7 @@ description = {
license = "MIT/X11"
}
dependencies = {
- "lua >= 5.1"
+ "lua >= 5.1, <= 5.4"
}
build = {
type = "none",
@@ -26,6 +26,7 @@ build = {
["lua-nucleo.code.globals"] = "lua-nucleo/code/globals.lua";
["lua-nucleo.code.profile"] = "lua-nucleo/code/profile.lua";
["lua-nucleo.coro"] = "lua-nucleo/coro.lua";
+ ["lua-nucleo.datetime-utils"] = "lua-nucleo/datetime-utils.lua";
["lua-nucleo.deque"] = "lua-nucleo/deque.lua";
["lua-nucleo.diagnostics"] = "lua-nucleo/diagnostics.lua";
["lua-nucleo.dsl.common_load_schema"] = "lua-nucleo/dsl/common_load_schema.lua";
@@ -35,6 +36,7 @@ build = {
["lua-nucleo.dsl.tagged-tree"] = "lua-nucleo/dsl/tagged-tree.lua";
["lua-nucleo.dsl.walk_data_with_schema"] = "lua-nucleo/dsl/walk_data_with_schema.lua";
["lua-nucleo.ensure"] = "lua-nucleo/ensure.lua";
+ ["lua-nucleo.enumerator"] = "lua-nucleo/enumerator.lua";
["lua-nucleo.factory"] = "lua-nucleo/factory.lua";
["lua-nucleo.functional"] = "lua-nucleo/functional.lua";
["lua-nucleo.import"] = "lua-nucleo/import.lua";
@@ -43,6 +45,7 @@ build = {
["lua-nucleo.key_value_store.key_value_store_simple"] = "lua-nucleo/key_value_store/key_value_store_simple.lua";
["lua-nucleo.key_value_store.key_value_store_sophisticated"] = "lua-nucleo/key_value_store/key_value_store_sophisticated.lua";
["lua-nucleo.language"] = "lua-nucleo/language.lua";
+ ["lua-nucleo.legacy"] = "lua-nucleo/legacy.lua";
["lua-nucleo.log"] = "lua-nucleo/log.lua";
["lua-nucleo.math"] = "lua-nucleo/math.lua";
["lua-nucleo.misc"] = "lua-nucleo/misc.lua";
From 8c3ae1baad8c36bec7c397cecd20a6d2a5f437be Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 11:11:19 +0300
Subject: [PATCH 8/9] add rockspeck/lua-nucleo-1.0.0-1.rockspec
---
rockspec/lua-nucleo-1.1.0-1.rockspec | 80 ++++++++++++++++++++++++++++
1 file changed, 80 insertions(+)
create mode 100644 rockspec/lua-nucleo-1.1.0-1.rockspec
diff --git a/rockspec/lua-nucleo-1.1.0-1.rockspec b/rockspec/lua-nucleo-1.1.0-1.rockspec
new file mode 100644
index 00000000..2cbefa6f
--- /dev/null
+++ b/rockspec/lua-nucleo-1.1.0-1.rockspec
@@ -0,0 +1,80 @@
+package = "lua-nucleo"
+version = "1.1.0-1"
+source = {
+ url = "git://github.com/lua-nucleo/lua-nucleo.git",
+ branch = "v1.1.0"
+}
+description = {
+ summary = "A random collection of core and utility level Lua libraries",
+ homepage = "http://github.com/lua-nucleo/lua-nucleo",
+ license = "MIT/X11"
+}
+dependencies = {
+ "lua >= 5.1, <= 5.4"
+}
+build = {
+ type = "none",
+ install = {
+ lua = {
+ ["lua-nucleo.algorithm"] = "lua-nucleo/algorithm.lua";
+ ["lua-nucleo.args"] = "lua-nucleo/args.lua";
+ ["lua-nucleo.assert"] = "lua-nucleo/assert.lua";
+ ["lua-nucleo.checker"] = "lua-nucleo/checker.lua";
+ ["lua-nucleo.code.exports"] = "lua-nucleo/code/exports.lua";
+ ["lua-nucleo.code.foreign-globals.lua5_1"] = "lua-nucleo/code/foreign-globals/lua5_1.lua";
+ ["lua-nucleo.code.foreign-globals.luajit2"] = "lua-nucleo/code/foreign-globals/luajit2.lua";
+ ["lua-nucleo.code.globals"] = "lua-nucleo/code/globals.lua";
+ ["lua-nucleo.code.profile"] = "lua-nucleo/code/profile.lua";
+ ["lua-nucleo.coro"] = "lua-nucleo/coro.lua";
+ ["lua-nucleo.datetime-utils"] = "lua-nucleo/datetime-utils.lua";
+ ["lua-nucleo.deque"] = "lua-nucleo/deque.lua";
+ ["lua-nucleo.diagnostics"] = "lua-nucleo/diagnostics.lua";
+ ["lua-nucleo.dsl.common_load_schema"] = "lua-nucleo/dsl/common_load_schema.lua";
+ ["lua-nucleo.dsl.dsl_loader"] = "lua-nucleo/dsl/dsl_loader.lua";
+ ["lua-nucleo.dsl.dump_nodes"] = "lua-nucleo/dsl/dump_nodes.lua";
+ ["lua-nucleo.dsl.path_based_walker"] = "lua-nucleo/dsl/path_based_walker.lua";
+ ["lua-nucleo.dsl.tagged-tree"] = "lua-nucleo/dsl/tagged-tree.lua";
+ ["lua-nucleo.dsl.walk_data_with_schema"] = "lua-nucleo/dsl/walk_data_with_schema.lua";
+ ["lua-nucleo.ensure"] = "lua-nucleo/ensure.lua";
+ ["lua-nucleo.enumerator"] = "lua-nucleo/enumerator.lua";
+ ["lua-nucleo.factory"] = "lua-nucleo/factory.lua";
+ ["lua-nucleo.functional"] = "lua-nucleo/functional.lua";
+ ["lua-nucleo.import"] = "lua-nucleo/import.lua";
+ ["lua-nucleo.init"] = "lua-nucleo/init.lua";
+ ["lua-nucleo.key_value_store.key_value_store_ophash"] = "lua-nucleo/key_value_store/key_value_store_ophash.lua";
+ ["lua-nucleo.key_value_store.key_value_store_simple"] = "lua-nucleo/key_value_store/key_value_store_simple.lua";
+ ["lua-nucleo.key_value_store.key_value_store_sophisticated"] = "lua-nucleo/key_value_store/key_value_store_sophisticated.lua";
+ ["lua-nucleo.language"] = "lua-nucleo/language.lua";
+ ["lua-nucleo.legacy"] = "lua-nucleo/legacy.lua";
+ ["lua-nucleo.log"] = "lua-nucleo/log.lua";
+ ["lua-nucleo.math"] = "lua-nucleo/math.lua";
+ ["lua-nucleo.misc"] = "lua-nucleo/misc.lua";
+ ["lua-nucleo.module"] = "lua-nucleo/module.lua";
+ ["lua-nucleo.ordered_named_cat_manager"] = "lua-nucleo/ordered_named_cat_manager.lua";
+ ["lua-nucleo.pcall"] = "lua-nucleo/pcall.lua";
+ ["lua-nucleo.prettifier"] = "lua-nucleo/prettifier.lua";
+ ["lua-nucleo.priority_queue"] = "lua-nucleo/priority_queue.lua";
+ ["lua-nucleo.quicksort"] = "lua-nucleo/quicksort.lua";
+ ["lua-nucleo.random"] = "lua-nucleo/random.lua";
+ ["lua-nucleo.require_and_declare"] = "lua-nucleo/require_and_declare.lua";
+ ["lua-nucleo.sandbox"] = "lua-nucleo/sandbox.lua";
+ ["lua-nucleo.scoped_cat_tree_manager"] = "lua-nucleo/scoped_cat_tree_manager.lua";
+ ["lua-nucleo.stack_with_factory"] = "lua-nucleo/stack_with_factory.lua";
+ ["lua-nucleo.strict"] = "lua-nucleo/strict.lua";
+ ["lua-nucleo.string"] = "lua-nucleo/string.lua";
+ ["lua-nucleo.suite"] = "lua-nucleo/suite.lua";
+ ["lua-nucleo.table-utils"] = "lua-nucleo/table-utils.lua";
+ ["lua-nucleo.table"] = "lua-nucleo/table.lua";
+ ["lua-nucleo.tdeepequals"] = "lua-nucleo/tdeepequals.lua";
+ ["lua-nucleo.testing.decorators"] = "lua-nucleo/testing/decorators.lua";
+ ["lua-nucleo.timed_queue"] = "lua-nucleo/timed_queue.lua";
+ ["lua-nucleo.timestamp"] = "lua-nucleo/timestamp.lua";
+ ["lua-nucleo.tpretty"] = "lua-nucleo/tpretty.lua";
+ ["lua-nucleo.tserialize"] = "lua-nucleo/tserialize.lua";
+ ["lua-nucleo.tstr"] = "lua-nucleo/tstr.lua";
+ ["lua-nucleo.type"] = "lua-nucleo/type.lua";
+ ["lua-nucleo.typeassert"] = "lua-nucleo/typeassert.lua";
+ ["lua-nucleo.util.anim.interpolator"] = "lua-nucleo/util/anim/interpolator.lua";
+ }
+ }
+}
From c249bebc9db3a527186a6457d2f919ee064dcd1e Mon Sep 17 00:00:00 2001
From: Alexey Romanoff
Date: Mon, 15 Feb 2021 11:16:09 +0300
Subject: [PATCH 9/9] doc: regenerated
---
doc/index.html | 12 +-
...ey_value_store.key_value_store_ophash.html | 4 +-
...ey_value_store.key_value_store_simple.html | 4 +-
...e_store.key_value_store_sophisticated.html | 4 +-
doc/modules/lua-nucleo.algorithm.html | 4 +-
doc/modules/lua-nucleo.args.html | 4 +-
doc/modules/lua-nucleo.assert.html | 4 +-
doc/modules/lua-nucleo.checker.html | 4 +-
doc/modules/lua-nucleo.code.exports.html | 4 +-
...lua-nucleo.code.foreign-global.lua5_1.html | 4 +-
...ua-nucleo.code.foreign-global.luajit2.html | 4 +-
doc/modules/lua-nucleo.code.globals.html | 4 +-
doc/modules/lua-nucleo.code.profile.html | 4 +-
doc/modules/lua-nucleo.coro.html | 4 +-
doc/modules/lua-nucleo.datetime-utils.html | 336 +++++++++++++++++
doc/modules/lua-nucleo.deque.html | 4 +-
doc/modules/lua-nucleo.diagnostics.html | 10 +-
.../lua-nucleo.dsl.common_load_schema.html | 4 +-
doc/modules/lua-nucleo.dsl.dsl_loader.html | 4 +-
doc/modules/lua-nucleo.dsl.dump_nodes.html | 4 +-
.../lua-nucleo.dsl.path_based_walker.html | 4 +-
doc/modules/lua-nucleo.dsl.tagged-tree.html | 4 +-
.../lua-nucleo.dsl.walk_data_with_schema.html | 4 +-
doc/modules/lua-nucleo.ensure.html | 64 ++--
doc/modules/lua-nucleo.enumerator.html | 323 ++++++++++++++++
doc/modules/lua-nucleo.factory.html | 4 +-
doc/modules/lua-nucleo.functional.html | 4 +-
doc/modules/lua-nucleo.import.html | 4 +-
doc/modules/lua-nucleo.init.html | 4 +-
doc/modules/lua-nucleo.language.html | 4 +-
doc/modules/lua-nucleo.legacy.html | 4 +-
doc/modules/lua-nucleo.log.html | 4 +-
doc/modules/lua-nucleo.math.html | 4 +-
doc/modules/lua-nucleo.misc.html | 4 +-
doc/modules/lua-nucleo.module.html | 4 +-
.../lua-nucleo.ordered_named_cat_manager.html | 4 +-
doc/modules/lua-nucleo.pcall.html | 4 +-
doc/modules/lua-nucleo.prettifier.html | 4 +-
doc/modules/lua-nucleo.priority_queue.html | 4 +-
doc/modules/lua-nucleo.quicksort.html | 4 +-
doc/modules/lua-nucleo.random.html | 4 +-
.../lua-nucleo.require_and_declare.html | 4 +-
doc/modules/lua-nucleo.sandbox.html | 4 +-
.../lua-nucleo.scoped_cat_tree_manager.html | 4 +-
.../lua-nucleo.stack_with_factory.html | 4 +-
doc/modules/lua-nucleo.strict.html | 4 +-
doc/modules/lua-nucleo.string.html | 52 +--
doc/modules/lua-nucleo.suite.html | 4 +-
doc/modules/lua-nucleo.table-utils.html | 4 +-
doc/modules/lua-nucleo.table.html | 4 +-
doc/modules/lua-nucleo.tdeepequals.html | 4 +-
doc/modules/lua-nucleo.testing.decorator.html | 4 +-
doc/modules/lua-nucleo.times_queue.html | 4 +-
doc/modules/lua-nucleo.timestamp.html | 348 +++++++++++++++++-
doc/modules/lua-nucleo.tpretty.html | 4 +-
doc/modules/lua-nucleo.tserialize.html | 4 +-
doc/modules/lua-nucleo.tstr.html | 4 +-
doc/modules/lua-nucleo.type.html | 4 +-
doc/modules/lua-nucleo.typeassert.html | 4 +-
.../lua-nucleo.util.anim.interpolator.html | 4 +-
.../test.test-lib.generate-test-list.html | 4 +-
doc/modules/test.test-lib.import.html | 4 +-
...test.test-lib.init.no-suite-no-import.html | 4 +-
doc/modules/test.test-lib.init.no-suite.html | 4 +-
...est-lib.init.strict-import-as-require.html | 4 +-
doc/modules/test.test-lib.init.strict.html | 4 +-
doc/modules/test.test-lib.table.html | 4 +-
.../test.test-lib.tdeepequals-test-utils.html | 4 +-
.../test.test-lib.tserialize-test-utils.html | 4 +-
.../test.test-lib.value-generators.html | 4 +-
70 files changed, 1271 insertions(+), 126 deletions(-)
create mode 100644 doc/modules/lua-nucleo.datetime-utils.html
create mode 100644 doc/modules/lua-nucleo.enumerator.html
diff --git a/doc/index.html b/doc/index.html
index 9c04e381..624dcfa2 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -41,6 +41,7 @@ Modules
lua-nucleo.code.globals
lua-nucleo.code.profile
lua-nucleo.coro
+ lua-nucleo.datetime-utils
lua-nucleo.deque
lua-nucleo.diagnostics
lua-nucleo.dsl.common_load_schema
@@ -50,6 +51,7 @@ Modules
lua-nucleo.dsl.tagged-tree
lua-nucleo.dsl.walk_data_with_schema
lua-nucleo.ensure
+ lua-nucleo.enumerator
lua-nucleo.factory
lua-nucleo.functional
lua-nucleo.import
@@ -150,6 +152,10 @@ Modules
lua-nucleo.coro |
Coroutine module extensions |
+
+ lua-nucleo.datetime-utils |
+ Date and time related utilities |
+
lua-nucleo.deque |
Double-ended queue wrapper |
@@ -186,6 +192,10 @@ Modules
lua-nucleo.ensure |
Tools to ensure correct code behaviour |
+
+ lua-nucleo.enumerator |
+ Enuminator tools |
+
lua-nucleo.factory |
Factory related functions |
@@ -390,7 +400,7 @@ Modules
generated by LDoc 1.4.6
-
Last updated 2021-01-29 19:42:37
+
Last updated 2021-02-15 11:15:01
+
+
+
+
+
+
+
+
+
+
+
+
+
+
lua-nucleo
+
+
+
+
Contents
+
+
+
+
Modules
+
+
+
+
+
+
+
Module lua-nucleo.datetime-utils
+
Date and time related utilities
+
+ This file is a part of lua-nucleo library
+
Info:
+
+ - Copyright: lua-nucleo authors (see file
COPYRIGHT
for the license)
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+ make_time_table (dom, mon, y, h, m, s)
+
+ -
+ Converts function arguments to the associative array table and returns it.
+
+
+
Parameters:
+
+ - dom
+ number
+ A day of a month.
+
+ - mon
+ number
+ Month number by count.
+
+ - y
+ number
+ Year.
+
+ - h
+ number
+ Hour.
+
+ - m
+ number
+ Minute.
+
+ - s
+ number
+ Second.
+
+
+
+ Returns:
+
+
+ table
+ {
+ day = dom;
+ month = mon;
+ year = y;
+ hour = h;
+ min = m;
+ sec = s;
+ }
+
+
+
+
+
+
+ -
+
+ get_days_in_month (year, month)
+
+ -
+ Returns number of days in the given month of the given year.
+ (From http://lua-users.org/wiki/DayOfWeekAndDaysInMonthExample)
+
+
+
Parameters:
+
+ - year
+ number
+ Year.
+
+ - month
+ number
+ Month number by count.
+
+
+
+ Returns:
+
+
+ number
+ Number of days in the given month of the given year.
+
+
+
+
+
+
+ -
+
+ get_day_of_week (timestamp)
+
+ -
+ Returns a day of a week for the given timestamp.
+ (From http://richard.warburton.it)
+
+
+
Parameters:
+
+ - timestamp
+ number
+ Unix/POSIX time.
+
+
+
+ Returns:
+
+
+ number
+ Day of week, where zero is Sunday.
+
+
+
+
+
+
+ -
+
+ day_of_week_name_to_number (v)
+
+ -
+ Converts the given string to a day of a week.
+
+
+
Parameters:
+
+ - v
+ string
+ Day of week string representation.
+
+
+
+ Returns:
+
+
+ number
+ Day of week, where zero is Sunday.
+
+
+
+
+
+
+ -
+
+ month_name_to_number (v)
+
+ -
+ Converts the given string to a month number.
+
+
+
Parameters:
+
+ - v
+ string
+ Month string representation.
+
+
+
+ Returns:
+
+
+ number
+ Month number by count.
+
+
+
+
+
+
+
+
+
+
+
+
+
generated by LDoc 1.4.6
+
Last updated 2021-02-15 11:15:01
+
+
+
diff --git a/doc/modules/key_value_store.key_value_store_ophash.html b/doc/modules/key_value_store.key_value_store_ophash.html
index 3530c7c1..3ab00e8b 100644
--- a/doc/modules/key_value_store.key_value_store_ophash.html
+++ b/doc/modules/key_value_store.key_value_store_ophash.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/key_value_store.key_value_store_simple.html b/doc/modules/key_value_store.key_value_store_simple.html
index 91b3a936..6fd7155d 100644
--- a/doc/modules/key_value_store.key_value_store_simple.html
+++ b/doc/modules/key_value_store.key_value_store_simple.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/key_value_store.key_value_store_sophisticated.html b/doc/modules/key_value_store.key_value_store_sophisticated.html
index 920e0cd0..b311cf18 100644
--- a/doc/modules/key_value_store.key_value_store_sophisticated.html
+++ b/doc/modules/key_value_store.key_value_store_sophisticated.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.algorithm.html b/doc/modules/lua-nucleo.algorithm.html
index 62365443..13fc6a77 100644
--- a/doc/modules/lua-nucleo.algorithm.html
+++ b/doc/modules/lua-nucleo.algorithm.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.args.html b/doc/modules/lua-nucleo.args.html
index 0d309227..89e94d62 100644
--- a/doc/modules/lua-nucleo.args.html
+++ b/doc/modules/lua-nucleo.args.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.assert.html b/doc/modules/lua-nucleo.assert.html
index 9f4fbc47..bf5b2c57 100644
--- a/doc/modules/lua-nucleo.assert.html
+++ b/doc/modules/lua-nucleo.assert.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.checker.html b/doc/modules/lua-nucleo.checker.html
index 514c3345..312ac448 100644
--- a/doc/modules/lua-nucleo.checker.html
+++ b/doc/modules/lua-nucleo.checker.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.code.exports.html b/doc/modules/lua-nucleo.code.exports.html
index a522a5ff..d16fb6db 100644
--- a/doc/modules/lua-nucleo.code.exports.html
+++ b/doc/modules/lua-nucleo.code.exports.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.code.foreign-global.lua5_1.html b/doc/modules/lua-nucleo.code.foreign-global.lua5_1.html
index 0f63eeae..66ff2fa3 100644
--- a/doc/modules/lua-nucleo.code.foreign-global.lua5_1.html
+++ b/doc/modules/lua-nucleo.code.foreign-global.lua5_1.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.code.foreign-global.luajit2.html b/doc/modules/lua-nucleo.code.foreign-global.luajit2.html
index edc94995..98ba3572 100644
--- a/doc/modules/lua-nucleo.code.foreign-global.luajit2.html
+++ b/doc/modules/lua-nucleo.code.foreign-global.luajit2.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.code.globals.html b/doc/modules/lua-nucleo.code.globals.html
index d8979b06..18e81daa 100644
--- a/doc/modules/lua-nucleo.code.globals.html
+++ b/doc/modules/lua-nucleo.code.globals.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.code.profile.html b/doc/modules/lua-nucleo.code.profile.html
index 2eb2000d..0027d9a7 100644
--- a/doc/modules/lua-nucleo.code.profile.html
+++ b/doc/modules/lua-nucleo.code.profile.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.coro.html b/doc/modules/lua-nucleo.coro.html
index c9677a05..139e0045 100644
--- a/doc/modules/lua-nucleo.coro.html
+++ b/doc/modules/lua-nucleo.coro.html
@@ -44,6 +44,7 @@
diff --git a/doc/modules/lua-nucleo.datetime-utils.html b/doc/modules/lua-nucleo.datetime-utils.html
new file mode 100644
index 00000000..d5b44fa4
--- /dev/null
+++ b/doc/modules/lua-nucleo.datetime-utils.html
@@ -0,0 +1,336 @@
+
+
+
+