Skip to content

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 18:13
· 49 commits to dev since this release

New features

Core

  • Keep the generated .dbx directory out of git (#9fc1434 by T0chi)
    • dbx sync now appends the .dbx ignore block (everything under .dbx/ except the
      manifest, which holds no absolute paths) to an existing .gitignore, and the
      installation guide documents the pattern and the automatic step.

Cli

  • Route CLI output through the logger, add a providers colour option (#ce76a4d by T0chi)
    • Commander's help and errors now go through the shared logger (help to stdout,
      errors to stderr, colour-aware, ANSI stripped when colour is off). Vite+
      passthrough commands keep commander's defaults so the spawned vp keeps its own
      coloured logging.
    • Add a providers config section (color?: boolean): color: false forces plain
      provider output, the global --no-color still turns it off, and runVp sets
      NO_COLOR / FORCE_COLOR on the child when colour is disabled.
  • Check for a newer dbx version (#772aae2 by T0chi)
    • On each run, check the npm registry in the background (cached for a day, never
      blocking) and print a short notice with a link to the release when a newer
      @deltabox/toolchain exists. Skipped in CI and by NO_UPDATE_NOTIFIER or
      DBX_NO_UPDATE_CHECK, and can be turned off with the new --no-update-check flag.
  • Default a bare Vite+ command to the vite passthrough (#75770e4 by T0chi)
    • dbx fmt / dbx lint / dbx run / dbx dev now work: when the first operand
      is not a built-in command but names a Vite+ subcommand (or one of its aliases),
      vite is inserted before it and the whole Vite+ CLI stays reachable without the
      explicit namespace. Built-in commands win, so dbx migrate remains the
      toolchain's migration (dbx vite migrate is Vite+'s).
    • The Package scripts, Migrations, Monorepo, CLI and Providers guides now show the
      bare form, and the consumers' root scripts were updated to match.

Vscode

  • Bundle the dbx CLI into the extension (#bf12403 by T0chi)
    • Ship a self-contained dbx.cjs inside the VSIX (built by the new
      tsdown.bin.config.ts) and prefer it in the extension, so a consumer no longer
      needs to install @deltabox/toolchain. It falls back to a workspace-local
      install and then npx.
    • Make the changelog and tsconfig direct-run guards basename-aware so they do not
      fire when the module is inlined into the single-file bundle.

Shared

  • Add a configurable shared logger (#54b51fa by T0chi)
    • Add packages/shared/src/logger.ts: one level-aware, colour-aware sink (colours
      via picocolors, the same package Vite uses) with debug, info, success, warn,
      error and raw (unprefixed machine output). It is configurable from dbx.config's
      new logger section and from the CLI (--log-level, --no-color), with the CLI
      taking precedence.
    • Every console call in the toolchain now goes through the logger (JSON output
      through raw), including the sync/watch log callback and the run helper's
      verbose line. The generated config types, the JSON schema, the docs reference
      and the Configuration/CLI guides document the new logger section.

Bug fixes

  • Correct tsconfig aliases under --cwd, prune self-referential task runs (#40e0c34 by T0chi)
    • Two bugs found by exercising the CLI against the local consumer projects:
    • instead of process.cwd(), so dbx sync --cwd <dir> (run from elsewhere)
      writes correct relative paths rather than paths pointing at the caller.
      spawning the task runner, and prunes itself when the same command runs again
      from the same root. A root task whose script calls run -r <task> can no
      longer recurse.
  • Changelog links, oxfmt map, build idempotency, watch timer, vscode spawn (#2389c98 by T0chi)
    • render commits as a plain short hash instead of a github.com/undefined link
      yarn build no longer rewrites it and the working tree stays idempotent
      spawnCli and cliInvocation
  • Sync --check writes, quiet level, log flags and template tokens (#7f5690f by T0chi)
    • Audit pass over the toolchain source:
    • actually generated by dbx sync

Documentation

  • Document the full public API surface (#6f78245 by T0chi)
    • Expand guide/api.md to cover the umbrella plus every subpath export, grouped by
      package. Add the logging API (logger, createLogger, setLogConfig,
      setLogOverrides, levels, colours, raw) to the API and Configuration guides, and
      document the config generator's formatGenerated helper and the Vite and CLI
      programmatic helpers.

Chores

  • Track only the .dbx manifest (#a254062 by T0chi)
    • Ignore everything under .dbx/ except .dbx/toolchain/manifest.json, which records the managed files and holds no absolute paths. The project graph (which embeds the absolute root) stays ignored.
  • Stop tracking the generated .dbx directory (#b7c53f0 by T0chi)
    • The managed-file manifest and project graph under .dbx/ are generated state, so ignore them and untrack the two committed files.

Package changes

Added

  • picocolors ^1.1.1