CrazyTapok-bit / tgWebValid

An easy way to validate Telegram Login Widget and Telegram Mini App users on your website using PHP
https://tgwebvalid.com
MIT License
52 stars 13 forks source link

Upgrade php version to 8.3 #70

Open CrazyTapok-bit opened 11 months ago

CrazyTapok-bit commented 11 months ago

Documentation

erickskrauch commented 2 months ago

Задирая версию, вы лишь отрезаете от использования своей библиотеки разработчиков, кодовая база которых ещё не обновлена на последнюю версию языка. Насколько я могу видеть, текущая реализация всё ещё написана целиком и полностью на 8.1 и не использует никаких возможностей новых версий PHP. Вы можете быть принципиальным и добавить их. Но я бы хотел предложить обратное: понизьте минимальную версию обратно на 8.1 и сохраняйте её до тех пор, пока это не будет создавать для вас проблем поддержки.

CrazyTapok-bit commented 2 months ago

Частково ви маєте рацію, переважна більшість проекта зараз не має принципових змін з PHP 8.2, хоч має саме цю версію в залежностях. Зверніть увагу що частково проект підтримує readonly властивості, які доступні лише з >=8.2.

Наразі ми не можемо забезпечити повну підтримку readonly властивості для кожної сутності, оскільки перше значення має бути призначене в конструкторі класу в якому властивість оголошена, і відповідно не дозволяє зробити це з батьківському класі. Тобто стає питання або принципово змінювати підхід наповнення сутностей, або чекати виправлення цього багу (як на мою думку) в php. Якщо ви знаєте як це реалізувати, буду радий будь-якій допомозі 😉

Стосовно PHP 8.1. Ви можете користуватись бібліотекою tgWebValid <=4.1, всі вони цілком підтримують той самий функціонал що і : ^4.2 (який вже потребує php ^8.2). Але за можливості я б все ж радив оновитись до ^4.2.2 в якій був виправлений суттєвий баг