Loading...
 
Skip to main content

History: Tiki27

Source of version: 65 (current)

Copy to clipboard
            ! {{page}}
Tiki 27.0 LTS was released on July 1st 2024. Release announcement: https://tiki.org/article512-Tiki-27-0-LTS-A-Leap-Forward-for-Collaborative-Software

It is a Long Term Support (LTS) version and will be supported until July 2029 as per ((tw:Versions|the Tiki lifecycle policy)).

Usually, LTS versions like this are more about refining features than major changes. However, this release is an ''exception'' as the Tiki developers wanted major changes to be part of this LTS, notably __Smarty 5__, and the new ''npm'' based build system. After this release, there will be yet more major changes in ((Tiki28)).

((Requirements|Supported PHP versions: PHP 8.1, 8.2 and 8.3, MariaDB 10.5+, MySQL 8+))

You can see the development page at : https://dev.tiki.org/Tiki27 and all the code commits here: https://gitlab.com/tikiwiki/tiki/-/commits/27.x/ once it will be created (in 2024-03).

!# Infrastructure
''(alphabetically sorted)''

!!# Error reporting
Errors and warnings are more strictly reported. This can be caused by:
* A Tiki bug: the bug can be old but the error/warning messages were previously not exposed. It could also be a new bug...
* Data inconstency. Ex.: A ((Adding fields to a tracker|tracker field)) is deleted but it is still called in a ((Mathematical Calculation Tracker Field|calculation)) or a ((Pretty Tracker))
* etc.

