![ok smarty go to a party ok smarty go to a party](http://3.bp.blogspot.com/-F4iGLaB8hDo/TuwlJ0KxGmI/AAAAAAAABxU/psK9EtEWMYY/s640/Picnik+collage.jpg)
- #Ok smarty go to a party update
- #Ok smarty go to a party upgrade
- #Ok smarty go to a party software
- #Ok smarty go to a party code
Elastic Search appeals to too few people. But the extra features that should seduce people to migrate are a bit of a problem.
#Ok smarty go to a party code
The code improvement has gone well and is still going well. When enough users had joined would there be the step to TB 1.1 where TB implemented its own vision and gave up on complete backwards compatibility. For the short term that meant improvement of the code (more speed, less bugs) and some extra features that provide a concrete incentive for migrating to TB. The plan for Thirty Bees was that it would provide a vision for the future for all the people using Prestashop 1.6 who don't like 1.7.
#Ok smarty go to a party upgrade
And now we are told that that will be implemented with a Smarty upgrade that will break backward compatibility - what isn't a real solution. Just a few months ago the announcements on the forum were that with the new year Thirty Bees would start supporting PHP 7.2. Very likely it isn't the only theme with such a problem. With the Panda theme you cannot access the front office under PHP 7.2 in development mode thanks to this little warning.
![ok smarty go to a party ok smarty go to a party](https://images.genius.com/038529dc16c13b795320436dc4e3d212.1000x1000x1.jpg)
#Ok smarty go to a party software
Nobody will notice those extra 300K in a software package of said in Smarty and PHP I like your attitude here! :D Nothing forbids us to include this code into our own code. The argument that the code is fetched doesn't make sense to me. Switching to each of them will have the same effect at the moment: it will kill Thirty Bees as it will leave it without supporting software. But so are Twig and other template engines. It is very nice that the latest Smarty version is better.
#Ok smarty go to a party update
There will never be another update from the Smarty maintainers that might interfere with our fix. So we can feel free to do with it whatever we like. Smarty itself doesn't maintain this code anymore. We can now fix that little problem or declare such a fix taboo. With PHP 7.2 we have arrived at a point where one single line in the Smarty code gives a problem. But software doesn't age so we happily have kept using it. Smarty has de facto been abandoned code since 2015. By giving up on backward compatibility in 2015 Smarty abandoned users like Prestashop and Thirty Bees. Updating to a PHP 7.2 compatible version of Smarty is the same as switching to another framework. And the quality of the error messages means that that is almost impossible to fix. It will break compatibility with almost all the code that was written for Prestashop. I don't believe upgrading Smarty to a PHP 7.2 compatible version is a viable alternative for TB at the moment. But of course I will welcome it when at some point in the future some genius manages to restructure this code the "proper" way. Just replacing this function minimizes that risk. I rather see it as risk-averse: given how complicated this piece of their code is it is very easy to get unwanted side effects when you try to restructure it. I find it a bit easy to call it a workaround. This was the only alternative to get things working. Rewriting the Smarty code with foreach() is a nice ideal but I find their code a bit hard to understand. And if you look around the internet you will see that nearly every major software package used to contain it. And given that they wanted to clean up the language a bit it had to go.
![ok smarty go to a party ok smarty go to a party](https://lparchive.org/Tokimeki-Memorial-Series/Update%20130/7-TMGS_2_post_17_image_07.png)
They just found it a poor alternative for foreach(): slower and harder to read. The PHP people didn't abolish each() because it is buggy. The fact that a function is deprecated does not mean that it is a bug. The PHP folks didn't introduce such warnings to annoy users, but to detect bugs and help eliminating them. The usage of each() you found is a bug and bugs can get solved by changing the buggy code. That said, such workarounds are pretty exactly what I'd like to avoid.