XF 2.3 What's new for developers in XenForo 2.3?

hys_9_cover.png
As promised, this week we're going to take a quick look at some of the more developer-centric changes coming in XenForo 2.3.

If a certain topic interests you more than others, click one of the links below:
Please note that the following libraries are no longer bundled with XF 2.3:
  • ccampbell/chromephp
  • doctrine/cache
  • league/flysystem-ziparchive
  • swiftmailer/swiftmailer
  • symfony/debug
  • web-token/jwt-signature-algorithm-eddsa
  • web-token/jwt-signature-algorithm-hmac
  • web-token/jwt-signature-algorithm-none
  • web-token/jwt-signature-algorithm-rsa

While we do have a little more to show you, the next couple of weeks is going to be focused on getting XenForo 2.3 ready to be installed here and some additional "Have you seen...?" posts may arrive between then and a public beta release. Until then, thanks for coming on this journey with us.
 
We can still use syntax like this in our addons <xf:macro template="myaddon_this_macros" name="username_row" /> without any issues to accommodate backwards compatibility?


FWIW this works in 2.2 and 2.3 and won't break (I beleive) if/when the old syntax is dropped.
<xf:macro template="myaddon_this_macros" name="username_row" id="myaddon_this_macros::username_row" />
 
Math expressions in .less templates seem to now require being wrapped by parentheses e.g.
Code:
property: (0.8 * @xf-style-property);
Previously this was only necessary if the expression was ambiguous (such as multiple padding values).
 
On the whole, Symfony Mail is essentially a ground up rewrite of SwiftMailer so the process of converting code to use Symfony Mail shouldn't cause too many problems.
Does XF 2.3 support Symfony's configurations for using 3rd party transports like SES, Mailgun, Mandrill etc.?

 
Nested data objects are not working anymore when passed to XF.ajax. You get data: [Object Object]. Do I need to use JSON.stringify() and json_decode() on the back-end? That would be a really ugly approach.
yeah, i had to do this exact change for a function in my code to make it work again..

there's also an api endpoint i made that does not work anymore since like beta 5 or 4 which might be connected to this? dunno
 
If you're using a GET request then the request body is constructed using an URLSearchParams object and appended to the URL. Using GET requests with bodies is generally bad practice.
 
Only the built-in transports are supported at this time. Most services provide SMTP support, but of course more tightly integrated services might be nice at some point.
 
Only the built-in transports are supported at this time. Most services provide SMTP support, but of course more tightly integrated services might be nice at some point.
Thanks. It would be very nice to directly use 3rd party mailers API's. Suggestion added.

 
Back
Top Bottom