Warum verwenden einige große Projekte, wie Git und Debian, nur eine Mailingliste und keinen Issue Tracker?

65

Der Bug-Tracker für ein Projekt mit vernünftiger Größe scheint mir ein Kinderspiel zu sein - er macht es wirklich einfach, Hunderte oder Tausende von Problemen zu organisieren, ohne dass Probleme kollidieren oder durcheinander geraten.

Wenn ich also einige wirklich große Projekte wie Git sehe, die eine Mailingliste als Hauptmethode für die Koordination von Wartung und Entwicklung verwenden, bin ich ein bisschen überwältigt. Beispiele:

  • Git - Community Seite:

    ... Fehlerberichte sollten an diese Mailingliste gesendet werden.

  • Debian-Bug-Tracking-System , per Wikipedia:

    ... Sein einzigartiges Merkmal ist, dass es keine Web-Oberfläche zum Bearbeiten von Fehlerberichten gibt - alle Änderungen erfolgen per E-Mail.

Viele moderne Bug - Tracker lassen sich sehr gut in E - Mails integrieren (Sie können Kommentare oder Benachrichtigungen über beobachtete oder Ihnen zugewiesene Fehler erhalten) sowie in Versionskontrollsysteme (Commits können als Lösung eines Problems markiert werden, usw.) .). Vieles davon müsste manuell mit einer Mailingliste erledigt werden, und Sie erhalten Unmengen von E-Mails über Fehler, an denen Sie nicht interessiert sind.

Was sind die Hauptvorteile einer Mailingliste gegenüber einem webbasierten Bug-Tracker? Warum verwenden einige große Projekte nur eine Mailingliste?

naught101
quelle
2
Ja, nein, ich stimme dir zu, Git verwendet Mailinglisten :) Ich sagte, dass Sie es mit "einigen wirklich großen Projekten" in Verbindung bringen und ich dachte nur, wenn Sie das tun, sollten Sie ein bisschen mehr geben Beispiele für solche wirklich großen Projekte. Ansonsten lautet die Frage: "Git verwendet Mailinglisten, warum ist das so?" In diesem Fall ist die Antwort von Jörg W. Mittag besser geeignet ...
Shivan Dragon
1
Hrm, nun, ich hatte den Eindruck, es gäbe mehr ... Debian verwendet ein Mail-basiertes System , wenn auch komplexer als eine Mailingliste. Okay, aber der wichtigste Punkt ist: Was sind die Vorteile der Verwendung einer Mailingliste gegenüber einem Bug-Tracker? Es sei denn, die Antwort lautet "Es gibt keine, Git-Entwickler sind nur Luddites".
Naught101
@ naught101: warum wirst du weggeblasen, wenn du das siehst? Debian Unstable kann installiert und verwendet werden, ohne dass ein Remote-Root-Exploit ein Patch benötigt und ohne dass ein Neustart für sechs Monate erforderlich ist. Das ist für die instabile Version von Debian. Ich habe Debian-Server gesperrt, die 4-stellige Tage der Betriebszeit erreicht haben (kein einziger Remote-Root-Exploit erfordert einen Neustart, der sich auf mein Setup in diesem Zeitraum auswirkt). Diese Leute benutzen vielleicht nicht die neueste Technologie, aber sie machen die Dinge offensichtlich richtig. Ich würde Web-Bug-Tracker für Debian-Stabilität jederzeit aufgeben.
Cedric Martin
2
@ CedricMartin: Ich weiß, ich stimme zu. Das Mailinglisten-Bug-Tracking funktioniert für einige Teams eindeutig angemessen, aber es scheint mir immer noch weniger einfach zu sein als ein Bug-Tracker. Ich habe jedoch gedacht, dass der Unterschied für die Kernprojektentwickler sehr gering erscheinen mag: Sie folgen sowieso fast allem, was vor sich geht. Für Neulinge ist eine Mailingliste jedoch kaum zu finden, sodass kein einfacher Überblick über die Projekttauglichkeit gegeben werden kann. Mit einem Bug-Tracker können neue Benutzer / Entwickler schnell herausfinden, wie sich ein Projekt bewegt, und eine Vorstellung davon bekommen, welche Art von Verbesserungen vom Kernteam als wichtig erachtet werden.
Naught101
Greg Kroah-Hartman nimmt dies als Teil dieser Diskussion in Bezug auf den Linux-Kernel auf . Insbesondere: "Es gibt KEINE Möglichkeit, dass das Github / Gerrit / Gitorious-Modell überhaupt für den Kernel funktioniert. Der Maßstab, auf dem wir arbeiten, ist ein völlig anderes Niveau, als er von diesen Tools bewältigt werden könnte. ... Es gibt wirklich keinen anderen bekannte Methode zur Behandlung von 10000 Patches alle 2 Monate in einer stabilen Version mit Peer-Review bei über 3000 Entwicklern, anders als wir es heute tun. "
naught101

