Skip to content

Migrate documentation to rdoc - #5689

Open
ydah wants to merge 7 commits into
rmosolgo:masterfrom
ydah:migrate-documentation-to-rdoc
Open

Migrate documentation to rdoc#5689
ydah wants to merge 7 commits into
rmosolgo:masterfrom
ydah:migrate-documentation-to-rdoc

Conversation

@ydah

@ydah ydah commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Fixes: #5576

This PR completes the migration of the GraphQL Ruby documentation site from YARD/Jekyll to RDoc/Aliki.

It adds the RDoc build and CI checks, converts guide metadata and YARD comments, moves API-specific guide content into source comments, preserves legacy documentation URLs, and removes the legacy YARD pipeline. The generated API documentation is checked against the pre-migration public API inventory to detect unexpected coverage changes.

The generated site also includes GraphQL syntax highlighting, local-file-friendly image links, correct README rendering, nested guide navigation with page titles, and complete development guide table-of-contents links. No GraphQL runtime behavior is changed.

Validated with bundle exec rake docs:check, the documentation generator specs, the link checker, the RDoc reference checker, and the GraphQL highlighter tests.

@ydah
ydah force-pushed the migrate-documentation-to-rdoc branch from f7a0a04 to 47c61be Compare August 9, 2026 00:37
@rmosolgo

Copy link
Copy Markdown
Owner

Hey, thanks so much for taking a crack at this! I just pulled the branch and built the docs locally. In general I think this is great, but I'd like to get a few more things before replacing the YARD docs with this:

I'm going to continue reviewing but I thought I'd share those ideas now to see what you think.

@ydah
ydah force-pushed the migrate-documentation-to-rdoc branch from 47c61be to c9cfb98 Compare August 10, 2026 15:25
@ydah
ydah force-pushed the migrate-documentation-to-rdoc branch from 2bbd72b to 0087637 Compare August 10, 2026 15:53
@ydah

ydah commented Aug 20, 2026

Copy link
Copy Markdown
Contributor Author

Thank you for the feedback! I've addressed both points:

  • Converted @api private to :nodoc:
  • Updated the type definitions so they're rendered properly in RDoc, similar to Prism

Thank you for catching these.

@rmosolgo

Copy link
Copy Markdown
Owner

Hey, thanks again for your work on this so far. I pulled the latest and took it for a spin today. I think a good approach would be to get this good enough and then continue iterating on master. Here are the things I think we need:

  1. Ordered guides. This is currently implemented with index: ... in Jekyll frontmatter, but the new rendering puts them in alphabetical order. This means that Overview is no longer the first entry on the list, but it should be. I'm not sure how this should be implemented.

  2. Call-outs for documented features which ship in GraphQL-Pro or GraphQL-Enterprise. This currently looks like this:

    image

    But the new implementation doesn't include any indication that @defer isn't in GraphQL-Ruby OSS. I think this will be confusing and disappointing for people :S

    So we need something for that. A hard-coded indicator of some kind would work for me.

When those two are implemented, I'll be ready to merge this PR.

I think there will be a few things to address after that:

  • Remove migration-related scripts that we don't need anymore
  • Somehow improve local tooling to include file watching?
  • The type annotation support is still not great :S I'm not sure what to do about that though. The way that you migrated YARD annotations seems like our best bet in RDoc because the inline-RBS notation doesn't support inline comments. (I really like how, in YARD, the argument name, type, and description all go together.)

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.

Migrate to RDoc

2 participants