Skip to Content
Changelog

0.48.0

  • Add latdx validate command (deploy delta + affected tests + coverage gate)

0.47.0

  • Add usage metrics reporting and opt-out telemetry
  • Mark internal dev and CI telemetry so it filters out of analytics
  • Keep telemetry inert until a real PostHog key, add dev env routing
  • Re-enable shadow runs as run-piggybacked cache validation
  • Resolve test impact for namespaced workspaces

0.46.0

  • Add --dry-run to latdx test run

0.45.0

  • Add latci cli-bench, offline CLI performance benchmark harness

0.44.2

  • Deflake ensureFreshDaemon restart tests by injecting process deps
  • Flush watcher-fed caches when the daemon file watcher restarts
  • Skip .claude agent worktrees in the Phase 4 closure walk
  • Stop apex-ls bridge Org leak and full reloads on watcher events

0.44.1

  • Arm the daemon file watcher via one recursive fs.watch on macOS

0.44.0

  • Render CLI warnings as amber warning-glyph headline
  • Replace plain-renderer logfmt chrome with human phrasing
  • Unfold GitHub Actions test output and drop the success notice
  • Print the org-wait phase line above the cached cascade
  • Suppress test-run heartbeat repeats when progress display is off
  • Throttle CLI update checks to hourly and report GitHub rate-limit resets

0.43.0

  • Hide test-run progress in CI by default, add --progress flag
  • Run CI test runs on any plan, capping non-TEAM/CI plans at the free-tier limit
  • Tidy latdx auth login success output
  • Drop skipped-tests clause from free-tier cap message

0.42.0

  • Add subscription group and auth-aware free-tier cap CTA
  • Redesign latdx auth login terminal output

0.41.4

  • Accept loopback Host headers in CLI auth callback

0.41.3

  • Trigger CLI release after staging host support

0.41.2

  • Check for CLI updates on every invocation instead of once per 24h
  • Render upgrade with the polished installer UI
  • Reject unsigned license tokens

0.41.1

  • Resolve live CLI access and billing state

0.41.0

  • Issue a free-tier identity license on sign-in

0.40.0

  • Reactive licensing (background poll, keep-token re-grant, verdict-driven display)
  • Reflect plan changes live and check access on every CLI invocation

0.39.0

  • Refresh license non-interactively so plan changes apply without re-login

0.38.0

  • Add global -C/--cwd flag to run from outside the project dir
  • Add opt-in fail-fast to test runs
  • Dedupe SF live test results per method so no-cache matches cache count

0.37.0

  • Daemon-driven hourly CLI auto-update
  • Route MCP test runs through the CLI default engine and db mode
  • Drop license signature verify, heartbeat is sole trust gate

0.36.0

  • Add MCP server (latdx mcp serve) for AI agents
  • Op-style help columns, user label, simpler tagline
  • Render CLI auth login result pages in the branded site card

0.35.1

  • Include stable releases on the latest upgrade channel and pick highest version

0.35.0

  • Add account/plan row to banner and remove redundant license commands
  • Nest auth commands under latdx auth
  • Secure OSS auto-license via GitHub OIDC exchange

0.34.0

  • Add latdx login + progress-bar license limit message
  • Pre-compute workspace cache keys at daemon startup

0.33.0

  • Drop flag-echo and defaults from test run intro header
  • Route test run --affected reach through daemon bridge
  • Drop redundant Unsupported API prefix from skipped row detail
  • Left-align time and chip columns in test output
  • Silence confirmation prompts under --json so machine output stays parseable
  • Free for OSS: GitHub Actions public-repo cap bypass
  • Share account dropdown across dashboard with License entry

0.32.0

  • Bottom progress status line for test run
  • ES256 license keys, GH Action, free-tier cap
  • Pad LATdx splash banner with leading blank line
  • Count late-discovery suites as done in the suites N/M counter
  • Flush phase rows at natural time instead of end of run

