-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Testing out pull request contributions #32
Comments
@jimfoltz - would you be willing to make a test Pull Request? (To the stubs repository.) |
Just added a simple pull request. |
(Musing Rant)
(Back to Normal) Question: What happens if we want some documentation of a class that is NOT defined by your C++ core code ? How will you exclude this extra information from being inserted back into your codebase ? Do we need to define some custom YARD tags, ie Example I myself had created a custom
Custom YARD tags can be used for filters. |
We already have this scenario, with the Tool class for instance, it's not really defined by the API. I think the |
No, I'm speaking of modules and classes that are extra API. For example some of the core mixin modules ( So this is case (A). What do you need to do to ignore some Ruby core class or module file, so that it doesn't bloat your C++ files ? (Perhaps an |
Now what I was wondering for case (B) (being extra external files, that likely will appear on the "Files" page.) These would be diagrams and other extraneous information likely authored in markdown. Included are the API Introduction, Build Number Tables, Release Notes, FAQs, etc. Looking at the current "ruby-api-docs" repo, I see that it contains only the ruby stubs. So this part (B) is moot as far as my previous worry about overloading your API core source files, but brings up another question: But, how would we contribute to the extra files, when there is no repo for them ? |
Actually, not. The |
Ah, yes the With I'm tempted at adding a custom tag we can use to indicate that these classes are "virtual" - no real base implementation. As for the non-SketchUp-API classes, I think we'll put that on hold for a bit while we get the SketchUp API docs cleaned up. Want to get these repositories and workflows stabilized before expanding much more to them. I think Greg (?) had done something similar for his own YARD template, combining all the docs. Worth its own issue we can track? |
No need. YARD has the It puts a boxed warning right at the top just below the "Overview" heading, that says by default "This class is abstract." But the tag also takes text that will be appended. Ref: http://www.rubydoc.info/gems/yard/file/docs/Tags.md#abstract |
Yes I liked how his worked. I just do not wish to have to download the whole Ruby Core source and have that in the API repo. (I think I generated stubs using Ruby's reflection/introspection.) We can hold off with the issue logging for now. |
I see that they are actually within the sketchup-yard-template project's |
@thomthom ... actually, they are also in the sketchup-yard-stubs repo. Would we add them there and then the template repo copies them ? |
They don't belong in the templates repo, and I actually do not see them in the template repo on any branch. |
I go to: https://github.com/SketchUp/sketchup-yard-template It's kind of a chicken and egg, which came first ? I thought it must be the template, because it generates the stubs. |
@jimfoltz Just looked through all branches and these 2 folders are in every branch. |
I see. I thought you were talking specifically about the frame change observer and load handler documentation. I would think that the items in the pages directory would be only in the stubs repo because they are generated. I'm not sure how yard uses the assets directory |
No they are people written markdown files. And the ReleaseNotes.md need a major overhaul. They were just pasted into the |
From the docstring, in the ADD: This is an authored html fragment, not a YARD generated html page. |
The whole point of my asking, is that I did the same thing with the build numbers. I also separated the Release Notes into multiple pages, one for each major version. |
Yea, after I copied the YARD templates into the stubs repo that caused some duplications. Maybe they can be one and the same. Otherwise one have to manually set up things in order to build the docs from the stubs. I was thinking it was easier if people could just pull one repo and build the docs themselves. And yes, the release notes are a mess. Copied from the old docs with minimal tweaks. |
I successfully built the docs locally using the template supplied with the stubs. I see in the template repo that there are quite a few branches. (1) How do I know (or should I care,) what the branch is (for the template) inside the stubs repo ? In the OP, you said:
(2) I only saw a |
Ah, sorry, I recently merged it that dev branch back to master, forgot to update this ticket. For the template repo, the master is the main one to care for. The dev branches are work in progress. |
We created a tool that will try to take a Pull Request to our Ruby API stubs and merge it back to our original C++ source where we generate the docs from.
At the moment the tool is highly experimental. If anyone would like to help in testing it let us know. We can start with a few changes to a class. It might be wise to not do too many changes in a Pull Request right away - in case the merge tool require changes.
Clone the
master
branch - it includes the YARD template and YARD options to allow you to locally generate the docs for your own testing.The text was updated successfully, but these errors were encountered: