miller/test/cases
John Kerl 12c96298b9
Add a first-class bytes type to the DSL, with b"..." literals and base64/hex codecs (#2122)
* Add MT_BYTES mlrval type: foundation and disposition tables

First step toward a first-class bytes type in the DSL (#1231).
Adds MT_BYTES (payload []byte, rendered as lowercase hex in all output
formats, JSON-encoded as a hex string), extends every disposition
matrix/vector with the new row/column -- real cells for comparison,
sorting, and dot-concat of bytes with bytes; type-error stubs
elsewhere -- and adds sweep tests asserting no table has nil cells,
since Go zero-fills short array literals when MT_DIM grows.

Bytes values are not yet constructible from the DSL; b"..." literals
and constructor/codec functions follow in subsequent commits.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Add b"..." bytes-literal syntax to the DSL

Adds a bytes_literal token to the grammar (regenerating the PGPG lexer
and parser) and a BytesLiteralNode in the CST which evaluates to an
MT_BYTES mlrval. Escape handling reuses UnbackslashStringLiteral,
which is already byte-oriented: b"\xff" is the single byte 0xff.
Unlike string literals, bytes literals never participate in
regex-capture replacement. A bare identifier b is unaffected.

Part of #1231.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Add bytes DSL functions: conversions, codecs, and bytes-aware built-ins

- bytes(x) converts strings to bytes; string(b) reinterprets raw bytes
  as UTF-8 text (the reverse)
- base64_decode now always returns bytes (superseding the interim
  string-or-hex behavior); base64_encode accepts string or bytes
- New hex_encode/hex_decode functions
- is_bytes and asserting_bytes predicates
- md5/sha1/sha256/sha512 accept bytes, hashing the raw payload
- strlen of bytes is the byte count; substr/substr0/substr1 on bytes
  slice by byte position and return bytes

The Cyrillic-LDAP scenario from #1231 now works without exec
workarounds: string(base64_decode($x)) recovers the text, and binary
payloads survive undamaged as bytes.

Closes #1231.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Add bytes-type docs and regression cases

Documents the bytes type on the data-types page, regenerates the
function-reference/man-page material, and adds regression coverage:
literal escape forms, operators (concat/compare/slice/sort and
type errors), conversions and codec round-trips, and CSV-to-JSON
output rendering of bytes fields.

Part of #1231.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Reposition MT_BYTES to sort adjacent to MT_STRING in the type enum

MT_BYTES was appended after MT_ABSENT for index stability; move it
right after MT_STRING instead, since that's where it conceptually
belongs and where it already sorts in the cmp disposition matrices.
Mechanically re-derive all ~40 disposition tables in pkg/bifs and
pkg/mlrval accordingly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix windows CI

* fix merge

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-03 11:58:44 -04:00
..
auxents Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
chaining Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
cli-csv-rs-environment-defaults Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
cli-default-verb-cat Default to "cat" verb when none is supplied (#2060) 2026-05-17 12:13:21 -04:00
cli-fixed-width Add fixed width support for pprint reader (#1999) 2026-03-01 11:25:17 -05:00
cli-getoptish Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
cli-help Add new tail -n +N, head -n -N options (#2071) 2026-06-21 10:34:16 -04:00
cli-mfrom Check -- terminator on --mfrom (#1098) 2022-09-28 00:30:05 -04:00
cli-norc/0001 mlr --norc cat was erroring (#1450) 2023-12-19 09:33:34 -05:00
cli-ofmt --ofmte, --ofmtf, --ofmtg (#1206) 2023-02-27 22:50:46 -05:00
dsl-absent-empty Summing up empty data (#1370) 2023-08-26 21:24:34 -04:00
dsl-argpass-typedecl Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
dsl-array-map-indexing Simplify positional-indexing syntax in mlr.bnf; push logic to .go source (#2008) 2026-03-04 21:48:09 -05:00
dsl-arrayify Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-asserting Clarify time on-line help 2022-02-06 13:25:35 -05:00
dsl-basic Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-begin-end Fix print within begin{}/end{} (#1795) 2025-05-01 17:18:17 -04:00
dsl-block-exit Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-break-continue Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-bytes-conversions 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
dsl-bytes-literals/0001 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
dsl-bytes-ops/0001 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
dsl-clean-whitespace Have clean_whitespace re-run type inference (#1464) 2024-01-01 18:39:27 -05:00
dsl-collection-equality Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-comments Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-concat New concat DSL function for arrays (#868) 2022-01-12 21:14:27 -05:00
dsl-contains Fix mlr -s shebang doc and reject arrays/maps in contains/index (#1658) (#2058) 2026-05-17 11:40:39 -04:00
dsl-context-specific-validation Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-context-validation Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-depth/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-do-while Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-do-while-loops Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-dump-print Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-emit Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-emit-basic-indexing Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-emit-het Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-emit1/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-empty/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-empty-statements Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-env Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-extended-typeof/0001 Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-filter Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-filter-pattern-action Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-first-class-functions Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-flatten-unflatten Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-for-bind-loops-for-valgrind Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-for-map-depth Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-for-multi Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-for-one Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-for-oosvar-loops Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-for-srec-loops Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-for-two Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-for-variants Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-forbind-typedecl Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-format New format DSL function (#869) 2022-01-12 22:40:59 -05:00
dsl-from-file Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-func-decl-hoist Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-functional-tests Avoid spurious [] on JSON output in some cases (#1528) 2024-03-16 17:00:59 -04:00
dsl-gmt-date-time-functions Fatal-on-data-error mlr -x option (#1373) 2023-08-30 19:39:22 -04:00
dsl-hashing/0001 Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-haskey Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-if-chain Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-if-chaining Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-index/0001 index DSL function [WIP] (#1247) 2023-03-27 00:37:33 -04:00
dsl-indexing Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-indirect-oosvar-assignments Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-indirect-srec-assignments Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-int-function Add optional second base argument to int DSL function (#1244) 2023-03-24 00:28:39 -04:00
dsl-is-predicates Fix is_non_empty for absent case (#928) 2022-02-06 13:10:36 -05:00
dsl-json-collection-output Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-json-parse-json-stringify Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-lashed-emitp-singles Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-latin1 DSL functions and verbs for UTF-8 <-> Latin-1 (#997) 2022-03-20 17:29:40 -04:00
dsl-leafcount/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-leftpad-rightpad New leftpad and rightpad DSL functions (#1205) 2023-02-26 17:14:35 -05:00
dsl-length Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-length-depth-leafcount Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-lhs-indexing Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-line-number-column-number Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-load Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-local-date-time-functions Add %s format specifier for strftime (#1335) 2023-07-04 17:00:02 -04:00
dsl-local-map-variable-typedecl Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-local-map-variable-write-read Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-localvar-scope-and-extent Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-localvar-typedecl Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-localvar-unsets Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-map-dot Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-map-funcs Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-map-variant-dumps Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-mapsum-mapdiff-mapexcept Fix #1784: inconsistent mapexcept behavior (#2004) 2026-03-02 23:41:32 -05:00
dsl-mapvar-assignments Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
dsl-mapvar-emit/0003 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-mapvar-for-loops/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-mapvars-in-scalar-function-call-contexts Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-mapvars-udfs-subroutines Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
dsl-match New strmatch/strmatchx DSL functions (#1448) 2023-12-19 14:34:54 -05:00
dsl-mathy Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-max-variadic Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-min-max-types Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
dsl-modular-arithmetic/0001 Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-more-type-predicates Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-multi-index Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-multipart-scripts Require that filter expressions be boolean (or absent) (#1935) 2026-02-01 12:36:38 -05:00
dsl-nested-double-quotes/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-no-filter-in-filter Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-null-empty-handling Summing up empty data (#1370) 2023-08-26 21:24:34 -04:00
dsl-number-formatting Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-oosvar-assignments Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-oosvars Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-operator-associativity Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-operator-precedence Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-operator-rewrites Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-output-redirects Avoid spurious [] on JSON output in some cases (#1528) 2024-03-16 17:00:59 -04:00
dsl-parameterized-emit Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-parse Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-prefixed-unprefixed-emit Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-print Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-programming-examples Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-put-dash-s Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-put-multiple-dash-e/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-pythonic-division Treaet data-file numbers with leading + as numeric (#1269) 2023-04-15 15:57:22 -04:00
dsl-redirects Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-regex Support more backslashed special characters in DSL strings (#1212) 2023-03-01 01:00:25 -05:00
dsl-regex-captures Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-regex-matching Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-scientific-notation Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-scope/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-sec2gmt Add DSL functions for integer nanoseconds since the epoch (#1326) 2023-06-24 17:05:15 -04:00
dsl-semicolons Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-short-circuit Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-slice Fix test cases to match the new reality 2022-02-21 23:37:05 -05:00
dsl-sorts Avoid spurious [] on JSON output in some cases (#1528) 2024-03-16 17:00:59 -04:00
dsl-split-join Fix joinv with "" separator (#1794) 2025-05-01 17:08:55 -04:00
dsl-split-join-more Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-stack-allocation Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-stat/0001 Add a stat DSL function (#1560) 2024-05-09 18:39:44 -04:00
dsl-stats DSL functions for summary stats over arrays / maps (#1364) 2023-08-26 16:02:30 -04:00
dsl-string-array-indexing-slicing Fix test cases to match the new reality 2022-02-21 23:22:50 -05:00
dsl-strlen/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-subr Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-subs gssub DSL function (#989) 2022-03-18 23:48:27 -04:00
dsl-substr Fix test cases to match the new reality 2022-02-21 23:37:05 -05:00
dsl-toupper-tolower/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-trailing-commas Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
dsl-triple-for-loops Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-truncate Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-type-inference Treaet data-file numbers with leading + as numeric (#1269) 2023-04-15 15:57:22 -04:00
dsl-type-predicates Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-type-reflect Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-typed-overlay Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-typedecl Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
dsl-unformat neaten 2022-01-13 10:34:11 -05:00
dsl-unset Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-user-defined-functions Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
dsl-user-defined-functions-and-subroutines Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
dsl-utf8-field-names Can't use ${field_name} if it contains UTF-8 characters also encodeable as Latin-1 (#1363) 2023-08-20 12:20:15 -04:00
dsl-utf8-strlen/0001 Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-utf8-uppercase-lowercase Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
dsl-warnings Add line/column info for DSL runtime non-parse failures (#998) 2022-03-20 21:57:11 -04:00
dsl-whitespace Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
globbing/0001 Do wildcard globbing on Windows (#1362) 2023-08-19 17:40:35 -04:00
help Add DSL functions for integer nanoseconds since the epoch (#1326) 2023-06-24 17:05:15 -04:00
int64-io Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-barred-pprint Fix #1998 (#2005) 2026-03-02 23:49:31 -05:00
io-compressed-input Support ZSTD compression in-process (#1360) 2023-08-19 15:22:59 -04:00
io-csv-auto-unsparsify Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
io-dcf Add DCF (Debian Control Format) as supported file type (#1970) 2026-02-16 11:10:39 -05:00
io-dedupe-field-names Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
io-format-conversion-keystroke-savers Support YAML I/O (#1963) 2026-02-15 09:24:38 -05:00
io-gen Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-het-csv-input Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-het-pprint-input Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-implicit-header-csv-input Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-in-place-processing Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-infer-flags Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-ixs-regex Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
io-json-io Allow empty-string keys in JSON and YAML input (#2068) 2026-05-27 20:19:03 -04:00
io-jsonl-io Support -o jsonl as well as --ojsonl (#1879) 2025-09-02 16:47:19 -04:00
io-lf-crlf-and-autodetect Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-markdown Support markdown format on input (#1478) 2024-01-20 16:51:15 -05:00
io-missing-final-lf Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-multi Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
io-multi-character-ixs Fix PPRINT alignment with multi-character OFS (#1819) (#2063) 2026-05-17 12:45:49 -04:00
io-nr-progress-mod/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-pprint/0001 Make PPRINT empty-string markers readable as such (#1059) 2022-07-17 00:07:12 -04:00
io-ragged-implicit-header-csvlite/0001 Fix data dropped from ragged implicit-header TSV/CSV-lite input (#1749) (#2059) 2026-05-17 11:46:59 -04:00
io-ragged-implicit-header-tsv/0001 Fix data dropped from ragged implicit-header TSV/CSV-lite input (#1749) (#2059) 2026-05-17 11:46:59 -04:00
io-ragged-non-rfc-csv Fix ragged-CSV auto-pad (#1428) 2023-11-19 23:53:53 -05:00
io-rfc-csv Fix #1164: regression on CSV blank-line handling (#1168) 2023-01-01 16:49:14 -05:00
io-separator-aliases Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
io-skip-pass-comments Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
io-space-padding Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-spec-tsv Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
io-tsv-auto-unsparsify Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
io-uri-schemes/0001 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
io-utf8-alignment Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-utf8-bom Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
io-yaml-io Allow empty-string keys in JSON and YAML input (#2068) 2026-05-27 20:19:03 -04:00
mix-null-field-input Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
mix-number-formatting Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
non-windows Fix prepipe handling when filenames have whitespace (#1627) 2024-08-25 17:40:07 -04:00
output-colorization Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
repl Replace GOCC parser-generator with PGPG (#2015) 2026-03-15 22:28:57 -04:00
repl-help Add DSL functions for integer nanoseconds since the epoch (#1326) 2023-06-24 17:05:15 -04:00
script/0001 Experiment with mlr script (#2009) 2026-03-05 20:14:32 -05:00
verb-altkv Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-bar Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-bootstrap Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-case sub, gsub, and ssub verbs (#1361) 2023-08-19 17:23:01 -04:00
verb-cat mlr cat --filename / --filenum (#1080) 2022-08-20 08:42:15 -04:00
verb-check Add empty-key check to mlr check (#1330) 2023-06-25 19:12:26 -04:00
verb-count Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-count-distinct Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-count-similar Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-cut Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-cut-regexed Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-decimate Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-fill-down Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-fill-empty Performance improvement by JIT type inference (#786) 2021-12-20 23:56:04 -05:00
verb-flatten-unflatten Fix issue #1983 (#2040) 2026-04-19 10:44:53 -04:00
verb-format-values Force decimal formatting for ints on JSON output (#1840) 2025-07-20 17:42:37 -04:00
verb-fraction Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-gap Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-grep Values-only -a option for mlr grep (#1305) 2023-06-03 17:19:40 -04:00
verb-group-by Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-group-like/0001 Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-having-fields Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-head Add new tail -n +N, head -n -N options (#2071) 2026-06-21 10:34:16 -04:00
verb-head-early-out/0002 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-histogram Fix #1146 (#1157) 2022-12-29 13:58:50 -05:00
verb-int-float-stats1-step1 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-join Apply join prefixes/rename to unpaired records (#1821) (#2062) 2026-05-17 12:35:58 -04:00
verb-join-mixed-format Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
verb-json-parse-json-stringify New mlr json-parse -k flag (#1291) 2023-05-13 11:22:01 -04:00
verb-label Multiple style updates (#1974) 2026-02-16 15:49:21 -05:00
verb-latin1-to-utf8/0001 DSL functions and verbs for UTF-8 <-> Latin-1 (#997) 2022-03-20 17:29:40 -04:00
verb-merge-fields Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-most-least-frequent Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-nest Add -r (for regex field-name matching) to mlr nest (#1961) 2026-02-14 19:59:51 -05:00
verb-nothing Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-regularize Distinguish between JSON and JSON Lines formats (#844) 2022-01-09 11:11:54 -05:00
verb-remove-empty-columns Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-rename Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-rename-no-regex Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-rename-regex Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-reorder mlr reorder with regex support [WIP] (#1473) 2024-01-21 15:17:33 -05:00
verb-repeat Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-reshape mlr reshape multiple regex via multiple -r (#1091) 2022-09-05 22:05:54 -04:00
verb-sample Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-sec2gmt Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-seqgen Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-shuffle Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-skip-trivial-records Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-sort Fix natsort of empty strings; support mlr sort -rt same as -tr (#1068) 2022-08-06 23:10:09 -04:00
verb-sort-within-records Add regexed field-selection to sort-within-records (#1964) 2026-04-19 11:35:58 -04:00
verb-sparsify mlr sparsify (#1498) 2024-02-18 10:56:26 -05:00
verb-split mlr split with --folder (#1962) 2026-02-14 20:22:24 -05:00
verb-stats1 Static-check fixes from @lespea #1657, batch 1/n (#1703) 2024-10-27 11:42:43 -04:00
verb-stats1-percentile-interpolation Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-stats1-regexed-field-names Fix Windows CI fail on PR #1994 (#2044) 2026-04-19 10:58:59 -04:00
verb-stats2 Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-step Add mlr step -a rprod for running products (#1228) 2023-03-12 13:32:23 -04:00
verb-sub-gsub-ssub Use "\n" in replace for gsub and sub (#2042) 2026-04-19 10:21:51 -04:00
verb-summary Typofix in uif/uof percentiles (#1375) 2023-08-30 11:13:35 -04:00
verb-surv/0001 Add surv Verb to Estimate a Survival Curve (#1788) 2025-05-15 18:17:08 -04:00
verb-tac Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-tail Add new tail -n +N, head -n -N options (#2071) 2026-06-21 10:34:16 -04:00
verb-template Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-top Use fixed OFMT for multi-platform regression-testing (#988) 2022-03-16 14:44:42 -04:00
verb-truncate Standardize Go-package structure (#746) 2021-11-11 14:15:13 -05:00
verb-uniq Implement mlr uniq -x (#1457) 2023-12-23 16:20:11 -05:00
verb-unspace mlr unspace verb (#1167) 2023-01-01 16:44:06 -05:00
verb-unsparsify Fix issue 1032 (#1048) 2022-07-04 16:07:12 -04:00
verb-utf8-to-latin1/0001 DSL functions and verbs for UTF-8 <-> Latin-1 (#997) 2022-03-20 17:29:40 -04:00