Hoffen auf Mirakel...

Begonnen von betateilchen, 20 September 2014, 21:52:34

Vorheriges Thema - Nächstes Thema

betateilchen

Zitat von: Prof. Dr. Peter Henning am 20 September 2014, 20:21:44
Wie immer, wenn man auf ein Mirakel gehofft hat und es nicht gekommen ist

Apropos "hoffen auf Mirakel" ... ich hoffe ja auch immer noch auf das Mirakel, dass irgendwann alle Entwickler dazu übergehen, beim Einchecken irgendwelcher Änderungen endlich einen Kommentar dazuzuschreiben. Oder aber, dass der SVN-Verantwortliche es irgendwann schafft, das Einchecken von Änderungen ohne einen solchen Kommentar zu unterbinden.

Wieso komm ich da jetzt ausgerechnet bei Dir drauf? Keine Ahnung ;)

(http://up.picr.de/19577320pw.png)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

ntruchsess

am besten nicht nur irgendeinen Kommentar, sondern auch eine Angabe, welche/s Modul/e von dem commit betroffen sind. Die automatischen Posts unter 'FHEM Code changes' enthalten nur(!) den Kommentar ohne Angabe der veränderten Dateien. Ist zwar nicht wirklich kriegsentscheidend (dafür gibt es ja die entsprechenden SVN-/Git-Tools), würde aber sehr helfen immer auf einen Blick zu sehen, ob das für einen selber interessant/wichtig ist oder nicht.

Gruß,

Norbert
while (!asleep()) {sheep++};

HCS

Zitat von: ntruchsess am 20 September 2014, 22:03:46
am besten nicht nur irgendeinen Kommentar, sondern auch eine Angabe, welche/s Modul/e von dem commit betroffen sind.
Das ist sinnvoll.
Ich schreibe sie so: 36_JeeLink.pm: Added EMT7110 to Clients and MatchList
Manche so: 99_GetState.pm - renamed to match Initialize
Und manche so: YAMAHA_AVR: fix return of next scheduled timestamp for statusRequest

Zumindest eine Richtline (ob Doppelpunkt oder Bindestrich ist nun auch nicht kriegsentscheidend aber einheitlicht immer sinnvoll) wäre nicht schlecht.
Aber alles ist besser als leer.


Zitat von: betateilchen am 20 September 2014, 21:52:34Oder aber, dass der SVN-Verantwortliche es irgendwann schafft, das Einchecken von Änderungen ohne einen solchen Kommentar zu unterbinden.
Extrem sinnvoll.
Falls man in sourceforge hooks definieren kann:
Auf meinen SVN-Servern verwende ich diesen serverseitigen pre-commit hook:
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" case-insensitive -t%2 %1

@echo off
::
:: Stops commits that have empty log messages.
::

setlocal

set REPOS=%1
set TXN=%2

rem check for an empty log message
"%VISUALSVN_SERVER%\bin\svnlook" log %REPOS% -t %TXN% | findstr . > nul
if %errorlevel% gtr 0 (goto err) else exit 0

:err
echo. 1>&2
echo Your commit has been blocked because you didn't give any log message 1>&2
echo Please write a log message describing the purpose of your changes and 1>&2
echo then try committing again. -- Thank you 1>&2
exit 1

rudolfkoenig

Habe mit einem pre-commit hook angefangen, ab sofort sind Kommentare mit dem Namen der betroffenen Datei (oder sowas aehnliches) zwingend:

#!/bin/sh

exec 1>&2

REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" | \
egrep -q '^.*:.*'
if test "$?" -ne 0; then
  echo "A FHEM SVN comment must have the following format"
  echo "  module: text-describing-the-change"
  echo "or"
  echo "  module: text-describing-the-change (Forum #<forum.fhem.de threadnumber>)"
  exit 1;
fi
exit 0


Falls jemand noch einen doku-pruefer ala commandref_join spendiert, dann baue ich das ein.

justme1968

ich bin sehr für den zwang zu einem kommentar beim einchecken.

den modul namen oder auch nur einen : als zwingend vorauszusetzen finde ich aber keine gute idee. der name geht eindeutig aus dem kontext hervor und ist bei kommits die mehr als ein file betreffen völlig unpassend.

wenn es eine prüfung sein soll die mehr als das vorhanden sein eines kommentars prüft wäre eine mindestlänge von zwei oder drei worten besser.

für die prüfung auf dokumentation bitte dran denken das nur die \d\d_.*.pm files eine solche haben.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

betateilchen

Zitat von: justme1968 am 21 September 2014, 10:21:54
den modul namen oder auch nur einen : als zwingend vorauszusetzen finde ich aber keine gute idee. der name geht eindeutig aus dem kontext hervor

Nein, der Name geht eben nicht immer eindeutig aus dem Kontext hervor.
Und es ist absolut kein Problem, denn commit-Kommentar auch mehrzeilig anzugeben, dann kann man auch bei mehreren Files, die man gleichzeitig eincheckt, für jedes File den Namen angeben und einen Kommentar pro File angeben.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

justme1968

der kontext sind alle files die bei einem commit gleichzeitig mit dem gleichen kommentar eingecheckt werden. und der ist eindeutig.

den modul namen noch mal extra und von hand zwingend anzugeben ist redundant und schafft zusätzliches potential für konflikte. was versprichst du dir davon? erst recht wenn es sich wie bei den aller meisten check-ins um genau ein file handelt.

gleichzeitig eingecheckte files sollten einen logischen zusammenhang haben und normalerweise (es gibt ausnahmen) den gleichen kommentar. was soll es bringen den gleichen kommentar mehrfach anzugeben?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

Falls man ein SVN Client auspackt, dann kann man natuerlich genau untersuchen, welche Dateien betroffen sind.

Es geht mir hier darum, dass die per email versendete Commit-Texte, die auch hier in Forum auftauchen, ohne weitere Arbeit zugeordnet werden koennen. Den Bezug zu einem Forums-Thread finde ich deswegen wichtig, weil nach eine Weile man (==ich) den eigentlichen und nicht kurz beschreibbaren Grund der Aenderung vergisst.

justme1968

die begründung ist nachvollziehbar. wenn svn das her gibt sollte die liste der betroffenen files automatisch in die mail eingefügt werden. redundant und dann noch von hand ist einfach blöd.

den link auf den forums thread find ich gut.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

Ich habe keine Ahnung, wie man den Kommentar aendern kann, aber ich bin offen fuer Patches :)

