From 4e389127a992f5341651089260acb7f9fc17cc5b Mon Sep 17 00:00:00 2001 From: tannevaled Date: Wed, 23 Sep 2026 19:16:57 +0200 Subject: [PATCH] landing: name v0.2.0, and state the CI claim the way ci.yml does The page named no parser version and no release date anywhere. The parser shipped v0.2.0 on 2026-09-21 with fourteen grammar fixes, three months after this page's prose was last touched. * a version pill, and the lead now names v0.2.0 with what it closed -- every one of the 68 files in the pinned ruby/spec language corpus parses, thirteen of which had not parsed at all before * "100% coverage enforced in CI across the six 64-bit targets" conflated two different gates. Per the parser's ci.yml the coverage gate is on the three OS lanes; the six 64-bit targets (amd64/arm64 native, riscv64/loong64/ppc64le/ s390x under QEMU) and the js/wasm and wasip1/wasm lanes run the suite without it. Both are now stated, each attributed to the lane that does it. * the same claim in hugo.toml's repo blurb Linked to the tag tree rather than /releases/tag/v0.2.0: the repo publishes no GitHub Releases, so that page renders empty. Co-Authored-By: Claude Opus 5 --- hugo.toml | 2 +- layouts/index.html | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/hugo.toml b/hugo.toml index 566c4b0..12098fa 100644 --- a/hugo.toml +++ b/hugo.toml @@ -9,4 +9,4 @@ disableKinds = ["taxonomy", "term", "RSS", "sitemap", "404"] name = "parser" url = "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/go-ruby-parser/parser" status = "ready" - blurb = "The front-end: `parser.Parse(src) (*ast.Program, error)`, with sub-packages `token`, `ast` and `lexer`. A stateful lexer (MRI `spaceSeen` semantics), a recursive-descent + Pratt expression parser with a scope stack, and a typed AST for a broad, practical subset of **Ruby 4.0** — literals, operators, control flow, `case`/`in` **pattern matching**, methods/blocks, classes/modules/metaprogramming. 100% covered, differential-tested against MRI Ruby 4.0.5." + blurb = "The front-end: `parser.Parse(src) (*ast.Program, error)`, with sub-packages `token`, `ast` and `lexer`. A stateful lexer (MRI `spaceSeen` semantics), a recursive-descent + Pratt expression parser with a scope stack, and a typed AST for a broad, practical subset of **Ruby 4.0** — literals, operators, control flow, `case`/`in` **pattern matching**, methods/blocks, classes/modules/metaprogramming. 100% covered (the gate runs on all three OS lanes; the suite also runs on all six 64-bit targets and on js/wasm and wasip1/wasm), differential-tested against MRI Ruby 4.0.5. Current release **v0.2.0** (2026-09-21): fourteen grammar gaps closed, and every one of the 68 files in the pinned ruby/spec `language/` corpus now parses." diff --git a/layouts/index.html b/layouts/index.html index 0584509..8ccc59e 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -88,6 +88,7 @@

go-ruby-parser

stateful lexer recursive-descent + Pratt typed AST + v0.2.0 · 2026-09-21 Ruby 4.0 subset pattern matching heredocs @@ -114,8 +115,14 @@

go-ruby-parser

shelling out to Ruby: the front-end the Go ecosystem lacked for building Ruby tooling (linters, formatters, analysers, doc generators, LSP servers, transpilers) in pure Go. It was extracted from go-embedded-ruby — - which now consumes it — and is grown test-first against MRI Ruby 4.0.5, with - 100% coverage enforced in CI across the six 64-bit targets.

+ which now consumes it — and is grown test-first against MRI Ruby 4.0.5. + 100% coverage is enforced in CI on all three OS lanes, and the suite also runs + on all six 64-bit targets — amd64 and arm64 natively, riscv64 / loong64 / + ppc64le / s390x under QEMU — plus js/wasm and wasip1/wasm. + The current release is v0.2.0 + (2026-09-21), which closed fourteen grammar gaps: every one of the 68 files in the pinned + ruby/spec language/ corpus now parses, thirteen of which had not parsed at all + before.

{{ range .Site.Params.repos }}