Я, наконец, опубликовал statoscope 5.25 🎉 И знаете, что? Я очень рад. Хотя бы потому, что теперь statoscope-отчет со сравнением двух (master vs PR) клиентских сборок Яндекс Маркета весит не 494мб, а 11мб. Нет, вам не кажется - статы пожались почти в 45 раз эффективнее 😇 Получаем экономию квоты на железо и времени пользователя, который ждет пока отчет загрузится. Это стало возможным благодаря сжатию статов в Binary JSON. Если очень коротко, то значения из объекта компактно записываются в виде б...
Сергей Мелюков
Про веб-разработку, JS, Webpack, open source, etc... Ведет @smelukov
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
19 из 19А вот и вышла текстовая версия моего доклада про Statoscope на HolyJS 🎉 Видео доклада Видео воркшопа, где я показываю как расширять Statoscope
Я покидаю Яндекс 😀👋☺️ Это были хорошие 4 года: чему-то научился сам, чему-то научил других - было круто. С благодарностью к коллегам за совместную работу ❤️ Сейчас у меня неделя отдыха, а после начинаю неистово работать над другим проектом, в другой компании 🤫 В результате недельного отдыха планирую значительно продвинуться с новой архитектурой статоскопа. За эти выходные набросал прототип, чтобы проверить накопившиеся идеи, полет отличный. Новая архитектура позволила избавиться от того, от ч...
Ну и, думаю, последний пост на тему css-парсинга в этом цикле ) Возможно, у вас в голове крутится что-то вроде: "Сергей, в предыдущем посте ты плевался от работы с исходником через токены, а в генераторе сам этим грешишь!". Все так, и в случае, когда нужно просто добавить пробелов - это ок. Более того, css-tree делает намного более детальную токенизацию, нежели postcss-value-parser Но! Если все таки хочется заморочиться с контекстом и не вставлять пробелы только перед именем шрифта и только в св...
Привет, VK! 💬👋☺️ С удовольствием встретил здесь бывших коллег и старых знакомых ☺️ Буду трудиться в роли ведущего эксперта/архитектора над новой архитектурой фронтенда https://cloud.vk.com/ Впереди действительно много работы и один большооооой вызов 🚀
Привет, друзья! Это были непростые полгода. Начиная от моего выгорания и заканчивая последними мировыми событиями. Пробегусь по новостям :) В конце прошлого года я в какой-то степени выгорел и перестал клепать апдейты Статоскопа с прежней частотой. За это время в моей голове начала вырисовываться архитектура нового Статоскопа - еще более расширяемая и совершенно независимая от сборщика. Последний пункт действительно очень важен. Новый Статоскоп делается не столько про сборку, сколько про здоровь...
Ох, давненько не было новостей 🙂 Итак, я выступил на HolyJS с двумя слотами (доклад + воркшоп). Я рассказал про Статоскоп и показал как его раширять, как написать расширение и правило валидации. Зрителям так понравилось, что вот-вот выйдет расшифровка моего доклада и видео доклада. После этого я переведу статью на английский и буду двигаться на запад 🚀 Буквально вчера вышел выпуск подкаста Goose & Duck с моим участием. Поговорили про миграцию гусей, чихуахуа и ворованный дизайн. Очень классные...
Теперь о том, как можно использовать revelation у себя, в качестве jest-резолвера: rev-resolver.js: const Revelation = require('revelation-resolver').default; const rev = new Revelation(options); module.exports = (request, options) => rev.resolve(options.basedir, request); jest.config.js: module.exports = { resolver: './path/to/rev-resolver' }; И всё. Поделитесь пожалуйста своими циферками, если вдруг будете пробовать Rev у себя, очень интересно. Возможно, по сравнению с дефолтным jest-резолверо...
Идем дальше. На скриншоте изображен итоговый пайплайн работы со статами. Чтобы получить HTML-отчет, статы проходят несколько стадий: - нормализация (Да, статоскоп умеет нормализовывать статы. До нормализации, статы весят 1.5гб, а после - 250мб. Подробнее описывал здесь) - сжатие с binary JSON - сжатие с gzip - пилим gzip-стрим на чанки (зачем это делать подбробно описывал тут) - энкодинг чанков в base64 (чтобы можно было хранить чанки с бинарными данными в HTML) - запись в файл Всё, отчет готов....