6ad6876051
fix(doctor): report config parse errors, remove redundant error in Execute
...
Doctor now checks configErr and emits a FAIL with the parse error and
fix hint. Execute() no longer prints a separate error before running
doctor — the doctor output is self-contained.
2026-02-12 00:07:14 +00:00
b4c89e7d90
fix: restrict config-safe commands, add doctor header on config failure
...
Only config edit, config init, config path, and doctor run with a
broken config. Destructive commands like config set (which would
overwrite a partially-valid file with defaults) are now blocked.
Suppresses the warning on safe commands. Adds "Running pda! doctor"
header before diagnostic output.
2026-02-12 00:03:51 +00:00
4d61a6913c
feat: exempt config/doctor from config errors, run doctor on failure
...
When the config file is malformed, config and doctor commands now
proceed with defaults (showing a warning). All other commands print
the parse error and automatically run doctor to aid diagnosis.
2026-02-11 23:57:55 +00:00
ed1a562c2c
refactor(doctor): replace hand-maintained configDiffs with configFields
2026-02-11 23:53:33 +00:00
bc9d95e8d5
fix(config): accept case-insensitive booleans in config set
2026-02-11 23:52:44 +00:00
abf0c86ab0
feat(config): add config edit subcommand
2026-02-11 23:51:29 +00:00
4afc0fd8ce
feat(config): add config set subcommand with type validation
2026-02-11 23:49:44 +00:00
c9b448d508
refactor(msg): single space between keyword and message, improve config suggestions
...
Tightens keyword formatting (ok/FAIL/hint/etc.) from two spaces to one.
Makes config key suggestions more generous: normalises spaces to
underscores, matches against leaf segments, and uses substring matching.
Updates all golden files.
2026-02-11 23:47:59 +00:00
db607ac696
feat(config): add config init subcommand with --new flag
2026-02-11 23:43:21 +00:00
6bba227654
feat(config): add config get subcommand with suggestions
2026-02-11 23:37:52 +00:00
cc19ee5c0f
feat(config): add config list subcommand
2026-02-11 23:35:51 +00:00
e4a5e7f715
feat(config): add config parent command and path subcommand
2026-02-11 23:34:20 +00:00
3f6ddfbcd4
feat(config): add reflection-based configFields framework
2026-02-11 23:29:54 +00:00
55b2e7f6cb
feat: makes ls list all stores by default, with config option to disable. adds --store glob support
2026-02-11 23:04:14 +00:00
b6248e409f
refactor(home)!: moves home to PDA_HOME, out of PDA_HOME/stores/
2026-02-11 21:51:58 +00:00
11276fcf25
feat(doctor): full implementation of doctor health checks
2026-02-11 21:44:35 +00:00
0c5b73154d
feat(doctor): initial doctor command
2026-02-11 20:10:35 +00:00
ce7336324f
feat(list): adds plain json formatting
2026-02-11 19:34:29 +00:00
15c1d6733c
feat(lss): adds --no-header and --short flags, and lowercases all flag descriptions
2026-02-11 19:29:14 +00:00
4e5064d07a
feat(stores): adds mvs, and flags to bring store commands on par with key commands
2026-02-11 18:53:55 +00:00
b89db8dc48
feat(set): adds --file flag to input from a file path
2026-02-11 18:27:22 +00:00
59cb09a8e7
feat(version): adds --short flag to only show release information
2026-02-11 18:16:37 +00:00
9130c09e56
feat(rm): adds --yes flag to auto-accept all prompts
2026-02-11 17:57:05 +00:00
cf7dbf5bee
feat(sync): adds --message flag for manual commit message
2026-02-11 17:49:02 +00:00
ac847f34ca
feat(set): adds --safe flag for preventing accidental overwrites
2026-02-11 17:38:36 +00:00
6e1af5ba28
feat(get): adds --exists flag for checking existence of a key
2026-02-11 17:36:49 +00:00
ad98a1e6c4
feat(list): adds --count flag for returning a count of matches
2026-02-11 17:24:55 +00:00
e04bcfb306
fix: artifacts in comments from copying the commands over initially
2026-02-11 17:24:32 +00:00
3c2a0129c0
style: renames testdata so tests can actually be parsed at a glance
2026-02-11 16:38:09 +00:00
a4d2e919dc
feat: command rename finalising
2026-02-11 16:13:49 +00:00
8ea865b2ce
feat: removes table from readme
2026-02-11 16:09:38 +00:00
d3b4bef531
feat: adds some test cases where they were missing, and some minor readme additions
2026-02-11 16:07:19 +00:00
bb57b23224
docs: erroneous escape chars
2026-02-11 15:31:30 +00:00
572e27589b
feat: adds --drop mention to readme
2026-02-11 15:27:47 +00:00
d0926c2c1d
fix: fixes a collision when -i is used with input passed via stdin, uses /dev/tty instead
2026-02-11 15:27:29 +00:00
5145816b0a
feat: splits --glob into --key and --value searches
2026-02-11 15:21:05 +00:00
1f4732823d
feat: underlined header texts, and one-space right pad
2026-02-11 14:17:48 +00:00
24853bfce8
feat: default ttl and header visibility, and removed unnecessray padding from tab output
2026-02-11 14:14:02 +00:00
07330be10b
feat: include summary of omitted binary data
2026-02-11 13:17:23 +00:00
d63c1fd77b
fix: no need to care about identities when making a deletion
2026-02-11 12:51:27 +00:00
9bdc9c30c6
feat: encryption with age
2026-02-11 12:36:42 +00:00
ba93931c33
chore: swaps out a %q for '%s' for glob-sep flags
2026-02-11 02:17:25 +00:00
0114b01fb3
fix: silence usage on cp command
2026-02-11 02:16:26 +00:00
fb75758986
docs: updates messaging in README
2026-02-11 02:13:32 +00:00
b52a5bfdb7
feat: huge overhaul of messaging into FAIL, WARN, hint, ok, prompt, and progress types
2026-02-11 02:11:58 +00:00
6ccd801c89
docs: revise list output and Git versioning description
2026-02-11 01:38:25 +00:00
20b65e280d
docs: update README for NDJSON migration and removed features
...
Remove references to badger, --secret flag, --force flag, and snapshot
command. Rename dump/restore to export/import as primary commands, fix
rm/rm-store to document --interactive instead of --force, and remove
the entire Secrets section.
2026-02-11 01:32:50 +00:00
52c108f7d3
refactor: vcs simplification pass
2026-02-11 00:53:14 +00:00
2c9ecd7caf
refactor: remove --encoding flag from list/export commands
...
The auto-detection mode (encodeJsonEntry) is always correct —
it uses text for valid UTF-8 and base64 for binary data. The
explicit base64 and text modes added no practical value and
had zero test coverage.
2026-02-11 00:50:06 +00:00
08025903ad
chore: add .worktrees to gitignore
2026-02-11 00:31:21 +00:00