Fixed headlines being handled as regular blocks
[GitHub/WoltLab/WCF.git] / CHANGELOG.md
1 # Changelog
2
3 ## 3.0 (Vortex)
4
5 ### 3.0.0 Alpha 1 (XXXX-YY-ZZ)
6
7 * Clipboard support for tags in ACP ("delete" and "set as synonyms").
8 * `wcf\system\cache\runtime\UserProfileRuntimeCache` for caching user profiles during runtime.
9 * `wcf\system\cache\builder\EventListenerCacheBuilder` returns `wcf\data\event\listener\EventListener` objects instead of data arrays.
10 * `wcf\system\cache\source\RedisCacheSource` added.
11 * Background queue (`wcf\system\background\*`) added.
12 * Rewritten email system (`wcf\system\email\*`) added.
13 * CryptoUtil (`wcf\util\CryptoUtil`) added.
14 * Old email system (`wcf\system\mail\*`) deprecated.
15 * Abstract bulk processing system added.
16 * Replaced old user bulk processing with new implementation using the abstract bulk processing system.
17 * `conditionContainers` template event in template `noticeAdd.tpl` added.
18 * Use condition system for user search.
19 * Image proxy for images included with the image BBCode.
20 * Overhauled Redactor integration
21 * Linebreaks mode instead of using paragraphs, works better with the PHP-side parser which works with linebreaks
22 * Ported the PHP-BBCode parser, massively improves accuracy and ensures validity
23 * Show error message if poll options are given but not question instead of discarding poll options.
24 * `parentObjectID` column added to `modification_log` and `wcf\system\log\modification\AbstractModificationLogHandler` introduced as a replacement for `wcf\system\log\modification\ModificationLogHandler`.
25 * Add sort support for `useroptions` option type.
26 * Make user options shown in sidebar sortable.
27 * `wcf\system\event\listener\AbstractUserActionRenameListener` added.
28 * `wcf\system\event\listener\AbstractUserMergeListener` added.
29 * Notice texts support `{$username}` and `{$email}` placeholders.
30 * Notifications for comments in moderation.
31 * Continuous numeration of edit history version in template.
32 * `\wcf\data\user\UserProfile::getGuestUserProfile()` added.
33 * Make labels sortable in ACP.
34 * Core object `wcf\system\search\SearchEngine` added.
35 * Added 'most online users' to statistics box.
36 * Added icon size 64
37 * Enhanced user ignore feature
38 * Removed delayed redirect from login/logout
39 * `appendSession` in LinkHandler is now deprecated
40 * Added cover photo in user profiles
41 * Using cookies for ACP sessions
42 * WCF is now a standalone app
43 * Overhauled redactor integration
44 * Overhauled bbcode/html handling
45 * Removed option import/export
46 * Overhauled style editor
47 * Added replacements for WCF.Like, WCF.User.List and $.ui.wcfPages
48 * Added update support for styles
49 * `\wcf\system\condition\MultiPageControllerCondition` has been replaced by `wcf\system\condition\page\MultiPageCondition`
50 * Added special CSS class to cookie policy notice (`cookiePolicyNotice`)
51 * Improved confirmation messages (`<span class="confirmationObject">...</span>`)
52 * Added users online list pagination
53 * Added support for embedded youtube playlists
54 * Scaled embedded youtube videos to maximum width
55 * `\wcf\form\AbstractCaptchaForm`: added parameter to force captcha usage for registered users.
56 * Added global disable switch for languages.
57 * Overhauled page tracking in sessions / user online locations
58 * Overhauled language import form
59 * Removed sitemap function/overlay
60 * Added rebuild polls worker
61 * Added notification feed page
62 * Added informal variant of german language
63
64 #### CMS
65
66 * Introduced new page, menu, box and media management system.
67 * Replaced object type definition `com.woltlab.wcf.page` with new CMS pages.
68 * Replaced header/footer menu with new CMS menus.
69 * Replaced dashboard box system with new CMS box system.
70 * User online location is handled via the `wcf\data\page\Page` objects. Complex locations can use the online location-related methods of `wcf\system\page\handler\IMenuPageHandler`.
71 * Added page-relevant data-attributes on body tag (`data-page-id`, `data-page-identifier`).
72
73 #### New Traits
74
75 * `wcf\data\TDatabaseObjectOptions` for database object-bound options validation.
76 * `wcf\data\TDatabaseObjectPermissions` for database object-bound permissions validation.
77 * `wcf\data\TMultiCategoryObject` provides category-related methods for objects with multiple categories.
78 * `wcf\data\TUserContent` provides default implementations of the (non-inherited) methods of the IUserContent interface.
79
80 #### Package Installation Plugin Improvements
81
82 * instruction file name for most PIPs has default value provided by `wcf\system\package\plugin\IPackageInstallationPlugin::getDefaultFilename()`.
83 * `options` support for cronjob PIP.
84 * `name` attribute for cronjob PIP (`cronjobName` for cronjob objects).
85 * `eventName` of event listener PIP supports multiple events.
86 * `permissions` and `options` support for event listener PIP.
87 * `name` attribute for event listener PIP (`listenerName` for event listener objects).
88 * `permissions` and `options` support for template listener PIP.
89 * file `{WCF_DIR}/acp/uninstall/{packageName}.php` is automatically executed if package is uninstalled right before the first file PIP is executed
90
91 #### Template / Design Overhaul
92
93 * Overhauled header/footer templates
94 * Overhauled message templates/styling
95 * Overhauled search area in page header
96 * Overhauled user profile header
97 * Overhauled media queries
98 * Overhauled user login
99 * Overhauled exception view
100 * Redesigned ACP login
101 * Redesigned list of attached images in messages
102
103 * Introduced sticky page header
104 * Replaced LESS with SCSS
105 * Removed collapsible sidebar
106 * Removed obsolete CSS classes `framed`, `containerPadding`, `dividers`, `badgeInverse`
107 * Replaced `.infoBoxList` boxes with `.footerBoxes`
108 * Replaced `<fieldset>` tags with `<section class="section">`
109 * Replaced `<legend>` tags with `<h2 class="sectionTitle">`
110 * Replaced `.container`/`.marginTop` with `.section`
111 * Replaced `.boxHeadline` with `.contentHeader`
112 * Replaced `.boxSubHeadline` with `.sectionTitle`
113 * Replaced `.sidebarNavigation` with `.boxMenu`
114 * Replaced deprecated icon class (`icon-*` => `fa-*`)
115 * Moved closing head / body tags into `footer` template
116 * Moved documentHeader, head, body, contentHeader, userNotice into `header` template
117 * Replaced `$sidebarOrientation` with `$sidebarLeft`/`$sidebarRight`
118 * Renamed `{event name='*fieldsets'}` to `{event name='*sections'}`
119 * Introduced `.separatorLeft`/`.separatorRight`
120 * Removed `.tabularBoxTitle` if table title and page tite are identical
121 * Moved the "No-JS"-Warning to footer template.
122 * Tables can now be horizontally scrolled on mobile
123 * Added mobile support for ACP
124 * Added basic grid layout classes
125 * Renamed `.pageNavigation` to `.pagination`
126 * Renamed `.navigation`/`.navigationIcons` to `.pageNavigation`/`.pageNavigationIcons`
127 * Added CSS classes to style font sizes in tag cloud (`tagWeight1` - `tagWeight7`)
128
129 #### Deprecated Code
130
131 * Object type definition `com.woltlab.wcf.user.online.location` deprecated.
132 * Object type definition `com.woltlab.wcf.page` deprecated.
133
134 #### Removed Code
135
136 * `wcf\system\clipboard\action\UserExtendedClipboardAction` removed.
137 * `wcf\system\event\listener\PreParserAtUserListener` removed.
138 * `wcf\system\bbcode\PreParser` removed.
139 * `wcf\action\AJAXProxyAction::getData()` removed.
140 * `wcf\system\page\PageManager` removed.
141 * `wcf\system\option\PageMultiSelectOptionType` removed.
142 * `wcf\system\option\PageSelectOptionType` removed.
143 * `wcf\system\user\online\location\UserLocation` removed.
144 * Version system removed.
145 * Support for query string based sessions in Frontend removed.
146 * Language server system removed.
147 * Deprecated methods in `wcf\util\StringUtil` removed.
148 * Option `message_sidebar_enable_message_group_starter_icon` removed.
149 * Option `module_dashboard_page` removed.
150 * Option `module_privacy_policy_page` removed.
151 * Option `show_clock` removed.
152 * Option `message_sidebar_enable_rank` removed.
153 * Option `message_sidebar_enable_avatar` removed.
154 * Removed obsolete `$activeMenuItem` in frontend forms/pages
155 * Obsolete interface `wcf\page\ITrackablePage` deprecated.
156 * PIP `wcf\system\package\plugin\SitemapPackageInstallationPlugin` removed.
157 * Option `share_buttons_show_count` removed.
158 * Option `max_avatar_width` removed.
159 * Option `max_avatar_height` removed.
160
161 #### Documentation
162
163 * Added missing and fixed existing PHPDoc comments.
164 * `@property-read` tags for database table columns of classes extending `wcf\data\DatabaseObject`.
165 * `@method` tags for classes extending `wcf\data\AbstractDatabaseObjectAction` to specify return types.
166 * `@mixin` tag for classes extending `wcf\data\DatabaseObjectDecorator` for autocompletion/recognition of properties and methods of the decorated object.
167 * `@method` tag for classes extending `wcf\data\DatabaseObjectEditor` to specify return type.
168 * `@method` and `@property` tags for classes extending `wcf\data\DatabaseObjectList` to specify (return) types.
169 * `@property` tag for classes extending `wcf\page\MultipleLinkPage` to specify type.
170 * `@mixin` tag for classes extending `wcf\system\database\statement\PreparedStatement` for autocompletion/recognition of properties and methods of the decorated `\PDOStatement` object.
171 * `@method` tags for `wcf\system\io\File` and `wcf\system\io\GZipFile` for autocompletion/recognition of methods called via `__call()`.