Home
Changelog

fixed

🔧 Fixes
  • Fixed a bug where the LSP server may become unresponsive.

improved

fixed

✨ Improvements
  • Oxipng now uses the language "unoptimized image" rather than "unformatted file."
  • Improved crash reporting for internal errors.
🔧 Fixes
  • Be more resilient to permission-denied errors in the file watcher.
  • The LSP Server will now retry linting a file when it detects the file has changed, rather than leaving stale diagnostics.

new

🎁 New
  • Introduce the ability to pin a specific version of a linter, tool, or runtime in Trunk. Append a
    !
    to its version to prevent updates via trunk upgrade.
  • Added support for plugins in prettier versions >=3.0.0.
✨ Improvements
  • Replaced
    run_linter_from
    with
    run_from
    in linter definitions (see docs).
  • Trunk will no longer suggest upgrades that are enabled in a plugin.
🔧 Fixes
  • Resolved an issue where trunk upgrade sometimes failed to display upgrade summaries.
  • Updated
    compile_commands.json
    parsing with support for the arguments key.
  • Fix a rare crash in the
    pre-commit
    hook when pressing the spacebar to skip checks.
  • Do a better job of discarding issues in files outside the workspace.
  • The LSP Sever does a better job clearing stale diagnostics.
  • Better crash reporting on macOS.
  • Better error messages when failing to resolve DNS entries.
  • Fixed a bug where trunk would reinstall tools on each upgrade.
  • Many Windows bug fixes.

new

improved

fixed

🎁 New
  • New command line flag:
    --print-failures
    will print any failures instead of saving them to a file.
✨ Improvements
  • trunk upgrade
    is now able to perform all upgrades in a single invocation. Previously, it would require multiple invocations if there were dependencies between the linters, plugin repos, or the CLI.
  • The LSP Server will now lint files that are modified outside of the editor.
🔧 Fixes
  • Remove deprecated
    trunk check download
    . It has been superseded by
    trunk install
    .
  • Make Trunk daemon startup faster to fix occasional timeouts connecting to it.
  • Fix various Windows issues.

new

✨ Improvements
  • Excluded diagnostics from outside the workspace.
  • Tool installation failures are now logged in CI mode.
  • Trunk now watches for file changes on Windows.
  • trunk tools install
    now accepts positional arguments for selective tool downloads.
🔧 Fixes
  • Prevented Trunk from downgrading tool versions.
  • Corrected scanned file statistics for post-autofix rescans.

fixed

improved

✨ Improvements
  • Trunk now respect pip.conf in python environments.
  • Added health checks to tool installations.
🔧 Fixes
  • Fixed race condition when a linter had both a runtime and a download, but no packages.
  • Ensure that ignores apply to all commands of a linter, not just the first.
  • Fixed a rare crash in template expansion when a variable was not defined.

new

🎁 New
  • Introducing Trunk Tools: Hermetic runtime and CLI manager.
  • Linux arm64 support added.
  • Run only security linters using
    --scope=security
    .
✨ Improvements
  • Linter command overrides now honor platform constraints.
  • Filetype definitions expanded: Match any shebang with ALL.
  • trunk fmt
    now supports
    --cache=false
    option.
  • Added
    no_issues_codes
    : Linters can bypass parsing for specific tool exit codes.
  • Node runtime now recognizes user's .npmrc settings.
🔧 Fixes
  • Resolved crash issue for
    --ci
    with trunk
    fmt
    .
  • Corrected off-by-one error in include-what-you-use parser.
  • Numerous Windows-related fixes.
  • LSP Server: Diagnostics from user.yaml are now cleared appropriately.
  • SARIF parser updated to support
    file://
    artifact locations.

new

🎁 New
Windows Support is now in beta!* Please see https://docs.trunk.io/docs/windows-beta for more information on getting started with Trunk on Windows.
🔧 Fixes
* Trunk now respects suspressions in SARIF output.

improved

fixed

✨ Improvements
  • The Trunk daemon now uses separate files for storing its pid and managing its lock.
  • Trunk now performs HTTPS downloads of plugin repos instead of git clones if a repository is located on Github.
🔧 Fixes
  • Trunk now ignores out of bounds SARIF end regions in linter output instead of failing.

improved

fixed

✨ Improvements
  • Suppress showing pre-existing issues to the user if the file was not explicitly requested to be linted either on the command-line or because it was modified.
  • Sarif output linters now forward range information to the LSP server.
  • trunk check list
    no longer shows deprecated linters.
🔧 Fixes
  • Fix bug validating minimum trunk version for a plugin repo if using
    .trunk/user.yaml
    .
  • Fix a memory leak in the LSP server.
  • Fix a number of rare crashes.
Load More