Adding YARD document support to RDoc
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 930
- Forks
- 465
- Avg merge
- 3d 10h
- Merged PRs (30d)
- 27
Description
Background
I implemented a plugin system for RDoc in https://github.com/ruby/rdoc/pull/1321 and YARD parsing plugin is implemented.
In the discussion with @st0012, @kou and @vinistock we decided that we should implement YARD parsing feature as a standalone feature without plugin.
The note exists in https://github.com/ruby/rdoc/discussions/1257#discussioncomment-12882912
Steps
There are some steps to have effective YARD parsing feature in RDoc.
- Adding basic framework to support YARD style document (
RDoc::Yardclass or similar) - Adding support of YARD tags that already works with current RDoc such as
@yieldand@private-
@yield -
@private
-
- Adding support of YARD tags that needs simple modification of RDoc such
@deprecated- Adding
:deprecateddirective - Adding
@deprecated
- Adding
- Adding features such as type support to utilize information from YARD
-
@return -
@param - others (will be edited later)
-
- Adding support of YARD directives and macros
-
@!attribute - others (will be edited later)
-
I will implement these step by step.
Note
The idea of plugin system is not completely abandoned but postponed.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing pull request #1321 and the linked discussion to understand why the plugin approach was postponed. Use the first unchecked roadmap item to define a focused contribution; completion should cover one agreed YARD capability, such as the basic framework or a listed tag, rather than the entire feature set.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ruby
- Domain
- documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100