[PATCH] - fhem.pl Aufnahme von Hilfsmodulen (HttpUtils, ...) in version output

Begonnen von Markus Bloch, 10 Januar 2016, 16:16:38

Vorheriges Thema - Nächstes Thema

Markus Bloch

Hallo Rudi,

anbei ein Patch, der es ermöglicht, dass Hilfsmodule wie Blocking, HttpUtils, TcpServerUtils, ... usw. im Output von "version" angezeigt werden, sofern sie auch tatsächlich geladen sind.

Dazu wird am Ende jedes Moduls ein manueller Eintrag in %modules erzeugt mit LOADED => 1.

File                        Rev   Last Change

fhem.pl                     10397 2016-01-07 08:36:49Z rudolfkoenig
90_at.pm                    10048 2015-11-29 14:51:40Z rudolfkoenig
98_autocreate.pm            10165 2015-12-13 11:14:15Z rudolfkoenig
Blocking.pm                 10343 2016-01-03 10:55:45Z rudolfkoenig
00_CUL.pm                   10146 2015-12-10 10:17:42Z rudolfkoenig
10_CUL_HM.pm                10411 2016-01-08 15:18:17Z martinp876
DevIo.pm                     8954 2015-07-13 16:01:48Z rudolfkoenig
98_dewpoint.pm               6757 2014-10-12 18:58:57Z joachim09876
98_dummy.pm                  8809 2015-06-23 18:02:33Z rudolfkoenig
00_FBAHA.pm                 10398 2016-01-07 09:05:47Z rudolfkoenig
10_FBDECT.pm                 9304 2015-09-25 18:33:18Z rudolfkoenig
72_FB_CALLLIST.pm           10317 2015-12-31 12:12:25Z markusbloch
72_FB_CALLMONITOR.pm        10349 2016-01-03 14:20:57Z markusbloch
01_FHEMWEB.pm               10398 2016-01-07 09:05:47Z rudolfkoenig
92_FileLog.pm               10365 2016-01-05 10:57:56Z rudolfkoenig
FritzBoxUtils.pm             6574 2014-09-19 17:32:48Z rudolfkoenig
98_GEOFANCY.pm              10325 2016-01-02 00:28:34Z loredo
00_HMLAN.pm                 10409 2016-01-08 15:13:59Z martinp876
95_holiday.pm               10004 2015-11-25 12:58:12Z rudolfkoenig
HttpUtils.pm                10137 2015-12-09 09:01:41Z rudolfkoenig
75_LGTV_RS232.pm             6414 2014-08-17 21:35:34Z markusbloch
91_notify.pm                 8953 2015-07-13 15:13:06Z rudolfkoenig
34_panStamp.pm               8803 2015-06-22 19:21:07Z justme1968
73_PRESENCE.pm              10295 2015-12-29 18:47:24Z markusbloch
33_readingsGroup.pm         10157 2015-12-12 11:35:11Z justme1968
SetExtensions.pm             9413 2015-10-09 13:13:11Z rudolfkoenig
98_structure.pm             10382 2016-01-06 16:21:13Z rudolfkoenig
99_SUNRISE_EL.pm             9831 2015-11-08 19:13:09Z rudolfkoenig
98_SVG.pm                    9577 2015-10-21 17:45:02Z rudolfkoenig
34_SWAP.pm                  10297 2015-12-29 19:04:09Z justme1968
35_SWAP_0000002200000003.pm 10308 2015-12-30 11:42:17Z justme1968
TcpServerUtils.pm           10346 2016-01-03 12:34:27Z rudolfkoenig
98_telnet.pm                10398 2016-01-07 09:05:47Z rudolfkoenig
59_Twilight.pm               8743 2015-06-14 12:14:57Z dietmar63
99_Utils.pm                  7914 2015-02-08 11:14:10Z rudolfkoenig
91_watchdog.pm              10314 2015-12-31 08:44:32Z rudolfkoenig
55_weco.pm                   5517 2014-04-13 00:37:45Z betateilchen
99_XmlList.pm                1840 2012-09-12 13:52:08Z rudolfkoenig
71_YAMAHA_AVR.pm            10355 2016-01-03 22:00:41Z markusbloch
71_YAMAHA_BD.pm             10036 2015-11-28 16:02:57Z markusbloch


