Поторопился с IntB

Мда, про выход на финишную прямую с релизом IntB я несколько поторопился. Постоянно появляются разные мелкие доделки, которые иногда могут оказаться не такими уж мелкими. Да ещё и биоритмический максимум, похоже, остаётся позади, умственная активность снова идёт на спад, и успеваю меньше.
Например, вчера решил было разобраться, почему перестал работать вывод фотографий из Instagram на главной странице сайта. Сначала думал, проблема в блокировках. Но нет, обычный wget скачивал файлы без проблем по тем же самым URL. Потом несколько часов ломал мозг, пытаясь найти причину. Вроде всё нормально, файлы скачиваются, но на этапе уменьшения что-то идёт не так. Причём проблема есть только при выполнении из под cron, что очень усложняет отладку. Пришлось включать cron в ежеминутный режим, делать отладочный вывод с помощью обычного echo и смотреть, что приходит на почту.
Только так смог установить, что проблема не в путях, а в функции загрузки изображения. Долго не мог понять, что с ней не так. Потом полез в документацию, и там обнаружил, что с PHP 8.0 функции createimagefrom* возвращают не resource, как раньше, а класс GgImage. А у меня в библиотеке, которая отвечает за масштабирование изображения, есть проверка на is_resource, и если она не проходит, то функция возвращает не хеш с данными об изображении, а false. И именно в этом и была проблема (для cron я писал полный путь /usr/bin/php, по которому запускается PHP 8.2, а через сайт или если написать в ком. строке просто php — пока ещё 7.4, который лежит в /usr/local/bin). Причём исправить её получилось только со второго раза — сначала неправильно написал условие проверки. На этом тоже потерял минут десять.
Но всё равно рад, что ту ошибку нашёл, так как она потом бы всё равно вылезла в модуле фотогалереи. И вообще, убеждаюсь, что в том коде, который запускается не напрямую по запросу из броузера, а через всякие cron, асинхронные задачи и тому подобное, обработку ошибок нужно делать даже тщательнее. И писать все ошибки в логи, чтобы потом было проще разобраться, что не так.
Потом обнаружил проблему с откатом редактирования сообщения. И решил автоматизировать получение токена для взаимодействия с VK. А также дополнительно защитить от возможных DoS-атак генератор previews. В общем, похоже, выпуск даже RC отложится как минимум до выходных. Тем более, тут вроде двинулось дело с ремонтом, и я сейчас сижу на новой квартире.