Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 12 Jul 04:51
90f824e

Added

  • Add a Totonoe Log: Merge Selected Files command to the Explorer's
    right-click context menu, shown when two or more files are selected. It
    merges the selected files directly, reusing the same chronological-merge
    logic as Show Merged View, without going through the file-picker dialog.
    Folders included in the selection are ignored.
  • Insert a "XX seconds of silence" marker line wherever the timestamp gap
    between two consecutive entries is large, making it easy to spot "silent"
    stretches of a log during an incident investigation. Applies to Show Normalized View and all of its filtered variants (severity, date range,
    date range + severity, ignore pattern), so gaps between the entries that
    remain after filtering are detected too. The threshold is configurable via
    totonoeLog.gap.thresholdSeconds (default: 30 seconds; 0 disables it).
  • Add a Totonoe Log: Show Normalized View Filtered command that lets you
    freely combine severity, date/time range, and ignore pattern filters in a
    single flow: pick which conditions to apply from a multi-select QuickPick,
    then answer only the prompts for the conditions you picked. This avoids
    needing a separate command for every combination of filters. The existing
    single-purpose filter commands (severity only, date range only, date range
    • severity, ignore pattern only) remain available unchanged.
  • Add a Totonoe Log: Show Merged View Filtered command that lets you pick
    the files to merge and then filter the merged result by severity, date/time
    range, and/or ignore pattern in one flow, reusing the same multi-select
    QuickPick UX as Show Normalized View Filtered. The file name/kind columns
    and line-number gutter are preserved after filtering, and the number of
    hidden lines is reported the same way the normalized view's filters do.

Fixed

  • Fix Compare Logs and Copy Masked Text not masking IPv6 addresses (only
    IPv4 was masked before). Common IPv6 notations — full form, ::
    compression, and zone IDs (%eth0) — are now replaced with <HOST> like
    IPv4 addresses already were, so container/Kubernetes logs no longer leak
    host info or add diff noise. Time-like tokens (e.g. 03:04:05) are still
    left untouched.
  • Fix normalize/filter/copy commands (Show Normalized View and its filtered
    variants, Show Collapsed View, Copy Masked Text) silently producing wrong
    results when run against a Totonoe Log view that is already open and
    active (e.g. running "Filtered by Severity" right after "Show Normalized
    View", with the resulting view still focused). Those commands now detect
    when the active editor is one of Totonoe Log's own virtual documents
    (normalized/collapsed, merged, or compare view) and show a warning instead
    of parsing the view's own gutter-prefixed text as if it were a raw log.
  • Fix year-less syslog timestamps (MMM d HH:mm:ss) being interpreted with
    the wrong year when a log crosses a year boundary. Instead of always
    assuming the current year, the parser now rolls the assumed year back by
    one when that interpretation would land more than 24 hours in the future
    (e.g. a "Dec 31" entry opened in January 2026 is now read as 2025), the
    same heuristic used by common syslog implementations. This corrects the
    timestamps shown in the normalized view, date-range filtering, and the
    chronological order of the merged view for year-crossing logs. Explicitly
    passing assumedYear still forces that year, as before.

Security

  • Fix "Show Normalized View Filtered by Ignore Pattern" being able to freeze
    the entire extension host when the entered pattern triggers catastrophic
    regex backtracking (e.g. (a+)+b against a long non-matching input). The
    match is now run in a worker thread with a 2-second timeout; if it doesn't
    finish in time, the worker is terminated and a warning is shown instead of
    opening the view, so a runaway pattern can no longer block VS Code.

Added

  • Add an icon for the extension, shown in the Marketplace and VS Code's
    Extensions view.