Im angehangenen Patch habe ich diese Zeilen nur in deinen Modulen gesetzt. Es wäre natürlich super, sofern der Patch akzeptiert wird, wenn auch andere Maintainer dies nachziehen könnten.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

rudolfkoenig

Mir waere es lieber, wenn wir eine nicht "invasive" Methode finden wuerden. Eigentlich muss perl die Liste aller geladenen Dateien irgendwo halten. Kriegt man diese Liste irgendwie raus? Ich habe es auf die Schnelle leider nicht gefunden.

Dr. Boris Neubert

Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Markus Bloch

Ok, dann baue ich CommandVersion am besten komplett auf %INC um. Patch folgt.
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

Da bin ich auf den ersten Anwender-Kummer gespannt, der sich im Forum darüber wundert, dass in version plötzlich Dateien auftaucht, zu denen der User gar keine devices definiert hat.

Wer braucht die Versionsinfos von Hilfsmodulen eigentlich wirklich?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: Markus Bloch am 10 Januar 2016, 17:03:38
Ok, dann baue ich CommandVersion am besten komplett auf %INC um. Patch folgt.

Dann mach doch besser gleich eine 98_version.pm draus, das erleichtert die Codepflege. Habe da mit 98_help.pm nur gute Erfahrungen gemacht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Zitat von: betateilchen am 10 Januar 2016, 17:24:27
Da bin ich auf den ersten Anwender-Kummer gespannt, der sich im Forum darüber wundert, dass in version plötzlich Dateien auftaucht, zu denen der User gar keine devices definiert hat.

Wer braucht die Versionsinfos von Hilfsmodulen eigentlich wirklich?

Ich als Entwickler, wenn User wieder auf die grandiose Idee kommen, FHEM vom .tgz-Paket von fhem.de zu installieren und anfangen vereinzelte Module zu updaten, aber eben Hilfsmodule wie HttpUtils usw. eben nicht.

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Markus Bloch

Zitat von: betateilchen am 10 Januar 2016, 17:35:13
Dann mach doch besser gleich eine 98_version.pm draus, das erleichtert die Codepflege. Habe da mit 98_help.pm nur gute Erfahrungen gemacht.

@Rudi: was dagegen?
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

Die Antwort, die Du als Entwickler dem Anwender gibst, ändert sich aber nicht. Sie bleibt "mach mal ein Update"
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Das ist die Antwort für die Massen.

Es kann aber sein, dass Anwender X nur Modul M aktualisiert hat oder aus dem Forum zum Test hat und Modul M auch eine neuere Version von einem anderen Modul oder von fhem.pl braucht.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Das ist mir schon klar. Vielleicht sollte man die Versionsausgabe weiter parametrierbar machen, beispielsweise "version all" und bei "version" das bisherige Verhalten beibehalten.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Wen der Anwender version aufruft, weiß er entweder er, was er tut, oder es weiß derjenige, der ihn aufgefordert hat, was er tut.

Ich sehe den Bedarf daher nicht.

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Ich sehe den tatsächlichen Bedarf der Versionsausgabe von Hilfsmodulen genausowenig.

Und dass die Anwender immer wissen, was sie tun, glaubst Du doch wohl selbst nicht.

Wir sollten als Entwickler nicht immer nur unsere Entwicklerwünsche im Fokus haben.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Zitat von: betateilchen am 10 Januar 2016, 17:49:27
Ich sehe den tatsächlichen Bedarf der Versionsausgabe von Hilfsmodulen genausowenig.

Ich sehe ihn schon, in dem von mir geschilderten Fall. Und Markus sieht den Bedarf vermutlich auch. Warum hätte er das sonst entwickelt?

Zitat
Und dass die Anwender immer wissen, was sie tun, glaubst Du doch wohl selbst nicht.

Glaube ich natürlich nicht und habe ich auch nicht behauptet. version wird vermutlich in 90% aller Fälle auf Aufforderung durch den Entwickler auf eine Fehlermeldung hin aufgerufen.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Als nächstes kommt noch jemand auf die Idee, die Liste geladener Module in update auszuwerten, um nur diese Dateien zu aktualisieren...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!