6.0 Release Notes

R6.0

(05.10.2021) bc7633d -> M24 (Change Log)



This is a major release.
The 6.0 release serves mainly two purposes: Migration to Unicode and PHP 8.0 compatibility.


Unicode

1. Notable in this release

  1. UTF-8 support
    • यूनिकोड, Юникод, ইউনিক’ড, 유니코드
  2. accent and case-sensitive page tag 
  3. implemented full support for relative path
  4. new info, chat and details formatter along with new wrapper options
  5. complete PHP 8.0 compatibility

milestones

  • stable – 15.12.2019
  • m24 – 05.10.2021

2. Download


wacko.6.0.24.zip

  • SHA1: c9107292ef80caeee2742e84c90f37f2382eafc6
  • File updated to change set bc7633d303e584a07aff85800118052a21de0389

Repo files (including community folder)


Clone repo (see Repository)

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

3. Upgrade path

R5.x –> R5.5 (requires PHP 7.0 – 7.4)
R5.5 –> R6.0 (requires PHP >= 7.3)


Please read the upgrade notices carefully.


{{admin_utf8}}database UTF-8 conversion script

4. Installation

953f099d5fd84f73bb7901f53c1d07802e39ec04 Installation guide

4.1. Requirements

requires now

  • PHP 7.3 – 8.0 (PHP 7.4 recommended)
  • PHP Extensions
    • bcmath, ctype, gd, iconv, intl, json, mbstring, openssl, pcre, spl 
  • Apache >= 2.4
    • mod_rewrite (recommended)
  • SQL database system, one of:
    • MariaDB >= 10.2
    • MySQL >= 5.7

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 directories to be writable
touch config/config.php
chmod 666 config/config.php


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


chmod 0660 config/lock config/lock_ap sitemap.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 may want to change this 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/

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

8. Backwards Compatibility

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

9. Known Issues

All known issues are tracked in our Bug Tracker.

  1. Session duration issue – FIXED partially
  2. Missing route cases (needs fix)
    1. CSS files in RECOVERY mode

10. Developers

Ensure that the function or filter you use supports Unicode when you need to process Unicode strings. Missing Unicode support will be added as needed, please provided us with feedback.

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 wacko/DEBUG when the config debug is enabled.
Be aware the log isn't emptied automatically. Ensure that the file wacko/DEBUG can be created and is writable.

touch DEBUG
chmod 0664 DEBUG

11. Documentation

12. 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.


13. Credits


  • RideSnowNow — developer, translation
  • 王彥傑 (Yan-Jie Wang) – initial Unicode fork
  • Raysir — testing, translation
  • Elar9000 — developer, translation, support
  • EoNy — translation, documentation, screenshots, support
  • KlePy — Spanish translation
  • Abram4 — Russian translation, testing
  • bear – testing
  • ascrsoft — Spanish translation, testing