Commit graph

116 commits

Author SHA1 Message Date
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
John Kerl
34bc8a1c3d
Fix print within begin{}/end{} (#1795)
* codemod per se

* unit-test coverage

* lint
2025-05-01 17:18:17 -04:00
John Kerl
100166532c
Fix joinv with "" separator (#1794)
* codemod per se

* unit-test coverage
2025-05-01 17:08:55 -04:00
John Kerl
9963df4090
Switch to generics (#1763)
* gradually replace list.List with slices

* gradually replace list.List with slices

* more

* more

* more
2025-03-05 08:19:15 -05:00
Michel Lind
bd2497a285
Fix non-constant format string errors with Go 1.24 (#1745)
Use `errors.New` instead of `fmt.Errorf` and `fmt.Fprint` instead of
`fmt.Fprintf` if a non-constant string is used

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2025-02-05 08:32:23 -05:00
John Kerl
cc1cd954ea
Fix unflatten with field names like . .x or x..y (#1735)
* Fix unflatten with field name like `.` `.x` or `x..y`

* docs & test data
2024-12-23 12:27:08 -05:00
John Kerl
9f77bbe096
Add help strings for -a/-r in sub/gsub/ssub (#1721)
* Help strings for `-a`/`-r` in `sub`/`gsub`/`ssub`

* `mlr regtest -p test/cases/cli-help` to update expected outputs

* artifacts from `make dev`
2024-11-23 10:13:36 -05:00
John Kerl
5424e753a4
Static-check fixes from @lespea #1657, batch 8/n (#1710) 2024-10-27 12:16:49 -04:00
John Kerl
41649bf4f9
Static-check fixes from @lespea #1657, batch 7/n (#1709) 2024-10-27 12:11:28 -04:00