Bug 23197 - UMC: JavaScript API-Dokumentation mit Dojo-Framework generieren
UMC: JavaScript API-Dokumentation mit Dojo-Framework generieren
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 3.0
Other Linux
: P3 enhancement (vote)
: UCS 3.0-2
Assigned To: Florian Best
Alexander Kläser
: interim-2
Depends on:
Blocks: 28018
  Show dependency treegraph
 
Reported: 2011-08-08 18:15 CEST by Alexander Kläser
Modified: 2012-07-23 11:27 CEST (History)
0 users

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:
klaeser: Patch_Available+


Attachments
api.patch (18.92 KB, patch)
2012-02-07 16:32 CET, Florian Best
Details | Diff
icon.tar.gz (11.58 KB, application/gzip)
2012-02-07 16:34 CET, Florian Best
Details
api.patch (77.66 KB, patch)
2012-06-22 09:58 CEST, Florian Best
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2011-08-08 18:15:27 CEST
Die JavaScript-API ist derzeit zu einem Teil im Quellcode dokumentiert. Daraus sollte mit den Dojo-Tools eine Dokumentation automatisch erzeugt und paketiert werden:

  http://dojotoolkit.org/reference-guide/util/doctools.html
Comment 1 Alexander Kläser univentionstaff 2012-01-31 11:05:24 CET
Bitte als Patch vorbereiten, so dass dieser nach der Veröffentlichung von 3.0-1 in das SVN übernommen werden kann.
Comment 2 Florian Best univentionstaff 2012-02-07 16:32:58 CET
Created attachment 4152 [details]
api.patch

