99_Utils.pm und 99_myUtils.pm im FHEM-Verzeichnis (redefined im StartLog)

Begonnen von Phlox, 24 Mai 2021, 20:09:44

Vorheriges Thema - Nächstes Thema

Phlox

Hallo,
ich ziehe gerade von wheezy nach buster. Es läuft mittlerweile alles ziemlich gut. Nur letztens ist mir im StartLog folgendes aufgefallen:
2021.05.24 17:07:22 1: PERL WARNING: Subroutine time_str2num redefined at ./FHEM/99_myUtils.pm line 18.
2021.05.24 17:07:22 1: PERL WARNING: Prototype mismatch: sub main::min (@) vs ($@) at ./FHEM/99_myUtils.pm line 68.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine min redefined at ./FHEM/99_myUtils.pm line 62.
2021.05.24 17:07:22 1: PERL WARNING: Prototype mismatch: sub main::max (@) vs ($@) at ./FHEM/99_myUtils.pm line 77.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine max redefined at ./FHEM/99_myUtils.pm line 71.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine minNum redefined at ./FHEM/99_myUtils.pm line 80.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine maxNum redefined at ./FHEM/99_myUtils.pm line 89.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine abstime2rel redefined at ./FHEM/99_myUtils.pm line 99.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine defInfo redefined at ./FHEM/99_myUtils.pm line 114.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine SVG_time_to_sec redefined at ./FHEM/99_myUtils.pm line 128.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine trim redefined at ./FHEM/99_myUtils.pm line 154.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine ltrim redefined at ./FHEM/99_myUtils.pm line 167.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine rtrim redefined at ./FHEM/99_myUtils.pm line 179.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine UntoggleDirect redefined at ./FHEM/99_myUtils.pm line 191.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine UntoggleIndirect redefined at ./FHEM/99_myUtils.pm line 214.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine IsInt redefined at ./FHEM/99_myUtils.pm line 240.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine fhemNc redefined at ./FHEM/99_myUtils.pm line 246.
2021.05.24 17:07:22 1: PERL WARNING: Subroutine round redefined at ./FHEM/99_myUtils.pm line 264.


Ich vermute, dass diese redefined von der doppelten Ausführung dieser subs herrührt. Diese Subs sind sowohl in der 99_Utils.pm und in der 99_myUtils.pm vorhanden. Wo soll ich die doppelten Einträge entfernen?

In der 99_Utils.pm oder in der 99_myUtils.pm?

Was ist bei den beiden mismatch Fehlern nicht korrekt? Das @ oder das $@?

Vielen Dank im voraus für jeden Tipp.

Schönen Feiertag noch

Phlox

KölnSolar

ZitatIn der 99_Utils.pm oder in der 99_myUtils.pm?
in der 99_myUtils.pm, denn die gehört nicht zum Standardumfang u. liegt in Deiner Verantwortung.
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Phlox

@KölnSolar

Danke, es sind da aber auch von mir geschriebene Subs dabei. Wie kommen die in die 99_Utils-pm?

Ich meinte immer die 99_myUtils.pm wird beim Update nicht angerührt, und dort sollten alle meine Subs rein?

Oder schreibt fhem beim Update alle myUtils.pm Subs in die Utils.pm?

Du siehst ich bin etwas verwirrt....

ciao

JoWiemann

Hallo,

der Tipp bezog sich auf die in 99_myUtils.pm hinterlegten sub, die sich auch in der 99_utils.pm befinden. Deine sub sollen dort natürlich bleiben.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

KölnSolar

ZitatWie kommen die in die 99_Utils-pm?
Gute Frage. Automatisch nicht. Ich vermute da ist was bei Dir schief gelaufen. Mit einem update müsste das überschrieben werden.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Phlox

Hm, habe eigentlich nur ein Backup vom alten FHEM von Wheezy auf das neueste FHEM, das ich auf das neueste Buster installiert habe, restored....nichts manuelles gemacht. Hat eigentlich alles ziemlich gut funktioniert...bei DebianMail musste ich sendEmail in sendemail ändern, dann ging das auch...ein paar style Sachen abändern...und dann schaute ich halt mal ins StartLog....
Ich lösch halt jetzt mal die doppelten Einträge, oder ich versuchs erst mit nem Update, vielleicht bringt das eh die Lösung.

Eigentlich bin ich überrascht, dass der Umzug fast reibungslos funktionierte....das versuch mal von Windows 95 auf Windows 10...oder war es zu Wheezy-Zeiten schon Windows XP?

Auf alle Fälle danke für eure Tipps und Einschätzungen zur Rangehensweise der Problembehebung.

jhohmann

In der Auflistung im ersten Beitrag finde keinen Verweis auf die 99_Utils. Alle Warnings beziehen sich auf die 99_myUtils.
Und ich kenne diese Meldungen im Log dann, wenn ich über FHEMWEB über "Edit files" z.B. die 99_myUtils.pm anklicke und dann in der Web-Anwendung auch speichere. Genau dann kommt die Meldung. Also nichts ungewöhnliches.
Raspberry Pi 4 - bookworm / EnOcean - Rollo+Licht, deCONZ - Licht+Sensoren, ZWave - CO Messung, HMCCU mit piVCCU - Heizung+Rollo
plus dovecot, minidlna

Beta-User

"Ungewöhnlich" ist aber, dass das beim erstmaligen Laden passiert. Da sollte es keine Überlappungen geben...

"Ungewöhnlich" ist auch der Prototype mismatch, der dann wieder darauf hindeutet, dass dann auch noch "min" und "max" in einer "anderen Fassung" im Spiel sind (ggf. ein Import aus List::Utils)?!? (Oder einer Vorversion).

Das wiederum deutet darauf hin, dass min und max uU. nicht immer das liefern, das an der jeweiligen Stelle erwartet wird; aber das ist wieder eine ganz andere Geschichte...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors