Пых
8.27K subscribers
260 photos
14 videos
6 files
566 links
Блог Валентина Удальцова о разработке на PHP.

Хобот @phpyhobot
https://youtube.com/@phpyh
https://vkvideo.ru/@phpyh
https://xn--r1a.website/isPHPdying

Статистика: https://xn--r1a.website/INOTAROBOT?start=st1219340804

Для связи используйте личные сообщения канала.
Download Telegram
Всем привет!
Сегодня и завтра мы (Валентин @vudaltsov и Елена @llakie) будем транслировать новости с хакатона Symfony в Брюсселе.

О мероприятии на сайте Symfony: https://symfony.com/blog/the-symfony-and-api-platform-hackathon-is-coming
Официальный сайт хакатона: https://eufossahackathon.bemyapp.com/

Присоединяйтесь к нам на канале @sfhackathon !
Channel photo updated
Сегодня у участников хакатона есть уникальная возможность пообщаться с Бернардом Шуссеком (Bernhard Schussek, https://github.com/webmozart)!

Бернард — автор нескольких важнейших компонент Symfony: Form, Validator, PropertyAccess.
Интересно, что Symfony Form была частью его бакалаврской дипломной работы (https://www.reddit.com/r/PHP/comments/5iax07/bachelor_thesis_about_forms_processing_by/).

Так же Бернард является автором популярной библиотеки Assert (https://github.com/webmozart/assert) и многих других проектов.

Постараюсь сегодня взять у него небольшое интервью 😊
Сегодня по результатам дебатов команды экспертов в Symfony Security, была создана issue с описанием планов по рефакторингу компоненты.

Самые важные и интересные идеи:

1) Переименовать концепцию User в Principal в связи с тем, что аутентификация осуществляется не только пользователями (устройствами, сервисами и т.д.).
2) Выделить понятие Identity, на основании которого будет осуществляться авторизация.
3) Принципалы не должны знать о паролях и ролях (прощай, UserInterface).
4) Встроенная поддержка OAuth, JWT, двухфакторной аутентификации.
5) CSRF на уровне маршрутизации.
6) Больше событий (хуков).
7) Возможность контролировать доступ из объекта.

... и многое другое, подробнее в https://github.com/symfony/symfony/issues/30914
Media is too big
VIEW IN TELEGRAM
Экскурсия по хакатону от Елены 🎥
👍1
Статистика вчерашнего дня.

Основной репозиторий Symfony:
56 тикетов закрыто (https://bit.ly/2I1iy1e)
42 пулл-реквеста мерджено (https://bit.ly/2Vx1Av2)

Документация:
26 тикетов закрыто (https://bit.ly/2G6Mnve)
21 пулл-реквест смерджен (https://bit.ly/2YVmEx9)

Diversity:
8 тикетов закрыто (https://bit.ly/2D2QK8H)

API Platform:
10 пулл-реквестов смерджено (https://bit.ly/2I5rhiU , https://bit.ly/2IdLaUq)

Чуть позже возьму интервью у Бернарда 😅
Всем хороших выходных, а нам — продуктивного кодинга!
Час назад Фабьен смерджил мой PR https://github.com/symfony/symfony/pull/30862

Суть его проста: выделить функционал твиговских функций absolute_url() и relative_path в отдельный сервис HttpFoundation\UrlHelper. Его можно использовать при генерации ссылок на локальные ресурсы, что нередко требуется в API и при отправке писем.

Допустим, у нас есть сущность User@Entity с полем string $avatar = 'uploads/nadezhda.jpg'. После нормализации нам бы хотелось получить ['avatar' => 'https://website.ru/uploads/nadezhda.jpg']. Теперь это можно сделать одним вызовом $this->urlHelper->getAbsoluteUrl($user->avatar()).

Важно, что UrlHelper работает вне контекста запроса, например, в командах, так как при пустом RequestStack он берет данные из RequestContext. Подробнее о том, как настроить RequestContext, можно прочитать здесь: https://symfony.com/doc/current/console/request_context.html .
👍1
🔥1
Создатель Symfony, Fabien Potencier
👍1