Hallo,
mit der aktuellen Version von weekprofile erhält man beim Start diese Prototype mismatch Meldungen:
2021.02.20 18:18:42.610 1: PERL WARNING: Prototype mismatch: sub main::min ($@) vs (@) at /usr/share/perl/5.28/Exporter.pm line 66, <$fh> line 7038.
2021.02.20 18:18:42.610 1: stacktrace:
2021.02.20 18:18:42.610 1: main::__ANON__ called by /usr/share/perl/5.28/Exporter.pm (66)
2021.02.20 18:18:42.610 1: Exporter::import called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.610 1: main::BEGIN called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.610 1: (eval) called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.611 1: (eval) called by fhem.pl (2657)
2021.02.20 18:18:42.611 1: (eval) called by fhem.pl (2656)
2021.02.20 18:18:42.611 1: main::CommandReload called by fhem.pl (2030)
2021.02.20 18:18:42.611 1: main::LoadModule called by fhem.pl (2087)
2021.02.20 18:18:42.611 1: main::CommandDefine called by fhem.pl (1259)
2021.02.20 18:18:42.611 1: main::AnalyzeCommand called by fhem.pl (1110)
2021.02.20 18:18:42.611 1: main::AnalyzeCommandChain called by fhem.pl (1397)
2021.02.20 18:18:42.611 1: main::CommandInclude called by fhem.pl (613)
2021.02.20 18:18:42.611 1: PERL WARNING: Prototype mismatch: sub main::max ($@) vs (@) at /usr/share/perl/5.28/Exporter.pm line 66, <$fh> line 7038.
2021.02.20 18:18:42.612 1: stacktrace:
2021.02.20 18:18:42.612 1: main::__ANON__ called by /usr/share/perl/5.28/Exporter.pm (66)
2021.02.20 18:18:42.612 1: Exporter::import called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.612 1: main::BEGIN called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.612 1: (eval) called by ./FHEM/98_weekprofile.pm (18)
2021.02.20 18:18:42.612 1: (eval) called by fhem.pl (2657)
2021.02.20 18:18:42.612 1: (eval) called by fhem.pl (2656)
2021.02.20 18:18:42.612 1: main::CommandReload called by fhem.pl (2030)
2021.02.20 18:18:42.612 1: main::LoadModule called by fhem.pl (2087)
2021.02.20 18:18:42.612 1: main::CommandDefine called by fhem.pl (1259)
2021.02.20 18:18:42.612 1: main::AnalyzeCommand called by fhem.pl (1110)
2021.02.20 18:18:42.612 1: main::AnalyzeCommandChain called by fhem.pl (1397)
2021.02.20 18:18:42.613 1: main::CommandInclude called by fhem.pl (613)
Vermutlich liegt es daran dass
use List::Util qw[min max];
eingebunden ist, was mit den subs min/max aus 99_Utils.pm kollidiert. Ein auskommentieren von "use List::Util qw[min max];" löst das Problem.
Außerdem gibt es noch diese Mitteilung:
Too many arguments for main::weekprofile_createTempMap at ./FHEM/98_weekprofile.pm line 1388, near "$attrVal)"
In Zeile 1388 wird
weekprofile_createTempMap($hash, $attrVal);
aufgerufen. Die Funktion erwartet aber nur ein Argument (Zeile 1393):
sub weekprofile_createTempMap($) {
..
}
Die sub so geändert -> "sub weekprofile_createTempMap($;$)" -> löst das dann auch.
Grüße,
Heiko
In nicht gepackagten Modulen sollte eher minNum() statt min() aus 99_Utils.pmverwendet werden...
Ja, noch besser.