Hallo,
mit neueren WG-Updates ab etwa Version 1.2 wurden für die Plugins sehr sinnvolle Änderungen eingebaut. So werden jetzt zum Beispiel auch Warnungen ausgegeben, wenn Subroutinen mehrfach definiert werden. Denn es ist sicher nicht jedem Plugin-Entwickler klar, dass alle geladenen Plugins den gleichen Funktionsnamen nur einmal verwenden dürfen. Let's go...
Warnung: "Subroutine verify redefined"
Beispiel
Lösung: Ein anderes Plugin verwendet den gleichen Funktionsnamen. Wenn es sich um die exakt gleiche Funktion handelt, kann die Warnung IMHO ignoriert werden. Ist es nicht die gleiche Funktion, sollte der Funktionsname angepasst werden. Für Plugin abc zum Beispiel vom generischen readConf in abc_readConf.
Warnung: "Variable is not available"
Beispiel
Lösung: Die Lösung habe ich noch nicht gefunden - ich habe die Warnung in der Config-Datei, obwohl die Variable vorher im Plugin definiert wurde... habt Ihr Tipps zur Lösung?
Vorsicht mit Plugin-Kopien
Ich lege gern Code-Kopien an - my_plugin.pl wird in my_plugin.pl.old kopiert. Aber Vorsicht... das WireGate führt auch my_plugin.pl.old aus (oder zumindest wird die Datei auch compiliert).
Welche Best Practices verwendet Ihr beim Entwickeln von WireGate Plugins? Welche Warnungen in der wiregate_plugin.log lassen sich wie beheben?
Viele Grüße
Dirk
mit neueren WG-Updates ab etwa Version 1.2 wurden für die Plugins sehr sinnvolle Änderungen eingebaut. So werden jetzt zum Beispiel auch Warnungen ausgegeben, wenn Subroutinen mehrfach definiert werden. Denn es ist sicher nicht jedem Plugin-Entwickler klar, dass alle geladenen Plugins den gleichen Funktionsnamen nur einmal verwenden dürfen. Let's go...
Warnung: "Subroutine verify redefined"
Beispiel
Code:
2015-10-11 00:18:56.941,1-Wire Monitor.pl,Warning: Subroutine readConf redefined at (eval 36) line 137.
Warnung: "Variable is not available"
Beispiel
Code:
2015-12-27 22:13:09.186,1-Wire Monitor.pl,Warning: Variable "$PluginCycle" is not available at (eval 35) line 5, <CONF> line 42.
Vorsicht mit Plugin-Kopien
Ich lege gern Code-Kopien an - my_plugin.pl wird in my_plugin.pl.old kopiert. Aber Vorsicht... das WireGate führt auch my_plugin.pl.old aus (oder zumindest wird die Datei auch compiliert).
Code:
2015-12-09 23:30:20.569,Logikprozessor.pl.old,compiled in 0.2s
Welche Best Practices verwendet Ihr beim Entwickeln von WireGate Plugins? Welche Warnungen in der wiregate_plugin.log lassen sich wie beheben?
Viele Grüße
Dirk
Kommentar