0.31.1

  • Add --affected, --failed-only, --force flags to test run

0.31.0

  • Inline test failure detail and skip log hint on test failure

0.30.0

  • Collapse setup phases under Preparing test run umbrella
  • Optimistic queue check + quiet test-run phases
  • Resolve test classes from workspace via apex-ls (--source flag)
  • Bound daemon shutdown + guard cross-binary restart loop
  • Drop noisy async-poll log and add gap before RUNS chip
  • Stop dropping trailing async test rows and hide @TestSetup
  • Instant-commit fully cached class blocks
  • Unwedge daemon shutdown after binary rebuild

0.29.0

  • Make silent CLI/daemon phases observable

0.28.0

  • Add --classes-only flag to test list
  • Add -n short flag for test list --classes-only
  • CLI-scope wall + daemon shutdown-race retry
  • Silent background self-update like Claude Code
  • Incremental Org.refresh for watch flush
  • Skip workspace update when no tests reach the edit
  • Stop double-firing onTestQueued in async streamer
  • Parallelize partitionMethods cache + hash batches
  • Preserve AST cache across full reload via mtime gating

0.27.0

  • Phase-B saved-time model via observed parallelism

0.26.0

  • Introduce Renderer abstraction seam
  • Smart pre-flight cancel for ApexTestQueueItem conflicts
  • Swap prompts for clack and add --yes flag
  • Wire renderer rhythm into latdx test run
  • Stub GHA env in CLILogger renderer-cache tests

0.25.0

  • Default LATDX_CACHE_PHASE to 4 when unset
  • Default LATDX_CACHE_SHADOW_RATE to 0 when unset

0.24.0

  • Jest-style plain output with per-test cache marker
  • Make --coverage opt-in to keep per-method cache replay viable
  • Format cache sizes >=1 GB in GB/TB instead of inflated MB
  • Cut watch-mode flush latency to next tick in test-impact

0.23.2

  • Preserve spinner timer across progress ticks in test-impact watch
  • Ignore .claude / .latdx / .sfpowerscripts in metadata watcher
  • Swallow stdin EPIPE on JVM exit in ApexLsBridge

0.23.1

  • Migrate metadata watchers to chokidar v4 (FSEvents-native, no polling)

0.23.0

  • Bake elapsed counter + non-TTY heartbeat into CLISpinner
  • Add --latest/--stable to upgrade and update alias
  • Fast-feedback banner + plain-mode test progress

0.22.7

  • Drop ‘querying SymbolTable’ label from test list spinner

0.22.6

  • Single-pass convertMultiLineSOQLToString

0.22.5

  • Floor fractional seconds in formatTimer
  • Use stored map key in LiveTestRenderer running-set check (4.8x)
  • Propagate BaseRegistry.load I/O errors
  • Propagate BaseRegistry.save storage errors instead of swallowing
  • Warn when explicit LATDX_CACHE_PHASE=4 factory throws
  • Batch CachingTestRunner closure source lookups (1.16x on 500-dep)
  • IndexOf-walk DeployedComponentsRegistry.deriveApexClassName (2.4x)
  • IndexOf-walk DynamicSiteDetector.lineStartOffsets (5.5x faster on 800KB)
  • Substring-scan FileWatcher.isSchemaPath (2.2x)

0.22.4

  • Remove stale validation marker files

0.22.3

  • Accept Phase 4 in LATDX_CACHE_PHASE clamp
  • Keep 0ms duration cell on compact in-flight passed rows
  • Lowercase method names in CachingTestRunner cache lookup
  • Skip empty err.message when locking firstMessage in sfErrorSummary
  • Widen @disable-cache lookback to five lines above the class
  • Surface runner-access disk-cache write failures at warn level
  • O(1) Set lookup for @dynamic-ignore site annotations
  • Parallelize updateAfterDeployment per-file IO
  • Single-scan hasLatdxOrigMarkers
  • Memoize per-source sha256 in TestInputHasher
  • Surface non-ENOENT readdir failures in Phase 4 workspace walk
  • Surface non-ENOENT readFileSafely failures in Phase 4 manifest hash

