Skip to content

Support RDoc 8 formatter initialization - #2109

Draft
joelhawksley wants to merge 3 commits into
masterfrom
joelhawksley-rdoc-8-compatibility
Draft

joelhawksley wants to merge 3 commits into
masterfrom
joelhawksley-rdoc-8-compatibility

Conversation

@joelhawksley

@joelhawksley joelhawksley commented Oct 15, 2026 •

Copy link
Copy Markdown

Summary

RDoc 8 changed RDoc::Markup::ToHtml to accept keyword options, so passing a positional RDoc::Options raises ArgumentError.

  • Pass positional options only for RDoc 4–7; preserve the zero-argument constructor for earlier versions and use it for RDoc 8+.
  • Add constructor-boundary and semantic rendering regressions through both public rendering entry points.
  • Test RDoc 7.2 and 8.x across the existing Ruby CI matrix, keeping the default development lockfile unchanged, and update installation/testing docs.
  • Relax the runtime dependency added in Declare compatible RDoc as a runtime dependency #2104 from rdoc < 8 to rdoc < 9.

Validation

After rebasing on master, re-ran bundle exec rake on Ruby 3.4.10 against RDoc 7.2.0 and 8.1.0: 65 runs, 0 failures, 100% line/branch coverage.

In an isolated Codespace environment with Ruby 4.0.5 and docutils 0.22.4, ran bundle exec rake separately against RDoc 6.3.4.1, 7.2.0, 8.0.0, and 8.1.0. Each passed all 65 tests with zero failures/errors/skips and 100% line and branch coverage. Also reproduced the original constructor error on 8.1.0 and confirmed the fixed renderer succeeds. git diff --check and CI YAML parsing pass.

joelhawksley and others added 2 commits October 15, 2026 12:02
Preserve positional options for RDoc 4–7 and use the keyword-based formatter defaults for RDoc 8. Add regression coverage and test RDoc 7.2 and 8.x in CI.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 04620c2c-d05c-4684-9275-33956737b425
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 93ffdf64-9ffd-47b4-b3d4-96dda4ae722d
@joelhawksley
joelhawksley force-pushed the joelhawksley-rdoc-8-compatibility branch from ab78de4 to 30f50d6 Compare October 15, 2026 18:05
Comment thread README.md Outdated
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