betateilchen

Zitat von: justme1968 am 21 September 2014, 10:34:53
den modul namen noch mal extra und von hand zwingend anzugeben ist redundant und schafft zusätzliches potential für konflikte. was versprichst du dir davon?

Es geht schlicht darum, dass auch fhem-User, die nicht mit einem SVN/git-Client arbeiten, in dieser extra eingerichteten Forumrubrik http://forum.fhem.de/index.php/board,57.0.html eine sinnvolle Information vorfinden und nicht nur sowas:

(http://up.picr.de/19581105vl.jpg)

Aber dieser Grund wurde ja schon mehrfach hier angeführt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

justme1968

den grund habe ich inzwischen verstanden und kann ihn nachvollziehen. das ändert nichts daran das ich der meinung bin das es nicht der richtige weg ist den namen des moduls von hand als pflichtfeld vorzusehen.

so etwas gehört automatisiert in den commit hook oder in des script das die mails verschickt.

ich weiss noch nicht ob und wie das mit svn geht aber ich schaue danach. vielleicht gibt es ja jemanden der schon eine idee dazu hat.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

betateilchen

Mein Client schlägt - auf Wunsch - die Namen der im commit enthaltenen Dateien automatisch für den commit-Kommentar vor...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

HCS

Könnte man die betroffenen Dateien eventuell da hinzufügen, wo es zu einem Forumsbeitrag wird?
Dann müsste man es nicht mit angeben.
Aus SVN könnte es so geholt werden:

svn log https://svn.code.sf.net/p/fhem/code/trunk/fhem -v -r 6583
------------------------------------------------------------------------
r6583 | rudolfkoenig | 2014-09-20 19:15:08 +0200 (Sa, 20 Sep 2014) | 3 lines
Changed paths:
   M /trunk/fhem/FHEM/01_FHEMWEB.pm
   M /trunk/fhem/FHEM/98_SVG.pm

adding plotEmbed parameter for iOS 8


------------------------------------------------------------------------

HCS

Oder genau diese Information in den body des Breitrags übernehmen, anstatt den Titel zu wiederholen.