XenForo 2.3.8 is now available for all licensed customers to download. We strongly recommend that all customers running previous versions of XenForo 2.3 upgrade to this release to benefit from increased stability.
XenForo 2.3.8 also includes a number of smaller new features and improvements which you can read about here:
https://xenforo.com/community/threads/whats-new-in-xenforo-2-3-8.235377/
One-click upgrade to XenForo 2.3.8
Directly from your admin control panel
If you are a XenForo Cloud customer, your upgrade will be scheduled automatically.
Some of the changes in XF 2.3.8 include:
Fix a potential denial of service bug related to pre-registration actions flooding. Thank you @vbresults!
Fix an issue where EXIF orientation would be set when already adjusted client-side
Ensure language state is always restored in between generating activity summary emails
Always coerce parse_less_color template function to hex for non-variable values
Return an error early when search keyword lengths are too long
Use post content filter and thread type sub-filter for member thread search
Skip void method return in XF\Cli\Command\AbstractCommand::initialize
Ensure invalid page numbers are handled correctly when viewing the watched threads list
Add handling for null status message values when resuming jobs
Ensure passkeys are deleted when the associated user is deleted
Add missing defaultname to xf:avatar and xf:username tags in the report_view template
Fix DKIM signing preventing List-Unsubscribe headers from being added to emails
Require re-authentication before allowing passkey additions or modifications
Support rebuilding unfurls when rebuilding metadata for supported content types
Fix not being able to setup TOTP on Firefox via QR code if privacy.resistFingerprinting is enabled
Add missing template annotation to EmbedResolver/AbstractHandler
Improve add-on manager performance when coercing add-on IDs with a significant number installed
Support the "listitemclass" attribute when rendering checkboxes
Try to preserve post ordering when there's an unexpected time sync issue
Fix issue preventing "Handle report" button on an assigned report not revealing the save button
Throw an error if trying to rebuild search index with an invalid type
Cache user online counts in the same request to reduce query usage
Ensure cascadeSave is cleared out when Entity::saveCleanUp is called
Guard against Request::getIp not returning a valid IP in some cases.
Do not resolve attachment cover images for guests with no attachment permissions
Pass criteria object to criteria_template_data event listeners
Skip non-existent attachments when deleting from the control panel
Fix missing trailing slash when linking to cookies explainer from privacy policy
Workaround issue where Sign in with Apple might not return an email (#1199)
Log users in to the public forum when authenticating with passkeys via the admin panel (#1201)
Inhibit sending push notifications to permanently removed Chrome subscriptions
Ensure failed passkey logins count towards failed login attempts limit (#1207)
Process Gmail inactive inbox bounce messages as a hard bounce (#1208)
Make it easier to override PayPalRest plan parameters (#1209)
Create Finder directory if one does not exist when generating finder classes (#1211)
Update PHPDoc for asVisitor function to better infer return types
Refactor delete clean up process to ensure rename and delete happens in one process
Workaround potential race condition when saving bookmark labels
Support passing extra spam check data in the user registration service
Strip HTML tags when using the description as a title for an import from an RSS feed (#1214)
Move XF\BbCodeRenderer\Html::getValidUrl functionality to a utility function (#1215)
Throw an error if attempting to run an import step that does not exist (#1216)
Fix TypeError when non-array JSON input is submitted (#1223)
Fix issue where XF.phrase function was not able to handle repeated replacements
Fix pagination scrolling behaviour for reactions received page
Finder::getCollectionFromResults doesn't check hydrateFromGrouped's return result is not null
Ensure option values are cast to their proper data types when retrieved
Email bounce parser now handles multi-digit status codes (#1240)
Avoid unnecessary write of original avatar when only crop changes
Add support for AbstractCollection when using the Templater's array_* functions (#2182)
Refactor lightbox sidebar toggle handling and ensure proper initialization
The following public templates have had changes:
helppage_privacy_policy
account_reactions
account_visitor_menu
attachment_macros
bb_code_tag_attach
core.less
core_action_bar.less
embed_resolver_thread
helper_attach_upload
lightbox.less
login_password_confirm
member_about
member_macros
member_recent_content
member_tooltip.less
message.less
message_macros
news_feed_attached_images
passkeys_macros
report_view
setup.less
share_page_macros
tag_macros
tag_search
two_step_totp
Where necessary, the merge system within the "outdated templates" page should be used to integrate these changes.
As always, new releases of XenForo are free to download for all customers with active licenses. You may now upgrade from your admin control panel or grab the new version from the customer area.
Current requirements
Please note that XenForo 2.3 has higher system requirements than earlier versions.
The following are minimum requirements:
PHP 7.2 or newer (PHP 8.3 recommended)
MySQL 5.7 and newer (Also compatible with MariaDB/Percona etc.)
All of the official add-ons require XenForo 2.3.
Enhanced Search requires at least Elasticsearch 7.2.
Installation and upgrade instructions
Full details of how to install and upgrade XenForo can be found in the XenForo 2 Manual. We strongly recommend upgrading directly from within your control panel.
You may only provide a review once you have downloaded the file.
There are no reviews to display.