Валя читает ишью
3.14K subscribers
57 photos
3 videos
271 links
Делюсь интересными ишьюсами и пул-реквестами в мире фронтенда и около
github.com/7rulnik twitter.com/7rulnik
Download Telegram
Новый сайт nodejs

Оказывается, уже какое-то время идёт работа над редизайном основного сайта nodejs. Его уже можно пощупать по адресу nodejs.dev.

Внутри гэтсби, тайпскрипт и старый добрый SCSS.
Express и HTTP\2

Уже очень и очень давно существует ишью о поддержке HTTP\2 в экспрессе. Очень давно это уже больше 5 лет. А ещё бета следующей мажорной версии была запаблишена 6 лет назад. Это в общем-то примерно всё, что нужно знать о поддержке и развитии этого фрэймворка.

На самом деле экспресс и сам TJ оказали огромное влияние на популярность nodejs, но годы прошли и появились альтернативные фрэймворки, которые продолжают развиваться. Сейчас же экспресс скорее мешает, т.к. многие проекты зависят от него. Среди них и webpack-dev-server. В будущем вебпак будет использовать для этих целей fastify.

Фастифай, кстати, сумасшедшая штука: он даже быстрее нативного сервера.

Ну а если вами всё-таки нужен HTTP\2 локально, то сейчас проще всего поднять какой-нибудь nginx и прокисровать запросы до дев-сервера.
Docker на Apple Silicon

Уже сегодня в 21:00 по Москве Apple презентует ноутбуки на собственных чипах. Большинство проектов уже адаптировались к новой архитектуре, но только не Docker.

Есть 2 ишью:
- в репозитории docker for mac
- в репозитории с роадмапом развития докера.

Меня удивляет, что нет никакого отклика от мэйнтэйнеров. И это при том, что докер в современной разработке чуть ли не самый важный компонент.

А про сам Apple Silicon, и почему я уделяю столько внимания ему, я уже писал вот здесь. Посмотрим, оправдаются ли ожидания!
Виртуальный митап от ГитХаба

Внезапно в твиттере GitHub появилась кириллица.

17 ноября в 19:00 по Москве пройдет онлайн митап, организованный гитхабом. Я так понял, будет 2 коротких доклада от ребят, работающих в гитхабе и 3 доклада от внеших ребят.

Подробности и зарегистрироваться можно здесь.
Эмэйзинг

Показали новые маки. В целом всё как и ожидалось. Цена приятная.

Но есть два вопроса:
1. Если процессор одинаковый, то откуда разница в производительности между эиром и про? С охлаждением чип может выдавать больше мощности?
2. Лимит по памяти в 16 гигабайт. Не очень понятно будет ли она эффективней расходоваться или так же, как и обычная оперативка?

Остаётся дождаться тестов и убедиться, что весь софт, который нужен, работает.
Кстати, в 13 дюймах теперь только 2 usb-c порта.
Forwarded from Веб-стандарты (Веб-стандарты)
Does it ARM? Список совместимости программ для macOS с новой ARM-архитектурой Apple. Например: Chrome, Atom, Photoshop и Python пока не работают вообще, поддержка Firefox, VS Code и Node.js в работе, а WebStorm и Sublime Text работают с эмулятором.

https://github.com/ThatGuySam/doesitarm
Docker на Apple Silicon. Продолжение.

Интернет наводнило мемами про докер, и, видимо, ребята поняли, что лучше не молчать и хоть что-нибудь накалякать.

Очень водянистый блог-пост, в котором 4 ключевые мысли:
1. Докер нужно переписать на новый гипервизор.
2. Поднять собственный CI кластер из 25 маков мини.
3. Перейти на 11 электрон. Он уже поддерживает ARM. А нужен он для Docker Desktop.
4. Обновить go, ведь на нём крутится бекенд. Уже работает через розетту и в феврале ожидается нативная поддержка.

На мой взгляд это очень плохой пост, потому что нет никаких сроков и ссылок на внешние блокеры. Остаётся гадать, когда они всё сделают и докер таки заработает. Думаю, что не раньше марта, но буду рад ошибаться.

