Changeset: 5c598f0e51cf for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5c598f0e51cf
Removed Files:
        monetdb5/mal/Tests/tst1201.malC
        monetdb5/mal/Tests/tst1201.stable.err
        monetdb5/mal/Tests/tst1201.stable.out
        monetdb5/mal/Tests/tst1202.malC
        monetdb5/mal/Tests/tst1202.stable.err
        monetdb5/mal/Tests/tst1202.stable.out
        monetdb5/mal/Tests/tst1203.malC
        monetdb5/mal/Tests/tst1203.stable.err
        monetdb5/mal/Tests/tst1203.stable.out
        monetdb5/mal/Tests/tst1205.malC
        monetdb5/mal/Tests/tst1205.stable.err
        monetdb5/mal/Tests/tst1205.stable.out
        monetdb5/mal/Tests/tst1225.malC
        monetdb5/mal/Tests/tst1225.stable.err
        monetdb5/mal/Tests/tst1225.stable.out
        monetdb5/modules/atoms/Tests/time00.malC
        monetdb5/modules/atoms/Tests/time00.stable.err
        monetdb5/modules/atoms/Tests/time00.stable.out
        monetdb5/modules/atoms/mtime_private.h
Modified Files:
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        clients/odbc/driver/ODBCUtil.c
        configure.ag
        gdk/gdk.h
        gdk/gdk_bbp.c
        gdk/gdk_logger.c
        gdk/gdk_logger.h
        gdk/gdk_private.h
        gdk/gdk_utils.c
        monetdb5/ChangeLog
        monetdb5/mal/Tests/All
        monetdb5/mal/Tests/tst021.malC
        monetdb5/mal/Tests/tst1200.malC
        monetdb5/mal/Tests/tst1200.stable.out
        monetdb5/mal/mal_runtime.c
        monetdb5/mal/mal_runtime.h
        monetdb5/modules/atoms/Makefile.ag
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/atoms/mtime.mal
        monetdb5/modules/atoms/mtime_analytic.c
        monetdb5/modules/kernel/Tests/time01.malC
        monetdb5/modules/kernel/Tests/time01.stable.out
        monetdb5/modules/kernel/alarm.mal
        monetdb5/modules/mal/batmtime.mal
        monetdb5/modules/mal/batmtime.mal.sh
        monetdb5/modules/mal/clients.c
        monetdb5/modules/mal/oltp.c
        monetdb5/modules/mal/sysmon.c
        monetdb5/optimizer/Tests/commonTerms.stable.out
        monetdb5/optimizer/Tests/tst4002.malC
        monetdb5/optimizer/Tests/tst4002.stable.out
        sql/backends/monet5/Tests/pyapi18.stable.out
        sql/backends/monet5/UDF/capi/capi.c
        sql/backends/monet5/UDF/pyapi/conversion.c
        sql/backends/monet5/UDF/pyapi3/Tests/pyapi3_18.stable.out
        sql/backends/monet5/generator/generator.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_bat2time.c
        sql/backends/monet5/sql_cast.c
        sql/backends/monet5/sql_datetrunc.c
        sql/backends/monet5/sql_result.c
        sql/backends/monet5/sql_result.h
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statistics.c
        sql/backends/monet5/sql_upgrades.c
        sql/backends/monet5/wlr.c
        sql/benchmarks/tpch/14.sql
        sql/benchmarks/tpch/LOCKED/Tests/01-22.stable.out.int128
        sql/benchmarks/tpch/LOCKED/Tests/14.stable.out.int128
        sql/benchmarks/tpch/Tests/01-22.stable.out.int128
        sql/benchmarks/tpch/Tests/14.stable.out.int128
        sql/common/sql_types.c
        sql/common/sql_types.h
        sql/include/sql_catalog.h
        sql/include/sql_relation.h
        sql/server/rel_optimizer.c
        sql/server/rel_schema.c
        sql/server/rel_select.c
        sql/server/sql_atom.c
        sql/server/sql_datetime.c
        sql/server/sql_datetime.h
        sql/server/sql_parser.y
        sql/server/sql_partition.c
        sql/server/sql_scan.c
        sql/storage/store.c
        sql/test/BugTracker-2008/Tests/extract_bug.SF-2075266.stable.out
        sql/test/BugTracker-2011/Tests/extract_seconds.Bug-2793.stable.out
        sql/test/BugTracker-2011/Tests/time_precision.Bug-2873.stable.out
        sql/test/BugTracker-2012/Tests/currenttime.Bug-2781.SQL.py
        
sql/test/BugTracker-2015/Tests/fractional_precision_limitation.Bug-3808.stable.out
        sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql
        
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.err
        
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.out.int128
        sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.sql
        sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err
        
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err.int128
        sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out
        
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out.int128
        
sql/test/BugTracker-2017/Tests/crash_after_oidx_on_sys_statistics.Bug-6251.stable.out
        sql/test/BugTracker-2018/Tests/pyUDF-crash.Bug-6508.stable.out
        
sql/test/BugTracker-2019/Tests/correlated-subquery-aggregation.Bug-6714.stable.out
        sql/test/BugTracker-2019/Tests/date_trunc.stable.out
        sql/test/BugTracker-2019/Tests/date_trunc_bulk.stable.out
        
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out
        sql/test/BugTracker/Tests/broken_join.SF-1373391.stable.out
        sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out
        
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out.int128
        sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128
        sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
        sql/test/emptydb/Tests/check.stable.out
        sql/test/emptydb/Tests/check.stable.out.32bit
        sql/test/emptydb/Tests/check.stable.out.int128
        sql/test/merge-partitions/Tests/mergepart13.stable.err
        sql/test/pg_regress/Tests/date.stable.err
        sql/test/pg_regress/Tests/date.stable.out
        sql/test/pg_regress/Tests/time.stable.out
        sql/test/pg_regress/Tests/timestamp.stable.err
        sql/test/pg_regress/Tests/timestamp.stable.out
        sql/test/pg_regress/Tests/timestamptz.stable.err
        sql/test/pg_regress/Tests/timestamptz.stable.out
        sql/test/snodgrass/Tests/date_parsing.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
        sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade/Tests/upgrade.stable.out
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
Branch: context
Log Message:

merged with default


diffs (truncated from 129674 to 300 lines):

diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -65,7 +65,7 @@ stdout of test 'MAL-signatures` in direc
 % .L1, .L1,    .L1,    .L1,    .L1 # table_name
 % module,      function,       signature,      address,        comment # name
 % clob,        clob,   clob,   clob,   clob # type
