nils2: Fehler melden? Trac??

Hallo,

Wo melde ich Fehler in SelfHTML, oder wie kann ich die am besten selbst mit dem Trac-System (gute Idee, sieht aber etwas furchteinflößend aus) korrigieren (wenn es das ist, für das ich es halte - ein Wiki)?

Kann das System mal jemand mit richtig Ahnung in ganz einfachen Worten erklären? Vielleicht anhand dieses Beispieles? Wäre toll. Kann ja dann in das Wiki übernommen werden. Ist also nicht sinnlos.

Es geht mir um die Fragen: Was muß ich eventuell installieren, wie browse ich durch Dateien, wie verändere ich die, wie und wo hinterlasse ich (un?)nötige Kontaktinformationen - das wärs schon

(es geht um das Beispiel auf dieser Seite)

Gruß, Nils

--
Es gibt keine Lösung, weil es kein Problem gibt. (Duchamp)
  1. Hallo,

    Wo melde ich Fehler in SelfHTML, oder wie kann ich die am besten selbst mit dem Trac-System (gute Idee, sieht aber etwas furchteinflößend aus) korrigieren (wenn es das ist, für das ich es halte - ein Wiki)?  Kann das System mal jemand mit richtig Ahnung in ganz einfachen Worten erklären?

    Es ist kein Wiki sondern mehr ein zusammenfassendes Organisationssystem:

    • Die Rohdaten der SELFHTML Dokumentation liegen in einem sogenannten Versionsverwaltungssystem vor, das dafür sorgt, dass jede kleine Änderung an den Rohdaten gespeichert wird und dass sich die Redakteure nicht gegenseitig in die Quere kommen, wenn sie an etwas gleichzeitig arbeiten. Hier ist das Versionsverwaltungssystem Subversion.

    • Fehler und Verbesserungsvorschläge in SELFHTML kommen in ein Fehlerverwaltungssystem, englisch Bugtracker. Das ist in etwa ein Zettelkasten, in dem jede Fehler/Verbesserungsvorschlag und dessen Status („Ungelesen“, „In Arbeit“, „Fertig“) gespeichert wird, um sich besser zu organisieren. Redakteure lesen die Fehler (In Trac Tickets genannt) und reagieren entweder darauf oder manchmal auch nicht, wenn sie unsinnig sind. Die Fehler, nicht die Redakteure.

    Das ist in etwa ein Entwicklungsmodell, das bei vieler Software aus dem Open Source und Free Software Umfeld benutzt wird. Trac ist nun eine Software, die nichts weiter tut als die Rohdaten des Versionsverwaltungssystem und den Bugtracker (und ein Wiki, ja) fürs Web anzuzeigen. Es ist deswegen besonders beliebt, weil das Ganze gut miteinander verknüpft werden kann und deswegen einen netten Arbeitsprozess anbietet.

    Aber: Ausser Bugs zu melden kannst Du selber nichts machen. Die Redakteure erledigen die Arbeit. Das Meldungsformular ist direkt im Trac-System unter „New Ticket“ verlinkt. Dort kannst Du (inzwischen auch ohne Umständliche Anmeldung) Deinen Fehler melden.

    (Du könntest es natürlich noch bequemer für die Redakteure machen. Dazu müsstest Du Dir das Versionsverwaltungssystem Subversion installieren und die aktuelle Entwicklungsversion von SELFHTML auschecken (Anleitung dazu gibt's im Trac-Wiki) und selber die Änderung bei Dir vornehmen. Dann müsstest Du mittels des Versionsverwaltungssystem die Differenz zwischen der Entwicklungsversion und Deiner geänderten Version feststellen und das in einer Datei festhalten – man nennt dies einen Patch.

    Diesen hängst Du dann im Bugtracker an Dein Ticket dran – selber kannst Du nämlich keine Änderungen in den SELFHTML-Rohdaten mit dem Versionsverwaltungssystem an SELFHTML zurückschicken. Dies können nur Redakteure. Diese können dann Deinen Patch anwenden und die Änderungen dauerhaft in SELFHTML anwenden, oder Deine Änderungen noch verändern.

    Allerdings brauchst Du dazu etwas Kenntnis von Subversion, und besonders von SDML, dem XML-Dialekt in dem SELFHTML neuerdings gepflegt wird. Da wäre es bequemer den Fehler einfach zu melden und die Änderung von jemand anderen machen  zu lassen.)

    (es geht um das Beispiel auf dieser Seite)

    Hast Du das „Beachten Sie“ zum Abschnitt auf der Seite gelesen? Dieses Beispiel kann nur im Internet Explorer funktionieren, weil es eine externe DTD verwendet statt einer internen. Solltest Du es in einem anderen Browser getestet haben, ist das Nicht-Funktionieren also normal. Auch wenn man darüber streiten kann, ob es sinnvoll ist, es nicht funktionieren zu lassen, wenn doch nur Entities demonstriert werden sollen und nicht den Unterschied zwischen internen und externen DTDs in Browsern.

    Tim

    --
    Sollte irgendjemand diese Erklärung irgendwo verwursten wollen: Fühl Dich frei, dies zu tun.
    1. Hallo,

      Vielen Dank für die kompetente Antwort, ich werde mich da mal reinarbeiten.

      Hast Du das „Beachten Sie“ zum Abschnitt auf der Seite gelesen?

      Sorry, übersehen. Habs gerade gemerkt, weil die anderen Beispiele auch nicht mit dem Firefox funktionieren.

      Sollte irgendjemand diese Erklärung irgendwo verwursten wollen: Fühl Dich frei, dies zu tun.

      Ok, werde ich, dauert aber ein bißchen.

      Gruß, Nils

      --
      Es gibt keine Lösung, weil es kein Problem gibt. (Duchamp)
      Ich kenne diese Leute nicht, echt :-)
    2. Hallo Gunnar,

      Auch wenn man darüber streiten kann, ob es sinnvoll ist, es nicht funktionieren zu lassen, wenn doch nur Entities demonstriert werden sollen und nicht den Unterschied zwischen internen und externen DTDs in Browsern.

      Weil ich das wirklich pädagogisch unhilfreich finde (und zu Demonstrationszwecken), hab ich das gerade geschilderte Prozedere gemacht.

      Ich hab (in der Shell) die öffentliche Arbeitskopie ausgecheckt bzw. überprüft ob sie aktuell war:

      $ svn checkout https://vms.selfhtml.org/anon-repos/selfhtml/trunk selfhtml  
      ls selfhtml  
      svn update  
      Revision 4737.
      

      Dann hab ich mit meinem Texteditor die entsprechende Änderung vorgenommen:

      $ mate sdml/xml/dtd/entities.xml

      In SDML sind Beispiele zusammen mit der erklärenden Seite in einer XML-Datei gespeichert. Hier kannst Du sie Dir im SELFHTML-Versionsverwaltungssystem angucken. Nachdem ich meine Änderungen vorgenommen habe, stellt auch das Versionsverwaltungssystem fest, dass dort Änderungen sind:

      $ svn status  
      M      sdml/xml/dtd/entities.xml
      

      M steht für „Modified“. Dann hab ich das Versionsverwaltungssystem die Differenz zwischen dem aktuellen Zustand und dem letzten Checkout ausgeben lassen und diese Ausgabe gleich in der Datei smilie-fix.diff umgelenkt.

      $ svn diff > ~/Desktop/smilie-fix.patch

      In dieser Datei stehen nun in einem maschinenlesbaren Format die Änderungen. Hier kannst Du sie Dir anschauen. Rot markiert sind weggenommene Rohdaten, grün markiert sind neu hinzugekommende Änderungen.

      Nur um zu überprüfen, dass nichts falsch ist, habe ich das Anwenden dieses Patches selber ausprobiert. Erstmal mache ich in meiner lokalen Arbeitskopie die Änderungen rückgängig, so dass die Arbeitkopie wieder jungfräulich ist:

      $ svn revert sdml/xml/dtd/entities.xml  
      Rückgängig gemacht: »sdml/xml/dtd/entities.xml«  
        
      svn status
      

      Keine Ausgabe bedeutet „Keine Änderungen“. Und dann habe ich mit dem Tool patch die vorherige Änderung automatisiert angewandt:

      $ patch sdml/xml/dtd/entities.xml ../smilie-fix.diff  
      patching file sdml/xml/dtd/entities.xml  
        
      $ svn status  
      M      sdml/xml/dtd/entities.xml
      

      Der Patch funktioniert also, auch wenn man die Datei nochmal manuell überprüft.

      ...

      Dazu habe ich dann einen Ticket in Trac erstellt, das beschreibt, welches das Fehlverhalten ist und wie man es verbessern könnte. An dieses Ticket habe ich dann den Patch dran gehängt. Ein sich zuständig fühlender Redakteur kann sich jetzt also entschliessen, diesen wie oben demonstriert anzuwenden oder die Änderungen selbst noch nach Gusto verändern.

      Tim

      --
      Alles dauert länger, wenn man es auch noch dabei erklären will.
      1. Hallo Tim,

        Ich hab Subversion und den Editor+SDML-Plugin installiert und das Beispiel nachvollzogen. Danke nochmal für die Zeit.

        Ist es auch möglich, Vorschläge/Korrekturen zur Wiki selbst einzubringen? Und wenn ja, wo liegen die Wiki-seiten? Oder einfach [strg]+[c]?

        Werden inhaltliche Änderungen noch a) in Selfhtml 8.1.2 übernommen oder b) erst in 9.0? Beispiel:track 181.

        Falls b), was muß ich tun, um für solch einfache Fälle, bei Tippfehlern etc, Schreibrechte zu erhalten?
        Sonst macht das Ganze nicht so recht Spaß, wenn es monatelang auf Eis liegt ;-)

        Gruß, Nils

        --
        Es gibt keine Lösung, weil es kein Problem gibt. (Duchamp)
        Ich kenne diese Leute nicht, echt :-)
        1. Hallo,

          Falls b) (...)

          Es soll natürlich heissen: Falls a)

          Gruß, Nils

          1. Ok, hat sich erledigt, ich seh gerade die Meilensteine auf der rechten Seite.

            Gruß, Nils