Autor Thema: pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen  (Gelesen 449 mal)

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Heute habe ich mehr oder weniger zufällig festgestellt, dass Leerzeichen im Dateinamen unseres SVN repositories dazu führen, dass das Makefile nicht mehr korrekt abgearbeitet wird.
Deshalb schlage ich vor, dass im pre-commit künftig die Gültigkeit des Dateinamens auf dieses Kriterium erweitert wird.

Für den aktuellen Fall habe ich die image Datei namens "Tropical Storm.svg" in "Tropical_Storm.svg" umbenannt, damit läuft auch das Makefile wieder korrekt durch.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline Dr. Boris Neubert

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 4437
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #1 am: 19 Februar 2019, 15:04:52 »
Hi, das Kalendermodul verlässt sich darauf, dass das Icon wie die Witterung heißt. Führt das hier zum Problem?
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #2 am: 19 Februar 2019, 16:17:51 »
Hi, das Kalendermodul verlässt sich darauf, dass das Icon wie die Witterung heißt. Führt das hier zum Problem?

*grübel* wo verwendet denn das Kalendermodul Wettericons?

Es gibt nur dieses einzige Icon mit einem Leerzeichen. obwohl es schon eine ganze Reihe von mehrteiligen Icons gibt, die entweder mit _ oder mit - zwischen den Wortteilen verknüpft sind.
« Letzte Änderung: 19 Februar 2019, 16:19:29 von betateilchen »
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #3 am: 19 Februar 2019, 16:41:53 »
verlässt sich darauf, dass das Icon wie die Witterung heißt. Führt das hier zum Problem?

Hallo Boris,

in @iconlist von 59_Weather.pm kommt der Tropical Storm nicht vor.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline Dr. Boris Neubert

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 4437
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #4 am: 19 Februar 2019, 17:45:13 »
*grübel* wo verwendet denn das Kalendermodul Wettericons?

Es gibt nur dieses einzige Icon mit einem Leerzeichen. obwohl es schon eine ganze Reihe von mehrteiligen Icons gibt, die entweder mit _ oder mit - zwischen den Wortteilen verknüpft sind.

Ich war verwirrt, meinte das Weather-Modul. Wenn es keine Zustände mit Blank gibt, ist ja alles in Ordnung.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20210
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #5 am: 19 Februar 2019, 20:16:21 »
Ich habe jetzt eine Pruefung eingebaut:
err $fName, "filename ($fName) contains strange characters (not A-Za-z0-9_.-%)"
    if($fName =~ m/[^A-Za-z0-9_.%-\/]/);
Diese Liste habe mit "find fhem.pl www docs contrib FHEM -print" und etwas Umsortierung rausgefunden.
/ kam extra dazu, um mir das Leben einfacher zu machen.

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #6 am: 19 Februar 2019, 21:26:09 »
müsste man den Punkt in der regex nicht escapen, damit er auch wirklich als Punkt interpretiert wird?

Offenbar funktioniert die Prüfung aber noch nicht auf dem SVN Server. Denn Wuppi hat gerade schon wieder eine Datei mit einem Leerzeichen eingecheckt  8)
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #7 am: 19 Februar 2019, 21:32:17 »
Ok, gerade selbst getestet - der pre-commit hook greift tatsächlich (noch) nicht, Leerzeichen sind problemlos möglich.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline Wuppi68

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1965
  • Wuppertaler Wimpelbeauftragter
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #8 am: 19 Februar 2019, 21:56:34 »
bin dran ... und es sollte auch wieder weg sein ;-)

Danke für den Hinweis Udo

Liebe Grüße

Ralf, der wieder etwas dazu gelernt hat
Jetzt auf nem I3 und primär Homematic

kein Support für cfg Editierer

Support heißt nicht wenn die Frau zu Ihrem Mann sagt: Geh mal bitte zum Frauenarzt, ich habe Bauchschmerzen

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #9 am: 19 Februar 2019, 22:23:30 »
müsste man den Punkt in der regex nicht escapen, damit er auch wirklich als Punkt interpretiert wird?

ich vermute, dass der Punkt ohne escape genau die Ursache dafür ist, dass der pre-commit hook im Moment noch jedes beliebige Zeichen zulässt - der Punkt bedeutet ja schließlich "beliebiges Zeichen".
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20210
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #10 am: 20 Februar 2019, 10:18:15 »
Das war es nicht, es lag an dem
Zitat
    my ($type, $fName) = split(" ", $row);
am Anfang.
Ich habe es zwar mit einem "Leerzeichen-Datei" getestet, es fiel mir aber nicht auf, dass die Ablehnung wg. einem anderen Grund passierte.Habs jetzt gefixt.

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15760
  • s/fhem\.cfg/configDB/g
Antw:pre-commit hook: Bitte Prüfung auf Leerzeichen in Dateinamen
« Antwort #11 am: 21 Februar 2019, 11:25:30 »
sieht gut aus :)

*** trunk/fhem/contrib/betateilchen/Ohne Titel.txt: filename (trunk/fhem/contrib/betateilchen/Ohne Titel.txt) contains strange characters (not A-Za-z0-9_.-%)

Die ganze Meldung sieht übrigens so aus:

Commit failed (details follow):
Commit blocked by pre-commit hook (exit code 1) with output:
svnlook: E205000: Try 'svnlook help' for more info
svnlook: E205000: Too many arguments given
*** trunk/fhem/contrib/betateilchen/Ohne Titel.txt: filename (trunk/fhem/contrib/betateilchen/Ohne Titel.txt) contains strange characters (not A-Za-z0-9_.-%)

Keine Ahnung, ob die Meldungen bezüglich svnlook irgendeine Relevanz haben, um die man sich kümmern sollte.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

 

decade-submarginal