Hacker News Digest

Тег: #valgrind

Постов: 2

Go has added Valgrind support (go-review.googlesource.com) 🔥 Горячее

PolyGerrit — это веб-интерфейс для работы с системой контроля версий Gerrit, требующий активации JavaScript в браузере для полноценного функционирования. Без него страница не загрузится корректно, и пользователь увидит только это сообщение с просьбой включить скрипты и обновить страницу. Это стандартное требование для современных веб-приложений, обеспечивающее динамическое взаимодействие, такое как просмотр изменений кода, комментарии и код-ревью.

by cirelli94 • 23 сентября 2025 г. в 09:26 • 471 points

ОригиналHN

#go#valgrind#cryptography#memory-management#unsafe#cgo

Комментарии (121)

  • Добавлена поддержка Valgrind в Go для тестирования криптографического кода на постоянное время выполнения и отслеживания инициализации памяти.
  • Обсуждаются преимущества Valgrind для обнаружения утечек памяти и тонких ошибок, несмотря на наличие других инструментов, таких как ASan/MSan.
  • Подчёркивается важность аннотаций для корректного анализа неинициализированной памяти, особенно при использовании unsafe-кода или CGO.
  • Высказываются опасения, что эффективность зависит от повсеместного использования инструмента всеми пакетами, чтобы избежать большого количества ложных предупреждений.
  • Некоторые пользователи выражают скептицизм, считая необходимость в Valgrind признаком недостатков языка, в то время другие видят в этом мощное дополнение к инструментарию.

We rewrote the Ghostty GTK application (mitchellh.com) 🔥 Горячее 💬 Длинная дискуссия

Ghostty GTK-часть переписана с нуля
Проект завершён: Linux/BSD-версия теперь полностью использует GObject из Zig и проверена Valgrind.

Что изменилось

  • Zig-структуры обёрнуты в GObject; память управляется счётчиками ссылок.
  • При обновлении конфига старый объект освобождается автоматически, когда исчезают ссылки.
  • Появились сигналы, свойства, действия GTK и современные UI-файлы Blueprint.
  • Новые виджеты добавляются быстрее (анимированная рамка, вкладки в заголовке и т.д.).

Valgrind Каждый коммит прогонялся под Valgrind.

  • Потребовался большой suppression-файл (в основном GTK/драйверы).
  • Найдены: утечка и неопределённое обращение в Zig-коде, ошибка WeakRef в GTK, которые иначе вызывали редкие краши.

by tosh • 14 августа 2025 г. в 21:19 • 410 points

ОригиналHN

#zig#gtk#gobject#valgrind#linux#bsd#memory-management

Комментарии (194)

  • Ghostty переписывает GUI на GTK/Zig, столкнувшись с проблемами GObject и управления памятью.
  • Участники обсуждают, что GTK навязывает свою ООП-модель и счётчики ссылок, что сложно сочетать с Zig/Rust.
  • Некоторые считают GTK не «родной» на Linux и предлагают Vala, Qt или собственный UI.
  • Пользователи жалуются на баги прокрутки, копирования, nano и отсутствие поиска.
  • Автор признаёт выбор GTK компромиссом ради кроссплатформенности и «родного» вида.