-% 11,  28,     364,    44,     874 # length
+% 11,  28,     364,    38,     874 # length
 [ "aggr",      "allnotequal",  "command aggr.allnotequal(l:bat[:any_1], 
r:bat[:any_1]):bit ",  "SQLallnotequal;",      "if all values in r are not 
equal to l return true, else if r has nil nil else false"   ]
 [ "aggr",      "anyequal",     "command aggr.anyequal(l:bat[:any_1], 
r:bat[:any_1]):bit ",     "SQLanyequal;", "if any value in r is equal to l 
return true, else if r has nil nil else false" ]
 [ "aggr",      "avg",  "command aggr.avg(b:bat[:bte], g:bat[:oid], 
e:bat[:any_1]):bat[:dbl] ", "AGGRavg13_dbl;",       "Grouped tail average on 
bte"   ]
@@ -521,10 +521,10 @@ stdout of test 'MAL-signatures` in direc
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:sht], 
g:bat[:oid], e:bat[:any_1]):bat[:dbl] ",   "AGGRvariancep3_dbl;",  "Grouped 
tail variance (population/biased) on sht"      ]
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:any_2]):dbl ",   
"ALGvariancep;",        "Gives the variance of all tail values" ]
 [ "alarm",     "ctime",        "unsafe command alarm.ctime():str ",    
"ALARMctime;",  "Return the current time as a C-time string."   ]
-[ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return the current time as UNIX epoch."        ]
+[ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return time since Jan 1, 1970 in seconds."     ]
 [ "alarm",     "sleep",        "unsafe command alarm.sleep(secs:int):void ",   
"ALARMsleep;",  "Sleep a few seconds"   ]
-[ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time in milliseconds."  ]
-[ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time in microseconds."  ]
+[ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time since program start in milliseconds."      ]
+[ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time since Jan 1, 1970 in microseconds."        ]
 [ "algebra",   "antijoin",     "function algebra.antijoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) 
(X_0:bat[:oid], X_1:bat[:oid]);",   "",     ""      ]
 [ "algebra",   "bandjoin",     "command algebra.bandjoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], c1:any_1, c2:any_1, li:bit, hi:bit, 
estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGbandjoin;", "Band join: 
values in l and r match if r - c1 <[=] l <[=] r + c2"       ]
 [ "algebra",   "copy", "command algebra.copy(b:bat[:any_1]):bat[:any_1] ",     
"ALGcopy;",     "Returns physical copy of a BAT."       ]
@@ -6450,11 +6450,11 @@ stdout of test 'MAL-signatures` in direc
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:sht, b:bat[:sht], 
s:bat[:oid]):bat[:bte] ",      "CMDbatCMP;",   "Return -1/0/1 if V </==/> B 
with candidates list"      ]
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:str, b:bat[:str]):bat[:bte] ",   
"CMDbatCMP;",   "Return -1/0/1 if V </==/> B"   ]
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:str, b:bat[:str], 
s:bat[:oid]):bat[:bte] ",      "CMDbatCMP;",   "Return -1/0/1 if V </==/> B 
with candidates list"      ]
-[ "batcalc",   "date", "command batcalc.date(t:bat[:timestamp]):bat[:date] ",  
"MTIMEtimestamp_extract_date_default_bulk;",    ""      ]
+[ "batcalc",   "date", "command batcalc.date(t:bat[:timestamp]):bat[:date] ",  
"MTIMEtimestamp_extract_date_bulk;",    ""      ]
 [ "batcalc",   "date", "command batcalc.date(v:bat[:oid]):bat[:date] ",        
"batnil_2_date;",       "cast to date"  ]
 [ "batcalc",   "date", "command batcalc.date(v:bat[:str]):bat[:date] ",        
"batstr_2_date;",       "cast to date"  ]
-[ "batcalc",   "daytime",      "command 
batcalc.daytime(s:bat[:lng]):bat[:daytime] ",  "MTIMEsecs2daytime_bulk;",      
""      ]
-[ "batcalc",   "daytime",      "command 
batcalc.daytime(t:bat[:timestamp]):bat[:daytime] ",    
"MTIMEtimestamp_extract_daytime_default_bulk;", ""      ]
+[ "batcalc",   "daytime",      "command 
batcalc.daytime(s:bat[:lng]):bat[:daytime] ",  
"MTIMEdaytime_fromseconds_bulk;",       ""      ]
+[ "batcalc",   "daytime",      "command 
batcalc.daytime(t:bat[:timestamp]):bat[:daytime] ",    
"MTIMEtimestamp_extract_daytime_bulk;", ""      ]
 [ "batcalc",   "daytime",      "command batcalc.daytime(v:bat[:daytime], 
digits:int):bat[:daytime] ",  "batdaytime_2time_daytime;",    "cast daytime to 
daytime and check for overflow"        ]
 [ "batcalc",   "daytime",      "command 
batcalc.daytime(v:bat[:oid]):bat[:daytime] ",  "batnil_2_daytime;",    "Cast to 
daytime"       ]
 [ "batcalc",   "daytime",      "command batcalc.daytime(v:bat[:oid], 
digits:int):bat[:daytime] ",      "batnil_2time_daytime;",        "cast to 
daytime and check for overflow"        ]
@@ -8675,9 +8675,9 @@ stdout of test 'MAL-signatures` in direc
 [ "batcalc",   "sub_noerror",  "pattern batcalc.sub_noerror(v:sht, 
b:bat[:lng], s:bat[:oid]):bat[:lng] ",      "CMDbatSUB;",   "Return V - B with 
candidates list, overflow causes NIL value"  ]
 [ "batcalc",   "sub_noerror",  "pattern batcalc.sub_noerror(v:sht, 
b:bat[:sht]):bat[:sht] ",   "CMDbatSUB;",   "Return V - B, overflow causes NIL 
value"       ]
 [ "batcalc",   "sub_noerror",  "pattern batcalc.sub_noerror(v:sht, 
b:bat[:sht], s:bat[:oid]):bat[:sht] ",      "CMDbatSUB;",   "Return V - B with 
candidates list, overflow causes NIL value"  ]
-[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(secs:bat[:int]):bat[:timestamp] ",   "MTIMEtimestamp_bulk;", 
""      ]
-[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(d:bat[:date]):bat[:timestamp] ",     
"MTIMEtimestamp_create_from_date_bulk;",        ""      ]
-[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(msecs:bat[:lng]):bat[:timestamp] ",  
"MTIMEtimestamp_lng_bulk;",     ""      ]
+[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(d:bat[:date]):bat[:timestamp] ",     
"MTIMEtimestamp_fromdate_bulk;",        ""      ]
+[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(msecs:bat[:lng]):bat[:timestamp] ",  
"MTIMEtimestamp_frommsec_bulk;",        ""      ]
+[ "batcalc",   "timestamp",    "command 
batcalc.timestamp(secs:bat[:int]):bat[:timestamp] ",   
"MTIMEtimestamp_fromsecond_bulk;",      ""      ]
 [ "batcalc",   "timestamp",    "command 
batcalc.timestamp(v:bat[:oid]):bat[:timestamp] ",      "batnil_2_timestamp;",  
"Cast to timestamp"     ]
 [ "batcalc",   "timestamp",    "command batcalc.timestamp(v:bat[:oid], 
digits:int):bat[:timestamp] ",  "batnil_2time_timestamp;",      "cast to 
timestamp and check for overflow"      ]
 [ "batcalc",   "timestamp",    "command 
batcalc.timestamp(v:bat[:str]):bat[:timestamp] ",      "batstr_2_timestamp;",  
"Cast to timestamp"     ]
@@ -8917,16 +8917,19 @@ stdout of test 'MAL-signatures` in direc
 [ "batmmath",  "tanh", "command batmmath.tanh(x:bat[:dbl], 
s:bat[:oid]):bat[:dbl] ",   "CMDscience_bat_dbl_tanh_cand;",        ""      ]
 [ "batmmath",  "tanh", "command batmmath.tanh(x:bat[:flt]):bat[:flt] ",        
"CMDscience_bat_flt_tanh;",     ""      ]
 [ "batmmath",  "tanh", "command batmmath.tanh(x:bat[:flt], 
s:bat[:oid]):bat[:flt] ",   "CMDscience_bat_flt_tanh_cand;",        ""      ]
+[ "batmtime",  "century",      "command 
batmtime.century(d:bat[:date]):bat[:int] ",    
"MTIMEdate_extract_century_bulk;",      ""      ]
 [ "batmtime",  "day",  "command batmtime.day(d:bat[:date]):bat[:int] ",        
"MTIMEdate_extract_day_bulk;",  ""      ]
+[ "batmtime",  "decade",       "command 
batmtime.decade(d:bat[:date]):bat[:int] ",     
"MTIMEdate_extract_decade_bulk;",       ""      ]
 [ "batmtime",  "diff", "command batmtime.diff(b1:bat[:date], 
b2:bat[:date]):bat[:int] ",       "MTIMEdate_diff_bulk;", "Difference of two 
sets of date."       ]
-[ "batmtime",  "diff", "command batmtime.diff(b1:bat[:timestamp], 
b2:bat[:timestamp]):bat[:lng] ",     "MTIMEtimestamp_diff_bulk;",    
"Difference of two sets of timestamp."  ]
+[ "batmtime",  "diff", "command batmtime.diff(b1:bat[:timestamp], 
b2:bat[:timestamp]):bat[:lng] ",     "MTIMEtimestamp_diff_msec_bulk;",       
"Difference of two sets of timestamp."  ]
 [ "batmtime",  "hours",        "command 
batmtime.hours(d:bat[:daytime]):bat[:int] ",   
"MTIMEdaytime_extract_hours_bulk;",     ""      ]
-[ "batmtime",  "milliseconds", "command 
batmtime.milliseconds(d:bat[:daytime]):bat[:int] ",    
"MTIMEdaytime_extract_milliseconds_bulk;",      ""      ]
 [ "batmtime",  "minutes",      "command 
batmtime.minutes(d:bat[:daytime]):bat[:int] ", 
"MTIMEdaytime_extract_minutes_bulk;",   ""      ]
 [ "batmtime",  "month",        "command batmtime.month(d:bat[:date]):bat[:int] 
",      "MTIMEdate_extract_month_bulk;",        ""      ]
 [ "batmtime",  "quarter",      "command 
batmtime.quarter(d:bat[:date]):bat[:int] ",    
"MTIMEdate_extract_quarter_bulk;",      ""      ]
-[ "batmtime",  "seconds",      "command 
batmtime.seconds(d:bat[:daytime]):bat[:int] ", 
"MTIMEdaytime_extract_seconds_bulk;",   ""      ]
 [ "batmtime",  "sql_seconds",  "command 
batmtime.sql_seconds(d:bat[:daytime]):bat[:int] ",     
"MTIMEdaytime_extract_sql_seconds_bulk;",       ""      ]
+[ "batmtime",  "sql_seconds",  "command 
batmtime.sql_seconds(d:bat[:timestamp]):bat[:int] ",   
"MTIMEtimestamp_sql_seconds_bulk;",     ""      ]
+[ "batmtime",  "timestamp_add_msec_interval",  "command 
batmtime.timestamp_add_msec_interval(t:bat[:timestamp], 
ms:bat[:lng]):bat[:timestamp] ",       
"MTIMEtimestamp_add_msec_interval_bulk;",       ""      ]
+[ "batmtime",  "timestamp_sub_msec_interval",  "command 
batmtime.timestamp_sub_msec_interval(t:bat[:timestamp], 
ms:bat[:lng]):bat[:timestamp] ",       
"MTIMEtimestamp_sub_msec_interval_bulk;",       ""      ]
 [ "batmtime",  "year", "command batmtime.year(d:bat[:date]):bat[:int] ",       
"MTIMEdate_extract_year_bulk;", ""      ]
 [ "batpcre",   "replace",      "command batpcre.replace(orig:bat[:str], 
pat:str, repl:str, flag:str):bat[:str] ",      "PCREreplace_bat_wrap;",        
""      ]
 [ "batpcre",   "replace_first",        "command 
batpcre.replace_first(orig:bat[:str], pat:str, repl:str, flag:str):bat[:str] ", 
       "PCREreplacefirst_bat_wrap;",   ""      ]
@@ -10146,13 +10149,13 @@ stdout of test 'MAL-signatures` in direc
 [ "calc",      "cmp",  "pattern calc.cmp(v1:str, v2:str):bte ",        
"CMDvarCMP;",   "Return -1/0/1 if V1 </==/> V2" ]
 [ "calc",      "date", "command calc.date(d:date):date ",      
"MTIMEdate_date;",      ""      ]
 [ "calc",      "date", "command calc.date(s:str):date ",       
"MTIMEdate_fromstr;",   ""      ]
-[ "calc",      "date", "command calc.date(t:timestamp):date ", 
"MTIMEtimestamp_extract_date_default;", ""      ]
+[ "calc",      "date", "command calc.date(t:timestamp):date ", 
"MTIMEtimestamp_extract_date;", ""      ]
 [ "calc",      "date", "command calc.date(v:void):date ",      "nil_2_date;",  
"cast to date"  ]
 [ "calc",      "date", "command calc.date(v:str):date ",       "str_2_date;",  
"cast to date"  ]
-[ "calc",      "daytime",      "command calc.daytime(d:daytime):daytime ",     
"MTIMEdaytime2daytime;",        ""      ]
+[ "calc",      "daytime",      "command calc.daytime(d:daytime):daytime ",     
"MTIMEdaytime_daytime;",        ""      ]
+[ "calc",      "daytime",      "command calc.daytime(s:lng):daytime ", 
"MTIMEdaytime_fromseconds;",    ""      ]
 [ "calc",      "daytime",      "command calc.daytime(s:str):daytime ", 
"MTIMEdaytime_fromstr;",        ""      ]
-[ "calc",      "daytime",      "command calc.daytime(s:lng):daytime ", 
"MTIMEsecs2daytime;",   ""      ]
-[ "calc",      "daytime",      "command calc.daytime(t:timestamp):daytime ",   
"MTIMEtimestamp_extract_daytime_default;",      ""      ]
+[ "calc",      "daytime",      "command calc.daytime(t:timestamp):daytime ",   
"MTIMEtimestamp_extract_daytime;",      ""      ]
 [ "calc",      "daytime",      "command calc.daytime(v:daytime, 
digits:int):daytime ", "daytime_2time_daytime;",       "cast daytime to daytime 
and check for overflow"        ]
 [ "calc",      "daytime",      "command calc.daytime(v:void):daytime ",        
"nil_2_daytime;",       "Cast to daytime"       ]
 [ "calc",      "daytime",      "command calc.daytime(v:void, 
digits:int):daytime ",    "nil_2time_daytime;",   "cast to daytime and check 
for overflow"        ]
@@ -10674,11 +10677,11 @@ stdout of test 'MAL-signatures` in direc
 [ "calc",      "sub_noerror",  "pattern calc.sub_noerror(v1:sht, v2:sht):sht 
",        "CMDvarSUB;",   "Return V1 - V2, overflow results in NIL value" ]
 [ "calc",      "substring",    "command calc.substring(s:str, offset:int, 
count:int):str ",    "STRsubstring;",        ""      ]
 [ "calc",      "substring",    "command calc.substring(s:str, offset:int):str 
",       "STRsubstringTail;",    ""      ]
-[ "calc",      "timestamp",    "command calc.timestamp(t:timestamp):timestamp 
",       "MTIMEtimestamp2timestamp;",    ""      ]
-[ "calc",      "timestamp",    "command calc.timestamp(secs:int):timestamp ",  
"MTIMEtimestamp;",      ""      ]
-[ "calc",      "timestamp",    "command calc.timestamp(d:date):timestamp ",    
"MTIMEtimestamp_create_from_date;",     ""      ]
+[ "calc",      "timestamp",    "command calc.timestamp(d:date):timestamp ",    
"MTIMEtimestamp_fromdate;",     ""      ]
+[ "calc",      "timestamp",    "command calc.timestamp(msecs:lng):timestamp ", 
"MTIMEtimestamp_frommsec;",     ""      ]
+[ "calc",      "timestamp",    "command calc.timestamp(secs:int):timestamp ",  
"MTIMEtimestamp_fromsecond;",   ""      ]
 [ "calc",      "timestamp",    "command calc.timestamp(s:str):timestamp ",     
"MTIMEtimestamp_fromstr;",      ""      ]
-[ "calc",      "timestamp",    "command calc.timestamp(msecs:lng):timestamp ", 
"MTIMEtimestamp_lng;",  ""      ]
+[ "calc",      "timestamp",    "command calc.timestamp(t:timestamp):timestamp 
",       "MTIMEtimestamp_timestamp;",    ""      ]
 [ "calc",      "timestamp",    "command calc.timestamp(v:date, 
d:int):timestamp ",     "date_2_timestamp;",    "cast date to a timestamp and 
check for overflow"       ]
 [ "calc",      "timestamp",    "command calc.timestamp(v:void):timestamp ",    
"nil_2_timestamp;",     "Cast to timestamp"     ]
 [ "calc",      "timestamp",    "command calc.timestamp(v:void, 
digits:int):timestamp ",        "nil_2time_timestamp;", "cast to timestamp and 
check for overflow"      ]
@@ -11355,109 +11358,55 @@ stdout of test 'MAL-signatures` in direc
 [ "mmath",     "tan",  "command mmath.tan(x:flt):flt ",        
"MATHunary_TANflt;",    ""      ]
 [ "mmath",     "tanh", "command mmath.tanh(x:dbl):dbl ",       
"MATHunary_TANHdbl;",   "The tanh() function returns the hyperbolic tangent of 
x, which is \n\tdefined mathematically as sinh(x) / cosh(x)."    ]
 [ "mmath",     "tanh", "command mmath.tanh(x:flt):flt ",       
"MATHunary_TANHflt;",   ""      ]
-[ "mtime",     "add",  "command mtime.add(v:timestamp, msecs:lng):timestamp ", 
"MTIMEtimestamp_add;",  "returns the timestamp that comes 'msecs'\n\t(possibly 
negative) after 'value'."        ]
-[ "mtime",     "adddays",      "command mtime.adddays(value:date, 
days:int):date ",    "MTIMEdate_adddays;",   "returns the date after a 
number\n\tof days (possibly negative)."       ]
 [ "mtime",     "addmonths",    "command mtime.addmonths(value:date, 
months:int):date ",        "MTIMEdate_addmonths;", "returns the date after a 
number of\n\tmonths (possibly negative)."     ]
-[ "mtime",     "addyears",     "command mtime.addyears(value:date, 
years:int):date ",  "MTIMEdate_addyears;",  "returns the date after a 
number\n\tof years (possibly negative)."      ]
-[ "mtime",     "compute",      "command mtime.compute(r:zrule, year:int):date 
",       "MTIMEcompute_rule_foryear;",   "compute the date from a rule in a 
given year"  ]
+[ "mtime",     "century",      "command mtime.century(d:date):int ",   
"MTIMEdate_extract_century;",   "extracts century from date."   ]
+[ "mtime",     "century",      "command mtime.century(t:timestamp):int ",      
"MTIMEtimestamp_century;",      ""      ]
 [ "mtime",     "current_date", "command mtime.current_date():date ",   
"MTIMEcurrent_date;",   ""      ]
 [ "mtime",     "current_time", "command mtime.current_time():daytime ",        
"MTIMEcurrent_time;",   ""      ]
 [ "mtime",     "current_timestamp",    "command 
mtime.current_timestamp():timestamp ", "MTIMEcurrent_timestamp;",      ""      ]
-[ "mtime",     "date", "command mtime.date(X_0:date):date ",   
"MTIMEdate2date;",      "generate the nil date" ]
-[ "mtime",     "date", "command mtime.date(yr:int, mo:int, day:int):date ",    
"MTIMEdate_create;",    "creates a date from (year,month,day)." ]
-[ "mtime",     "date", "command mtime.date(s:str):date ",      
"MTIMEdate_fromstr;",   "convert the string to a type date value"       ]
-[ "mtime",     "date", "command mtime.date(X_0:void):date ",   
"MTIMEnil2date;",       "generate the nil date" ]
-[ "mtime",     "date", "command mtime.date(t:timestamp, v:timezone):date ",    
"MTIMEtimestamp_extract_date;", "extracts date from timestamp in a\n\tspecific 
timezone."       ]
-[ "mtime",     "date", "command mtime.date(t:timestamp):date ",        
"MTIMEtimestamp_extract_date_default;", "extracts date from timestamp\n\tin the 
local timezone."        ]
-[ "mtime",     "date_add_month_interval",      "command 
mtime.date_add_month_interval(t:date, s:int):date ",   "MTIMEdate_addmonths;", 
"Add months to a date"  ]
-[ "mtime",     "date_add_msec_interval",       "command 
mtime.date_add_msec_interval(t:date, ms:lng):date ",   
"MTIMEdate_add_msec_interval_lng_wrap;",        ""      ]
-[ "mtime",     "date_add_sec_interval",        "command 
mtime.date_add_sec_interval(t:date, s:int):date ",     
"MTIMEdate_add_sec_interval_wrap;",     "Add seconds to a date" ]
+[ "mtime",     "date_add_msec_interval",       "command 
mtime.date_add_msec_interval(t:date, ms:lng):date ",   
"MTIMEdate_add_msec_interval;", ""      ]
 [ "mtime",     "date_sub_month_interval",      "command 
mtime.date_sub_month_interval(t:date, s:int):date ",   "MTIMEdate_submonths;", 
"Subtract months from a date"   ]
-[ "mtime",     "date_sub_msec_interval",       "command 
mtime.date_sub_msec_interval(t:date, ms:lng):date ",   
"MTIMEdate_sub_msec_interval_lng_wrap;",        ""      ]
-[ "mtime",     "date_sub_sec_interval",        "command 
mtime.date_sub_sec_interval(t:date, s:int):date ",     
"MTIMEdate_sub_sec_interval_wrap;",     "Subtract seconds from a date"  ]
+[ "mtime",     "date_sub_msec_interval",       "command 
mtime.date_sub_msec_interval(t:date, ms:lng):date ",   
"MTIMEdate_sub_msec_interval;", ""      ]
 [ "mtime",     "date_to_str",  "command mtime.date_to_str(d:date, 
format:str):str ",   "MTIMEdate_to_str;",    "create a string from the date, 
using the specified format (see man strftime)"  ]
 [ "mtime",     "day",  "command mtime.day(d:date):int ",       
"MTIMEdate_extract_day;",       "extracts day from date "       ]
-[ "mtime",     "day",  "command mtime.day(t:zrule):int ",      
"MTIMErule_extract_day;",       "extract day from rule."        ]
 [ "mtime",     "day",  "command mtime.day(msecs:lng):lng ",    
"MTIMEsql_day;",        ""      ]
 [ "mtime",     "day",  "command mtime.day(t:timestamp):int ",  
"MTIMEtimestamp_day;",  ""      ]
-[ "mtime",     "dayname",      "command mtime.dayname(day:int):str ",  
"MTIMEday_to_str;",     "Returns day name from a number\n\tbetween [1-7], 
str(nil) otherwise."  ]
-[ "mtime",     "daynum",       "command mtime.daynum(day:str):int ",   
"MTIMEday_from_str;",   "Returns number of day [1-7] from a\n\tstring or nil if 
does not match any."    ]
 [ "mtime",     "dayofweek",    "command mtime.dayofweek(d:date):int ", 
"MTIMEdate_extract_dayofweek;", "Returns the current day of the week\n\twhere 
1=monday, .., 7=sunday"   ]
 [ "mtime",     "dayofyear",    "command mtime.dayofyear(d:date):int ", 
"MTIMEdate_extract_dayofyear;", "Returns N where d is the Nth day\n\tof the 
year (january 1 returns 1)" ]
-[ "mtime",     "daytime",      "command mtime.daytime(h:int):daytime ",        
"MTIMEdaytime1;",       "default time with zeroed components"   ]
-[ "mtime",     "daytime",      "command mtime.daytime(h:int, m:int):daytime ", 
"MTIMEdaytime2;",       "default time with zeroed components"   ]
-[ "mtime",     "daytime",      "command mtime.daytime(X_0:daytime):daytime ",  
"MTIMEdaytime2daytime;",        ""      ]
-[ "mtime",     "daytime",      "command mtime.daytime(h:int, m:int, 
s:int):daytime ",  "MTIMEdaytime3;",       "default time with zeroed 
components"   ]
-[ "mtime",     "daytime",      "command mtime.daytime(h:int, m:int, s:int, 
mi:int):daytime ",  "MTIMEdaytime_create;", "creates a time from 
(hours,minutes,\n\tseconds,milliseconds) parameters."      ]
-[ "mtime",     "daytime",      "command mtime.daytime(s:str):daytime ",        
"MTIMEdaytime_fromstr;",        "convert the string to a daytime value."        
]
-[ "mtime",     "daytime",      "command mtime.daytime(X_0:lng):daytime ",      
"MTIMEsecs2daytime;",   ""      ]
-[ "mtime",     "daytime",      "command mtime.daytime(t:timestamp, 
v:timezone):daytime ",      "MTIMEtimestamp_extract_daytime;",      "extracts 
daytime from timestamp\n\tin a specific timezone."    ]
-[ "mtime",     "daytime",      "command mtime.daytime(t:timestamp):daytime ",  
"MTIMEtimestamp_extract_daytime_default;",      "extracts daytime from 
timestamp\n\tin the local timezone."     ]
+[ "mtime",     "decade",       "command mtime.decade(d:date):int ",    
"MTIMEdate_extract_decade;",    "extracts decade from date."    ]
+[ "mtime",     "decade",       "command mtime.decade(t:timestamp):int ",       
"MTIMEtimestamp_decade;",       ""      ]
 [ "mtime",     "diff", "command mtime.diff(val1:date, val2:date):int ",        
"MTIMEdate_diff;",      "returns the number of days\n\tbetween 'val1' and 
'val2'."      ]
-[ "mtime",     "diff", "command mtime.diff(val1:daytime, val2:daytime):lng ",  
"MTIMEdaytime_diff;",   "returns the number of msec between 'val1' and 'val2'." 
]
-[ "mtime",     "diff", "command mtime.diff(val1:timestamp, val2:timestamp):lng 
",      "MTIMEtimestamp_diff;", "returns the number of milliseconds\n\tbetween 
'val1' and 'val2'."      ]
-[ "mtime",     "dst",  "command mtime.dst(t:timestamp, v:timezone):bit ",      
"MTIMEtimestamp_inside_dst;",   "return whether DST holds in the\n\ttimezone at 
a certain point of time."       ]
-[ "mtime",     "end_dst",      "command mtime.end_dst(t:timezone):zrule ",     
"MTIMEtzone_extract_end;",      "extract rule that determines\n\tend of DST 
from timezone."     ]
-[ "mtime",     "epilogue",     "command mtime.epilogue():void ",       
"MTIMEepilogue;",       ""      ]
+[ "mtime",     "diff", "command mtime.diff(val1:daytime, val2:daytime):lng ",  
"MTIMEdaytime_diff_msec;",      "returns the number of msec between 'val1' and 
'val2'." ]
+[ "mtime",     "diff", "command mtime.diff(val1:timestamp, val2:timestamp):lng 
",      "MTIMEtimestamp_diff_msec;",    "returns the number of 
milliseconds\n\tbetween 'val1' and 'val2'."      ]
 [ "mtime",     "hours",        "command mtime.hours(h:daytime):int ",  
"MTIMEdaytime_extract_hours;",  "extracts hour from daytime"    ]
 [ "mtime",     "hours",        "command mtime.hours(msecs:lng):int ",  
"MTIMEsql_hours;",      ""      ]
 [ "mtime",     "hours",        "command mtime.hours(t:timestamp):int ",        
"MTIMEtimestamp_hours;",        ""      ]
-[ "mtime",     "local_timezone",       "command mtime.local_timezone():lng ",  
"MTIMElocal_timezone;", "get the local timezone in seconds"     ]
-[ "mtime",     "milliseconds", "command mtime.milliseconds(d:daytime):int ",   
"MTIMEdaytime_extract_milliseconds;",   "extracts milliseconds from daytime"    
]
-[ "mtime",     "milliseconds", "command mtime.milliseconds(t:timestamp):int ", 
"MTIMEtimestamp_milliseconds;", ""      ]
+[ "mtime",     "local_timezone",       "command mtime.local_timezone():lng ",  
"MTIMElocal_timezone_msec;",    "get the local timezone in seconds"     ]
 [ "mtime",     "minutes",      "command mtime.minutes(d:daytime):int ",        
"MTIMEdaytime_extract_minutes;",        "extracts minutes from daytime" ]
-[ "mtime",     "minutes",      "command mtime.minutes(t:zrule):int ",  
"MTIMErule_extract_minutes;",   "extract minutes from rule."    ]
 [ "mtime",     "minutes",      "command mtime.minutes(msecs:lng):int ",        
"MTIMEsql_minutes;",    ""      ]
 [ "mtime",     "minutes",      "command mtime.minutes(t:timestamp):int ",      
"MTIMEtimestamp_minutes;",      ""      ]
-[ "mtime",     "minutes",      "command mtime.minutes(t:timezone):int ",       
"MTIMEtzone_extract_minutes;",  "extract number of minutes that\n\ttime zone is 
offset wrt GMT."        ]
 [ "mtime",     "month",        "command mtime.month(d:date):int ",     
"MTIMEdate_extract_month;",     "extracts month from date"      ]
-[ "mtime",     "month",        "command mtime.month(t:zrule):int ",    
"MTIMErule_extract_month;",     "extract month from rule."      ]
 [ "mtime",     "month",        "command mtime.month(months:int):int ", 
"MTIMEsql_month;",      ""      ]
 [ "mtime",     "month",        "command mtime.month(t:timestamp):int ",        
"MTIMEtimestamp_month;",        ""      ]
-[ "mtime",     "monthname",    "command mtime.monthname(month:int):str ",      
"MTIMEmonth_to_str;",   "Returns month name from a number\n\tbetween [1-12], 
str(nil) otherwise."       ]
-[ "mtime",     "monthnum",     "command mtime.monthnum(month:str):int ",       
"MTIMEmonth_from_str;", "Returns month number [1-12] from a string\n\t or nil 
if does not match any."   ]
-[ "mtime",     "msec", "unsafe command mtime.msec():lng ",     "MTIMEmsec;",   
"get time of day in msec since 1-1-1970."       ]
-[ "mtime",     "msecs",        "command mtime.msecs(d:int, h:int, m:int, 
s:int, ms:int):lng ", "MTIMEmsecs;",  "convert date components to milliseconds" 
      ]
 [ "mtime",     "prelude",      "command mtime.prelude():void ",        
"MTIMEprelude;",        ""      ]
 [ "mtime",     "quarter",      "command mtime.quarter(d:date):int ",   
"MTIMEdate_extract_quarter;",   "extracts quarter from date"    ]
 [ "mtime",     "quarter",      "command mtime.quarter(t:timestamp):int ",      
"MTIMEtimestamp_quarter;",      ""      ]
-[ "mtime",     "rule", "command mtime.rule(mo:int, d:int, wkday:int, 
mi:int):zrule ",  "MTIMErule_create;",    "create a DST start/end date rule."   
  ]
-[ "mtime",     "rule", "command mtime.rule(s:str):zrule ",     
"MTIMErule_fromstr;",   "create a rule from a  string." ]
-[ "mtime",     "seconds",      "command mtime.seconds(d:daytime):int ",        
"MTIMEdaytime_extract_seconds;",        "extracts seconds from daytime" ]
 [ "mtime",     "seconds",      "command mtime.seconds(msecs:lng):int ",        
"MTIMEsql_seconds;",    ""      ]
-[ "mtime",     "seconds",      "command mtime.seconds(t:timestamp):int ",      
"MTIMEtimestamp_seconds;",      ""      ]
-[ "mtime",     "setTimezone",  "command mtime.setTimezone(name:str):timezone 
",        "MTIMEtimezone;",       "Test and set the timezone."    ]
 [ "mtime",     "sql_seconds",  "command mtime.sql_seconds(d:daytime):int ",    
"MTIMEdaytime_extract_sql_seconds;",    "extracts seconds (with fractional 
milliseconds) from daytime"  ]
 [ "mtime",     "sql_seconds",  "command mtime.sql_seconds(t:timestamp):int ",  
"MTIMEtimestamp_sql_seconds;",  ""      ]
-[ "mtime",     "start_dst",    "command mtime.start_dst(t:timezone):zrule ",   
"MTIMEtzone_extract_start;",    "extract rule that determines\n\tstart of DST 
from timezone."   ]
 [ "mtime",     "str_to_date",  "command mtime.str_to_date(s:str, 
format:str):date ",   "MTIMEstr_to_date;",    "create a date from the string, 
using the specified format (see man strptime)"  ]
 [ "mtime",     "str_to_time",  "command mtime.str_to_time(s:str, 
format:str):daytime ",        "MTIMEstr_to_time;",    "create a time from the 
string, using the specified format (see man strptime)"  ]
 [ "mtime",     "str_to_timestamp",     "command mtime.str_to_timestamp(s:str, 
format:str):timestamp ", "MTIMEstr_to_timestamp;",       "create a timestamp 
from the string, using the specified format (see man strptime)"     ]
-[ "mtime",     "time_add_msec_interval",       "command 
mtime.time_add_msec_interval(t:daytime, ms:lng):daytime ",     
"MTIMEtime_add_msec_interval_wrap;",    "Add seconds to a time" ]
-[ "mtime",     "time_sub_msec_interval",       "command 
mtime.time_sub_msec_interval(t:daytime, ms:lng):daytime ",     
"MTIMEtime_sub_msec_interval_wrap;",    "Subtract seconds from a time"  ]
-[ "mtime",     "time_synonyms",        "command 
mtime.time_synonyms(allow:bit):void ", "MTIMEsynonyms;",       "Allow synonyms 
for the parse format of\n\tdate/timestamp."     ]
+[ "mtime",     "time_add_msec_interval",       "command 
mtime.time_add_msec_interval(t:daytime, ms:lng):daytime ",     
"MTIMEtime_add_msec_interval;", "Add seconds to a time" ]
+[ "mtime",     "time_sub_msec_interval",       "command 
mtime.time_sub_msec_interval(t:daytime, ms:lng):daytime ",     
"MTIMEtime_sub_msec_interval;", "Subtract seconds from a time"  ]
 [ "mtime",     "time_to_str",  "command mtime.time_to_str(d:daytime, 
format:str):str ",        "MTIMEtime_to_str;",    "create a string from the 
time, using the specified format (see man strftime)"  ]
-[ "mtime",     "timestamp",    "command mtime.timestamp(t:timestamp):timestamp 
",      "MTIMEtimestamp2timestamp;",    ""      ]
-[ "mtime",     "timestamp",    "command mtime.timestamp(d:date, dt:daytime, 
t:timezone):timestamp ",   "MTIMEtimestamp_create;",       "creates a timestamp 
from (date, daytime,timezone) parameters." ]
-[ "mtime",     "timestamp",    "command mtime.timestamp(d:date, 
dt:daytime):timestamp ",       "MTIMEtimestamp_create_default;",       "creates 
a timestamp from (d,dt) parameters (in the local timezone)."   ]
-[ "mtime",     "timestamp",    "command mtime.timestamp(d:date):timestamp ",   
"MTIMEtimestamp_create_from_date;",     "creates a timestamp from (d,00:00:00) 
parameters (in the local timezone)."     ]
-[ "mtime",     "timestamp_add_month_interval", "command 
mtime.timestamp_add_month_interval(t:timestamp, s:lng):timestamp ",    
"MTIMEtimestamp_add_month_interval_lng_wrap;",  "Add months to a timestamp"     
]
-[ "mtime",     "timestamp_add_month_interval", "command 
mtime.timestamp_add_month_interval(t:timestamp, s:int):timestamp ",    
"MTIMEtimestamp_add_month_interval_wrap;",      "Add months to a timestamp"     
]
-[ "mtime",     "timestamp_add_msec_interval",  "command 
mtime.timestamp_add_msec_interval(t:timestamp, ms:lng):timestamp ",    
"MTIMEtimestamp_add;",  ""      ]
-[ "mtime",     "timestamp_sub_month_interval", "command 
mtime.timestamp_sub_month_interval(t:timestamp, s:lng):timestamp ",    
"MTIMEtimestamp_sub_month_interval_lng_wrap;",  "Subtract months from a 
timestamp"      ]
-[ "mtime",     "timestamp_sub_month_interval", "command 
mtime.timestamp_sub_month_interval(t:timestamp, s:int):timestamp ",    
"MTIMEtimestamp_sub_month_interval_wrap;",      "Subtract months from a 
timestamp"      ]
-[ "mtime",     "timestamp_sub_msec_interval",  "command 
mtime.timestamp_sub_msec_interval(t:timestamp, ms:lng):timestamp ",    
"MTIMEtimestamp_sub_msec_interval_lng_wrap;",   ""      ]
+[ "mtime",     "timestamp_add_month_interval", "command 
mtime.timestamp_add_month_interval(t:timestamp, s:int):timestamp ",    
"MTIMEtimestamp_add_month_interval;",   "Add months to a timestamp"     ]
+[ "mtime",     "timestamp_add_msec_interval",  "command 
mtime.timestamp_add_msec_interval(t:timestamp, ms:lng):timestamp ",    
"MTIMEtimestamp_add_msec_interval;",    ""      ]
+[ "mtime",     "timestamp_sub_month_interval", "command 
mtime.timestamp_sub_month_interval(t:timestamp, s:int):timestamp ",    
"MTIMEtimestamp_sub_month_interval;",   "Subtract months from a timestamp"      
]
+[ "mtime",     "timestamp_sub_msec_interval",  "command 
mtime.timestamp_sub_msec_interval(t:timestamp, ms:lng):timestamp ",    
"MTIMEtimestamp_sub_msec_interval;",    ""      ]
 [ "mtime",     "timestamp_to_str",     "command 
mtime.timestamp_to_str(d:timestamp, format:str):str ", 
"MTIMEtimestamp_to_str;",       "create a string from the time, using the 
specified format (see man strftime)"  ]
-[ "mtime",     "timezone",     "command mtime.timezone(s:int):timezone ",      
"MTIMEtzone_create;",   "Convert the int to a timezone."        ]
-[ "mtime",     "timezone",     "command mtime.timezone(mi:int, s:zrule, 
erule:zrule):timezone ",       "MTIMEtzone_create_dst;",       "create a 
timezone as an hour difference\n\tfrom GMT and a DST."        ]
-[ "mtime",     "timezone",     "command mtime.timezone(s:lng):timezone ",      
"MTIMEtzone_create_lng;",       "Convert the int to a timezone."        ]
-[ "mtime",     "timezone",     "command mtime.timezone(s:str):timezone ",      
"MTIMEtzone_fromstr;",  "Convert the string to a timezone."     ]
-[ "mtime",     "timezone_local",       "command 
mtime.timezone_local():timezone ",     "MTIMEtzone_get_local;",        "get the 
local timezone; which is used for printing timestamps" ]
-[ "mtime",     "timezone_local",       "command 
mtime.timezone_local(t:timezone):void ",       "MTIMEtzone_set_local;",        
"set the local timezone; which is used for printing timestamps" ]
-[ "mtime",     "week", "command mtime.week(d:date):int ",      
"MTIMEdate_extract_weekofyear;",        "Returns the week number in the year."  
]
-[ "mtime",     "weekday",      "command mtime.weekday(t:zrule):int ",  
"MTIMErule_extract_weekday;",   "extract weekday from rule."    ]
 [ "mtime",     "weekofyear",   "command mtime.weekofyear(d:date):int ",        
"MTIMEdate_extract_weekofyear;",        "Returns the week number in the year."  
]
-[ "mtime",     "year", "command mtime.year(d:date):int ",      
"MTIMEdate_extract_year;",      "extracts year from date (nonzero\n\tvalue 
between -5867411 and +5867411)."     ]
+[ "mtime",     "year", "command mtime.year(d:date):int ",      
"MTIMEdate_extract_year;",      "extracts year from date."      ]
 [ "mtime",     "year", "command mtime.year(months:int):int ",  
"MTIMEsql_year;",       ""      ]
 [ "mtime",     "year", "command mtime.year(t:timestamp):int ", 
"MTIMEtimestamp_year;", ""      ]
 [ "netcdf",    "attach",       "pattern netcdf.attach(filename:str):void ",    
"NCDFattach;",  "Register a NetCDF file in the vault"   ]
@@ -11973,17 +11922,10 @@ stdout of test 'MAL-signatures` in direc
 [ "timestamp", "==",   "pattern timestamp.==(v:timestamp, w:timestamp, 
nil_matches:bit):bit ", "CMDvarEQ;",    "Equality of two timestamps"    ]
 [ "timestamp", ">",    "pattern timestamp.>(v:timestamp, w:timestamp):bit ",   
"CMDvarGT;",    "Equality of two timestamps"    ]
 [ "timestamp", ">=",   "pattern timestamp.>=(v:timestamp, w:timestamp):bit ",  
"CMDvarGE;",    "Equality of two timestamps"    ]
-[ "timestamp", "epoch",        "unsafe command timestamp.epoch():timestamp ",  
"MTIMEcurrent_timestamp;",      "unix-time (epoch) support: seconds since the 
Unix epoch"       ]
-[ "timestamp", "epoch",        "command timestamp.epoch(t:timestamp):int ",    
"MTIMEepoch2int;",      "unix-time (epoch) support: seconds since epoch"        
]
-[ "timestamp", "epoch",        "command timestamp.epoch(t:int):timestamp ",    
"MTIMEtimestamp;",      "convert seconds since epoch into a timestamp"  ]
-[ "timestamp", "epoch",        "command timestamp.epoch(t:lng):timestamp ",    
"MTIMEtimestamplng;",   "convert milli seconds since epoch into a timestamp"    
]
+[ "timestamp", "epoch",        "command timestamp.epoch(t:timestamp):int ",    
"MTIMEseconds_since_epoch;",    "unix-time (epoch) support: seconds since 
epoch"        ]
+[ "timestamp", "epoch",        "command timestamp.epoch(t:lng):timestamp ",    
"MTIMEtimestamp_frommsec;",     "convert milli seconds since epoch into a 
timestamp"    ]
+[ "timestamp", "epoch",        "command timestamp.epoch(t:int):timestamp ",    
"MTIMEtimestamp_fromsecond;",   "convert seconds since epoch into a timestamp"  
]
 [ "timestamp", "isnil",        "pattern timestamp.isnil(v:timestamp):bit ",    
"CMDvarISNIL;", "Nil test for timestamp value"  ]
-[ "timestamp", "unix_epoch",   "unsafe command 
timestamp.unix_epoch():timestamp ",     "MTIMEunix_epoch;",     "The Unix epoch 
time (00:00:00 UTC on January 1, 1970)" ]
-[ "timezone",  "#fromstr",     "command timezone.#fromstr():void ",    
"tzone_fromstr;",       ""      ]
-[ "timezone",  "#tostr",       "command timezone.#tostr():void ",      
"tzone_tostr;", ""      ]
-[ "timezone",  "str",  "command timezone.str(z:timezone):str ",        
"MTIMEtzone_tostr;",    ""      ]
-[ "timezone",  "timestamp",    "command timezone.timestamp(secs:int):timestamp 
",      "MTIMEtimestamp;",      "Utility function to create a timestamp from a 
number of seconds since the Unix epoch"  ]
-[ "timezone",  "timestamp",    "command timezone.timestamp(s:str):timestamp ", 
"MTIMEtimestamp_fromstr;",      ""      ]
 [ "tokenizer", "append",       "command tokenizer.append(u:str):oid ", 
"TKNZRappend;", "tokenize a new string and append it to the tokenizer 
(duplicate elimination is performed)"     ]
 [ "tokenizer", "close",        "command tokenizer.close():void ",      
"TKNZRclose;",  "close the current tokenizer store"     ]
 [ "tokenizer", "depositFile",  "command tokenizer.depositFile(fnme:str):void 
",        "TKNZRdepositFile;",    "batch insertion from a file of strings to 
tokenize, each string is separated by a new line"    ]
@@ -12219,11 +12161,6 @@ stdout of test 'MAL-signatures` in direc
 [ "xml",       "subaggr",      "command xml.subaggr(val:bat[:xml], 
g:bat[:oid], e:bat[:any_1], s:bat[:oid], skip_nils:bit):bat[:xml] ",        
"AGGRsubxmlcand;",      "Grouped aggregation of XML values with candidates 
list."       ]
 [ "xml",       "text", "command xml.text(src:xml):str ",       "XMLxmltext;",  
"Extract text from an xml atom" ]
 [ "xml",       "xml",  "command xml.xml(src:str):xml ",        "XMLstr2xml;",  
"Cast the string to an xml compliant string"    ]
-[ "zrule",     "#fromstr",     "command zrule.#fromstr():void ",       
"rule_fromstr;",        ""      ]
-[ "zrule",     "#tostr",       "command zrule.#tostr():void ", "rule_tostr;",  
""      ]
-[ "zrule",     "define",       "command zrule.define(m:int, d:int, w:int, 
h:int, min:int):zrule ",     "MTIMEruleDef0;",       "Introduce a synomym 
timezone rule."    ]
-[ "zrule",     "define",       "command zrule.define(m:int, d:str, w:int, 
h:int, min:int):zrule ",     "MTIMEruleDef1;",       "Introduce a synomym 
timezone rule."    ]
-[ "zrule",     "define",       "command zrule.define(m:int, d:str, w:int, 
min:int):zrule ",    "MTIMEruleDef2;",       "Introduce a synomym timezone 
rule."    ]
 
 # 14:47:14 >  
 # 14:47:14 >  "Done."
diff --git a/clients/Tests/MAL-signatures.stable.out.int128 
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -69,7 +69,7 @@ stdout of test 'MAL-signatures` in direc
 % .L1, .L1,    .L1,    .L1,    .L1 # table_name
 % module,      function,       signature,      address,        comment # name
 % clob,        clob,   clob,   clob,   clob # type
-% 11,  28,     364,    44,     874 # length
+% 11,  28,     364,    38,     874 # length
 [ "aggr",      "allnotequal",  "command aggr.allnotequal(l:bat[:any_1], 
r:bat[:any_1]):bit ",  "SQLallnotequal;",      "if all values in r are not 
equal to l return true, else if r has nil nil else false"   ]
 [ "aggr",      "anyequal",     "command aggr.anyequal(l:bat[:any_1], 
r:bat[:any_1]):bit ",     "SQLanyequal;", "if any value in r is equal to l 
return true, else if r has nil nil else false" ]
 [ "aggr",      "avg",  "command aggr.avg(b:bat[:bte], g:bat[:oid], 
e:bat[:any_1]):bat[:dbl] ", "AGGRavg13_dbl;",       "Grouped tail average on 
bte"   ]
@@ -625,10 +625,10 @@ stdout of test 'MAL-signatures` in direc
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:sht], 
g:bat[:oid], e:bat[:any_1]):bat[:dbl] ",   "AGGRvariancep3_dbl;",  "Grouped 
tail variance (population/biased) on sht"      ]
 [ "aggr",      "variancep",    "command aggr.variancep(b:bat[:any_2]):dbl ",   
"ALGvariancep;",        "Gives the variance of all tail values" ]
 [ "alarm",     "ctime",        "unsafe command alarm.ctime():str ",    
"ALARMctime;",  "Return the current time as a C-time string."   ]
-[ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return the current time as UNIX epoch."        ]
+[ "alarm",     "epoch",        "unsafe command alarm.epoch():int ",    
"ALARMepoch;",  "Return time since Jan 1, 1970 in seconds."     ]
 [ "alarm",     "sleep",        "unsafe command alarm.sleep(secs:int):void ",   
"ALARMsleep;",  "Sleep a few seconds"   ]
-[ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time in milliseconds."  ]
-[ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time in microseconds."  ]
+[ "alarm",     "time", "unsafe command alarm.time():int ",     "ALARMtime;",   
"Return time since program start in milliseconds."      ]
+[ "alarm",     "usec", "unsafe command alarm.usec():lng ",     "ALARMusec;",   
"Return time since Jan 1, 1970 in microseconds."        ]
 [ "algebra",   "antijoin",     "function algebra.antijoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], nil_matches:bit, estimate:lng) 
(X_0:bat[:oid], X_1:bat[:oid]);",   "",     ""      ]
 [ "algebra",   "bandjoin",     "command algebra.bandjoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], c1:any_1, c2:any_1, li:bit, hi:bit, 
estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ", "ALGbandjoin;", "Band join: 
values in l and r match if r - c1 <[=] l <[=] r + c2"       ]
 [ "algebra",   "copy", "command algebra.copy(b:bat[:any_1]):bat[:any_1] ",     
"ALGcopy;",     "Returns physical copy of a BAT."       ]
@@ -9081,11 +9081,11 @@ stdout of test 'MAL-signatures` in direc
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:sht, b:bat[:sht], 
s:bat[:oid]):bat[:bte] ",      "CMDbatCMP;",   "Return -1/0/1 if V </==/> B 
with candidates list"      ]
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:str, b:bat[:str]):bat[:bte] ",   
"CMDbatCMP;",   "Return -1/0/1 if V </==/> B"   ]
 [ "batcalc",   "cmp",  "pattern batcalc.cmp(v:str, b:bat[:str], 
s:bat[:oid]):bat[:bte] ",      "CMDbatCMP;",   "Return -1/0/1 if V </==/> B 
with candidates list"      ]
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to