Passwörter: Hash-Verfahren PBKDF2 unterstützen und als Standard nutzen
[kivitendo-erp.git] / doc / UPGRADE
1 Wichtige Hinweise zum Upgrade von älteren Versionen
2 ===================================================
3
4
5 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
6
7 Upgrade auf v?????
8 ==================
9
10 * Neue Perl-Modul-Abhängigkeiten:
11
12   * PBKDF2::Tiny
13
14   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
15
16   $ scripts/installation_check.pl -ro
17
18 * Der in der Dokumentation beschriebene Mechanismus für die CGI-Anbindung
19   (2.6.1 Grundkonfiguration mittels CGI) wurde geändert. Ein einfacher Alias
20   auf das Programmverzeichnis funktioniert nicht mehr, und es muss immer ein
21   AliasMatch auf einen dispatcher eingerichtet werden. Die Dokumentation wurde
22   aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich
23   nichts.
24
25 * Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den
26   der Task-Server laufen soll, muss in der Administrationsoberfläche
27   in der Konfiguration des Mandanten hinterlegt werden, welchen
28   kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem
29   Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server
30   diesen Mandanten.
31
32   Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client«
33   und »login« aus dem Abschnitt [task_server] entfernt. Der
34   Task-Server prüft beim Starten allerdings, ob diese Einstellungen
35   noch existieren und verweigert den Start mit einer hilfreichen
36   Fehlermeldung, solange sie noch vorhanden sind.
37
38 Upgrade auf v3.3.0
39 ==================
40
41 * Bei Upgrade von Versionen vor v.3.2.x wie immer erst die dortigen
42   Upgradehinweise beachten.
43
44 * Es gibt keine neuen Perl-Modul-Abhängigkeiten.
45
46 * Die alte ungepflegte Druckvorlagenvariante "Standard" wurde entfernt.
47   Bereits verwendete Druckvorlagen, die darauf aufbauen, funktionieren
48   natürlich weiterhin.
49
50 * Für die Verwendung des MT940 Import Features der Bankerweiterung muß
51   aqbanking installiert werden. Dies wird nur für die Konvertierung vom MT940
52   ins CSV Format benötigt, das Kommandozeilentool "aqbanking-cli" befindet sich
53   z.B. unter Ubuntu im Paket aqbanking-tools.
54
55 Upgrade auf v3.2.0
56 ==================
57
58 * Neue Perl-Modul-Abhängigkeiten:
59
60   * GD
61   * HTML::Restrict
62   * Image::Info
63
64   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
65
66   $ scripts/installation_check.pl -ro
67
68   Sofern das Upgrade von einer früheren Version als 3.1.0 geschieht auch die
69   Upgradehinweise der Vorversionen beachten.
70
71 * Druckvorlagen auf shipto-Verwendung prüfen
72
73   Hier hat sich das Standardverhalten geändert und ggf. werden shipto* nicht mehr
74   ausgedruckt, hier müssten die Druckvorlagen individuell angepasst werden, s.a.
75   Changelog -> Verkaufsbeleg-Ausdruck.
76
77 Upgrade auf v3.1.0
78 ==================
79
80
81 * BEVOR ein Aufruf im Administrationsbereich erfolgt, muss zwingend der
82   webdav Ordner im Installationspfad vorhanden sein!
83    -  mkdir webdav/
84    -  Rechte für webserver setzen ($ chmod www-data webdav/)
85   Dieses "Feature" war in vorhergehenden Versionen optional, wird aber
86   für das Upgrade auf Mandantenfähigkeit vorausgesetzt.
87
88 * Neue Softwarevoraussetzungen: Perl v5.10.1 oder neuer sowie
89   PostgreSQL 8.4 oder neuer werden zwingend vorausgesetzt. Ein Betrieb
90   mit älteren Versionen ist nicht mehr möglich.
91
92 * Neue Perl-Modul-Abhängigkeiten:
93
94   * File::Copy::Recursive
95   * Rose::DB::Object muss v0.788 oder neuer sein (aufgrund eines Bugs
96     in besagtem Modul im Zusammenspiel mit PostgreSQL)
97
98   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
99
100   $ scripts/installation_check.pl -ro
101
102 * Die Datenbank muss zwingend Unicode als Encoding nutzen. Daher wird
103   auch die Konfigurationsvariable "system.dbcharset" nicht mehr
104   unterstützt.
105
106 * Einführung von Mandanten. Früher war die Konfiguration der
107   Datenbanken für jeden Benutzer getrennt vorzunehmen. Mit diesem
108   Release wurden Mandanten eingeführt: ein Mandant bekommt einen Namen
109   sowie die Datenbankkonfiguration, und Benutzer bekommen
110   Zugriffsrechte auf einen oder mehrere Mandanten.
111
112   Um dieses Update durchzuführen, müssen Sie sich einmal im
113   Administrationsbereich anmelden. Vorher ist kein Login im
114   Benutzerbereich möglich.
115
116   Die neue Struktur bedingt, dass viele Scripte, die bisher zur
117   Konfiguration nur einen Benutzer verlangt haben, jetzt auch einen
118   Mandanten verlangen. Die Konfiguration dieser Scripte ist deshalb
119   manuell anzupassen. Dazu gehören:
120
121   - der Task-Server (config/kivitendo.conf)
122   - CSV-Import von der Shell aus (scripts/csv-import-from-shell.sh)
123
124   Die folgenden Scripte sind ebenfalls betroffen, allerdings nur für
125   Entwickler interessant:
126
127   - scripts/dbupgrade2_tool.pl
128   - scripts/rose_auto_create_model.pl
129
130 * Neue Benutzerrechte
131
132   Diese müssen bei vorhandenen Gruppen eventuell nachgepflegt werden. Z.B. bei
133   der Gruppe Vollzugriff
134
135   - Stammdaten -> Kunden und Lieferanten erfassen. Alle Lieferanten bearbeiten.
136     Alle Kunden bearbeiten
137   - Konfiguration -> Verändern der kivitendo-Installationseinstellungen (die
138     meisten Menüpunkte unterhalb von 'System')
139
140 * Die alten ungepflegten Druckvorlagenvarianten French und Service
141   wurden entfernt.
142
143 * Die HTML-Druckvorlagen der Berichte (GuV, Bilanz, SuSa, BWA, UStVA) werden
144   jetzt alle zentral in den Webvorlagen verwaltet, es werden keine
145   benutzerangepasste Versionen der Druckvorlagen im Druckvorlagenverzeichnis
146   mehr unterstützt.
147
148 Upgrade auf v3.0.0
149 ==================
150
151 * Neue Abhängigkeiten
152
153   * Clone 1.16
154   * Email::MIME
155   * FCGI jetzt min Version 0.72
156   * Test::Harness 3.00
157   * IO::Socket::SSL
158   * Net::LDAP
159   * Net::SMTP::SSL
160   * Net::SSLGlue
161
162   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
163
164   $ scripts/installation_check.pl -ro
165
166 * Neue Entwicklerabhängigkeiten
167
168   * Test::Deep
169   * GD 2.00
170
171 * Diverse umstrittene Features zum nicht standardkonformen Umgang mit gebuchten
172   Rechnungen sind jetzt standardmässig deaktiviert und müssen unter "System" ->
173   "Mandantenkonfiguration" aktiviert werden.
174
175 * Die Übersetzungen "de_DE" und "fr" für die alternative deutsche Version und
176   französische Version respektive wurden entfernt. Es bleiben offiziell
177   unterstützte Übersetzungen in Deutsch ("de") und English ("en").
178
179 * Dieses ist die letzte Version, die Perl-Versionen vor 5.10.1
180   unterstützen wird.  Ab dem nächsten Release werden Sprachkonstrukte
181   verwendet werden, die nicht mehr in 5.8 kompilieren, und Module, die
182   seit v5.10.1 zu den Coremodulen gehören, werden ab dann nicht mehr
183   als explizite Abhängigkeiten gelistet.
184
185
186 Upgrade auf v2.7.0
187 ==================
188
189 * In der Version 2.7.0 wird das XUL Menü entfernt. Alle Benutzer die das XUL
190   Menü noch eingestellt haben, werden beim ersten Einloggen auf ein
191   Kompatibilitätsmenü gesetzt. Das Javascriptmenü wurde entsprechend erweitert
192   um der Funktionalität nahe zu kommen.
193
194 * Das Lizenzenfeature wurde ersatzlos entfernt.
195
196 * In den LaTeX Vorlagen gilt der Befehl "pagebreak" und die dazugehörigen
197   "sumcarriedforward" und "lastpage" als deprecated und werden in einer
198   kommenden Version komplett entfernt. Die Mechanik ist anfällig gegenüber
199   subtilen Formatierungsfehlern bei bestimmten Zahlenformaten und ist
200   grundsätzlich fehlerhaft in den gemachten Annahmen über den verfügbaren Platz
201   auf einer Seite. Die Standardvorlagen sind entsprechend angepasst worden
202   und müssen in der Administration neu angelegt werden.
203
204 * Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
205   Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
206   benennen Sie ihn um bevor Sie das Update starten.
207
208 * Die Druckvorlagen für USTVA vor 2012 wurden entfernt und das Ausdrucken von
209   USTVA als PDF ist deprecated. Da die Eingabe von Erklärungen als PDF nicht
210   mehr gestattet ist, sollten Archivkopien der USTVA direkt bei Elster bezogen
211   werden, oder auf anderem Wege erstellt werden. Der Prozess dazu wird sich in
212   einer kommenden Version ändern.
213
214 * Die Namen der von LaTeX generierten PDF-Dateien sind jetzt in der
215   eingestellten Dokumentensprache, nicht mehr in der Oberflächensprache des
216   Bearbeiters.
217
218 * Neue Abhängigkeiten
219
220   * JSON
221   * String::ShellQuote
222   * Digest::SHA (optional, empfohlen)
223
224   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
225
226   $ scripts/installation_check.pl -ro
227
228 * CSV-Import wurde neu in Perl implementiert
229
230   Der PHP-Code wurde entfernt. Automatische Skripte, die per Aufruf von
231   lxo-import/partsB.php?cron=1 die Datei parts.csv importiert haben,
232   funktionieren nicht mehr.  Stattdessen kann scripts/csv-import-from-shell.sh
233   benutzt werden. Im Unterschied zur PHP-Version werden unbekannte Warengruppen
234   nicht mehr automatisch angelegt, stattdessen bricht das Skript ab.
235
236 * Rechteverwaltung
237
238   * Das Recht "Kunden und Lieferanten bearbeiten" wurde aufgespalten in zwei
239     einzelne Rechte. Ein Updatescript passt bestehende Gruppenaentsprechend an.
240   * Das Recht "Preise nd Rabatte bearbeiten" wurde neu eingeführt und ist
241     notwendig um in Belegen Preise ändern zu können. Es wird beim Upgrade
242     automatisch allen Benutzern erteilt.
243   * Das Recht "Administration" wurde neu eingeführt, und ist dazu da
244     administrative Tätigkeiten an der Mandantendatenbank aus einm Benutzerlogin
245     heraus durchzuführen. Es ist standardmäßig NICHT vergeben.
246   * Der Vorlageneditor wurde unter das Recht Administration gestellt, war
247     vorher Konfiguration.
248
249
250 Upgrade auf v2.6.3
251 ==================
252
253 1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
254 authentication.pl und lx-erp.conf, sowie deren Varianten,
255 abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
256 aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
257 lx_office.conf.default. Die entsprechenden Werte muß man selber neu
258 konfigurieren, dies ist automatisiert zu fehleranfällig.
259
260 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
261 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
262
263 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
264 man lx_office.conf nicht einchecken.
265
266 Eine etwas ausführlichere Beschreibung findet sich in Kapitel 2.3
267 "Lx-Office-Konfigurationsdatei" in doc/Lx-Office-Dokumentation.pdf
268
269 2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
270 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
271 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
272 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
273 Dämon wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
274 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
275 bekommen. Die Einrichtung des Dämonen wird in der
276 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
277
278 3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
279 hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
280 den folgenden Befehl im Lx-Office Verzeichnis aus:
281
282 $ scripts/installation_check.pl
283
284 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
285 der Installationsanweisung.
286
287 Zumindest folgende Module sind neu benötigt:
288
289 * Config::Std
290 * Params::Validate
291
292 4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
293 "mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
294 Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
295 seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
296 dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
297 hat. Details dazu finden sich in Kapitel 2.5.2 "Konfiguration für
298 FastCGI/FCGI" in doc/Lx-Office-Dokumentation.pdf
299
300
301 Upgrade auf v2.6.2
302 ==================
303
304  Vor dem Einloggen
305  -----------------
306
307 Mit Version 2.6.2 sind einige Abhängigkeiten von Perl-Modulen hinzugekommen.
308 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
309 Lx-Office Verzeichnis aus:
310
311 $ scripts/installation_check.pl
312
313 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
314 der Installationsanweisung.
315
316 Zumindest folgende Module sind neu benötigt:
317
318 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
319   Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
320   Distribution sollte für die automatische Installation der anderen
321   zwei Pakete sorgen)
322
323  Neue Gruppenrechte
324  ------------------
325
326 Es wurde ein neues Recht "Druck" eingeführt. Dieses bestimmt, ob die
327 Benutzerin das Menü "Druck" zu Gesicht bekommt oder nicht, unabhängig
328 davon, wie die Rechte für die einzelnen Unterpunkte gesetzt sind.
329
330 Für bereits bestehende Gruppen muss es sofern gewünscht vom
331 Administrator manuell gewährt werden.
332
333
334 Upgrade auf v2.6.1
335 ==================
336
337  Vor dem Einloggen
338  -----------------
339
340 Mit Version 2.6.1 wurden die Listen der benötigten Perl Module überarbeitet.
341 Einige der vorher in den Abhängigkeiten gelisteten Module waren Coremodules
342 (und damit in jeder Perldistribution vorhanden), oder ihrerseits Abhängigkeiten
343 anderer benötigter Module. Durch die Überarbeitung hat sich die Liste deutlich
344 geändert.
345
346 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
347 Lx-Office Verzeichnis aus:
348
349 $ scripts/installation_check.pl
350
351 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
352 der Installationsanweisung.
353
354 Zumindest folgende Module sind neu benötigt:
355
356 * URI
357 * XML::Writer
358
359  Neue Konfigurationsvariablen
360  ----------------------------
361
362 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
363 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
364 standardmäßig deaktiviert.