Skip to content

Releases: herdux/herdux-cli

v0.9.1

10 Mar 13:30
f506b5c

Choose a tag to compare

Bug Fixes

  • restore (PostgreSQL plain, MySQL): SQL files produced by pg_dump -C, pgAdmin, DBeaver, or mysqldump --databases embed \connect, CREATE DATABASE, and USE directives that redirected the client to the source database, ignoring --db. The plain SQL content is now filtered to strip these directives before being piped to the database client, ensuring the restore always targets the database specified via --db.

v0.9.0

10 Mar 13:30
e7bdcc1

Choose a tag to compare

Features

  • MongoDB engine support (--engine mongodb). Requires mongosh, mongodump, and mongorestore.
  • Backup format: archive (mongodump --archive --gzip) producing .mongodump files. Plain format is not supported and exits with a clear error.
  • hdx inspect <file>.mongodump: inspect MongoDB archive dumps offline (gzip header verification, no live connection required).
  • MongoDB integrated into hdx cloud upload and hdx restore s3:// workflows (engine-agnostic, no changes required).
  • mongodb added to npm keywords.

v0.8.2

10 Mar 13:29
d434cad

Choose a tag to compare

Features

  • hdx cloud list now defaults to directory mode: shows only immediate children at the given level, similar to ls. Pass --recursive to list all objects.
  • hdx cloud upload <file> [--prefix PREFIX]: upload an existing local file to the configured S3 bucket.
  • hdx backup --no-keep: delete the local backup file after a successful upload (requires --upload).
  • hdx cloud delete now verifies the key exists before attempting deletion. Exits with an error if not found or if it is a directory prefix.

Bug Fixes

  • hdx cloud list <path> now accepts path as a positional argument (previously silently ignored without --prefix).
  • hdx cloud download now saves files to ~/.herdux/backups/ by default instead of the current working directory.

v0.8.1

10 Mar 13:29

Choose a tag to compare

Bug Fixes

  • hdx cloud list no longer crashes with a stack overflow when the bucket contains a large number of objects. Display is now capped at 200 items with a truncation notice.

v0.8.0

10 Mar 13:29

Choose a tag to compare

Features

  • hdx cloud config: configure S3 bucket, region, credentials (stored in ~/.herdux/config.json; AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY env vars take priority)
  • hdx cloud list [--prefix PREFIX]: list backup files in the configured bucket with size and date
  • hdx cloud download <key> [-o DIR]: download a backup from S3 to a local directory
  • hdx cloud delete <key> [-y]: delete a backup from S3 with optional confirmation skip
  • hdx backup --upload [prefix]: upload the backup to S3 after creation
  • hdx restore s3://bucket/key --db DB: restore directly from an S3 URL
  • Support for S3-compatible providers (Cloudflare R2, MinIO, DigitalOcean Spaces) via hdx cloud config endpoint URL

v0.7.0

03 Mar 01:22
72ece32

Choose a tag to compare

Features

  • hdx docker - Manage database containers without an active connection
    • hdx docker list - List running postgres/mysql/mariadb containers with engine, port, and status
    • hdx docker list --all - Include stopped containers
    • hdx docker start <name> - Start a stopped container
    • hdx docker stop <name> - Stop a running container
    • hdx docker stop <name> --remove - Stop and remove a container

Bug Fixes

  • hdx inspect: Added .tar format support (PostgreSQL tar backup format)

v0.6.0

03 Mar 01:21
807b307

Choose a tag to compare

Features

  • hdx inspect - Inspect backup files offline, without a database connection
    • Supports .dump and .tar (PostgreSQL), .sql (any engine), .db / .sqlite (SQLite)
    • Displays schema structure, table definitions, and TOC entries

Bug Fixes

  • MySQL: --format custom now fails with a clear error message instead of silently using the wrong format

UX Improvements

  • Commands now display the connection context (host, port, user) in the output header
  • Improved terminal output consistency across all commands

v0.5.0

03 Mar 01:24
91b5b7b

Choose a tag to compare

Features

  • SQLite engine support (--engine sqlite) - file-based, no server required
  • Databases stored at ~/.herdux/sqlite/ by default; override with --host <dir>
  • test:e2e:sqlite npm script and e2e-sqlite CI job (no Docker required)

Bug Fixes

  • Connection resolver now skips port-based auto-discovery for portless engines (fixes --engine sqlite crash)
  • sqlite added to the valid engines list (--engine sqlite no longer rejected)

v0.4.0

03 Mar 01:24
47378d7

Choose a tag to compare

Features

  • MySQL engine support (--engine mysql) - requires mysql and mysqldump binaries
  • Multi-engine architecture: all commands are now engine-agnostic behind the IDatabaseEngine interface
  • --engine global flag accepted by all commands
  • Engine type saved per server profile and in global config (herdux config set engine mysql)
  • GitHub Actions CI, Dependabot config, and Husky pre-commit hooks