6.1 Release Notes

R6.1

(02.11.2023) aa1f504 -> M24 (Change Log)



This is a major release.
The 6.1 release serves mainly two purposes: Implement new PHP 8 functionality and improve GUI usability.


PHP 8

1. Notable in this release

  1. new PHP 8 functionality and compatibility
  2. RTL theme support
  3. complete Chinese Simplified translation
  4. section edit support
  5. thumbnail creation
  6. global string find-and-replace action

milestones

  • stable - 04.09.2021
  • m24 - 02.11.2023

2. Download

wackowiki-6.1.24.zip

  • File updated to change set 9740f34f3750b218036f08ff1753932f73a27598

Repo files (including community folder)


Clone repo (see Repository)

git clone -b 6.1.24 https://github.com/WackoWiki/wackowiki.git	

3. Upgrade path

R6.0 –> R6.1 (requires PHP >= 8.0)

  • requires at least WackoWiki 6.0.22

Please read the upgrade notices carefully.

4. Installation

Installation guide

4.1. Requirements

requires now

  • PHP 8.0 - 8.3 (PHP 8.2 recommended)
  • PHP Extensions
    • bcmath, ctype, gd, iconv, intl, json, mbstring, openssl, pcre, spl
  • Apache >= 2.4 / Nginx
    • mod_rewrite (recommended)
  • SQL database system, one of:
    • MariaDB >= 10.4
    • MySQL >= 8.0

Step by step as Installer Screenshots.


Preparing the Database for Installation

CREATE DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci;	

4.2. File Permissions

Change the permissions on the following files and directories to be writable


Example:
touch config/config.php
chmod 666 config/config.php config/lock config/lock_ap


chmod 0755 _cache/config/ _cache/feed/ _cache/page/ _cache/query/ _cache/session/ _cache/template/ file/backup/ file/global/ file/perpage/ file/thumb/ file/thumb_local/ xml/


reset after installation / upgrade
chmod 644 config/config.php

4.3. Path for session values

Check if the provided path for CACHE_SESSION_DIR is correct. The default value is /tmp but may vary in your environment.
Furthermore, you can change this folder to a custom folder for the application (e.g. _cache/session).


constants.php:

const CACHE_SESSION_DIR				= '/tmp';	

4.4. RewriteBase

If your webserver's URLs are not directly related to physical file paths, you will need to use RewriteBase in every .htaccess file where you want to use RewriteRule directives.

RewriteBase /folder/	

4.5. New config settings

Please check the Change Log for more details.

5. Admin panel

  • to login define the recovery_password in the config.php file first
    1. call the {{admin_recovery}} action as Admin and generate the password hash for your recovery_password
    2. add the password hash: 'recovery_password' => 'add hash here',
  • Don't forget to delete the _cache/config/config.php afterwards.
  • you must be logged in as member of the Admin group in the first place to access the admin panel
  • call yourwiki/admin.php
  • enter your recovery_password

If your Admin panel gets locked reset config/lock_ap from 1 to 0

6. Themes


If you want to keep your layout, you have to use a program like Meld or WinMerge to merge your CSS and other theme files with the new files in the folder wacko/theme/default.


You can write or adapt your theme also without using the template engine.


-> Themes
-> Theme guide with example templates

7. Extensions

Action


Formatter

8. Backwards Compatibility

We dropped compatibility code for older PHP and MySQL versions. R6.1 requires at least PHP 8.0 and MariaDB 10.2 or MySQL 5.7. To use WackoWiki with older PHP or MySQL versions, use the older branch of 6.0.x releases, which you can find on the download page.

9. Known Issues

All known issues are tracked in our Bug Tracker.

  1. MySQL 8: Remove the NO_AUTO_CREATE_USER in your constants.php, e.g.
     const SQL_MODE_PERMISSIVE			= 'NO_ENGINE_SUBSTITUTION';	

    Otherwise it will throw a Fatal error: Uncaught mysqli_sql_exception: Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER' in /setup/install-database.php:180
  2. ngram Full-Text Parser, used to support Chinese, Japanese, Korean word segmentation is currently only available for MySQL.
  3. Session duration issue - FIXED partially
  4. WikiEdit Autocomplete selection ain't working (help needed, can someone fix it)
  5. Missing route cases (needs fix)
    1. CSS files in RECOVERY mode

10. Developers

10.1. Debug functions

  1. to write a parameter in the debug log
    • Ut::dbg('debug_variable', $parameter);
  2. add debug output to DEBUG file and popup-window in browser
    • Diag::dbg($parameter);
    • to highlight the debug output in the console add '[BLUE|GOLD|ORANGE|RED]' as the first argument
      • e.g. Diag::dbg('GOLD', $parameter);

In both cases it writes the $parameter to the log in the main directory src/DEBUG when the config debug is enabled.
Be aware the log isn't emptied automatically. Ensure that the file src/DEBUG can be created and is writable.

touch DEBUG
chmod 0664 DEBUG	

11. Documentation

12. What's Planned

WackoWiki is pretty usable now. There are of course few peculiarities and bugs, some old ones and some new ones which are waiting to be fixed. Now the main task is to make the Wiki engine better and reduce bugs.


Apart from that following features are planned to be implemented:

  1. extended ACLs
  2. WackoFormatter rewrite
  3. responsive device-agnostic theme
  4. improve GUI usability
  5. filter for lists
  6. faceted search
  7. archive table
  8. guest settings

13. Contribute

Those interested in following and contributing to the development of WackoWiki can check out the repository, and participate in the discussions on the WackoWiki Development and contribute patches. Policies and the current state of the project and plans are available in the Dev section of the wiki.


14. Feedback

Leave a comment here

if something is not clear or you have further questions.

15. Credits


  • Elar9000 -- developer, translation, support
  • EoNy -- translation, documentation, screenshots, support
  • brianko - English translation
  • Evaggelos Balaskas - Greek translation
  • qianmengnet - Chinese Simplified translation
  • 王彥傑 - Chinese Traditional translation
  • João Sefhriloff - Português translation