Closed xander-st-aubyn closed 3 months ago
In https://github.com/smarty-php/smarty/blob/master/composer.json, I see:
"require": {
"php": "^7.2 || ^8.0",
"symfony/polyfill-mbstring": "^1.27"
},
Can you give an example of a dependency?
So symfony/polyfill-mbstring
is not required to run smarty?
I have done a complete re-read of the changelog since 3.1.*. Okay, its optional unless you don't have the extension.. That still doesn't invalidate vendoring so Smarty is always self contained regardless.
However, I did read the changelog completely. I think it would be best if I just forked an older version of smarty. It's been radically redesigned and I am not pleased with it.
Sorry for the noise.
My attention has been elsewhere for the past three years and I have circled around to updating my web software and writing some new stuff. However, Smarty seems completely bent, despite the restoration of a loading script, towards the PSR and dependency hell it introduces.
Prior to version 5, Smarty has never had external dependencies aside from PHP and I would argue it makes it less attractive if it is going to force developers to to either adhere to composer deciding how things will be instantiated or go on what will undoubtedly, in time, become a fetch quest for dependencies, some of which would be come unavailable either entirely or the specific version, if not a full on dep hell.
Please, reconsider using off-the-shelf dependencies and if it is unavoidable, please vendor them and ensure Smarty can always be simply.. included without anything else.