0.22.2

  • Surface non-ENOENT closure read failures in Phase 4 workspace walk

0.22.1

  • Default --truncate to 50 when value is non-numeric
  • Report actual dropped-line count in live renderer cap notice
  • Match Apex case-insensitivity in ProblematicTestsRegistry methodName
  • Parallel fs.readFile in hashWorkspaceClosures (-26% on medium orgs)
  • Parallelize independent reads in defaultManifestHash
  • Parallelize sibling-dir descent in walkWorkspace

0.22.0

  • Detect Java 11+ at startup with friendly install hint
  • Invalidate cache on Apex Flow changes
  • Invalidate cache on Apex trigger changes
  • Invalidate cache on Custom Labels changes
  • Invalidate cache on Custom Metadata record changes
  • Invalidate cache on permission set + profile changes
  • Invalidate cache on Record Type changes
  • Invalidate cache on Sharing Rules changes
  • Invalidate cache on Validation Rule changes
  • Invalidate cache on Workflow rule changes

0.21.0

  • Invalidate cache on schema and project manifest changes

0.20.1

  • Fix stray Salesforce CLI log file write in compiled binary

0.20.0

  • Add sf and flight live test renderers behind --render-style
  • Add --engine and --db flags for test runs
  • Add plain CI render mode with timestamped event stream and heartbeat
  • Detect upgrade command from positional argument
  • Treat flag-like value as missing org alias in version path
  • Honor --plain flag in spinner and color output
  • Surface daemon shutdown failures in latdx cache clear --daemon exit code
  • Surface per-entry scan failures in latdx cache status
  • Honor LATDX_DEBUG=1 for temp directory retention
  • Count skipped tests separately from failed in test run summary
  • Surface latdx.config.json parse errors instead of swallowing them

0.19.0

  • Isolate daemon and caches per git worktree
  • Cache generated mock classes to skip unchanged redeploys

0.18.4

  • Retry anonymous Apex on ConcurrentPerOrgLongTxn limit
  • Widen latdx clean to catch legacy LATdx artifacts

0.18.1

  • Add latdx clean command to remove deployed artifacts from org
  • Add latdx restore and latdx uninstall commands for boost-mode reversal
  • Add managed package namespace support for generated Apex
  • Auto-bootstrap dbsim for the standard Test API
  • Auto-clean debug logs in CI instead of prompting
  • Rename misspelled latdxStatments config option to latdxStatements
  • Correct operator precedence in Apex parse error message
  • Forward daemon logs to CLI in verbose mode

0.18.0

  • Exit with non-zero status when latdx uninstall restore fails

0.17.0

  • Add latdx restore and latdx uninstall commands for boost-mode reversal
  • Add latdx config command
  • Expose latdx cache and latdx daemon management commands
  • Forward daemon logs to CLI in verbose mode
  • Auto-bootstrap dbsim for the standard Test API
  • Auto-clean debug logs in CI instead of prompting

0.16.0

  • Add latdx upgrade check command

0.15.0

  • Pass setup object queries through to the real org from dbsim
  • Add compound field support in dbsim
  • Resolve parent lookups and relationships in dbsim WHERE clauses
  • Handle reified generics in IN clause evaluation
  • Support inline string literal bind syntax in dbsim SOQL

0.14.0

  • Add latdx clean command to remove deployed artifacts from org
  • Preserve test results when emitting JSON output

0.13.0

  • Add background daemon for persistent org caching
  • Add LATDX_KEEP_SF_LOGS env var to preserve debug logs
  • Run all tests in org when no tests specified
  • Support running multiple test classes in one run
  • Add coverage mode support
  • Default to turbo batch mode and pass coverage flag through
  • Handle debug log storage exceeded with auto-cleanup
Last updated on