UPD: и в довесок странный комментарий с «we have external dependencies and we don't know their timelines».
ES модули в nodejs перестают быть экспериментальными

Уже на следующей неделе ESM будут помечены как стабильные. При этом некоторые саб-фичи всё ещё остаются экспериментальными, правда я не нашёл о чём именно речь 🙁

Видимо речь о таких штукак как import.meta.main и подобных.
Поддержка Hermes в React Native на iOS

Вышел 64 релиз кандидат реакт нэйтив. В нём появилась возможность использовать Hermes на iOS. Hermes — это джаваскрипт движок, который ребята из фэйсбука специально написали для оптимизации загрузки и выполнения приложений на андроиде.

Кстати, сам фэйсбук тоже рендерится через Hermes.
Рома Дворнов, автор csstree, завёл канальчик. Сечас пишет о разработке поточного джейсон парсера.
Вчера наконец сделал первую имплементацию поточного парсера JSON. Месяцы обдумывания что нужно сделать, и пара часов на начальную версию плюс часа три на оптимизацию и полировку. Текущие цифры не так сильно удручают как первичные, но пока далеко до нативного JSON.parse()
(тут parse: начальная версия -> текущая)

Webpack stats (~500mb с форматированием)
parse: 13.047s -> 4.946s
JSON.parse(): 1.258s

fixture 100mb
parse: 5.661s -> 1.424s
JSON.parse(): 559.153ms

fixture 13.7mb
parse: 303.423ms -> 140.015ms
JSON.parse(): 39.643ms

fixture 2mb
parse: 204.93ms -> 102.851ms
JSON.parse(): 11.838ms

Это будет частью json-ext, пока живет в ветке. Еще нужно просмотреть свежим взглядом, добавить тестов и обкатать на живых проектах.
Docker Compose на Apple Silicon

Пояилось ишью в котором, ведётся работа по запуску Docker Compose. Есть проблемы с питон-зависимостями, но их скоро решат. Ну и он отлично запускается через розетту.
Рейт-лимиты Docker Hub

Не так давно докер выкатили ограничение на пул образов с Docker Hub. А гитлаб, в свою очередь, выкатили кеширующую проксю и написали статью про мониторинг лимитов.

Статья про мониторинг вызвала у меня улыбку, прям представил себе девопосов, которые настаривают такой мониторинг. Что меня удивляет, так это относительно скромное распространение новости про рейт-лимиты, хотя изменение сильно влияют на разработку, особенно в больших командах. Но возможно это мне просто «повезло» и я об этом узнал только из ченджлогов гитлаба.
Читаете ченджлоги?
Anonymous Poll
34%
Да
15%
Нет
51%
Ну, бывает
Вокруг React

Я очень редко слушаю подкасты, но мимо UnderJS с Дэном Абрамовым пройти не смог. Час с небольшим Дэн рассказывает про будущее реакта.

Больше всего меня заинтересовал топик «Suspense в SSR». И, к сожалению, я не услышал того, что хотел услышать. На сколько я понял, планов сделать так, чтобы саспенс работал на сервере и можно было дождаться чего-то асинхронного прям в компоненте у ребят нет. Вместо этого они хотят сделать стриминг и рендерить фолбек, а как только данные будут получены, продолжать рендер и подменять фолбек на настоящий контент.

Получается, что у нас набор каких-то костылей:
* getServerSideProps в next.js;
* renderToStringWithData в Apollo, который делает рекурсивный рендер;
* самописные решения с двойным (и более) рендером для сбора промисов;
* react-ssr-prepass, который страшно (ну, лично мне) тащить в продакшн.
Webpack 5 в Storybook

Почти год назад появилось ишью про обновление вебпака (он тогда ещё в бете был) и было 3 пул-рерквеста, которые делали апргейд примерно одинаково плохо и неполнеценно. И вот за дело взялся один из мэйнтейнеров.

Основная проблема: скорей всего придётся ломать обратную совместимость, а это значит, что релиз могут отложить.
Что используете для контроля версий на работе?
Anonymous Poll
24%
Bitbucket
26%
GitHub
42%
GitLab
0%
Upsource
7%
Другое (напишите в комментарии)
Простите, я глупенький.