|
|
390b2f3a23
|
add passing test for blank lines
Generic zig build / build (push) Successful in 21s
|
2026-03-09 16:47:35 -07:00 |
|
|
|
353f8bca35
|
add string-based boolean coercion
Generic zig build / build (push) Successful in 28s
|
2026-03-09 16:28:56 -07:00 |
|
|
|
f4facdb700
|
add created/modified to fmt()
Generic zig build / build (push) Failing after 13m22s
|
2026-03-09 15:19:21 -07:00 |
|
|
|
e45a5ffe34
|
add created/modified directives
Generic zig build / build (push) Successful in 21s
|
2026-03-09 15:12:09 -07:00 |
|
|
|
3da4860ad2
|
move structs out of tests (removes srfParse/srfFormat from docs)
Generic zig build / build (push) Failing after 12m4s
|
2026-03-09 13:41:06 -07:00 |
|
|
|
1f922c0b33
|
update readme and docs
|
2026-03-09 13:39:54 -07:00 |
|
|
|
fcce8e48d4
|
add comment about allocations, reduce footprint for fielditerator
Generic zig build / build (push) Successful in 24s
|
2026-03-09 10:08:53 -07:00 |
|
|
|
8e12b7396a
|
introduce iterator version of to()
Generic zig build / build (push) Successful in 34s
|
2026-03-09 09:45:21 -07:00 |
|
|
|
bb4a5e0bf3
|
handle multiple recorditerator.next() without processing fields
|
2026-03-09 09:45:05 -07:00 |
|
|
|
3f7953be74
|
cleanup and optimization
|
2026-03-07 17:39:11 -08:00 |
|
|
|
1a47ad0ad2
|
iterator - not optimized
Generic zig build / build (push) Successful in 25s
|
2026-03-07 14:18:16 -08:00 |
|
|
|
95036e83e2
|
introduce emit_directives format option so consumers can implement append-only
Generic zig build / build (push) Successful in 30s
|
2026-03-06 17:30:07 -08:00 |
|
|
|
ad894ff74a
|
add enum tests (code already handled properly)
Generic zig build / build (push) Successful in 19s
|
2026-03-06 13:49:34 -08:00 |
|
|
|
7aa7ec112a
|
rename is_fresh -> isFresh
Generic zig build / build (push) Successful in 19s
|
2026-03-06 10:36:36 -08:00 |
|
|
|
b314b0fd0f
|
union deserialization
Generic zig build / build (push) Successful in 28s
|
2026-03-06 10:19:57 -08:00 |
|
|
|
14d82a13b7
|
use @hasDecl
|
2026-03-06 09:44:15 -08:00 |
|
|
|
b807ff8768
|
support for unions in fmtFrom
Generic zig build / build (push) Successful in 30s
|
2026-03-06 09:33:56 -08:00 |
|
|
|
18a4558b47
|
use a bound function for srfFormat
Generic zig build / build (push) Failing after 36s
|
2026-03-04 16:42:33 -08:00 |
|
|
|
84b8be4b25
|
add generic fmtFrom to serialize arrays of concrete data types
Generic zig build / build (push) Failing after 22s
|
2026-03-04 16:32:13 -08:00 |
|
|
|
996d91ba17
|
add from method to allow concrete data type to SRF record object
|
2026-03-04 00:23:52 -08:00 |
|
|
|
a414bacfec
|
downgrade err -> debug
|
2026-03-03 21:01:42 -08:00 |
|
|
|
569d7c8773
|
fix is_fresh
Generic zig build / build (push) Successful in 29s
|
2026-03-03 20:53:47 -08:00 |
|
|
|
8df8c93df1
|
add expires and to methods
Generic zig build / build (push) Successful in 27s
|
2026-03-03 20:49:54 -08:00 |
|
|
|
1ef493f282
|
fix bug with length-prefixed string as the last field
|
2026-02-27 09:27:36 -08:00 |
|
|
|
0b8ec4aa89
|
fix tests
|
2026-02-05 16:02:45 -08:00 |
|
|
|
d5f6266e7c
|
add format functions and round trip tests
|
2026-01-29 08:33:45 -08:00 |
|
|
|
2846ee1cff
|
rename all the things/update documentation/add docs build target
|
2026-01-25 09:51:21 -08:00 |
|
|
|
4fbc08230e
|
add alloc_strings parse option/update docs
|
2026-01-24 13:32:25 -08:00 |
|
|
|
415aa30f75
|
use arena in parse method - no perf change
|
2026-01-23 15:57:28 -08:00 |
|
|
|
b37fb7fb1a
|
switch to f64 for numbers (matches json)
That change improves performance. Before:
Benchmark 1: /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/51f43613e6e43ed5/test-srf-compact.srf
Time (mean ± σ): 113.8 ms ± 3.8 ms [User: 61.2 ms, System: 52.5 ms]
Range (min … max): 109.4 ms … 128.5 ms 26 runs
Benchmark 2: /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/c105a3d3b0472f2e/test-srf-long.srf
Time (mean ± σ): 115.5 ms ± 4.0 ms [User: 59.1 ms, System: 56.3 ms]
Range (min … max): 110.8 ms … 127.1 ms 26 runs
Benchmark 3: /home/lobo/shared/srf/zig-out/bin/srf json <.zig-cache/o/cb2a4e8b89e72422/test-json.json
Time (mean ± σ): 131.5 ms ± 3.1 ms [User: 83.2 ms, System: 48.3 ms]
Range (min … max): 127.7 ms … 138.0 ms 23 runs
Summary
/home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/51f43613e6e43ed5/test-srf-compact.srf ran
1.01 ± 0.05 times faster than /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/c105a3d3b0472f2e/test-srf-long.srf
1.16 ± 0.05 times faster than /home/lobo/shared/srf/zig-out/bin/srf json <.zig-cache/o/cb2a4e8b89e72422/test-json.json
After:
Benchmark 1: /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/51f43613e6e43ed5/test-srf-compact.srf
Time (mean ± σ): 98.9 ms ± 2.8 ms [User: 51.3 ms, System: 47.7 ms]
Range (min … max): 95.4 ms … 106.6 ms 29 runs
Benchmark 2: /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/c105a3d3b0472f2e/test-srf-long.srf
Time (mean ± σ): 103.1 ms ± 3.4 ms [User: 53.8 ms, System: 49.4 ms]
Range (min … max): 99.0 ms … 112.8 ms 28 runs
Benchmark 3: /home/lobo/shared/srf/zig-out/bin/srf json <.zig-cache/o/cb2a4e8b89e72422/test-json.json
Time (mean ± σ): 122.6 ms ± 4.4 ms [User: 75.1 ms, System: 47.6 ms]
Range (min … max): 117.7 ms … 130.7 ms 22 runs
Summary
/home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/51f43613e6e43ed5/test-srf-compact.srf ran
1.04 ± 0.04 times faster than /home/lobo/shared/srf/zig-out/bin/srf srf <.zig-cache/o/c105a3d3b0472f2e/test-srf-long.srf
1.24 ± 0.06 times faster than /home/lobo/shared/srf/zig-out/bin/srf json <.zig-cache/o/cb2a4e8b89e72422/test-json.json
|
2026-01-23 15:27:24 -08:00 |
|
|
|
6acf4f4fb1
|
remove a bunch of debug logs
|
2026-01-13 16:37:49 -08:00 |
|
|
|
4f7d1b930c
|
passing tests
|
2026-01-13 14:21:24 -08:00 |
|
|
|
040f84cdef
|
initial implementation with long format tests passing
|
2026-01-13 12:12:51 -08:00 |
|