Changelog zur Manifest-Datei hinzufügen

From Joomla! Documentation

Revision as of 17:04, 25 June 2019 by Max123kl (talk | contribs) (Created page with "* '''note''': Ergänzende Informationen für den Benutzer")
Joomla! 
4.x
>Tutorial

Seit Joomla 4.0 können Extension-Entwickler die Fähigkeit von Joomla nutzen, eine Changelog-Datei zu lesen und eine visuelle Darstellung des Changelogs zu geben. Wenn eine bestimmte Version nicht im Changelog gefunden wird, wird die Schaltfläche Changelog nicht angezeigt.

Die Änderungen in einer Version werden so dargestellt:

Changelog modal

Das Changelog wird an zwei verschiedenen Stellen verwendet.

Update Ansicht

Das Installationsprogramm zeigt das Changelog der Version an, die installiert werden kann, falls verfügbar.

Changelog button on the Update View

Durch klicken auf die AAAA-Schaltfläche wird das Änderungsprotokoll der neu verfügbaren Version angezeigt.

Manager-Ansicht

Der Erweiterungs-Manager zeigt das Änderungsprotokoll der aktuell installierten Erweiterung an, falls verfügbar.

Version number is a link to the changelog modal

Durch klicken auf die Versionsnummer wird das Änderungsprotokoll der aktuell installierten Version angezeigt.

Ein Changelog-URL-Tag in Manifest-Dateien einfügen

Der erste Schritt besteht darin, Ihre Manifestdateien zu aktualisieren, die Joomla mitteilen, wo die Changelog-Details zu finden sind. Fügen Sie Ihren Manifest-XML-Dateien den folgenden Node hinzu:

<changelogurl>https://example.com/updates/changelog.xml</changelogurl>

Update-Server Manifest-Datei

Dieses Beispiel zeigt eine Manifestdatei für den Update-Server, die Joomla über ein Update einer Komponente namens "com_lists" informiert. Dadurch sehen Sie in der Update-Ansicht die Schaltfläche Changelog.

<?xml version="1.0" encoding="utf-8"?>
<updates>
 <update>
  <name>Student List</name>
  <description>List of students</description>
  <element>com_lists</element>
  <type>component</type>
  <version>4.0.0</version>

  <changelogurl>https://example.com/updates/changelog.xml</changelogurl>

  <tags>
   <tag>stable</tag>
  </tags>
  <maintainer>Example Miller</maintainer>
  <maintainerurl>https://example.com/</maintainerurl>
  <section>Updates</section>
  <targetplatform name="joomla" version="4.?" />
  <client>1</client>
  <folder></folder>
 </update>
</updates>

Erweiterung-Manifest-Datei

Fügen Sie zusätzlich das Changelog-URL-Tag zur „Extension Manifest XML“ hinzu. Somit wird die Erweiterungsversion mit den Änderungsprotokollen in der Manager-Ansicht verknüpft.

<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="3.2.0" method="upgrade">
	<name>COM_LISTS</name>

... Other stuff ...

	<changelogurl>https://example.com/updates/changelog.xml</changelogurl>

	<updateservers>
        <server type="extension" name="My Extension's Updates">https://example.com/lists-updates.xml</server>
	</updateservers>
</extension>

Changelog-Datei erstellen

Die Changelog-Datei muss die folgenden 3 Nodes enthalten:

  • element
  • type
  • version

Diese Informationen werden verwendet, um das richtige Changelog für eine bestimmte Erweiterung zu identifizieren.

Ein version-Node innerhalb eines changelog-Node ist immer erforderlich. Andernfalls erhalten Sie eine Fehlermeldung wie SyntaxError: JSON.parse: unerwartetes Zeichen in Zeile 1, Spalte 1 der JSON-Daten.

<element>com_lists</element>
<type>component</type>
<version>4.0.0</version>

Weiter wird das Changelog mit einer oder mehreren Änderungsarten gefüllt. Die folgenden Änderungs-Typen werden unterstützt:

  • security: Etwaige Sicherheitsprobleme, die behoben wurden
  • fix: Fehler, die behoben wurden
  • language: Dieser gilt für Sprachänderungen
  • addition: Neu hinzugefügte Features
  • change: Andere Änderungen
  • remove: Aus der Erweiterung entfernte Features
  • note: Ergänzende Informationen für den Benutzer

Each node can be repeated as many times as needed.

The format of the text can be plain text or HTML but in case of HTML, it must be enclosed in CDATA tags as shown in the example.

<changelogs>
    <changelog>
        <element>com_lists</element>
        <type>component</type>
        <version>4.0.0</version>
        <security>
            <item>Item A</item>
            <item><![CDATA[<h2>You MUST replace this file</h2>]]></item>
        </security>
        <fix>
            <item>Item A</item>
            <item>Item b</item>
        </fix>
        <language>
            <item>Item A</item>
            <item>Item b</item>
        </language>
        <addition>
            <item>Item A</item>
            <item>Item b</item>
        </addition>
        <change>
            <item>Item A</item>
            <item>Item b</item>
        </change>
        <remove>
            <item>Item A</item>
            <item>Item b</item>
        </remove>
        <note>
            <item>Item A</item>
            <item>Item b</item>
        </note>
</changelog>
<changelog>
	<element>com_lists</element>
	<type>component</type>
	<version>0.0.2</version>
	<security>
		<item>Big issue</item>
	</security>
</changelog>
</changelogs>

This file contains 2 changelogs:

  • Version 0.0.2 (for testing the manage view)
  • Version 4.0.0 (for testing the update view)

A changelog can have as many versions as needed.