Balki
d9ee24460c
Add unicode printing support for barred output ( #1984 )
2026-02-21 23:15:03 -05:00
John Kerl
47ca5eb88a
Post-6.17.0
2026-02-21 09:40:15 -05:00
John Kerl
dc00aa3e16
Miller 6.17.0
2026-02-21 09:16:55 -05:00
John Kerl
8d85b46404
Follow-up for #1981 ( #1982 )
2026-02-18 10:25:21 -05:00
Stephen Kitt
f0a7c5832f
Performance and style fixes ( #1981 )
...
* Switch to integer ranges in for loops
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Switch to slices functions where appropriate
A number of utility functions can be replaced outright; since Miller
can technically be used as a library, these are deprecated rather than
removed. go:fix directives ensure that they can be replaced
automatically.
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Switch to reflect.TypeFor
This is slightly more efficient than TypeOf when the type is known at
compile time.
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Switch to strings.SplitSeq instead of strings.Split
SplitSeq results in fewer allocations.
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Drop obsolete build directives
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Use min/max instead of explicit comparisons
Signed-off-by: Stephen Kitt <steve@sk2.org>
* Append slices instead of looping
Signed-off-by: Stephen Kitt <steve@sk2.org>
---------
Signed-off-by: Stephen Kitt <steve@sk2.org>
2026-02-18 09:19:31 -05:00
John Kerl
e8c4187e67
Fix: mlr -i nonesuch cat says mlr: empty IRS ( #1980 )
...
* Fix: `mlr -i nonesuch cat` says `mlr: empty IRS`
* fix experr
2026-02-17 15:30:28 -05:00
John Kerl
1f459824f0
Handle control-C in mlr repl ( #1977 )
2026-02-16 17:17:30 -05:00
John Kerl
45d2104771
No exit from mlr repl when function is not found ( #1976 )
2026-02-16 17:07:22 -05:00
John Kerl
e1346691da
Improve error propagation ( #1975 )
2026-02-16 16:48:41 -05:00
John Kerl
5eb40c9e7b
Multiple style updates ( #1974 )
...
* Comment style
* IRecordTransformer -> RecordTransfomer
* make fmt
* else-return style mod
* snake-case -> camel-case
* Remove redundant err = nil and similar zero-value initializations.
* redundant break;
* bugfix
* neaten
* typofix
* simplify/standardize init of zero-length slices
* Standardize fmt.Fprintf w/ errors
* fix double print of "mlr:"
* neatening
* Uniformize error messages
* make docs
* avoid shadowing package names
* shorten some receiver names
2026-02-16 15:49:21 -05:00
John Kerl
a3b5d25933
Neaten some comments ( #1973 )
...
* comment-neaten
* comment-neaten
* more
2026-02-16 13:38:49 -05:00
John Kerl
daae7ff7f0
Add DCF (Debian Control Format) as supported file type ( #1970 )
...
* reader
* record writer
* pkg/output/record_writer_dcf.go
* test/input/test.dcf
* test/cases/io-dcf/
* pkg/cli/option_parse.go
* make fmt
* make dev
* docs and `make dev`
2026-02-16 11:10:39 -05:00
John Kerl
6894ad3d56
Improve parsing of variable-length fractional seconds using strptime ( #1968 )
2026-02-15 16:43:44 -05:00
John Kerl
9399de5f6c
Fix strptime with zero-padded and non-zero-padded months/days ( #1967 )
...
* new test input
* first pass
* more tests
* iterating
* make fmt
2026-02-15 15:29:08 -05:00
John Kerl
271e558d4b
Fix bug with both %f and %z in strptime ( #1966 )
2026-02-15 14:51:42 -05:00
John Kerl
f375440bd4
Support YAML I/O ( #1963 )
...
* docs/src/proposal-yaml-io.md
* initial step
* Add `--y2c` etc
* test cases
* docs
* more testing
* more
* more test cases
* git rm docs/src/proposal-yaml-io.md
* make dev
* ylistwrap -> yarray
2026-02-15 09:24:38 -05:00
John Kerl
0003b83654
mlr split with --folder (#1962 )
2026-02-14 20:22:24 -05:00
John Kerl
26600f77aa
Add -r (for regex field-name matching) to mlr nest ( #1961 )
...
* initial attempt
* fix up cli flag
* make dev
2026-02-14 19:59:51 -05:00
John Kerl
5e0114e0cf
mlr reorder -r (#1960 )
...
* `mlr reorder -r`
* fix
* update test/cases/cli-help/
* make dev
2026-02-14 19:40:20 -05:00
John Kerl
7271fb9de3
Format Go bits within mlr.bnf ( #1955 )
...
* step
* step
* step
* step
* step
* step
* step
* whitespace
* programmatic reformat
* BNF-formatter automation
* run tools/build-dsl
2026-02-07 15:45:48 -05:00
John Kerl
7a1943acdb
Resolve a few to-do comments in the source code ( #1951 )
...
* Resolve a few to-do comments in the source code
* more
* more
2026-02-01 18:14:20 -05:00
John Kerl
7da6f1453d
Replace list.List with Go slices ( #1950 )
...
* Add .vscode to .gitignore
* Replace `list.List` with slices
2026-02-01 17:22:28 -05:00
John Kerl
0f7f415974
Some performance tweaks ( #1949 )
2026-02-01 16:26:27 -05:00
John Kerl
e143857b70
Genericize lib.OrderedMap ( #1948 )
2026-02-01 16:08:43 -05:00
John Kerl
143ff7e20d
Deadstrip ( #1947 )
2026-02-01 15:44:08 -05:00
John Kerl
ced5e43065
Simplify the internal AST API ( #1946 )
...
* Simplify the internal AST API
* iterating
* iterating
* iterating
* iterating
* iterating
* iterating
* iterating
* iterating, bisecting
* mlr.bnf neatens
* update old/experimental .bnf files
* More AST method-name changes
2026-02-01 15:15:49 -05:00
John Kerl
18e5204513
Require that filter expressions be boolean (or absent) ( #1935 )
...
* Insist that filter expressions be boolean
* docs
2026-02-01 12:36:38 -05:00
John Kerl
96f13b6618
Internal function-name update
2026-01-31 16:35:30 -05:00
John Kerl
eb972e19eb
Use GOCC fork for performance improvement ( #1934 )
...
* Use GOCC fork for performance improvement
* fix versions
2026-01-10 16:48:53 -05:00
John Kerl
b8db798a2f
Miller 6.16.0 ( #1930 )
...
* Miller 6.16.0
* make dev
2026-01-02 13:57:59 -05:00
John Kerl
3b9f169162
Support -o jsonl as well as --ojsonl ( #1879 )
...
* `mlr sort -b` feature
* mlr regtest -p test/cases/cli-help && make dev
* Support `-o jsonl` as well as `--ojsonl`
2025-09-02 16:47:19 -04:00
Andrea Borruso
120e977c1e
Update subs.go ( #1868 )
...
If I read “Convert all field names,” I think the verb acts on the field names. I think it would be better to write “Convert all fields.”
2025-08-20 10:11:34 -07:00
John Kerl
3c2d4b22d2
Miller 6.15.0-dev ( #1862 )
...
* 6.15.0-dev
* make dev
2025-08-15 19:55:46 -04:00
John Kerl
d2925aafe5
error-handling in the CSV-reader's constructor
2025-08-15 19:52:37 -04:00
John Kerl
4d83e88ff6
Note that comment prefix for CSV must be single-character
2025-08-15 19:45:18 -04:00
John Kerl
4ebef873d2
Miller 6.15.0 ( #1860 )
...
* miller 6.15.0
* make dev
2025-08-14 18:00:22 -04:00
John Kerl
06e16ea3ee
Don't parse CSV comments ( #1859 )
...
* `mlr sort -b` feature
* mlr regtest -p test/cases/cli-help && make dev
* Don't parse CSV comments
* Add tests for PR 1346
* Add tests for PR 1787
* Add test CSV files
2025-08-13 18:07:32 -04:00
John Kerl
19e72f9dac
Preserve file mods on mlr -I ( #1849 )
...
* extract a helper function
* Preserve file mode on mlr -I
2025-08-05 18:11:27 -05:00
John Kerl
9445046bfe
Force decimal formatting for ints on JSON output ( #1840 )
...
* Force decimal formatting for ints on JSON output
* update a test case
2025-07-20 17:42:37 -04:00
John Kerl
fccdf215e6
DKVP --incr-key option ( #1839 )
...
* Code support for --incr-key
* Add source code for online help for new flag
* Run `make dev`
2025-07-20 17:05:24 -04:00
John Kerl
e7fe363d9a
mlr sort -b feature (#1833 )
...
* `mlr sort -b` feature
* mlr regtest -p test/cases/cli-help && make dev
2025-07-11 12:41:04 -04:00
John Kerl
0ba6710a79
Update main version to 6.14.0-dev
2025-07-04 15:10:26 -04:00
John Kerl
7a6958926d
Miller 6.14.0 ( #1828 )
2025-07-04 13:55:56 -04:00
John Kerl
99a98b0dc7
Add -c, -t, -j to doc matrix in PR 1824 ( #1826 )
...
* Add `-c`, `-t`, `-j` to doc matrix in PR 1824
* Run `make dev`
2025-07-03 19:23:38 -04:00
Balki
d6cd981c87
Add Keystroke savers for same format ( #1824 )
2025-07-03 19:01:17 -04:00
Balki
e67bdef98e
cut: Consider -o flag even when using regexes with -r ( #1823 )
...
* cut: Consider `-o` flag even when using regexes with `-r`
* update doc for cut -r flag
2025-07-03 18:54:09 -04:00
John Kerl
d30501a69b
Argument parsing is different in mlr -s scripts ( #1817 )
2025-06-13 13:54:34 -04:00
John Kerl
ea242a242a
Docs for new surv verb ( #1807 )
2025-05-15 19:41:58 -04:00
Christian G. Warden
df73ad8ec0
Add surv Verb to Estimate a Survival Curve ( #1788 )
...
Add a surv verb to estimate a survival curve using Kaplan-Meier. It
requires duration and status (event or censored) columns, and outputs
each distinct duration and corresponding probability of survival.
2025-05-15 18:17:08 -04:00
John Kerl
ca7d47454d
Improve help message on non-existent verb ( #1798 )
2025-05-05 09:33:03 -04:00