seboettg / citeproc-php

Full-featured CSL 1.0.1 processor for PHP
MIT License
73 stars 38 forks source link

Remove intl platform dependency #99

Closed pookmish closed 3 years ago

pookmish commented 3 years ago

Is the intl extension required for anything? I see it was added in this commit but I don't see any function calls on the intl package.

I'm asking because when using this library on a Drupal 9 site, our hosting provide does not have the intl extension available and they are unable to enable it.

seboettg commented 3 years ago

Hi @pookmish! Thank you for this PR. I guess we need "intl" for "symfony/polyfill-mbstring" which is a fallback for PHP's multibyte extension mbstring. When both intl and mbstring are missing, I'm not sure if citeproc-php still works properly with languages that need more characters from UTF-8 than the ASCII part.

pookmish commented 3 years ago

Hmm... that does make sense if both are missing. FWIW, Drupal requires mbstring as a platform dependency already.

I see that symfony/polyfill-mbstring doesn't require intl but it does make a suggestion for mbstring. Is that based on a previous version of the symfony library?

Would it work to just move intl to the suggested part of composer instead?

seboettg commented 3 years ago

I merged your PR and have moved ext-intl to the suggest section of the composer file. I hope everything still works properly for all other citeproc-php users...