Finding a VS Code Memory Leak
Разработчик Chromium Брюс Доусон обнаружил, что VS Code течёт дескрипторы процессов: вместо того чтобы закрывать дескриптор после использования, он оставляет его открытым. Каждый незакрытый дескриптор «стоит» 64 КБ, и при длительной работе редактора это может привести к утечке гигабайтами памяти. Проблема была найдена и исправлена в течении пары дней после доклада, и в релизе 1.94 VS Code больше не течёт.
Комментарии (11)
- VS Code и другие крупные редакторы из-за своего размера и сложности становятся мишенью для атак на цепочку поставок и уязвимостей.
- Участники обсуждают, что большие кодовые базы и многочисленные зависимости увеличивают риски.
- Появляется идея использовать ограничения по памяти для раннего обнаружения утечек и избытка функций.
- Некоторые участники выражают обеспокоенность по поводу того, что такие ограничения могут быть непрактичны в современных условиях.
- В целом, обсуждение подчеркивает важность минимизации поверхности атаки и управления рисками в экосистеме разработки.
Detect Electron apps on Mac that hasn't been updated to fix the system wide lag
Некоторые версии Electron на macOS вызывают системные лаги, особенно на Tahoe. Проблема решена в версиях 36.9.2, 37.6.0, 38.2.0, 39.0.0 и выше. Для обнаружения уязвимых приложений используется скрипт, который сканирует установленные программы и проверяет версии Electron Framework.
Временное решение — установка переменной окружения CHROME_HEADLESS=1 при запуске системы, что отключает тени окон Electron, устраняя лаги, но ухудшая визуальный вид. Среди популярных приложений с проблемными версиями: Visual Studio Code (37.3.1), Slack (38.1.2), DaVinci Resolve (36.3.2) и другие.
Комментарии (87)
- Обсуждаются способы выявления Electron-приложений на Mac с устаревшими версиями фреймворка, вызывающими лаги системы, включая скрипты и инструменты для анализа.
- Участники отмечают, что многие популярные приложения (VS Code, Slack, Discord, Docker Desktop и др.) используют устаревшие версии Electron, что приводит к проблемам с производительностью после обновления macOS.
- Высказывается критика в адрес Apple за недостаточное тестирование ОС и в адрес Electron за отсутствие разделения рантайма и приложений, что затрудняет массовые обновления.
- Приводятся примеры конкретных приложений и их версий Electron, а также личный опыт удаления или отказа от обновления проблемного ПО.
- Обсуждаются технические детали бага Electron (проблема с перерисовкой тени) и тот факт, что команда Electron выпустила патч для предыдущих версий.