Commit Graph

  • 4b3dd011fc Pin the per-head walk, and say where the hold stops M 2026-08-31 21:44:24 +02:00
  • 21e7af6c1f Hold what a calc operand's render settled, up to a reference M 2026-08-31 21:20:15 +02:00
  • 8d03ce34bb Tests for a reference reaching into a calc operand M 2026-08-31 21:19:17 +02:00
  • cf3229cd4d Pin the route an operand fence names M 2026-08-31 17:35:50 +02:00
  • 39d59aec23 Pin the prep-time guards, and say why an operand's set is the narrow one M 2026-08-31 15:07:59 +02:00
  • f949550515 One spelling for an unvalidated builtin arg, and say what the hold buys M 2026-08-31 15:05:52 +02:00
  • 027d5c33fc Name a calc operand as one when the fence reports it M 2026-08-31 15:05:20 +02:00
  • 3f46e9c701 Tests for what a calc operand's hold actually pins M 2026-08-31 15:04:02 +02:00
  • 7e073462c8 Document the fence a calc operand gets, and trim two comments M 2026-08-31 14:03:07 +02:00
  • 0cee8b2183 Report a prep-time arg that its check should have caught M 2026-08-31 14:02:35 +02:00
  • 2e187117f8 Cover a calc operand by what it renders M 2026-08-31 14:02:00 +02:00
  • 779b89a804 Tests for what an operand's draw actually fixes M 2026-08-31 14:01:07 +02:00
  • 909596ec2d Trim comments that restate or argue M 2026-08-31 13:43:19 +02:00
  • 1b5e928d4f Fail loudly where calc says it cannot happen M 2026-08-31 13:42:41 +02:00
  • 1ba9185edc Pin the calc stream against a moving operand M 2026-08-31 13:42:16 +02:00
  • 2dbc9b1f9f Drop the unreachable reference-prefix checks M 2026-08-31 13:41:46 +02:00
  • 25a3077925 Say what a dot-prefixed data entry actually does M 2026-08-31 13:41:09 +02:00
  • 258bce3b98 Let a clearer token error win over the repeated-arm check M 2026-08-31 13:40:38 +02:00
  • dea1fcf311 Tests for an arm check that yields to a clearer error M 2026-08-31 13:40:07 +02:00
  • 465eb05704 Fence a calc operand against every route that renders it M 2026-08-31 13:39:46 +02:00
  • d664b1b25c Tests for a reference spelling of a calc operand M 2026-08-31 13:39:13 +02:00
  • ac0309cf94 Say what a name may contain, and what a calc operand reads M 2026-08-30 23:17:46 +02:00
  • 9ed0d3bf55 Hold a calc operand's draw for the expansion M 2026-08-30 23:09:58 +02:00
  • 4f87a4dd9e Tests for a calc operand reading the expansion's draw M 2026-08-30 23:08:01 +02:00
  • b09bc56e87 Reject a repeated alternation arm M 2026-08-30 23:05:00 +02:00
  • cc76d300e7 Tests for a repeated alternation arm M 2026-08-30 23:04:31 +02:00
  • b7c854f2d4 Reject a name the token grammar reserves M 2026-08-30 23:04:00 +02:00
  • cc8f8db83f Tests for a name no token can spell M 2026-08-30 23:03:12 +02:00
  • 403d68de27 Write every builtin one way M 2026-08-30 22:53:38 +02:00
  • 24084fc0cf List every node's children one way M 2026-08-30 22:51:21 +02:00
  • 5a69b02ee0 Find a format's bound readers in one ordered scan M 2026-08-30 22:27:56 +02:00
  • c1222eaf72 Label the error fences, and settle a tie by where the format writes it M 2026-08-30 22:18:50 +02:00
  • 4a1073f018 Test that a path reaches every variant it might draw M 2026-08-30 22:09:54 +02:00
  • 32b9aa5c81 Aim a path token's render edge at what it renders M 2026-08-30 21:44:35 +02:00
  • 1987deb14c Tests for a path token rendering its leaf, not the level it starts from M 2026-08-30 21:42:30 +02:00
  • 447cfae50a Hold a bound level against every route that renders it, and let a matching string be M 2026-08-30 21:25:49 +02:00
  • c755d085a9 Tests for a reference reaching a bound level from anywhere, and a literal that merely matches M 2026-08-30 21:22:11 +02:00
  • 3ebaa5958d Close the calc and reference spellings of an overlap, and reach the repeat rule behind a choice M 2026-08-30 21:04:54 +02:00
  • 9b5e34332b Tests for overlap via calc and references, repeat behind a choice, and nested choice draws M 2026-08-30 21:00:35 +02:00
  • f7165274c7 Accept one spelling per draw, and reject a path into a repeating level M 2026-08-30 20:38:52 +02:00
  • 97ecbe208f Tests for one spelling per draw, and a path into a repeating level M 2026-08-30 20:36:02 +02:00
  • e05fed1190 Hold a path's last level too, and reject an unfinished path M 2026-08-30 20:08:47 +02:00
  • 8accca54b1 Tests for a path sharing its prefix's draw and rejecting an empty segment M 2026-08-30 20:06:50 +02:00
  • e4b37091e4 Say that a path is held at every level M 2026-08-29 14:57:36 +02:00
  • f512c1663d Hold a path's draw at every level it passes through M 2026-08-29 14:56:55 +02:00
  • eb0c5dc066 Tests for a path holding its draw at every level M 2026-08-29 14:55:50 +02:00
  • 644f3ed9d9 Benchmark what a bound draw costs M 2026-08-29 14:03:48 +02:00
  • b8da6fdbc0 See a path token's head when walking for cycles M 2026-08-29 13:12:23 +02:00
  • d7c4f43135 Document the path token and the one-draw rule M 2026-08-28 15:09:31 +02:00
  • a25b42ace2 Read one value when a bound path is read twice M 2026-08-28 15:06:10 +02:00
  • 12100239f5 Draw a dotted token's head once per expansion M 2026-08-28 15:03:23 +02:00
  • 5263c866c4 Tests for a dotted sibling token drawing its head once per expansion M 2026-08-28 14:57:23 +02:00
  • e371d217f4 Say what the objectid category actually is, and re-flow the registry comment Mikael Göransson 2026-08-27 23:50:23 +02:00
  • 43d3a752b3 Retire the objectid builtin; ship it as data instead lilleman 2026-08-27 23:21:26 +02:00
  • c11ae5f04f Expect objectid as a data category rather than a builtin lilleman 2026-08-27 23:20:57 +02:00
  • 16f91503b0 Reject a standalone weight on key presence, whatever its value M 2026-08-28 00:39:49 +02:00
  • 48cadd6c4d Tests that a standalone weight of any type is rejected M 2026-08-28 00:39:47 +02:00
  • b14caae3a8 Reject options that cannot take effect, and skip entries that are not data M 2026-08-28 00:17:39 +02:00
  • 8d0393713c Tests for options that cannot take effect, and entries that are not data M 2026-08-28 00:17:27 +02:00
  • af09a86e71 Express hex-shaped data with the hex() builtin instead of a hand-rolled choice lilleman 2026-08-27 23:18:20 +02:00
  • aec0497ce5 Say what the triple-letter test and the escape rule actually cover M 2026-08-28 13:15:43 +02:00
  • 630f75f556 Remove the duplicated Vasa street prefix M 2026-08-28 12:11:29 +02:00
  • e73cb398ac Keep every legal compound surname reachable, and tighten the README wording Mikael Göransson 2026-08-27 23:49:53 +02:00
  • cd25aea6f1 Correct the format-string example, and stop Swedish name data composing a triple letter lilleman 2026-08-27 23:16:29 +02:00
  • 404650ecc2 Test that shipped Swedish name data never composes a triple letter lilleman 2026-08-27 23:16:08 +02:00
  • 37759f773f Pin the builtin registry shape and grow as a lower bound, and correct stale comments Mikael Göransson 2026-08-27 23:48:35 +02:00
  • ab9846c2ff Compile format strings at New instead of re-scanning them on every render lilleman 2026-08-27 23:09:35 +02:00
  • 5282f37a59 Golden test pinning the seeded output of each part of the token grammar lilleman 2026-08-27 23:08:31 +02:00
  • 362c484825 Advertise only spellable paths, and name what a choice's variants share Mikael Göransson 2026-08-28 00:15:02 +02:00
  • 595809bf38 Tests for an ambiguous dot-path key and for naming a missing field Mikael Göransson 2026-08-28 00:13:57 +02:00
  • 1665b37cad Precompute each choice's shared paths so a dotted path stays O(1) Mikael Göransson 2026-08-27 23:45:08 +02:00
  • af5b8c9abd Require every choice variant to carry a path, and list only what Fake accepts lilleman 2026-08-27 23:07:03 +02:00
  • 7d5d03e393 Tests for the every-arm rule on paths through a choice, and the List/Fake contract lilleman 2026-08-27 23:04:46 +02:00
  • 2d8fcae4f4 Reject a folder using the reference prefix, and filter bindings only where they exist Mikael Göransson 2026-08-28 00:08:58 +02:00
  • 095a7f2de5 Tests that pin the reserved-prefix guards and per-field error order Mikael Göransson 2026-08-28 00:08:43 +02:00
  • e14f3a4145 Reserve the reference prefix in authored names, and report one compile error Mikael Göransson 2026-08-27 23:46:44 +02:00
  • af0c99809c Tests for cycles below the root and for the reserved reference prefix Mikael Göransson 2026-08-27 23:46:27 +02:00
  • f03825671e Report the canonical node path in load errors lilleman 2026-08-27 23:25:53 +02:00
  • e6afd089e2 Test that a load error names the canonical node path lilleman 2026-08-27 23:24:44 +02:00
  • f526441e30 Reject reference cycles in unrendered fields, and make New errors deterministic lilleman 2026-08-27 23:01:01 +02:00
  • 381c41f1e9 Tests for cycles hidden in unrendered fields, and deterministic New errors lilleman 2026-08-27 22:59:24 +02:00
  • 4ad26970d8 Report both Go versions even when the first fails M 2026-08-28 12:34:55 +02:00
  • e7bd363519 Run the tests in CI as a merge gate M 2026-08-28 12:10:18 +02:00
  • 5b6480a094 Updates from reviewers lilleman 2026-06-09 10:03:53 +02:00
  • cee2f35a2c Add {calc()}: arithmetic over number literals and sibling fields lilleman 2026-06-09 07:59:29 +02:00
  • eaf99d4542 Add locale-neutral misc data: currency, country, language, timezone, mimetype, httpstatus, useragent, coordinate, emoji, car lilleman 2026-06-09 01:58:49 +02:00
  • cde56b7924 Add session-scoped seq() builtin; move uuid v4 from locales to misc only lilleman 2026-06-09 01:52:39 +02:00
  • ae41e6bb97 Add ID/checksum/numeric builtins and a misc data folder (uuid v4, mac, creditcard) lilleman 2026-06-09 01:25:41 +02:00
  • c0eac6538d Correct CLI: repeatable -data-path flag for dirs, dot path stays positional lilleman 2026-06-09 00:54:33 +02:00
  • 889b1fbf8b Replace positional CLI path with a repeatable -path flag lilleman 2026-06-09 00:47:01 +02:00
  • 862c5f8a23 Add CLI -repeat and -separator flags for emitting multiple values lilleman 2026-06-09 00:31:46 +02:00
  • 18de1b7004 Add {..path} references: render a node from elsewhere in the merged data root lilleman 2026-06-09 00:11:17 +02:00
  • 8db65ac598 Replace locale dirs with a data-folder namespace model: New([]paths), folder dot-paths, last-wins merge lilleman 2026-06-08 23:52:37 +02:00
  • acf7571334 Stuff lilleman 2026-06-08 23:35:51 +02:00
  • a765230d3b Add fakes CLI (cmd/fakes); document it README-first with an SQL template example lilleman 2026-06-08 22:04:18 +02:00
  • 3e1cd3ee2a Add repeat/separator templates; validate at compile time; support Go 1.22+ via GO_VERSION lilleman 2026-06-08 21:11:58 +02:00
  • 72154502d7 Re-sort sv_SE localities by Swedish collation; add Rabbalshede lilleman 2026-06-08 16:03:44 +02:00
  • e28b92090d Expand locale data sets; match tests against patterns instead of fixed sets lilleman 2026-06-08 16:02:58 +02:00
  • 770dcd72f2 Add locale data categories: word, sentence, date, time, ssn, version, email, ip, company, color, url, uuid, username, price lilleman 2026-06-05 20:18:27 +02:00
  • 943a1d9f1b Add fakes library: recursive JSON template engine, i18n locales, Docker workflow lilleman 2026-06-05 19:51:18 +02:00