TL;DR

  • Улучшена точность парсинга Scala с Tree-sitter.
  • Расширена поддержка вариативных функций в taint-анализе.
  • Исправлены проблемы производительности с Unicode-символами в правилах.

Key Changes

Semgrep v1.160.0, выпущенный 16 апреля 2026 года, сосредоточен на улучшении возможностей статического анализа и устранении узких мест в производительности. Это минорное обновление вносит значительные улучшения для проектов на Scala и обработки правил.

Новые Возможности:

  • Парсинг Scala: Интегрирован новый Tree-sitter парсер для Scala, обеспечивающий повышенную точность парсинга. Это обновление включает резервный механизм (fallback) на парсер pfff, что гарантирует надежность.
  • Taint-анализ (Pro): Улучшена поддержка вариативных функций в taint-анализе, что приводит к более точным результатам по безопасности для сложных кодовых баз.

Исправления:

  • Производительность Правил: Устранены проблемы производительности, возникавшие при парсинге правил Semgrep, содержащих эмодзи или другие Unicode-символы, не входящие в BMP. Это обеспечивает более быстрое выполнение правил.
  • Валидация Правил: Semgrep теперь выдает предупреждение с подробной информацией о сбое, когда валидация правил semgrep-core не удается и происходит возврат к валидации по JSON-схеме. Это обеспечивает более четкую обратную связь для авторов правил.

Для получения дополнительной информации, обратитесь к официальным примечаниям к выпуску.

Impact for QA Teams

Инженеры по QA, отслеживающие обновления Semgrep, найдут эту версию полезной для улучшения результатов SAST, особенно для приложений на Scala. Улучшенный taint-анализ способствует более надежному тестированию безопасности. Исправления производительности означают более быстрое время сканирования для проектов, использующих сложные правила, а более четкие предупреждения о валидации упрощают разработку и поддержку правил.