Repository navigation
Add Yoga runtime smoke tests - #28
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Adds alternate-runtime (Bun/Deno) smoke coverage for the Yoga-compatible package by introducing a dedicated Yoga smoke test, wiring it into native CI targets, and updating repo/package documentation to reflect runtime support and the recorded coverage decision.
Changes:
- Add a Yoga runtime smoke script that imports both
yoga-layoutroot and/loadentries and validates a minimal fixed layout. - Extend native CI jobs to run the Yoga smoke script on Bun 1.2.0 and Deno 2.2.0.
- Update runtime compatibility docs (repo + package) and record the Bun/Deno smoke coverage decision.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/taffyjs-yoga/runtime-smoke.mjs | New Bun/Deno-oriented smoke script for Yoga root + /load entries. |
| tests/runtime-smoke.ts | Adds a Yoga-specific smoke helper alongside the existing TaffyTree smoke helper. |
| .github/workflows/ci.yml | Runs the new Yoga smoke script in Ubuntu/Windows native CI jobs for Bun/Deno. |
| README.md | Updates the runtime compatibility matrix to include Node.js and mark @taffyjs/yoga as implemented/smoke-tested. |
| packages/taffyjs-yoga/README.md | Documents Bun/Deno support constraints (including Deno native-loading permissions). |
| .agents/docs/technology-stack.md | Updates CI job description to include Yoga alternate-runtime smoke checks. |
| .agents/docs/taffyjs-yoga-reference.md | Clarifies that @taffyjs/yoga uses the native backend across supported Bun/Deno versions. |
| .agents/docs/taffyjs-yoga-decisions.md | Records the Bun/Deno smoke coverage ruling for @taffyjs/yoga. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+1
to
+17
| import Yoga from "yoga-layout"; | ||
| import { loadYoga } from "yoga-layout/load"; | ||
|
|
||
| import { runYogaRuntimeSmoke } from "../runtime-smoke.ts"; | ||
|
|
||
| const packageName = "@taffyjs/yoga"; | ||
| const loadEntryName = "@taffyjs/yoga/load"; | ||
| const resolvedEntry = import.meta.resolve("yoga-layout"); | ||
| const resolvedLoadEntry = import.meta.resolve("yoga-layout/load"); | ||
|
|
||
| if (!resolvedEntry.endsWith("/dist/index.js")) { | ||
| throw new Error(`${packageName} resolved to an unexpected entry: ${resolvedEntry}`); | ||
| } | ||
|
|
||
| if (!resolvedLoadEntry.endsWith("/dist/load.js")) { | ||
| throw new Error(`${loadEntryName} resolved to an unexpected entry: ${resolvedLoadEntry}`); | ||
| } |
hyfdev
added a commit
that referenced
this pull request
Aug 16, 2026
hyfdev
added a commit
that referenced
this pull request
Aug 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@taffyjs/yogaroot and/loadentries on Bun 1.2.0 and Deno 2.2.0 across the native CI targetsWhy
@taffyjs/yogais now implemented over@taffyjs/node, so it should receive the same minimum-endpoint Bun and Deno coverage as its native backend. The runtime compatibility table also omitted Node.js even though CI already runs the complete suite at the declared Node.js 22.18.0 floor.Validation
pnpm exec vp run readypnpm exec vp run check:formatpnpm exec vp run check:lintpnpm dlx bun@1.2.0 tests/taffyjs-yoga/runtime-smoke.mjspnpm dlx deno@2.2.0 run --node-modules-dir=manual --allow-env --allow-read --allow-ffi tests/taffyjs-yoga/runtime-smoke.mjs