Skip to content

Releases: dymmer-code/dym

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 15:05

Full Changelog: v0.5.0...v0.6.0

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 21:44

Features

  • Generalize extension response handling: replace response_template and response_path with a response template list, supporting positional multi-output file routing via --to and --append-to.

Full Changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 22:53

Features

  • Add dym ext: user-defined HTTP extensions declared in a YAML config file (default $XDG_CONFIG_HOME/dym/extensions.yaml or the platform equivalent, overridable via --extensions-file/-e or DYM_EXTENSIONS_FILE). Each extension becomes its own subcommand, calling an arbitrary URL (templated with {{.BaseURL}}/{{.Args.*}}), with optional bearer auth ({{.DymmerToken}}), optional request body templating for non-GET methods, and either the built-in --filter/--select/--output table|json|csv|tsv pipeline (via response_path) or a fully custom response_template (Go template rendered against {Args, Body}, so it can combine request-time parameters with response data the server never echoes back — e.g. building a Dovecot/Postfix map line that needs both the domain and the response's mailbox fields).

Other changes

  • Harden dym ext after security review: validate --filter/--select before making any HTTP request (a malformed filter no longer fires a mutating POST first), redact the auth token from error messages even when it's embedded in the URL, bound response-body buffering to avoid unbounded memory use on a pathological response, reject extension names that would collide with built-in subcommands (list/help/completion) or contain whitespace, and replace a hand-rolled argument scan with the same run-time command-tree pattern already used by dym domain so --extensions-file handles --, repeated flags, and = correctly and is actually testable.
  • Ignore .claude/ session artifacts in git.

Full Changelog: v0.3.0...v0.4.0

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 20:28

Features

  • Add --output csv and --output tsv: same data as table, but comma- or tab-separated with no header row, no footer, and no "No X found." message on empty results — just the data, for easy piping into other tools.
  • Add --filter field=value (repeatable, AND-combined; also field!=value) to narrow list results by an API field, including dotted access into a record's content (e.g. content.ip=203.0.113.10).
  • Add --select field1,field2,... to project output down to just the chosen fields, in order, across every output format (table, json, csv, tsv).

Documentation

  • Add AGENTS.md documenting the versioning and release process for future changes.

Other changes

  • Replace a real address that had leaked into a test fixture with a generic example.com one.

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 19:58

Full Changelog: v0.1.0...v0.2.0

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 17 Aug 19:14