5.5 Release Notes
R5.5
(31.12.2019) b4095e3[link1] -> M17 (Change Log[link2])This is a major release and a security update for the stable 5.x branch.
In addition to miscellaneous fixes the 5.5 release serves mainly three purposes: Migration to HTML5, address security related features and PHP 7.0 - 7.4 compatibility.
1. Notable in this release
- complete PHP 7.0 - 7.4 compatibility
- HTML5 support
- major refactoring of init system
- new session handler
- new URI router[link3]
- new template engine[link4]
- added php-diff rendering methods
- replaced all icons with SVG icons
- implemented auth and form token
- added support for audio, video and SVG files
- added Bad Behaviour[link5] as extension
- public registration moderation by admin
- using
password_hash()
andpassword_verify()
API - file link tracking
- improved notification handling
- localized WikiEdit and Admin panel
milestones
- beta - 14.12.15
- rc - 18.04.16
- rc2 - 12.08.16
- rc3 - 05.06.17
- final - 25.08.17
- m17 - 31.12.19
2. Download
wacko.r5.5.17.zip[link6]- SHA1: b27118eff92927ef134bc3bbfb2eb517614f85ef
- File updated to change set b4095e3bda506094d298e6b6a3c293eb3db0f9d6
Repo files (including community[link7] folder)
Clone repo
git clone -b 5.5.17 https://bitbucket.org/wackowiki/wackowiki.git
3. Upgrade path
R4.x –> R5.0[link11] (requires PHP 5.2 / 5.3)R5.x –> R5.5[link12] (requires PHP >= 7.0)
Please read the upgrade notices[link12] carefully.
4. Installation
Installation guide[link13]4.1. Requirements
requires now[link14]- PHP >= 7.0 (PHP 7.3 recommended)
- PHP Extensions
- bcmath, ctype, gd, iconv, json, mbstring, openssl, pcre, spl
- Apache >= 2.4
- mod_rewrite (recommended)
- SQL database system, one of:
- MariaDB >= 10
- MySQL >= 5.6
Step by step as Installer Screenshots[link15].
Preparing the Database for Installation
Data base configuration: If the installer asks you for charset, select the appropriate character set, e.g.
- [cp1252 West European] for Latin 1
- [cp1251 Windows Cyrillic] for Russian
- [cp1257 Windows Baltic] for Estonian
- [ISO 8859-2 Central European] for Polish and Hungarian
- [ISO 8859-7 Greek] for Greek
4.2. File Permissions
Change the permissions[link16] on the following files and directories to be writableExample:
touch config/config.php
chmod 666 config/config.php
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 forCACHE_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[link17] for the application (e.g.
_cache/session
) .constants.php:
define('CACHE_SESSION_DIR', '/tmp');
4.4. Path to user and group profile
The path for link to the users page or profile((user:UserName UserName))
is set in config['users_page']
. - e.g. WikiAdmin[link18]
The path for link to the group page or profile
((group:GroupName GroupName))
is set in config['groups_page']
. - e.g. WackoWiki[link19]
4.5. New config settings
Please check the Change Log[link2] for more details.
5. Admin Panel
The Admin panel[link20] remains in beta stage.- to login define the
recovery_password
in the config.php file first- call the
{{admin_recovery}}
action as Admin and generate the password hash for your recovery_password - add the password hash:
'recovery_password' => 'add hash here',
- call the
- 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
All themes[link21] other thandefault
are outdated and unmaintained and were moved to the community/theme[link22] section. If you like to use one of them, please help to update this particular theme.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[link23].
A Guide for the new template engine[link4] will hopefully follow soon. Nevertheless you can write or adapt your theme without using the template engine.
7. Backwards Compatibility
We dropped compatibility code for older PHP and MySQL versions. R5.5 requires at least PHP 7.0 and MySQL 5.6. To use WackoWiki with older PHP or MySQL versions, use the previous branch of 5.4.x releases, which you can find on the download page[link24].8. Known Issues
All known issues[link25] are tracked in our Bug Tracker.[link26]- Session duration issue[link27]
- Missing route cases (needs fix)
- CSS files in RECOVERY mode
- activate the option
multilanguage
in the installer / secondary config to avoid the following issues:- chars from another charset are not converted to HTML unicode entities
- This issue will become obsolete with our upcoming Unicode ready Wiki engine.
- WikiEdit won't show if you use [et] or [pl] as page language with the auto complete feature -> SyntaxError: invalid range in character class
- Workaround: disable Autocomplete under user settings -> extended -> Complete wikilinks by Ctrl+Space
9. Developers
9.1. New debug functions
- to write a parameter in the debug log
-
Ut::dbg('debug_variable', $parameter);
-
- 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);
- e.g.
-
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
9.2. Access config values
- new:
db->users_page
- legacy:
config['users_page']
9.3. HTTP functions
- new
-
http->redirect()
-
http->invalidate_page()
-
9.4. SQL functions
- new
-
db->sql_query()
-
db->load_all()
-
db->load_single()
-
10. Credits
Of note, is the large contribution of Serge Terekhov[link28] to this release.- RideSnowNow[link28] -- developer, translation
- birnbacs[link29] -- patches #443[link30], #444[link31], #422[link32], #432[link33]
- javafun[link34] -- patches #432[link33]
- TriS[link35] -- patches #432[link33]
- RichMarisa[link36] -- testing #432[link33]
- Raysir[link37] -- testing, translation, patches #447[link38], #462[link39], #461[link40]
- Elar9000[link41] -- developer, translation, support
- EoNy[link42] -- translation, documentation, screenshots, support
- CodeFetch -- patches #458[link43]
- KlePy[link44] -- Spanish translation
- SatTva[link45] -- Russian translation
- Abram4[link46] -- Russian translation , testing #464[link47], #470[link48], #471[link49], #484[link50], #493[link51]
- Mangalor[link52] -- patches #497[link53]
- ascrnet[link54] -- testing #518[link55], #519[link56]
- [link1] https://bitbucket.org/wackowiki/wackowiki/commits/b4095e3bda506094d298e6b6a3c293eb3db0f9d6
- [link2] https://wackowiki.org/doc/Dev/Release/R5.5/ChangeLog
- [link3] https://wackowiki.org/doc/Dev/Projects/UriRouter
- [link4] https://wackowiki.org/doc/Dev/Projects/Templatest/Usage
- [link5] https://wackowiki.org/doc/Dev/Components/Lib/BadBehavior
- [link6] https://downloads.sourceforge.net/wackowiki/legacy/wacko.r5.5.17.zip
- [link7] https://bitbucket.org/wackowiki/wackowiki/src/5.5/community
- [link8] https://bitbucket.org/wackowiki/wackowiki/get/5.5.17.zip
- [link9] https://bitbucket.org/wackowiki/wackowiki/get/5.5.17.tar.gz
- [link10] https://bitbucket.org/wackowiki/wackowiki/get/5.5.17.tar.bz2
- [link11] https://wackowiki.org/doc/Dev/Release/R5.0/Upgrade
- [link12] https://wackowiki.org/doc/Dev/Release/R5.5/Upgrade
- [link13] https://wackowiki.org/doc/Doc/English/Installation
- [link14] https://wackowiki.org/doc/Dev/Release/R5.5/Dependencies
- [link15] https://wackowiki.org/doc/Doc/English/Installation/Screenshots
- [link16] https://wackowiki.org/doc/Doc/English/FilePermissions
- [link17] https://wackowiki.org/doc/Dev/Components/SessionHandling
- [link18] https://wackowiki.org/doc/Users?profile=WikiAdmin
- [link19] https://wackowiki.org/doc/Groups?profile=WackoWiki
- [link20] https://wackowiki.org/doc/Doc/English/AdminPanel
- [link21] https://wackowiki.org/doc/Dev/Themes
- [link22] https://bitbucket.org/wackowiki/wackowiki/src/5.5/community/theme/
- [link23] https://bitbucket.org/wackowiki/wackowiki/src/5.5/wacko/theme/default
- [link24] https://wackowiki.org/doc/Download/LegacyVersions
- [link25] https://wackowiki.org/doc/Dev/Release/R5.5/ToDo
- [link26] https://wackowiki.org/bugs/
- [link27] https://wackowiki.org/doc/Dev/Release/R6.0/ToDo/SessionTimedOut
- [link28] https://wackowiki.org/doc/Users?profile=RideSnowNow
- [link29] https://wackowiki.org/doc/Users?profile=birnbacs
- [link30] https://wackowiki.org/bugs/view.php?id=443
- [link31] https://wackowiki.org/bugs/view.php?id=444
- [link32] https://wackowiki.org/bugs/view.php?id=422
- [link33] https://wackowiki.org/bugs/view.php?id=432
- [link34] https://wackowiki.org/doc/Users?profile=javafun
- [link35] https://wackowiki.org/doc/Users?profile=TriS
- [link36] https://wackowiki.org/doc/Users?profile=RichMarisa
- [link37] https://wackowiki.org/doc/Users?profile=Raysir
- [link38] https://wackowiki.org/bugs/view.php?id=447
- [link39] https://wackowiki.org/bugs/view.php?id=462
- [link40] https://wackowiki.org/bugs/view.php?id=461
- [link41] https://wackowiki.org/doc/Users?profile=Elar9000
- [link42] https://wackowiki.org/doc/Users?profile=EoNy
- [link43] https://wackowiki.org/bugs/view.php?id=458
- [link44] https://wackowiki.org/doc/Users?profile=KlePy
- [link45] https://wackowiki.org/doc/Users?profile=SatTva
- [link46] https://wackowiki.org/doc/Users?profile=Abram4
- [link47] https://wackowiki.org/bugs/view.php?id=464
- [link48] https://wackowiki.org/bugs/view.php?id=470
- [link49] https://wackowiki.org/bugs/view.php?id=471
- [link50] https://wackowiki.org/bugs/view.php?id=484
- [link51] https://wackowiki.org/bugs/view.php?id=493
- [link52] https://wackowiki.org/doc/Users?profile=Mangalor
- [link53] https://wackowiki.org/bugs/view.php?id=497
- [link54] https://wackowiki.org/doc/Users?profile=ascrnet
- [link55] https://wackowiki.org/bugs/view.php?id=518
- [link56] https://wackowiki.org/bugs/view.php?id=519