Skip to content

sem

v0.8.0 Feature

This release adds 1 notable feature for engineering teams evaluating rollout.

Published 1mo Version Control
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-agents code-intelligence coding-agents developer-tools git llm-tools
+4 more
semantic-diff tree-sitter typescript version-control

Summary

AI summary

Performance improvements make sem diff --patch 149× faster and reduce large monorepo impact runs from 90 s to 34 s.

Changes in this release

Feature Low

Adds LaTeX language support for .tex, .latex, .cls, .sty files

Adds LaTeX language support for .tex, .latex, .cls, .sty files

Source: llm_adapter@2026-06-07

Confidence: high

Performance Medium

`sem diff --patch`: 61s → 410ms (149x faster)

`sem diff --patch`: 61s → 410ms (149x faster)

Source: llm_adapter@2026-06-07

Confidence: high

Performance Medium

Graph resolution complexity improved from O(n²) to O(n)

Graph resolution complexity improved from O(n²) to O(n)

Source: llm_adapter@2026-06-07

Confidence: high

Performance Medium

71K-file TS monorepo DNF analysis now completes in 6.5s with cache

71K-file TS monorepo DNF analysis now completes in 6.5s with cache

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Skips binary and generated files during repository scans

Skips binary and generated files during repository scans

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Handles cross-language file diffs correctly

Handles cross-language file diffs correctly

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Returns MCP tool errors with specific input details and suggestions

Returns MCP tool errors with specific input details and suggestions

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Stabilizes ordering of `sem graph --json` output

Stabilizes ordering of `sem graph --json` output

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Bounds history scans in `sem log` to prevent excessive processing

Bounds history scans in `sem log` to prevent excessive processing

Source: llm_adapter@2026-06-07

Confidence: high

Bugfix Low

Corrects subdirectory path resolution in CLI commands

Corrects subdirectory path resolution in CLI commands

Source: llm_adapter@2026-06-07

Confidence: high

Full changelog

Performance

The headline improvements:

  • sem diff --patch: 61s → 410ms (149x faster)
  • Graph resolution: O(n²) → O(n)
  • 71K-file TS monorepo: DNF → 6.5s with cache

Under the hood:

  • Streaming JSON output — results stream as they're computed instead of buffering in memory
  • mimalloc allocator — significant win for allocation-heavy tree-sitter parsing
  • Topology-only cache — caches dependency graph structure so repeated queries skip re-parsing unchanged files
  • Content fingerprinting — skips re-analysis of files that haven't changed based on hash comparison
  • Batched file fingerprint refresh — batched SQLite roundtrips instead of one-at-a-time
  • Import table allocation reduction in bag-of-words resolver
  • SQLite cache schema v4 with file_imports table for faster import resolution
  • Partial topology cache for large impact runs — cold sem impact on 100K-file repos drops from 90s to 34s, warm runs under 2s
  • Direct deps path for large impact runs
  • Stabilized graph output for ambiguous calls

Consolidation

Major internal cleanup across the codebase:

  • Consolidated identity matching, diff output filtering, diff path/patch parsing
  • Consolidated cache and verify behavior
  • Consolidated graph and scope resolution
  • Consolidated TypeScript/JavaScript parser resolution
  • Consolidated Swift extraction

Features

  • LaTeX language support — regex-based parser for .tex, .latex, .cls, .sty files with preamble, command, section, and environment entity extraction

Fixes

  • Skip binary and generated files in repo scans
  • Handle cross-language file diffs
  • Return MCP tool errors for bad inputs instead of generic failures
  • MCP entity lookup failures now name the requested file and include candidate suggestions
  • Stabilized sem graph --json output ordering
  • Bounded sem log history scans
  • Fixed subdirectory path resolution in CLI commands
  • Portable format flag test across platforms

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track sem

Get notified when new releases ship.

Sign up free

About sem

Semantic version control => entity-level diffs, blame, and impact analysis on top of git. 26 languages via tree-sitter. Built for coding agents.

All releases →

Related context

Related tools

Beta — feedback welcome: [email protected]