EN
creator cover Aleksei roxblnfk Gagarin

Aleksei roxblnfk Gagarin

I ❤️ PHP and OpenSource.
Aleksei roxblnfk Gagarin
5
subscribers
goals
4 of 50 paid subscribers
Чувствовать поддержку сообщества 💖
12.53 of $ 627 money raised
На следующий выпуск "В мире PHP"

Figma

Figma выглядит достаточно удобным инструментов для создания анимаций и презентаций.
Уже почти месяц готовлю презентаци по Temporal. Посмотрим, что из этого получится.
Кстати, анимацию в этой Issue я тоже делал в Figma

Spiral 3.14

Вчера выпустил Spiral 3.14
Обновил интерцепторы и добавил DI Scopes. Пока только в формате обратной совместимости.
Впереди Spiral 4, а значит грядёт что-то грандиозное: большая чистка, супер-оптимизации, улучшения и автоматизация.

trap()::profile()

Размышляю над добавлением поддержки xhprof в Buggregator Trap.
Хочется не только добавить это в UI наравне с Buggregaotr Server, но и дать удобные хелперы для использования в пользовательском коде.
Как бы это могло выглядеть?
Первый вариант:
trap()::profile()->begin();
// Your code ...
trap()::profile()->end();
Это может быть полезно в случае, когда точка запуска профилирования и остановки в разных местах. Недостаток - пользователь может забыть вызвать один из методов, либо разместить end() в месте, до куда не дойдёт выполнение кода.
Второй вариант:
trap()::profile(function () {
// Your code ...
});
Show more

Temporal PHP Unofficial

Создал организацию temporal-php, в которой планирую размещать:
- Ссылки на обучающие материалы и прочую информацию относительно Temporal в мире PHP.
- DX-пак с полезными хелперами, облегчающими работу с SDK.
- Разные экспериментальные наработки и прочие приблуды.
Пригласил в организацию Игоря, автора репозитория awesome-temporal-ru, и Павла, мейнтейнера фреймворка Spiral.
Будет что показать в ближайшее время :P

Buggregator Trap и Web UI

Первая экспериментальная версия Buggregator Trap с интегрированным полноценным UI вышла в релиз. Для взаимодействия с фронтендом необходимо было реализовать поддержку Websocket протокола и, чёрт побери, я это сделал. Теперь вместо одного сервера внутри работают два - один на приём событий, другой на взаимодействие с UI.
Pull Request
Интересные моменты из проделанной работы:
1. Мне понравилась идея написать потоковый парсер фреймов в генераторе. Во время парсинга yield используется для того, чтобы запросить N следующих байт трафика для получения следующего кусочка фрейма. И когда фрейм будет собран, из генератора через yield отправится уже объект фрейма. Парсер не заботится о буферизации, а просто парсит, забирая нужное количество байт.
2. Написал свой роутер на атрибутах. Мне нравится, насколько простой и лаконичный он получился.
Здесь есть статичные маршруты и динамичные, которые задаются регулярными выражениями и с помощью которых можно захватить аргументы из динамичного маршрута.
Также я нашёл удачным решение тестировать маршруты здесь же, где они определяются:
Show more

Supporting for Yiisoft

Ввиду того, что сервис OpenCollective более недоступен в России, сообщество фреймворка открывает дополнительный сбор пожертвований в сервисе Boosty:
https://boosty.to/yiisoft

Subscription levels

Cookies

$ 1,26 per month

Coffee

$ 2,51 per month

Burger

$ 3,8 per month

Chicken

$ 6,3 per month

Pizza

$ 12,6 per month

Support Open Source

$ 63 per month
Go up