Antworten:

45

Die Präferenz, die Sie beobachten, scheint eine natürliche Folge der Empfehlung zu sein, die in den GNU Coding Standards klar angegeben ist . Es wird empfohlen, Fehler per E-Mail zu melden, wie Sie im folgenden Zitat sehen können (ich habe den Teil, der Ihre Beobachtungen direkt anspricht, fett markiert ):

4.7.2 --help

Die Standardoption --helpsollte eine kurze Dokumentation zum Aufrufen des Programms in der Standardausgabe ausgeben und anschließend erfolgreich beendet werden. Andere Optionen und Argumente sollten ignoriert werden, sobald dies angezeigt wird, und das Programm sollte seine normale Funktion nicht mehr ausführen.

Am Ende der ‘--help’Ausgabe der Option platzieren Sie bitte Zeilen mit der E-Mail-Adresse für Fehlerberichte , der Homepage des Pakets (normalerweise ‘http://www.gnu.org/software/pkg’und der allgemeinen Seite für die Hilfe bei der Verwendung von GNU-Programmen). Das Format sollte folgendermaßen aussehen:

    Report bugs to: mailing-address
    pkg home page: <http://www.gnu.org/software/pkg/>
    General help using GNU software: <http://www.gnu.org/gethelp/>

Es ist in Ordnung, andere geeignete Mailinglisten und Webseiten zu erwähnen.

Diese Präferenz spiegelt wiederum die allgemeine Akzeptanz von E-Mails als Form der elektronischen Kommunikation wider. Jeder Benutzer, der eine --helpNachricht wie die oben vorgeschlagene liest , sollte leicht verstehen, was zu tun ist, wenn er einen Fehler entdeckt - Mailing ist einfach.

Der Issue-Tracker ist möglicherweise (und meiner Meinung nach ) besser für einen Entwickler, der an dem Projekt arbeitet. Für ein breiteres Publikum ist es jedoch schwieriger, ihn vorzustellen und zu erläutern, insbesondere unter Berücksichtigung der großen Vielfalt und Unterschiede zwischen den verschiedenen Issue-Tracking-Systemen .

Ein Projekt kann Bugzilla verwenden, ein anderes bleibt bei JIRA, das dritte bei ... GNATS usw. usw. usw. Es gibt einfach keine Möglichkeit, diesen "Zoo" so einheitlich und einheitlich wie möglich zu präsentieren

Report bugs to: mailing-address


Hinweis oben bedeutet nicht, dass Projekte den Issue Tracker nicht intern verwenden sollten . Wie in einer ausgezeichneten Antwort auf verwandte Frage erklärt ,

Ihr Bug-Tracker dient Ihrer Bequemlichkeit, nicht der Ihrer Kunden. Wenn Sie sich nicht die Mühe machen müssen, das Telefon- oder E-Mail-Problem selbst zu übernehmen, wie fühlen sich die beiden?

Sie müssen in der Lage sein, Probleme einzugeben und sie manuell einem Kunden zuzuweisen ...

Mücke
quelle
3
Gute Antwort! E-Mail ist besser bekannt als Issue Tracker und einfacher zu verstehen (was nicht heißt, dass jeder E-Mail "bekommt": P)
Andres F.
21
Auch dieser GNU-Rat ist uralt, viel älter als das Web und der webbasierte Issue Tracker.
Ross Patterson
@ RossPatterson Ich dachte das. Aber es scheint unwahrscheinlich, dass es älter als das Web ist, wenn man bedenkt, dass es eine Reihe von URLs enthält ...
naught101
6
@gnat: Ein großer Teil der verknüpften Antwort, die so großartig ist, ist der Teil "Wenn es für Sie einfach ist, können Sie so etwas genau dort eingeben" . Dies ist der Schlüssel für viele Open Source-Projekte, da für telefonischen Support keine Mittel zur Verfügung stehen. Eine Mailingliste ist eine Abneigung für mich als Benutzer, der Fehler meldet, da ich mich nicht für Antworten anmelden möchte. Mit einem Bug-Tracker kann ich feststellen, dass mein Problem im System liegt, und später danach suchen und prüfen, ob es aktualisiert wurde. Dies ist bei einer Mailingliste schwierig, es sei denn, es gibt einen wirklich guten webbasierten Listen-Tracker, was häufig nicht der Fall ist.
Naught101
1
@ naught101 Es ist vielleicht nicht älter als das Web, aber definitiv älter als webbasierte Tracker
Sakisk
30

Insbesondere bei Git gibt es einen einfachen historischen Grund: Git wurde von Linux-Hackern für Linux-Hacker gestartet und verwendet dasselbe Entwicklungsmodell und dieselben Tools wie Linux. Linux ist jedoch älter als das WWW. Als Linux gestartet wurde, gab es einfach keine webbasierten Issue Tracker, weil es kein Web gab!

Infolgedessen hat die Linux-Community äußerst effiziente Tools und Workflows für den Umgang mit Fehlerberichten und Codeüberprüfungen per E-Mail entwickelt, und es gab keinen Grund für sie, all diese Arbeiten wegzuwerfen und bei Null anzufangen, als sie das Git-Projekt starteten.

Jörg W. Mittag
quelle
3
Ich dachte, dass das WWW Linux vorausging. Leicht. Sie wurden beide ungefähr zur gleichen Zeit und von verschiedenen Personengruppen durchgeführt. Es war nicht wirklich bis Mitte der 90er Jahre, die entweder abhob.
Donal Fellows
6
Ok, aber der Linux-Kernel hat jetzt einen Bug-Tracker: bugzilla.kernel.org . Das ist natürlich keine so große Barriere.
Naught101
7
-1 Git ist ernsthaft jünger als das Web. Jahrgang 2005. Zu dieser Zeit gab es viele Issue Tracker, darunter natürlich Bugzilla. Linus mag Issue Tracker einfach nicht und sein Wort ist in dieser Umgebung Gesetz.
Ross Patterson
6
@ RossPatterson - Er sagte, Linux sei älter als das Web, nicht Git. Ich glaube nicht, dass Ihr Kommentar eine Ablehnung rechtfertigt, da Sie im Grunde das wiederholt haben, was er gesagt hat.
Beatgammit
2
@tjameson Im Nachhinein hast du recht. Zurück in die Neutralstellung.
Ross Patterson
17

Für Git:

Es gibt mehrere Diskussionen auf der Mailingliste, bei denen Leute vorschlagen, eine Art Bug-Tracker zu verwenden. Diese Initiativen scheinen alle ins Wanken geraten zu sein. Der Grund, warum Git keinen Bug-Tracker verwendet, liegt wahrscheinlich einfach darin, dass die meisten Mitwirkenden ihn nicht nützlich finden.

In einem Beitrag zur Mailingliste fasste Junio ​​C Hamano (Betreuer von Git) zusammen, warum er der Meinung ist, dass ein Bug-Tracker nicht sehr nützlich ist. Ich möchte nicht den ganzen Beitrag einschließen (es ist ziemlich lang), aber es läuft auf Folgendes hinaus:

  • Wenn Sie nur nach Informationen zu gelösten Problemen suchen, funktioniert das Durchsuchen der Listenarchive genauso wie das Durchsuchen eines Bug-Trackers.
  • Wenn Sie einen echten Fehler melden und die Leute sich darum kümmern möchten, funktioniert die Liste auch gut.
  • Wenn niemand daran interessiert ist, an einem Problem zu arbeiten, fällt es selbst in einem Bug-Tracker durch die Risse.
  • Ein Bug-Tracker wäre ein weiteres System, das gewartet, regelmäßig auf neue Fehler überprüft, behobene Fehler geschlossen usw. werden müssen, kurz, zusätzliche Arbeit für geringen Nutzen.
sleske
quelle
5
Gute Antwort, aber ich würde argumentieren, dass Ihr dritter Punkt ein großer Nachteil von E-Mails ist: Wenn ein Fehler schwer zu beheben ist und die aktuellen Entwickler faul sind, wird er erheblich mehr begraben als ein Eintrag in einem Issue-Tracker. Dies könnte bedeuten, dass bestimmte Fehler niemals behoben werden, einfach weil die Leute ihre
Fehler
1
@TheLQ: Richtig. Anscheinend ist dies jedoch ein Risiko, das einige Projekte eingehen wollen. Und um fair zu sein, Git ist eine ziemlich solide Software, auch ohne einen Bug-Tracker.
Sleske
1
@TheLQ: Würde eine einfache Webseite, auf der alle bekannten Fehler (und die dazugehörigen Threads) aufgeführt sind, das nicht beheben? Ähnliches mit der Ausnahme, dass Links auf Archivthreads verweisen.
Hallo Welt
1
@HelloWorld: Nun, das wäre ein (einfacher) Issue Tracker. Und genau wie bei einem Issue Tracker müsste es jemand schaffen ...
sleske
Gibt es eine gute Möglichkeit, eine Offline-Kopie der E-Mail zu erhalten, die gesendet wurde, als ich noch kein Abonnent war?
PSkocik
6

Debian verwendet einen Bug-Tracker, seine Standardoberfläche ist E-Mail. Und es ist bequem. Lucas Nussbaum, aktueller Debian-Projektleiter, hat vor ein paar Tagen folgendes gepostet :

debbugs ist die Software hinter dem Debian Bugs Tracking System (BTS). Es wird auch vom GNU-Projekt verwendet. Obwohl es oft als altmodisch angesehen wird, bietet es einige einzigartige Funktionen, wie die Verfolgung des Status von Fehlern in jeder Version und jedem Zweig eines Pakets, oder die Möglichkeit, alle Interaktionen per E-Mail durchzuführen, was die Arbeit sehr erleichtert offline oder in schlecht verbundenen Umgebungen.

Der letzte Teil ist ein Killerfeature - reihen Sie diese Berichte einfach in Ihre lokale Mail-Warteschlange ein, bis Sie aus dem Flugzeug gestiegen sind!

Dominik George
quelle
4
  • Hält 9-Jährige fern.
  • Es muss kein separates Konto für jedes Forum erstellt werden.
  • [minor] Konsistente Benutzererfahrung über verschiedene Mailinglisten hinweg und keine Lernkurve beim Abonnieren einer neuen Liste.
  • Funktioniert offline. Sie könnten eine Verbindung zum Internet herstellen und eine Reihe von E-Mails herunterladen, dann wandern, Ihre Antworten schreiben und die Natur genießen und sie später senden.
  • Ermöglicht das Verschlüsseln und / oder Signieren von E-Mails über GPG.
  • Dezentralisiert - Wenn das Forum abstürzt, hätten Sie immer noch eine Kopie. Es ist auch manipulationssicher. Ein böser Moderator / Hacker kann nicht einfach an Ihren Aussagen manipulieren. Niemand kann die Geschichte ungeschehen machen.
  • Ermöglicht Filter, Ordner und alle erweiterten Organisationsfunktionen eines E-Mail-Clients.
  • "Push-Benachrichtigungen" - Sie können Ihren E-Mail-Client geöffnet lassen und Benachrichtigungen über neue Antworten erhalten.
  • Ein Ort, um alle zu regieren - Sie müssen nicht zwischen verschiedenen Standorten wechseln.
  • Immun gegen alle Sicherheitslücken im Web (HTML / Javascript / Injection, etc.)
  • Kein Aufblähen - Keine Abzeichen, ausgefallene bewegliche Signaturen, Anzeigen, Web Beacons, Javascript aufblähen. Es ist alles einfach und auf den Punkt - Diskussion.
  • Geringere Serverlast als bei einem LAMP-Setup.

Ein Nachteil von Mailinglisten ist, dass Foren in Kategorien und Unterkategorien unterteilt werden können, Mailinglisten jedoch nicht. Dies kann emuliert werden, indem eine Mailingliste in mehrere Mailinglisten unterteilt wird. Anschließend können Benutzer die entsprechenden Filter verwenden, um jede Nachricht in den entsprechenden Ordner zu verschieben (wobei jeder Ordner eine Kategorie ist). In Webforen erfolgt dies automatisch.

Hallo Welt
quelle
Warum bestehen die Menschen auf der Erstellung von Web basierten Versionen Probleme zu verfolgen (BTW ist diese Frage nicht über alles ) in einer anderen Frage diskutiert: Erster Anwender anständig und nutzbringende Fehlerberichte zu schreiben „User-bearbeitbare Online - Bug - Report die effizienteste Art und Weise zu lehren Benutzer verbessern ... "
Mücke
Danke. Aber rechtfertigt dies eine Ablehnung? Das Hauptthema dieser Antwort sind die Vorteile einer ML, und sie beantwortet die ursprüngliche Frage ziemlich gut. Ich habe den "Webforen" -Rant entfernt.
Hallo Welt
2
Der in dieser Antwort erwähnte Nachteil hindert mich grundsätzlich daran, bei den meisten Dev-Mail-Listen zu bleiben. Sie senden alles durch , daher melde ich einen Fehler normalerweise erst zwei Wochen später ab. Bugtracker lösen dieses Problem, indem sie mich bestimmte Fehlerberichte abonnieren lassen.
Roman Starkov
6
Korrektur: Hält 25- Jährige fern. Erst kürzlich habe ich erfahren, wie diese Mailinglisten zu einigen echten Projekten beitragen . Und ich hasse es!!
Ciro Santilli新疆改造中心法轮功六四事件
2
Msgstr "Es ist nicht erforderlich, für jedes Forum ein separates Konto zu erstellen." - Um Spam zu vermeiden, müssen Sie sich häufig für die Liste anmelden. Aber das abonniert alle E-Mails. Sie müssen sich also anmelden UND sich von "Spam" abmelden UND eine Anfrage hinzufügen, um in CC oder TO zu bleiben. Verglichen mit einer Bugzilla ist es viel mehr zu tun.
Maciej Piechotka