Conversation
|
🚀 Preview deployment available at: https://100b2e9d.rdoc-6cd.pages.dev (commit: 5c4b1b9) |
There was a problem hiding this comment.
Pull request overview
This PR refactors RDoc’s coverage reporting to be file-centric and plain-text based (instead of building RDoc::Markup trees), aiming to make coverage output more concise and clearer—especially for C source files.
Changes:
- Reworked
RDoc::Stats#reportto emit a file/type grouped text report and introduced shared constants for type ordering and the “Great Job!” message. - Updated
RDoc::Stats#summary(and the CLI printing path) to output plain strings directly, removingRDoc::Markup::ToRdocconversions. - Revised and expanded stats tests to validate the new output format, including new sorting/grouping scenarios.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| test/rdoc/rdoc_stats_test.rb | Updates expectations to the new file-centric text format and adds new tests for ordering/grouping. |
| lib/rdoc/stats.rb | Implements the new report format and removes markup-element construction in favor of plain strings. |
| lib/rdoc/rdoc.rb | Prints coverage report and summary as strings (no Markup conversion). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e41eb6b to
4d638a5
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The `rdoc -C` coverage report previously displayed undocumented items
using Ruby syntax (`class ... end`, `def ...; end`). For C source files
like Ruby's object.c, this made the output appear as if the C file was
being treated as a Ruby script.
Replace with a file-centric listing that groups undocumented items by
source file and type:
object.c:
Class:
Refinement
Method:
Module#name object.c:135
Undocumented params: mod.name->stringornil
- Group items by source file, sorted alphabetically
- Within each file, group by type (Class, Module, Constant, Attribute, Method)
- Sort items by line number within each type group
- Use ClassName#method / ClassName.method notation
- Show clickable file:line references, column-aligned
- Return plain strings from report/summary instead of Markup objects
4d638a5 to
5c4b1b9
Compare
Summary
Before (Ruby pseudo-code format)
After (file-centric format)
C source file output (Ruby's object.c)
No more
class Refinement ... endpseudo-code that makes it look like the C file is being treated as a Ruby script.Accuracy verification
Coverage metrics are unchanged for projects other than RDoc itself: