opendreambox / enigma2-plugins

Python plug-ins for enigma2 (DreamOS)
https://dreambox.de/
Other
37 stars 49 forks source link

Catching exception if file is not available anymore #43

Open AndresRohr opened 11 months ago

dhwz commented 11 months ago

Ich bin kein Freund von try except Das lässt sich doch sicher auch mit os.path.exists() abfangen.

AndresRohr commented 11 months ago

Richtig, Exceptions sind nur für Ausnahmefälle gedacht. Beim einem normalen kompletten Lauf einer App/Plugins sollte eigentlich nicht eine einzige auftreten. Aber zwei Punkte sind zu beachten:

drecomx commented 11 months ago

Ich seh das gleich wie dhwz. Try/except sollte so wenig wie möglich verwendet werden. Grad bei Dateisystemzugriffen gibt es durchaus bessere Optionen. Und die von dhwz vorgeschlagene Option ist definitiv besser.

Ich habe den Code grad nicht mehr in Erinnerung, aber das müsste in der buildFunc sein. Entsprechend muss während des Listenaufbaus die Verbindung verloren gehen. Eine Löschung müsste über einen anderen Weg durch eine andere Person erfolgen, sonst ist man dann doch selber schuld

AndresRohr commented 11 months ago

Die Löschung kann jederzeit erfolgen, da die Box ja per Samba mit externen Computern verbunden sein kann. Bei meinem GreenScreen war es meine PC-Software 'Atlas Subtitler'. Die kann zum Managen der Untertitel verwendet werden. Man fügt einfach am Beginn des Videonamens ein Zweibuchstabenkürzel ein. Subtitler kann dann von aussen bestimmte Funktionen ausführen, und die bewirken oft eine Umbenennung.

Man sollte in der Informatik nicht allzu dogmatisch sein. Wichtiger ist, dass die Vorteile in der Praxis gegenüber den Nachteilen abgewogen werden:

mtdcr commented 11 months ago

Ich fänd's allgemein sinnvoll, den try-except-Block jeweils so klein wie möglich zu halten und die Fehlerursache mit auszugeben, damit (ohne Greenscreen) nachvollziehbar bleibt, wo und weshalb ein Fehler aufgetreten ist.

Man muss es aber auch an der Stelle nicht over-engineeren. So ist es schon eine Verbesserung im Vergleich zum vorherigen Zustand.