Skip to content

ci: exclude the fastify doc snippets from the no-auto doc-tests run (#8475) - #8476

Merged
proggeramlug merged 1 commit into
mainfrom
ci/8475-fastify-doctests-exclusion
Aug 20, 2026
Merged

ci: exclude the fastify doc snippets from the no-auto doc-tests run (#8475)#8476
proggeramlug merged 1 commit into
mainfrom
ci/8475-fastify-doctests-exclusion

Conversation

@proggeramlug

@proggeramlug proggeramlug commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Refs #8475 — the last three known doc-tests COMPILE_FAILs blocking the release gate.

All three import fastify, and the harness sets PERRY_NO_AUTO_OPTIMIZE=1 for host runs; perry compile deliberately refuses import 'fastify' under that flag because the prebuilt stdlib lacks external-fastify-pump and the request loop would hang. Excluded on the same terms as stdlib/http/snippets.ts, already excluded for a sibling reason.

This is an explicit coverage gap, not a fix. Those three snippets are now unverified by CI. #8475 tracks closing it and lists three candidate real fixes (a second auto-optimizing pass for just this class — probably the best value; a self-describing // requires: harness directive; or making the guard inspect the archive rather than the env var).

One finding worth recording: the guard keys on the environment variable alone and never inspects the archive — I verified that building perry-stdlib-static --features perry-stdlib/external-fastify-pump does not satisfy it, so 'just enable the feature in the doc-tests prebuild' would not have worked.

Summary by CodeRabbit

  • Documentation

    • Documented known limitations affecting several Fastify-related documentation examples and the npm packages getting-started example.
  • Tests

    • Updated documentation test coverage to exclude examples that cannot currently run reliably in the no-auto-optimization environment.
    • Recorded the associated coverage gap and tracked follow-up work for future resolution.

getting-started/npm_packages.ts, stdlib/http/fastify_json.ts and
stdlib/overview/snippets.ts all import fastify, and run_doc_tests sets
PERRY_NO_AUTO_OPTIMIZE=1 for host runs. perry compile deliberately
hard-errors on 'import fastify' under that flag: the prebuilt stdlib is
not built with external-fastify-pump, so the request loop would hang.
All three are therefore COMPILE_FAIL in doc-tests, which gates the
release.

Exclude them on the same terms as stdlib/http/snippets.ts, already
excluded for a sibling no-auto routing reason.

This is an EXPLICIT COVERAGE GAP, not a fix: those snippets are now
unverified by CI. #8475 tracks closing it, and records that the guard
keys on the env var alone — I verified that building
perry-stdlib-static --features perry-stdlib/external-fastify-pump does
NOT satisfy it, so enabling the feature in the prebuild is not a fix by
itself.

Refs #8475
@proggeramlug
proggeramlug merged commit e3b5ac8 into main Aug 20, 2026
16 of 21 checks passed
@proggeramlug
proggeramlug deleted the ci/8475-fastify-doctests-exclusion branch August 20, 2026 09:30
@coderabbitai

coderabbitai Bot commented Aug 20, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 746dd0f5-3c8b-4dcf-a534-9c2b2fa97f48

📥 Commits

Reviewing files that changed from the base of the PR and between 116cfb2 and a18f4f9.

📒 Files selected for processing (2)
  • .github/workflows/test.yml
  • changelog.d/8476-fastify-doctests-exclusion.md

📝 Walkthrough

Walkthrough

The macOS and Windows doc-tests commands now exclude four Fastify-related documentation snippets under PERRY_NO_AUTO_OPTIMIZE=1. A changelog entry documents the exclusions, coverage gap, and tracked remediation options.

Changes

Fastify documentation-test exclusions

Layer / File(s) Summary
Update documentation-test exclusions and changelog
.github/workflows/test.yml, changelog.d/8476-fastify-doctests-exclusion.md
The macOS and Windows commands exclude the affected Fastify snippets. The changelog records the compile failures and remediation options.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: jdalton, thehypnoo

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/8475-fastify-doctests-exclusion

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant