miller/pkg
John Kerl 8933123ece
Fix dedupe-field-names clobbering values on ragged short rows (#1997) (#2144)
In the explicit-header ragged code paths of the csvlite, TSV, and
barred-pprint readers, the header-longer-than-data fill used
record.PutCopy with the un-deduplicated header name. With duplicate
header names (e.g. "name,4,4" deduped to "name,4,4_2"), the VOID fill
for the missing trailing field overwrote the already-stored value under
the colliding key, so a short row like "bar,sea" lost "sea".

Use record.PutReferenceMaybeDedupe, as the implicit-header paths
already do (where PR #794 had applied it, although implicit headers are
generated unique and never need dedupe).

Adds regression cases under test/cases/io-dedupe-field-names/ for the
csvlite, TSV, and barred-pprint readers.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 15:20:25 -04:00
..
auxents Lint round 5+6: staticcheck and errcheck to zero (#2130) 2026-07-03 11:42:08 -04:00
bifs DSL format function: support 1-based positional placeholders like {1} (#1650) (#2160) 2026-07-06 15:15:33 -04:00
cli Add --right-align-numeric for PPRINT and Markdown output (#1503) (#2161) 2026-07-06 15:02:18 -04:00
climain Add DSL validate/dry-run: put/filter --explain (#2098 PR5) (#2131) 2026-07-03 18:12:23 -04:00
colorizer Strip dead code from pkg/ (#2121) 2026-07-01 19:32:13 -04:00
dkvpx Strip dead code from pkg/ (#2121) 2026-07-01 19:32:13 -04:00
dsl DSL format function: support 1-based positional placeholders like {1} (#1650) (#2160) 2026-07-06 15:15:33 -04:00
entrypoint Add mlr mcp MCP server + agent playbook, with a --no-shell gate (#2098 PR7) (#2133) 2026-07-03 19:41:49 -04:00
go-csv Some fixes for staticcheck (#2006) 2026-03-03 09:27:03 -05:00
input Fix dedupe-field-names clobbering values on ragged short rows (#1997) (#2144) 2026-07-06 15:20:25 -04:00
lib Add mlr mcp MCP server + agent playbook, with a --no-shell gate (#2098 PR7) (#2133) 2026-07-03 19:41:49 -04:00
mlrval Emit valid JSON numbers for floats like 004.56; document CSV quoting vs. type inference (#2151) 2026-07-05 20:19:32 -04:00
output Add --right-align-numeric for PPRINT and Markdown output (#1503) (#2161) 2026-07-06 15:02:18 -04:00
parsing Add a first-class bytes type to the DSL, with b"..." literals and base64/hex codecs (#2122) 2026-07-03 11:58:44 -04:00
pbnjay-strptime Performance and style fixes (#1981) 2026-02-18 09:19:31 -05:00
platform Performance and style fixes (#1981) 2026-02-18 09:19:31 -05:00
runtime Lint round 5+6: staticcheck and errcheck to zero (#2130) 2026-07-03 11:42:08 -04:00
scan Strip dead code from pkg/ (#2121) 2026-07-01 19:32:13 -04:00
stream Lint round 5+6: staticcheck and errcheck to zero (#2130) 2026-07-03 11:42:08 -04:00
terminals More AI skill/MCP docs (#2140) 2026-07-04 14:45:29 -04:00
transformers reorder -r: group matched fields by regex order, not record order (#2159) 2026-07-06 15:07:16 -04:00
types Strip dead code from pkg/ (#2121) 2026-07-01 19:32:13 -04:00
version Post-6.20.2 release: back to 6.20.2-dev 2026-07-04 15:44:14 -04:00
README.md Export library code in pkg/ (#1391) 2023-09-10 17:15:13 -04:00

Please see ../../README-dev.md for an overview; please see each subdirectory for details about it.