lilleman
818a9b56c2
Move the folder walk and the reading of a data tree's JSON and TSV files into internal/datafiles
2026-10-05 16:30:28 +02:00
lilleman
c2f2e86735
Move how the template language is written into internal/grammar
2026-10-05 12:35:08 +02:00
lilleman
1a15a139c8
Answer architecture round 1: refuse a name read inside the field it binds, check every scope's cycles, build a column read in one pass, drop the implicit struct pick for names across tags, and state the fresh-draw rule once
2026-10-05 10:19:01 +02:00
lilleman
6aebeebb72
Draw every {…} afresh, keep a pick only by name, and delete drawGroup with the hold and draw fences
2026-10-05 10:19:01 +02:00
lilleman
cc8797744b
Answer architecture round 3: the generated header names go generate, one sorted-keys helper everywhere, one site constructor, and an inline folder reference refused before anything loads
2026-10-03 20:37:07 +02:00
lilleman
5667cd5dc3
Load a shipped category on the first call reaching it, from an index generated from data/
2026-10-03 20:37:07 +02:00
lilleman
a9448d1a99
Delete comments restating their code, and doc.go's partial list of draw fences
2026-09-30 22:01:04 +02:00
lilleman
4fb81a5672
Correct IsTemplate's, loadDir's and the README's row-index claims
2026-09-30 21:56:14 +02:00
lilleman
e9b8216116
Say at checkNodeFences that its scope's cycles are refused first
2026-09-30 21:35:47 +02:00
lilleman
42c443bd5a
Build the draw fence's fold with the fence, deleting its lazy accessor
2026-09-29 21:31:07 +02:00
lilleman
e1769f20a2
Delete loadData's, drawRow's and selector's comments, and render.go's second and third compile notes
2026-09-29 13:31:04 +02:00
lilleman
94c8bd229d
Give checkOwnFamily the scope walk's signature, and drop its wrapper
2026-09-29 13:26:56 +02:00
lilleman
6cb2d143d6
Refuse own-family reads before any survey, and panic on a clash where readSurvey.edge enters a read's pins
2026-09-29 13:26:56 +02:00
lilleman
fe2fea5da2
Drop the last field-alternation wording, say checkNodeFences holds the fences every binding needs, and tick the rename off
2026-09-29 04:31:25 +02:00
lilleman
29f3821a21
Rename pinnedRow, table.category, checkRenders, fieldAlternation and referenceFence to what they are
2026-09-29 04:31:25 +02:00
lilleman
f7cfc75394
Name the fence drawFence and the route surveyRoute, and move the survey tests to readsurvey_test.go
2026-09-29 03:14:13 +02:00
lilleman
2d82f34cd4
Rename the load-time draw types to the read survey and fence, and move the survey to readsurvey.go
2026-09-29 03:14:13 +02:00
lilleman
e257dc0e6e
Return link's and format compile's outputs as templateLink and formatOps, assigned once in linkTemplate
2026-09-28 23:55:22 +02:00
lilleman
2254b33f0e
Keep the binding's prose to what its code cannot say
2026-09-28 10:53:26 +02:00
lilleman
01a60d06f1
Name the inline drawGroup refusal as a binding's reference fence, beside the cycle fence
2026-09-28 10:53:26 +02:00
lilleman
cfe653de4d
Run New, NewTemplate and FakeStruct through one bind pipeline naming where they differ
2026-09-28 10:53:26 +02:00
lilleman
b38974adb2
Say path where hold and dataSource comments named the old spelling
2026-09-25 19:31:09 +02:00
lilleman
c55c75a29e
Give dir, path, structs and r one meaning each, and name the table option indexes keyIndex through parentIndex
2026-09-25 19:31:09 +02:00
lilleman
d6ac8ed9fd
Give check, children, column, columns, draw, drawn, fields, format, head, index, key, n, name, named, names, null, number, op, reads, record, root, row, t and whole one meaning each
2026-09-25 19:31:09 +02:00
lilleman
cfe8124cc3
Rename addField to gatherField and reachMemo to renderCounts, and list every shared name left
2026-09-25 19:02:58 +02:00
lilleman
65091233a8
Give rows, field, walk, column, expr and of one meaning each: rowCount, readRows, gatherFields, addField, addTag, renderCount and the prove methods
2026-09-25 19:02:58 +02:00
lilleman
f94546edaa
Say what the graph and the load path each hold
2026-09-21 21:21:10 +02:00
lilleman
11ecc1e365
Put the load path and the fence order in one file
2026-09-21 21:21:10 +02:00
lilleman
c8a4ffa764
Export ErrNoColumns, name the cure for a shell-split template and an unquoted record, and name the flag a missing data path came from
2026-09-18 20:35:56 +02:00
lilleman
d5d9c2655e
Give every table its path in one pass, name it in every message, read the layout probes through predicates, and leave the shell to the CLI
2026-09-18 20:02:08 +02:00
lilleman
f6b54c8ae6
Add the table node: rows TSV, key and name selection, linked tables drawn consistently, and the choice-of-rows fence
2026-09-17 12:28:46 +02:00
lilleman
5ed45cc55c
Rename the folder node type from group to folder, freeing group for the draw option
2026-09-15 23:25:39 +02:00
lilleman
80e8d72bb7
One fence sequence over a node scope, and inline templates reject the folder sigils
2026-09-03 20:34:42 +02:00
lilleman
873b7678ba
Address reviewer findings: reference hint, consumer-terms type errors, misuse exit code, immutability and parity docs
Tests / vet + fmt + tests (pull_request) Successful in 57s
2026-09-03 19:21:42 +02:00
lilleman
08c7ef9b7f
Keep the real data-path error, reject an empty data path, and report a crypto/rand failure instead of seeding zero
Tests / vet + fmt + tests (pull_request) Successful in 58s
2026-09-02 19:09:29 +02:00
lilleman
f9647ff6bb
Decompose compileTemplate, checkBoundLevelsHeld and loadDir; gate cyclomatic complexity at 14
Tests / vet + fmt + tests (pull_request) Successful in 54s
2026-09-02 18:31:38 +02:00
lilleman
1bf5470c6f
Reference sigils follow the filesystem: / the root, . this folder, .. the folder above
Tests / vet + fmt + tests (pull_request) Successful in 53s
2026-09-02 18:26:02 +02:00
lilleman
1b1b93b35f
Reject weight 0, a never-numeric calc operand and a repeat product past the cap; the CLI classifies ErrNoData
Tests / vet + fmt + tests (pull_request) Successful in 52s
2026-09-02 18:23:03 +02:00
lilleman
f210c7a764
Embed the shipped data, load any fs.FS, New takes options, Fake is safe for concurrent use
2026-09-01 23:07:15 +02:00
lilleman
05dc042e49
Rename the project to fejkdata and record the fork source
Tests / vet + fmt + tests (pull_request) Failing after 6s
2026-09-01 20:24:03 +02:00
M
2dbc9b1f9f
Drop the unreachable reference-prefix checks
...
A name starting with ".." also starts with ".", so loadDir's hidden-entry
skip reaches it first and neither isRef branch could ever fire. Removed, and
the comment in named now names the skip that actually holds the invariant it
depends on.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-31 21:58:37 +02:00
M
447cfae50a
Hold a bound level against every route that renders it, and let a matching string be
2026-08-30 22:31:54 +02:00
M
b14caae3a8
Reject options that cannot take effect, and skip entries that are not data
2026-08-28 13:27:32 +02:00
Mikael Göransson
2d8fcae4f4
Reject a folder using the reference prefix, and filter bindings only where they exist
2026-08-28 12:59:28 +02:00
Mikael Göransson
e14f3a4145
Reserve the reference prefix in authored names, and report one compile error
2026-08-28 12:59:28 +02:00
lilleman
5b6480a094
Updates from reviewers
2026-06-09 10:03:53 +02:00
lilleman
18de1b7004
Add {..path} references: render a node from elsewhere in the merged data root
2026-06-09 00:11:17 +02:00
lilleman
8db65ac598
Replace locale dirs with a data-folder namespace model: New([]paths), folder dot-paths, last-wins merge
2026-06-08 23:52:37 +02:00