diff --git a/.github/workflows/deploy-pages.yml b/.github/workflows/deploy-pages.yml index 591eb2a..25ac87f 100644 --- a/.github/workflows/deploy-pages.yml +++ b/.github/workflows/deploy-pages.yml @@ -98,8 +98,34 @@ jobs: # because neither the tool's `.md`/`.html` filter nor this root could # reach it. v0.5.0 reads .toml; widening the root is what puts the third # copy in the denominator. It checks 5 claims now, not 4. - - name: The stated conformance total matches rbgo's gate - run: go run github.com/go-embedded-ruby/docs/tools/conformancefigure@v0.5.0 --root . + # + # β v0.6.0 ALSO CHECKS THE VERSION THE TOTAL WAS COUNTED AT, which is why + # this page now states it. `23,511 examples pass` is a count over a + # POPULATION, and the population is selected by the Ruby version the + # conformance shim resolves `ruby_version_is` guards at: at 3.4.1 every + # example behind a `ruby_version_is "4.0"` guard is removed from the suite + # before anything runs -- 61 block guards and 5 inline sites at that + # boundary -- so the figure describes 3.4-shaped behaviour while this page + # also says the project targets 4.0 semantics and names a 4.0.5 oracle. + # All true, and together they read as a 4.0 result. + # + # The version is read from BOTH files in the interpreter repository that + # spell it (`rubyVersion` and the shim's `CUR_VERSION`) and a disagreement + # between them is a refusal, not a verdict on this page. The DIFFERENTIAL + # ORACLE named here is a different claim, free to be newer, and is + # deliberately not matched. + # + # Verified with the exact published command this lane runs, fetched + # through the proxy: + # + # $ go run github.com/go-embedded-ruby/docs/tools/conformancefigure@v0.6.0 --root . + # 5 total claim(s) and 2 version claim(s) checked against the gate's 23511 at Ruby 3.4.1 (two copies, agreeing) + # + # "two copies, agreeing" is the interpreter repository's state today; + # go-embedded-ruby/ruby#845 collapses it to one and the same line will + # then read "derived from RUBY_VERSION", with nothing here to change. + - name: The stated conformance total, and the version it was counted at, match rbgo's gate + run: go run github.com/go-embedded-ruby/docs/tools/conformancefigure@v0.6.0 --root . - name: Build landing page run: hugo --minify --baseURL "${{ steps.pages.outputs.base_url }}/" diff --git a/layouts/index.html b/layouts/index.html index ea038c4..dac3e02 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -59,7 +59,7 @@
A real object model β classes, mixins, method_missing, metaprogramming, Fiber. The Go API is deliberately small today: ruby.Run(src, out) runs a program on a fresh VM and writes its output to one writer. Calling a Ruby method from Go is not exposed yet.
CGO=0 by default. Tested on amd64, arm64, riscv64, loong64, ppc64le, s390x, 386 and arm; compiles for every GOOS/GOARCH Go supports except plan9 β 44 targets, the BSDs, AIX, Solaris and mips included.
Ahead-of-time compilation of integer-bound methods to unboxed Go. Measured on this projectβs own micro-benchmarks (darwin/arm64, whole-process wall time): 8.7Γ MRI+YJIT on the tight-loop case, 2.0Γ on recursive fib(35). Only methods the compiler can lower benefit.
23,511 ruby/spec language/ + core/ examples pass, gated in CI file by file: no spec file may pass fewer examples than its recorded row, so a regression is named rather than absorbed in a total. Only language/ and core/ are swept: library/, optional/ and security/ are not run, so this is not a percentage of Ruby. Front-end: ~100% of valid Ruby parsed across Rails + Puppet (2026-06).
23,511 ruby/spec language/ + core/ examples pass, gated in CI file by file: no spec file may pass fewer examples than its recorded row, so a regression is named rather than absorbed in a total. Only language/ and core/ are swept: library/, optional/ and security/ are not run, so this is not a percentage of Ruby. Those guards resolve at Ruby 3.4.1 β the version this runtime reports β so every example behind a ruby_version_is "4.0" guard is removed from the suite before anything is counted: 61 block guards and 5 inline sites sit at that boundary, while the latest MRI release is 4.0.9. Front-end: ~100% of valid Ruby parsed across Rails + Puppet (2026-06).
rbgo build --closed bakes the program to bytecode and drops the front-end for a smaller binary.
Built from the go-ruby-* family β each a 100%-coverage, 6-arch stdlib module, bound natively.