Um den Patch bauen zu können muss ein tar.gz Archiv des api-viewer source erstellt werden. Das kann mit der enthaltenen create_api_archive.sh gemacht werden.
Die im Patch benutzte Version ist Revision 803 (https://svn.dojotoolkit.org/website/trunk/api)
Comment 3 Florian Best univentionstaff 2012-02-07 16:34:51 CET
Created attachment 4153 [details]
icon.tar.gz

Das Icon für die UCS-overview Seite im svg und png Format.
Comment 4 Florian Best univentionstaff 2012-02-16 15:38:25 CET
Beim anwenden des patches sollte Bug #26163 beachtet werden. In dem paket ist eine Abhängigkeit auf php5-curl, dieses ist in unmaintained.
Comment 5 Florian Best univentionstaff 2012-04-02 16:48:13 CEST
Der Patch wurde mit einer kleinen Änderung am create_api_archive.sh eingechekt.
Revision 31884
Paket bauen + Changelog kommt morgen.

Es sollte vielleicht überlegt werden, dojox aus der doku rauszunehmen, da das Bauen des Pakets dadurch deutlich länger dauert.
Comment 6 Alexander Kläser univentionstaff 2012-04-02 17:18:15 CEST
Dojox → sollte zunächst der Vollständigkeit halber drin bleiben.
Kann der Bug geschlossen werden?
Comment 7 Florian Best univentionstaff 2012-04-03 12:45:43 CEST
Es gibt hier noch ein Problem:
Das Paket muss als root gebaut werden bzw. es braucht Zugriff auf /usr/share/univention-dojo/util/docscripts/modules/umc.module.properties.

In dieser Datei muss der Pfad zu den UMC JavaScripten als !! relativer !! Pfad angegeben werden (also ../../../../../../temporäres_verzeichnis_in_dem_gebaut_wird/umc ).
umc-frontend kann ja keine build dependency auf sich selbst haben, man könnte das umc-frontend-doc Paket in eine andere Paketgruppe verschieben.

Der /usr/share/univention-dojo/util/docscripts/modules/ Pfad kann in der generate.php nicht angegeben werden sondern ist hartkodiert (lib/parser2/dojo2.inc Zeile 19). Allerdings könnte man das umgehen, wenn man in PHP temporär den include_pfad ändert (generate.php patchen).

Ich habe einen upstream-Bug angelegt, dass man absolute Pfade auswählen können sollte.
http://bugs.dojotoolkit.org/ticket/15119

WORKAROUND:
Das Sinnvollste ist wohl erstmal, die generate.php bzw. lib/parser2/dojo2.inc in univention-dojo-dev zu patchen.
Comment 8 Florian Best univentionstaff 2012-04-03 14:04:29 CEST
(In reply to comment #7)
> WORKAROUND:
> Das Sinnvollste ist wohl erstmal, die generate.php bzw. lib/parser2/dojo2.inc
> in univention-dojo-dev zu patchen.
Problem wurde anders gelöst: bei bauen wird jetzt /usr/share/univention-dojo/util/docscripts/ in /tmp/univention-dojo kopiert. Dadurch kann die benötigte Datei angelegt werden.
Comment 9 Florian Best univentionstaff 2012-04-04 08:10:38 CEST
Ok, jetzt kann der zu.
univention-managament-console-frontend 1.0.287-5  und univention-dojo 5.0.18-4 wurden erfolgreich gebaut.
Dies enthält nun zusätzlich die Pakete univention-managament-console-frontend-doc und univention-dojo-api-viewer.
Comment 10 Florian Best univentionstaff 2012-04-10 14:13:39 CEST
Makefile wurde aktualisiert, der temporäre Ordner für dojo ist jetzt nicht mehr in /tmp.

revision 31946
univention-management-console-frontend (1.0.287-6) unstable; urgency=low
  * adapted Makefile (Bug #23197)
Comment 11 Alexander Kläser univentionstaff 2012-04-10 16:36:33 CEST
Bei der Installation erhalte ich folgenden Fehler:

====================
(Lese Datenbank ... 117726 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Ersetzen von univention-management-console-frontend-doc 1.0.256-2 (durch .../univention-management-console-frontend-doc_1.0.288-1.289.201204101452_all.deb) ...
Ersatz für univention-management-console-frontend-doc wird entpackt ...
univention-management-console-frontend-doc (1.0.288-1.289.201204101452) wird eingerichtet ...
ln: Erzeuge symbolische Verknüpfung „/var/www/umc.xml“: Die Datei existiert bereits
====================
Comment 12 Alexander Kläser univentionstaff 2012-04-10 16:37:44 CEST
(In reply to comment #11)
> Bei der Installation erhalte ich folgenden Fehler:
> ...

Mein Fehler, war noch von einer alten Installation.
Comment 13 Alexander Kläser univentionstaff 2012-06-20 17:51:19 CEST
Es wäre super, wenn sich die JS-API ebenfalls unterhalb des Eintrages "Entwickler-Dokumentation" installiert (wie auch univention-management-console-doc). Das Icon mit dem Hammer kann ja für den Eintrag "Entwickler-Dokumentation" übernommen werden.
Comment 14 Florian Best univentionstaff 2012-06-22 09:58:30 CEST
Created attachment 4469 [details]
api.patch

Eintragung unter "Univention Entwickler-Dokumentation". Das icon dafür wird auch hinzugefügt.
Comment 15 Florian Best univentionstaff 2012-06-22 12:07:28 CEST
zum Patch wurd noch ein postrm und eine conf.py hinzugefügt.
Changelog gemacht.
Paket gebaut.

univention-doc (0.0.3-2) unstable; urgency=low
  * removed hardcoded link to index.html (Bug #23197)
  * added icon file for univention-doc (Bug #23197)
univention-dojo (5.0.20-1) unstable; urgency=low
  * added dependency to univention-doc in univention-dojo-api-viewer
        (Bug #23197)
Comment 16 Alexander Kläser univentionstaff 2012-07-03 18:15:40 CEST
QA: Soweit alles super. Changelog-Eintrag vorhanden.
Comment 17 Stefan Gohmann univentionstaff 2012-07-20 15:25:32 CEST
UCS 3.0-2 has been released: 
  http://forum.univention.de/viewtopic.php?f=54&t=1905

If this error occurs again, please use "Clone This Bug".