Changes in 4.6.2 * Maintenance release with bug fixes. * Fixed: More complete SQL trace on non-row-based queries. * Fixed: Update process for filesystem-only releases. * Fixed: Normalise link text in some tag builder tags (thanks, makss). * Fixed: Incorrect focus ring styling. * Fixed: Define Trace in RPC (thanks, Retrax/makss). * Added: Better cross-browser support for input type=color (thanks, NicolasGraph). * Added: Support for printing of admin panels. * Added: Additonal Latvian setup translations. Changes in 4.6.1 * Maintenance release with bug fixes. * Added: A modern interpretation of the 'Classic' admin theme. * Added: More complete SQL trace (thanks, makss). * Fixed: New articles only marked modified after modification (thanks, gaekwad). * Fixed: Silently fail if old files cannot be deleted. * Fixed: Conditional tags now trigger correctly (thanks, craigerskine). * Fixed: Missing sql_now_* preferences (thanks, makss). * Fixed: Save preference pane states on keyboard focus too (thanks, phiw13). * Fixed: Avoid setLocale errors if locale unavailable in lang tag attributes (thanks, brachycera). * Fixed: 'Change author' multi-edit only available to users with sufficient rights (thanks, makss). * Fixed: Relative URLs in feeds (thanks, hidalgo). * Changed: Made better use of available screen estate for presentation panel code textareas (thanks, phiw13). * Changed: Tightened up vertical layout on Forms panel. * Changed: Put an upper limit on preference group widths for better readability (thanks, phiw13). * Changed: CONTRIBUTING.textile info has been consolidated into main README.txt file. * jQuery UI 1.12.1. * zxcvbn 4.4.0. Changes in 4.6.0 * Textile v3.5. * Improved RTL language support. * Improved admin side UI. * Requires PHP 5.3.3 or newer. Compatible with PHP 7 and MySQL 5.7 (thanks Ruud van Melick). * New tags: , , and . * No more plaintext passwords sent: password reset requests are handled directly on the server. * One-week validity for new account activation requests by default. Configurable in config.php (see ACTIVATION_EXPIRY_HOURS). * Ninety-minute validity for password reset requests by default. Configurable in config.php (see RESET_EXPIRY_MINUTES). * Stronger password hashes and strength meter implemented (zxcvbn). * Performance increases due to cache-friendly public side database queries, parser improvements and reduction of admin-side queries (thanks Ruud van Melick and etc). * Added: Support for adding other markup languages (for example, Markdown) via plugins. * Added: Default article publishing status preference. * Added: Support for custom CSS and JavaScript files in admin themes, for advanced users. * Removed: Import panel - the blog import options were obsolete (thanks Ruud van Melick). * Removed: Commenter IP ban feature - this method of banning is unreliable and becoming obsolete (thanks Ruud van Melick). * Removed: Modernizr - unnecessary due to Internet Explorer 11 being the minimum Internet Explorer browser requirement. * Changed: The /textpattern/theme/ directory has been renamed to /textpattern/admin-themes/ for stronger differentiation between this and the public-side /themes/ directory planned for Textpattern 4.7. Additionally prevents breakage of preferences panel caused by old, incompatible themes residing in the previously titled admin theme directory during upgrade. * Changed: accepts 'exclude' attribute to exclude articles by a comma-separated id list. * Changed: accepts 'escape' and 'format' attributes. * Changed: accepts 'html_id', 'limit' and 'offset' attributes. * Changed: : Deprecated 'isize', 'msgcols', 'msgrows', 'msgstyle', 'previewlabel', 'submitlabel', 'rememberlabel', and 'forgetlabel' attributes . * Changed: , , and can be used as container tags. * Changed: accepts 'size' attribute. * Changed: accepts 'cols' and 'rows' attributes. Removed capability to apply an immediate style to the element. * Changed: accepts 'size' attribute. * Changed: accepts 'label' attribute. * Changed: accepts 'rememberlabel' and 'forgetlabel' attributes. * Changed: accepts 'label' attribute. * Changed: accepts 'size' attribute. * Changed: accepts 'id' and 'name' attributes. * Changed: accepts 'escape' and 'format' attributes. * Changed: accepts 'escape', 'format' and 'separator' attributes. * Changed: can be used as a container tag. * Changed: accepts 'offset' attribute. * Changed: accepts 'html_id', 'limit' and 'offset' attributes. * Changed: Deprecated tag. Use instead. * Changed: Deprecated tag. * Changed: Deprecated 'breakclass' attribute for and . * Changed: Removed Form (article) Preview facility. * Changed: Removed empty 'About' section from new installs. * Changed: Tag builder has been reworked as a dialog window. * Changed: Increased 'page' and 'css' sizes in txp_section table. * Changed: 'Prevent widowed words in article titles' preference defaults to 'No' in new installs. * Changed: 'Include email in Atom feeds' preference defaults to 'No' in new installs. * Changed: Detailed debug trace log. * Changed: Default charset is now utf8mb4: supports a wider range of characters, including emoji. * Changed: Removed built-in Gzip compression of RSS feed and Atom feed. * Developer: getNextPref() now returns array members 'next' and 'prev' with article data, no longer returns array members 'next_id', 'next_title', 'next_utitle', 'next_posted', 'prev_id', 'prev_title', 'prev_utitle', 'prev_posted' * Developer: getNeighbour() returns 'false' if no matching neighbour article exists. * Developer: Uses 'mysqli' extension for database access, lose dependency on 'mysql' extension. * Developer: Uses the TXP 'now()' function instead of the SQL 'NOW()' function to create cache-friendly, faster SELECT queries. * Developer: Added jQuery UI library to admin side. * Developer: Added Prism code highlighting for and
 to admin side. The following languages are supported (when specified via classnames on the  tag, i.e. using 'class="language-xxx"): 'language-markup', 'language-css', 'language-clike', 'language-javascript', 'language-json', 'language-php', 'language-markdown', 'language-textile'. Optional line numbers are also supported when code highlighting, by adding an additional classname of 'line-numbers' to the parent 
 tag.
* Developer: Added DocBlock documentation comments throughout the source code.
* Developer: Adherence to PSR coding standards where possible.
* Developer: Function signature for wrapRegion() changed: 7th parameter 'ARIA role' dropped, as it shouldn't be stated for semantic tags such as 'section'.
* Developer: Refactored 'Validator', 'Constraint', and 'theme' classes into the 'Textpattern' namespace; deprecated their 'txplib_validator' and 'txplib_theme' implementations.
* jQuery 1.12.4.
* jQuery UI 1.12.0.

Changes in 4.5.7

* Maintenance release with bug fixes.
* Textile v2.4.3 resolves PHP 5.5 compatibility issues.
* Updated default site theme and libraries.
* Setup now remembers settings. No more 'form resubmission' browser warnings when going back through the wizard.
* Allow pre_publish_script in multi-site installations.
* Email address validation uses PHP's filter_var(), which permits addresses such as @[127.0.0.1].
* Fixed: , , , and  tags for certain combinations with .
* Fixed: SQL statement escaping in set_pref().
* Fixed: Situations where set_pref() could corrupt the preference table if the string name contained '%' or '_' characters.
* Fixed: Save comment emails of any valid length properly.
* Fixed: Visitor logs support IPv6.
* Fixed: Articles can be assigned to sections with names longer than 64 characters.
* Fixed: Setup script more robust, and compatible with MySQL 5.6.
* Fixed: Warnings when writing image thumbnails.
* Fixed: Files no longer trash author names, and empty files can no longer be created.
* Fixed: Percent encoding of spaces in site URL.
* Security: IXR fixes to prevent XML quadratic blowup attack.
* Security: Prevent variable injection during setup and plugin preview step.

Changes in 4.5.6

* Skipped due to broken update path for SVN users.

Changes in 4.5.5

* Maintenance release with bug fixes, no security implications.
* Fixed: Compatibility issues with PHP 5.5 in  and setup routines.
* Fixed: Category table's parent-child associations break and the table malforms on name updates, if two different category types share same category name.
* Fixed: Image caption isn't escaped.
* Fixed: Admin-side JavaScript dies on Safari 5 (or any browser that doesn't allow re-defining keywords or constructs as variables).
* jQuery 1.8.3.

Changes in 4.5.4

* Corrects a packaging error in the 4.5.3 archives.

Changes in 4.5.3

* Maintenance release with bug fixes, no security implications.
* Fix , , , and  tags for certain combinations with .
* Escape new page name in the 'Pages' panel.
* Developer: Render valid HTML in fInput() for input types 'file' and 'image'.
* Developer: In http_accept_format(), discard MIME formats with a quality factor below 0.1.

Changes in 4.5.2

* Maintenance release with bug fixes, no security implications.
* Fix , , , and  tags for setups with web server and database server in different time zones.
* Avoid "undefined variable" error while bulk-editing form types.
* Developer: Use actual callback instead of hard-coded function to render 'View'link.  Pass reference to partials meta data into partial callbacks as $rs['partials_meta'].
* Developer: Escape '