new

improved

fixed

1.9.0

🎁 New
  • Allow users to use their own plugins to define a common set of enabled linters across all their repos: c.f. the linters we enable for ourselves and how we reference them
  • Implement
    trunk upgrade --apply-to=file
    , to allow upgrading a shared config
  • Improved detection of existing vs new issues has been turned on for everyone by default (
    hold_the_line_mode
    now defaults to
    word
    ; see documentation)
🔌Plugins (new in 0.0.16, since 0.0.14)
  • We now support gokart, trufflehog, and DJLint (our thanks to gejustin and fsargent for the contributions!)
  • Allow specifying a buildifier config, using
    .buildifier.json
    (check out this PR for a usage example; specifically, you'll want
    .trunk/configs/buildifier.json
    and
    .trunk/configs/buildifier-tables.json
    )
  • Teach cspell to correctly respect its sandboxed config
  • Remove a broken
    hadolint
    download for M1 macs
✨ Improvements
  • Introduce new linter config field
    suggest_if
    to control what conditions we use to auto-recommend linters (example)
  • Introduce new linter config field
    sandbox_type
    to control how we sandbox linter execution (example)
  • Allow individual linter commands to define the applicable
    files
    , instead of requiring them to do so in the top-level linter definition
  • Surface useful errors when a tool has no matching specified download (e.g. if there is no arm64 download for a given linter and we're running on arm64, say so)
  • Support
    trunk check --upload
    with payload sizes of >128MiB
  • Suppress newline spam in GitHub Actions when using
    trunk check --ci --upload
    , and also make
    --ci --upload
    work correctly
  • --verbose
    linter execution reports now include the CLI version
  • Introduce debugging knobs for trunk actions and git hooks
🔧 Fixes
  • Fix a race condition in how
    trunk action
    output is logged