Интерфейсы и frontend
August 9, 2020

На всю голову JS #6

Темы:

1. #30DaysCommitChallenge — https://t.me/davidobryakov/951

2. Вышел Emmet 2 — https://teletype.in/@chikuyonok/emmet2-sublime-text

Если кратко: теперь можно сразу видеть разметку, которая получится из вашего шорткода. Автокомплит позволит вам развернуть ранее написанные шорткоды. Улучшена поддержка JSX, CSS. Можно увидеть tag-preview, чтобы сразу примерно представлять, что у вас получится в итоге.

3. Релиз Django 3.1 — https://www.djangoproject.com/weblog/2020/aug/04/django-31-released/

Команда Django рада объявить о выпуске Django 3.1.

В примечаниях к выпуску подробно рассказывается о новых функциях, но есть несколько основных моментов:

- Поддержка асинхронных views и middleware.

- JSONField для всех поддерживаемых баз данных.

- Токены, файлы cookie, сеансы и подписи теперь используют алгоритм хеширования SHA-256.

С выпуском Django 3.1 Django 3.0 достиг конца основной поддержки. Вчера был выпущен последний выпуск с исправлением незначительных ошибок, 3.0.9. Django 3.0 будет получать исправления безопасности и потери данных до апреля 2021 года. Всем пользователям рекомендуется выполнить обновление до этого, чтобы и дальше получать исправления для проблем безопасности.

4. Integrated Haskell Platform — https://ihp.digitallyinduced.com/

Когда я только начинал работать с Django, мне приходилось делать иногда по нескольку приложений ежедневно, из-за чего я всерьёз задумался о создании своей утилиты, которая бы генерировала представления, сериализаторы и урлы, исходя из моих моделей данных, настолько мне было скучно каждый раз дублировать одно и то же. И каково было моё удивление, когда я увидел, что IHP может так делать!

Уже порядка пары-тройки месяцев назад вышел fullstack-фреймворк IHP, который позволяет создавать сайты быстро и с применением SSR. Раньше я всегда думал, что самый простой фреймворк в этом отношении — Django, но IHP вмещает в себя очень много всяких штук из нынешнего фронтенда (например, тут есть альтернатива JSX — HSX). Все контроллеры генерируются автоматически, исходя из таблиц в БД.

5. Поддержка российских процессоров в Linux 5.8 — https://te.legra.ph/Vyshlo-samoe-krupnoe-v-istorii-obnovlenie-Linux-V-nego-vpervye-dobavlena-podderzhka-rossijskogo-processora-08-04

"Ядро 5.8 стало самым крупным по числу изменений из всех ядер за всё время существования проекта. При этом изменения не связаны с какой-то одной подсистемой, а охватывают разные части ядра и в основном связаны с внутренними переработками и чисткой. Больше всего изменений наблюдается в драйверах. В новую версию принято 17606 исправлений от 2081 разработчиков, которые затронули примерно 20% всех файлов в репозитории с кодом ядра. Размер патча - 65 МБ (изменения затронули 16180 файлов, добавлено 1043240 строк кода, удалено 489854 строк). Для сравнения в ветке 5.7 было внесено 15033 исправлений, а размер патча составлял 39 МБ. Около 37% всех представленных в 5.8 изменений связаны с драйверами устройств, примерно 16% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 11% связано с сетевым стеком, 3% - с файловыми системами и 4% c внутренними подсистемами ядра." - как пишут на портале OpenNet.

И самой растиражированной новостью всвязи с этим обновлением — для меня стало то, что официально в эту версию ядра добавили поддержку российских процессоров Baikal.

6. Lighthouse 6 — https://web.dev/lighthouse-whats-new-6.0/

В Lighthouse добавились новые метрики Web Vitals: Largest Contentful Paint, Cumulative Layout Shift и Total Blocking Time. Помянем устаревшие метрики, которых больше не будет в Lighthouse: FMP, FCPUI, MPFID.

Размуеется, это сказалось на скоринге. Если у вас деплой завязан на метрики Lighthouse — пересмотрите пороговые значения.

Кроме того, обновился тултип, который показывается при наведении на элемент с открытыми Девтулзами. Теперь там показывается информация о Доступности этого элемента и возможности его выделения с клавиатуры.