Telegram Group & Telegram Channel
Пост про PHP! Не ждали?

А если точнее про php 7.2

Ебался я вчера очередной день, делая правки в проект на KOHANA. Написал небольшую SDK обёртку к одному из REST core сервисов, протестил вдоль и поперек на локалке и запушил в мастер

Однако, вместо удовлетворения от качественно проделанной работы, испытал некоторого рода негодование, когда метод API, в котором юзался мой класс стал возвращать 500. Естественно, я как дохуя опытный инженер сразу сообразил - нужно лезть в логи!


[Type:Default] ParseError [ 0 ]: syntax error, unexpected 'Redis' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) ~ APPPATH/classes/Domains.php


Непонятная хуйня, учитывая что на 13 строке было просто объявление свойста.


private Redis $redis;


Отчаявшись съебаться пораньше, я с максимально испорченным настроением начал думать переадресовал запрос Claude на что получил ответ, что скорее всего у меня старая версия пыхи - якобы типизированные свойства появились только в 7.4

Тут я сразу понял, что эти шайтан машины не скоро заменят нас, посколько в докере была нужная версия пыхи


image: ${REGISTRY}/php/build/landings/api:php7.4-2.0


Более того, в composer.json тоже была прописана она же


"require": {
"php": "^7.4",


Ошибки быть не могло. Тем не менее полчаса дальнейших ковыряний не помогли найти иной причины для такой херни в логах. В итоге я решил дать шанс этой сомнительной гипотезе и попробовал подключиться к проду по ssh, но так как я 3 года работал продактом в этой фирме, доступы мне выдают не охотно и ничего не получилось.

Переадресовав свою проблему девопсам я быстро дождался ответа и оказалось что на проде крутится версия...7.2

Сначала я не понял как такое возможно, почему проект вообще собирается, но оказалось, что проект собирается на специально выделенном агенте с помощью докер образа в котором у нас версия 7.4, после чего все файлы тупо копируются на продакшн. на котором стоит 7.2 Из за этого мой код с фичей из 7.4 приводил к 500...

Что делать сейчас я не знаю. С одной стороны надо бы поднять версию на проде, с другой - непонятно к чему приведут такие радикальные модернизации этого гавна мамонта. Как можно понять по стеку и текущему состоянию, желающих заниматья проектом нет, поэтому разгребать последствия тоже не кому. Пока склоняюсь к тому чтобы уволиться понизить версию в композере и в докере, приведя всё к 7.2 и забить хер. Но еще подумаю.

Ставь лайк, если понравились детективные истории. Пиши коммент, если не ожидал увидеть пост про PHP. Ставь сэванЭлеван, если не понял почему админу платят столько денег, когда он даже код под нужную версию написать нормально не может.



group-telegram.com/ebanoePHP/906
Create:
Last Update:

Пост про PHP! Не ждали?

А если точнее про php 7.2

Ебался я вчера очередной день, делая правки в проект на KOHANA. Написал небольшую SDK обёртку к одному из REST core сервисов, протестил вдоль и поперек на локалке и запушил в мастер

Однако, вместо удовлетворения от качественно проделанной работы, испытал некоторого рода негодование, когда метод API, в котором юзался мой класс стал возвращать 500. Естественно, я как дохуя опытный инженер сразу сообразил - нужно лезть в логи!


[Type:Default] ParseError [ 0 ]: syntax error, unexpected 'Redis' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) ~ APPPATH/classes/Domains.php


Непонятная хуйня, учитывая что на 13 строке было просто объявление свойста.


private Redis $redis;


Отчаявшись съебаться пораньше, я с максимально испорченным настроением начал думать переадресовал запрос Claude на что получил ответ, что скорее всего у меня старая версия пыхи - якобы типизированные свойства появились только в 7.4

Тут я сразу понял, что эти шайтан машины не скоро заменят нас, посколько в докере была нужная версия пыхи


image: ${REGISTRY}/php/build/landings/api:php7.4-2.0


Более того, в composer.json тоже была прописана она же


"require": {
"php": "^7.4",


Ошибки быть не могло. Тем не менее полчаса дальнейших ковыряний не помогли найти иной причины для такой херни в логах. В итоге я решил дать шанс этой сомнительной гипотезе и попробовал подключиться к проду по ssh, но так как я 3 года работал продактом в этой фирме, доступы мне выдают не охотно и ничего не получилось.

Переадресовав свою проблему девопсам я быстро дождался ответа и оказалось что на проде крутится версия...7.2

Сначала я не понял как такое возможно, почему проект вообще собирается, но оказалось, что проект собирается на специально выделенном агенте с помощью докер образа в котором у нас версия 7.4, после чего все файлы тупо копируются на продакшн. на котором стоит 7.2 Из за этого мой код с фичей из 7.4 приводил к 500...

Что делать сейчас я не знаю. С одной стороны надо бы поднять версию на проде, с другой - непонятно к чему приведут такие радикальные модернизации этого гавна мамонта. Как можно понять по стеку и текущему состоянию, желающих заниматья проектом нет, поэтому разгребать последствия тоже не кому. Пока склоняюсь к тому чтобы уволиться понизить версию в композере и в докере, приведя всё к 7.2 и забить хер. Но еще подумаю.

Ставь лайк, если понравились детективные истории. Пиши коммент, если не ожидал увидеть пост про PHP. Ставь сэванЭлеван, если не понял почему админу платят столько денег, когда он даже код под нужную версию написать нормально не может.

BY ebanoePHP




Share with your friend now:
group-telegram.com/ebanoePHP/906

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Artem Kliuchnikov and his family fled Ukraine just days before the Russian invasion. Perpetrators of such fraud use various marketing techniques to attract subscribers on their social media channels. NEWS And while money initially moved into stocks in the morning, capital moved out of safe-haven assets. The price of the 10-year Treasury note fell Friday, sending its yield up to 2% from a March closing low of 1.73%. Pavel Durov, Telegram's CEO, is known as "the Russian Mark Zuckerberg," for co-founding VKontakte, which is Russian for "in touch," a Facebook imitator that became the country's most popular social networking site.
from sg


Telegram ebanoePHP
FROM American