See [https://gitlab.com/tikiwiki/tiki/-/merge_requests/4632#note_1833339279|discussion between Victor and Benoit]. Also, work has been done [https://gitlab.com/tikiwiki/tiki/-/commit/469a3e9a5554837b4831500caf29d12f1a8ae990|to try to avoid that these errors block the process] to ((Rebuild Unified Index)).

This increased strictness will facilitate upcoming enhancements (increase performance, etc.)

!!# PHPUnit
Tiki was upgraded to use version 10 of PHPUnit (the de-facto standard for testing PHP-based software)
{QUOTE(source_url="https://phpunit.de/announcements/phpunit-10.html")}PHPUnit 10 is the most significant release in the history of the PHPUnit project (which began 23 years ago). {QUOTE}

This required multiple code commits as many updates were required by various dependencies. Here is the last commit: https://gitlab.com/tikiwiki/tiki/-/merge_requests/4643

!!# Smarty 5
* Major upgrade from ((Smarty)) 4 to 5: https://gitlab.com/tikiwiki/tiki/-/merge_requests/3529
* https://github.com/smarty-php/smarty/discussions/920

!!# Tiki 27+ Build System - for VCS (git) installations
{REMARKSBOX(type="warning" title="Major change when installing for VCS (git)")}With the new Tiki 27+ Build System ''node.js'' is now required to run -+setup.sh+- and install a new Tiki or update.

See https://dev.tiki.org/The-Tiki-27-plus-Build-System{REMARKSBOX}

!# Enhancements
''(alphabetically sorted)''

!!# API enhancements
Several enhancements and improvements made to the Tiki ((API)) functionality, particularly to support Tiki deployments to provide data and system management for __Internet of Things (IoT)__ networks.

More detail on IoT usage can be seen at the development page https://dev.tiki.org/Internet-of-Things

!!# Calendars
Major change for calendar event handling in Tiki - CRUD operations of events now go through the built-in ''caldav'' server with the help of internal method invocation (not through the ''webdav'' protocol to skip authentication phase). This has the desired consequences of event scheduling, iTIP message generation and other active plugin taking care of corresponding functionality when events are created, updated, deleted.

Several major updates to calendar functionality:

* Recurring events extended to support almost all of supported RFC5545 RRULE definition: https://datatracker.ietf.org/doc/html/rfc5545#section-3.8.5.3. Most obvious one - repeat in X amount of days, weeks, months, years but also other possibilities like monthly repetition every last Friday and similar.
* Definition and storage of availability blocks per user in caldav user's inbox property storage (implemented in Tiki caldav server). This allows specifying periods of availability when all other time is considered busy. This affects free-busy reports by caldav server and also 'check availability' button in Tiki when creating events.
* ((Appointment slots)): Availability blocks can be converted to appointment slots when you choose the calendar to store appointments to and the slot duration. Each such availability block has a settings "Schedule" link where you can see available slots in the future, choose a date, click on a slot and create an event with participants (the user owning the appointment slot and yourself). If calendar has anonymous permission to add events, anonymous users can request appointments as well. This page can also be embedded in an external site via iframe with corresponding code provided in the Tiki interface.

MR: https://gitlab.com/tikiwiki/tiki/-/merge_requests/3534

Private calendars: new permission (-+tiki_p_admin_private_calendar+-) and ability to create personal private calendars that will be visible only to the user creating them and calendar admins; make sure all operations and CalDAV support + permissions continue to work in the same way as before with public calendars and new private calendars
https://gitlab.com/tikiwiki/tiki/-/commit/7261fa544d7f433b9fbda5ce4c74f472c1be0ada

!!# Console
New ((Console)) commands:
* -+reportcache:clear+- to clear the user reports cache
* -+tracker:convert-attachments+- to convert tracker attachments (the ones that are global for the tracker) to attachments as a tracker file field type
* -+dev:buildwsconfs+- to check and generate -+index.php+- and -+.htaccess+- files

!!# Contacts
Added support for personal and work emails
https://gitlab.com/tikiwiki/tiki/-/merge_requests/4399

!!# Markdown + TOAST UI
Many bug fixes and enhancements have happened in ((Tiki27)) which resulted in a more user-friendly ((Markdown Syntax|Markdown)) editing experience without sacrificing functionality or compatibility with traditional Tiki syntax
* Enhanced the UX of the text editor when in Markdown mode.
* Improved UX for Markdown mode and TOAST UI editor across all modes.
https://gitlab.com/tikiwiki/tiki/-/commits/master?search=markdown

!!# PDF
New permission -+tiki_p_export_pdf+- to restrict who can generate a PDF. Useful to remove PDF generation capacity from anonymous users because bots will sometimes abuse this.

!!# PluginList Sublist
* New wikiplugin to be used inside ((PluginList)) introduced: see ((Sublist))

!!# Search
Added facet output to the -+table+- template in [https://gitlab.com/tikiwiki/tiki/-/merge_requests/4552] for use in ((PluginList)) and ((PluginCustomSearch))

!!# Search index: multi-sort
* https://gitlab.com/tikiwiki/tiki/-/merge_requests/4398

!!# Semantic Search
* ((Semantic Search))
* ((PluginSemanticSearch|Plugin Semantic Search))

!!# URL Fragment format
A preference that provides you with the ability to change anchor format.
https://gitlab.com/tikiwiki/tiki/-/merge_requests/2907

!!# User mentions
((User mentions)) feature has been improved
* Send a notification when a user is mentioned in a wiki page comment: https://gitlab.com/tikiwiki/tiki/-/merge_requests/3003
* Several enhancements in https://gitlab.com/tikiwiki/tiki/-/merge_requests/3677:
** Prevent sending a notification when a user mentions himself
** Support autocomplete even when the preference Username pattern 'username_pattern' field is empty
** Ensure that user mentions look visually different from the other content
** Detect user mentions when there is other text in object content or in a comment
* Fix the sending of notifications when users are mentioned and extend 'Tagging users' to usernames containing dash or dot: https://gitlab.com/tikiwiki/tiki/-/merge_requests/4373

!!# Webmail
Cypht was upgraded from version 1.4.x to 2.0.x which comes with numerous enhancements. See ((Webmail)) and https://github.com/cypht-org/cypht/releases/tag/v2.0.0

!!# WikiPlugin Survey
Several enhancements have been added to ((PluginSurvey|Plugin Survey)):
** Display all users associated to a choice and change stats rendering
** Plugin Survey : Restrict admin users to one vote
** Add a restriction option to prevent admin users from voting more than once
https://gitlab.com/tikiwiki/tiki/-/merge_requests/3592

!!# WikiPlugin Tour
The ((PluginTour|Tour plugin)) has been updated to use [https://driverjs.com|driver.js] instead of [https://github.com/sorich87/bootstrap-tour|Bootstrap tour], which has restored its functionality following its disruption in Tiki 25.
https://gitlab.com/tikiwiki/tiki/-/merge_requests/4232

!# Removed
* ((HtmlFeed|HTML feed)) feature and related plugins: ((PluginHtmlFeed)) and ((PluginHtmlFeedLink))
* ((module svnup|Module SVN Up Info))
* ((Mobile|Mobile access)) has been done via Bootstrap for years. A legacy pre-Bootstrap preference was removed.
* kaltura_kcwUIConf preference 
* Tikipedia theme
+The Tikipedia theme has been removed as it required setup steps to have the Wikipedia appearance.
* Tiki search (legacy)
+The Tiki ((Unified Index)) was introduced in ((Tiki7)) (2011) as an alternative to the standard Tiki search. The standard search became legacy and [https://gitlab.com/tikiwiki/tiki/-/commit/d7fd3ff60b9fbb263139857140020b7547a66189|was deprecated in May 2018]. Fast forward to 2024, and [https://gitlab.com/tikiwiki/tiki/-/merge_requests/4032|it was completely removed]. See the supported ((Unified Index Comparison)).



~tc~ (alias(Tiki 27)) ~/tc~