XenForo 2.3.7 Released
In addition to the usual fixes and improvements, XenForo 2.3.7 also includes a critical security fix to ensure the security of Passkeys that have been added to your account. We'd very much like to thank Jai Niresh J for reporting this issue via Eric and team at Hypixel Inc.. Between them they also reported a less severe issue related to local account page caching on shared systems.
This version also tightens up the kinds of methods that can be called from within templates, evolving from a loose "prefix" match to a stricter "first word" match of methods that can be called through callbacks and variable method calls. This fix is courtesy of Cyanide who we extend huge thanks to in taking the time to report this to us.
We'd also like to take this opportunity to notify all third party developers that writing database queries inside templates is not recommended. While this is still allowed in XenForo 2.3.7, the behaviour is now considered deprecated and will be prevented in XenForo 2.3.8. Code which currently triggers this will insert an error into the Server error log and must be fixed prior to the release of XenForo 2.3.8. Where possible, data must be queried and processed and passed into the template rather than being written inside the template itself.
Some of the changes in XF 2.3.7 include:
The following public templates have had changes:
- Escape select input option labels
- Improve supported EXIF data when client-side image resizing is enabled
- Allow fetching forum prefixes even without node permissions
- Normalize entity manager repository cache keys
- Fix IPv6 binary to string expansion
- Fix appearance of member tooltip on recent Safari versions
- Use text structured data field for DiscussionForumPosting content
- Require confirmation for linking connected accounts
- Suppress logging of normal connected account exceptions
- Clear site cache data when logging out
- Move XF.SolutionEditClick into action.js to resolve dependency issues
- Fix carousel margin on RTL languages
- Expand global email template parameters
- Adjust wording of account approval phrases
- Improve typing of repository find methods
- Fix issue with missing verbosity when casting collections to webhook results.
- Avoid logging errors when IndexNow is having intermittent issues
- Delete related user alerts when a trophy is deleted
- Add support for viewing and revoking a user's authorised applications from the admin panel
- Handle nulls and empty-evaluated strings properly
- Detect Google Inspection Tool crawler
- No longer create user fields by default during install.
- Fix manual video thumbnail generation on iOS
- Remove legacy Imagick GIF optimization technique
- Display search suggestions properly when results contain guest content
- Fix lift ban link on ban edit page
- Render all activity summary display values in the user language
- Set default Accept-Language header in outgoing HTTP requests
- Allow overriding avatar usernames when a user is specified
- Fix generated entity type hints for JSON columns
- carousel.less
- connected_account_macros
- core_datalist.less
- featured_content_item
- member_ban_edit
- member_tooltip.less
- message.less
- post_macros
- register_connected_account_confirm
- style_variation_macros
- whats_new_wrapper
Some of the changes in XF 2.3.6 include:
- Fix upgrades from XF 1 not having the correct xf_job table schema changes applied
- Fix an issue with updating multiple variation menu icons
- Fix some issues with HCaptcha
- Fix cookie third-party for X media site
- Remove bluesky_logo from template function list
- Attempt to sync PayPal REST API with current product name.
- Fix an issue with Less_Tree_Dimension
Some of the changes in XF 2.3.5 include:
The following public templates have had changes:
- Fix unassociated attachment limit checks
- Clamp client-side color contrast evaluations
- Appropriately load tweets after page load.
- Update Twitter connected account references to X.
- Fix X (formerly Twitter) connected account
- Ensure xf_oauth_client and xf_oauth_request have primary keys.
- Allow a Passkey credential_id to occupy up to 1024 characters.
- Make code editor search highlighting similar to editor selection color.
- Remove unused jQuery snippet.
- Fix reactions tabs for direct message replies.
- Support multiple variation menus when updating variations
- Fix number box handling when step value is any
- Fix a server error when no custom error phrase is specified for an error response
- Improve type hinting of schema manager closures
- Properly reset write-pending status when calling Entity::saveIfChanged
- Fix server error when log search results return a record for a deleted user
- Properly represent field and prefix user group IDs as a list of unique sorted integers
- Support lazy-loading variation pictures
- Suppress PhpStorm warnings in class extension hint files
- Fix unstable sort order for class extension output
- Fix potentially undefined array key when determining an entity cover image
- Properly validate OAuth client redirect URIs
- Pass import command interactive state to import-finalize command
- Improve BBCode HTML rendering PHP 8.3 compatibility
- Do not escape HTML when rendering custom field titles in the control panel
- Allow saving cookie preferences when board is inactive
- Fix duplicate moderated icon in article preview thread titles
- Allow fetching all server globals using \XF\Http\Request::getServerInfo
- Fix incorrect phrase in user change log handler
- Fix handling of null auto-complete results
- Do not scroll to last viewed image when closing the lightbox
- Fix error 'TemplateFinder::searchTitle() accepts 1 parameters but 2 are passed'
- Fix server error getting conversations by ID via API.
- Fix incorrect route format for the OAuth2 account/applications route
- Fix issue where code challenges for public OAuth2 clients could not be verified
Where necessary, the merge system within the "outdated templates" page should be used to integrate these changes.
- code_editor.less
- connected_account_associated_x
- connected_account_macros
- core_button.less
- editor_insert_gif
- helper_js_global
- login
- passkeys_macros
- post_article_macros
- share_page_macros
- style_variation_macros
XenForo 2.3.4 Released
XenForo 2.3.4 is now available.
Some of the changes in XF 2.3.4 include:
- Include embed.php in hashes.json
- Fix error thrown when feed entry is missing an ID
- Use AbstractCollection for type hint on addContentToBookmarks method
- Fix deprecated usage of str_replace with API scopes
- Improve PHP 8.4 compatibility
- Output hsla in the color picker when an alpha channel is present
- Ensure URLs are valid when analyzing image usage
- Coerce nestable group to a number before peforming strict comparison
- Gracefully handle guest username and style variation containing invalid UTF-8
- Attempt to work-around abysmal Firefox form field retention heuristics
- Gracefully handle when an avatar cannot be processed
- Allow changing style variation when the previously selected style is forced to the default style
- Increase date input width further to accomodate Firefox icon clipping
- Fix editor autofocus behavior when in BBCode mode
- Add a note about some permissions not being applicable to guests
- Fix triggering Facebook embeds for document
- Fix calculation of local load time from navigation timing API
- Fix behavior of preview buttons
- Consider read-only number-box inputs as disabled
- Make required and recommended function checks more robust
- Allow null unique ID when enqueuing a job later
- Make report creation notifications easier to extend
- Attempt to work around aggressive Firefox auto-complete heuristics when editing a user
- Fix broken JS handlers when loading comments via AJAX
- Fix an issue with editing newly translated phrases
- Split ExifReader library out of attachment manager bundle
- Attempt to work around aggressive Firefox auto-complete heuristics on control panel index
- Fix number input buttons when step is set to any
- Fix some icon usage analysis issues when editing and deleting editor drop-downs and BBCodes
- Only record icon usage for active BBCodes and editor dropdowns
- Omit itemid microdata attribute when there is no valid user
- Ensure all control panel functionality is covered by permissions
- Handle invalid multiquote input more gracefully
- Attempt to avoid featured content carousel pager text overlap
- Only try to remove double quotes from URL strings once
- Set default color picker color to white instead of transparent
- Fix some issues with the JS icon renderer and BBCode previews
- Handle invalid session IDs more gracefully
- Do not mark unhidden usernames as aria-hidden
- Fix direction of back arrow on RTL languages
- Improve text node handling in XF.setupHtmlInsert
- Ignore Thumbs.db in style archive validator
- Fix structured list icon end cell padding
- Fix an issue with deferred resize event listener after autofocus
- Skip any file duplicates when importing banned emails
- Mark multiple consecutive asterisks as an invalid term word on MySQL full-text searches
- Make the default table collation configurable
- Fix calculation of report closure notifiable users
- Ensure PayPal products are created with a unique ID.
XenForo 2.3.3 Released
Some of the changes in XF 2.3.3 include:
- Fix select-to-quote handler error on soft-deleted threads
- Ignore port if Redis host appears to be a file path
- Fix a few cases where hashes were concatenated instead of passed to router
- Fix flickering issue with JS icon renderer
- Fix expandable content transition class callback
- Use correct finder when looking up Stripe subscriber IDs
- Do not attempt to set RSS feed language if no language code is set
- Check if job table exists before attempting to sync structure
- Fix issues serializing nestable elements which contain unrelated lists
- Adjust some automatic alert read-marking behaviors
- Adjust offset of focus-visible tab outline
- Re-enable caching for tag edit overlay
- Fix error handling for fetching/creating PayPal products and plans
- Fix determining locale from language code for string manipulation
- Ensure points phrase is used in trending weights.
- Optimize string transliteration performance
- Override some missing phrases for token inputs.
- Reduce trending content widget queries
- Fix embedding Imgur galleries and applying JS states
- Romanize heading anchors
- Do not force romanization for category anchors
- Fix merging reactions with multiple source reactions from deleted users
- Do not cache report overlays
- Fix Tagify filtering out non-exact matches unexpectedly
- Set 1:1 aspect-ratio on connected account provider icons
- Use the editorButtonSelectedBg property for active editor button backgrounds
- Fix DM icon clipping on desktop Safari
- Fix phrase method casing in icon option handler
- Perform client-size image optimization even when no maximum image width/height is set
- Fix checking if Rocket Loader is disabled in the middle of an upgrade
- Throw an error when attempting to recursively load config file
- Fix string style property variations support for properties without assets enabled
- Prevent double logging of moderator changes for threads when editing first post
- Adjust width of inline time inputs
- Check private use TLDs when determining if a host is local
- Fix some issues with appending filter rows
- Use XF.setupHtmlInsert for filter AJAX responses
- Allow passing HTMLElement objects to alerts
- Fix support for alternative icon variants in custom BB codes
- Fix fetching default avatar when templater style is not set
- Address some phrases which reference conversations
- Handle unexpected values in cookie consent cookie
XenForo 2.3.2 Released
XenForo 2.3.2 is now available for all. We strongly recommend that all users running previous versions of XenForo 2.3 upgrade to this release to benefit from increased stability.
Some of the changes in XF 2.3.2 include:
- Make PCRE character class check more robust.
- Do not attempt to redefine UTF-8 string shim functions if they already exist
- Rename search forum node type handler as expected
- Fix utf8_isASCII return type
- Fix an issue where the batch size for search rebuilds could grow unbounded
- Strip BBCode from trending content article displays
- Fix a regression with PWA orientation/screen rotation
- Set recommended PHP version dynamically
- Fix profile post position tracking
- Use absolute URLs in approval item emails
- Fix behavior of API keys with all scopes allowed
- Fix thread context support for featured and trending widgets
- Apply inline style to document.head correctly
- Fix type error for file clean counts.
- Attempt to have Cloudflare Rocket Loader automatically ignore scripts
- Don't try to ping IndexNow if no API key is set
- Gate search engine indexing settings for threads behind their own permission
- Fix error on shared IPs list when matching user has been deleted
- Allow the variation menu to open above fixed notices
- Fix saving permissions from the edit user page
- Fix passing \DateTime objects into \XF\Language::getDateTimeParts
- Use XF custom events for overlay and transition events
- Hydrate user relations when setting up base user
- Redirect to the first active option group when viewing an option
- Fix behavior of search short-name conversion
- Handle older SMTP option values more gracefully
- Fix responsive sidebar margins
- If a user can see the thread created by a report, respect their auto watch preference
- Mark threads as nofollow if they are non-indexable
- Support WebP images when uploading images for featured content
- Address several issues with XF.ajax
- Address even more one-click upgrade issues when caching is enabled
- Fix attachment list filter bar dates being displayed in wrong timezone
- Fix using hotkeys to submit a message in the plain text editor
- Fix event handling on auto-complete autosubmission
- Fix importing webp smilies
- Fix implicit join behavior of finder order clauses
- Fix addon_get_install_data code event description
- Only process the color scheme mixin when variations are enabled
- Position BBCode quote expansion link at bottom of quote
- Fix some issues when toggling variations when an active variation is selected
- Pass handler in params when rendering thread edit extra data templates
- Include type data definitions when rendering thread edit extra data templates
The following public templates have had changes:
Where necessary, the merge system within the "outdated templates" page should be used to integrate these changes.
- PAGE_CONTAINER
- app_body.less
- bb_code.less
- embed_view
- featured_content_edit
- helper_js_global
- helper_thread_options
- page_view
- payment_initiate_twocheckout
- profile_post_macros
- service_worker_offline
- setup.less
- style_variation_macros
- thread_list_macros
- trending_content_item_thread
- two_step_totp
It's time to party like it's
202220232024! Today we are very pleased (and relieved) to announce the stable release of XenForo 2.3.0 and our official add-ons. It has been a long time coming so we thank you for your patience and support.
There are a myriad of new features and improvements. Here's a brief overview of our favourites:
This is not an exhaustive list of what's new in 2.3, and you can read more about the above and other new changes/improvements features in the Have you seen...? forum.
- Style variants with Dark mode
- Improved performance
- Featured content
- Image optimization
- Automation with webhooks
- SSO with OAuth2
- Passwordless logins with passkeys
- Trending content
![]()
XenForo 2.1.15 Patch 1, 2.2.16 Patch 2 and XenForo Media Gallery 2.1.9, 2.2.6 Released (Includes Security Fixes)
Security Fix Today we are advising all customers running XenForo that a potential security vulnerability has been identified. All affected customers should either upgrade to XenForo 2.1.15 or XenForo 2.2.16. If you are a XenForo Cloud customer, a fix has been rolled out automatically, and no...xenforo.com
Hot on the heels of yesterday's XF 2.2.14 release and subsequent patches, we are today making XenForo 2.2.15 available for all licensed customers to download. We strongly recommend that all customers running previous versions of XenForo 2.2 upgrade to this release to benefit from increased stability, particularly if you already upgraded to XenForo 2.2.14.
As of this point, XenForo 2.2.14 and its patches are no longer available for download. We are still planning a final XF 2.2 release at some point around the release of XenForo 2.3!
Some of the changes in XF 2.2.15 include:
- Avoid setting duplicate List-Unsubscribe headers.
- Include first post QA schema items unconditionally.
- Make outdated PHP version notice in admin control panel clearer.
- Retain the original unsubscribeEmailAddress option for backwards compatibility.
- New unsubscribeEmailHandling option to replace the new unsubscribeEmail option and conclusively fix issues arising from yesterday's XF 2.2.14 release.
- Fix URL unfurls no longer unfurling.