Skip to content
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

Complete Documentation Pages #622

Merged
merged 19 commits into from
Jun 11, 2024

Conversation

alandefreitas
Copy link
Collaborator

@alandefreitas alandefreitas commented Jun 6, 2024

The PR completes the documentation to reflect the stage of this project properly.

  • All configuration options are documented, and a reference table is included.
  • Demo variants that were causing bugs were fixed and restored
  • The Antora UI was adjusted to get rid of components that don't make sense for MrDocs
  • The home page content was simplified;
  • An Antora extension was implemented to include direct links to all demos in mrdocs.com
  • An Antora extension was implemented to include direct links to all releases on github.com
  • The commands page includes supported commands and examples of documented code
  • The design notes include the rationale for both Mr. Docs and automated documentation in general
  • Complete sections in the contributor guide, including a codebase overview for new contributors
  • README.adoc links to the documentation with a banner instead of attempting to replicate the content

This PR also includes several commits fixing smaller problems with CI, such as relevant information about errors not being output and wrong or insufficient error messages.

Unfortunately, GitHub updated the Windows runner while this PR was WIP, which broke CI for unrelated reasons:

  • The new runner image can't build LLVM by itself anymore
  • Our tests are now segfaulting.

This new image affects both this PR and unrelated PRs, but I've been trying to fix CI in passing so that we don't push new PRs when CI is broken. Among several commits fixing smaller problems with CI, the solution to the first problem was to re-upload LLVM Windows binaries to mrdocs.com and make the LLVM step fall back to these binaries until we can build LLVM in CI again.

However, I tried everything but couldn't fix the second problem. I can't even reproduce it locally and ran out of ideas. Any ideas are welcome here.

@alandefreitas alandefreitas changed the title Complete Documentation Complete Documentation Pages Jun 6, 2024
@alandefreitas alandefreitas force-pushed the doc-pages branch 12 times, most recently from e400faf to da48e91 Compare June 8, 2024 03:57
@@ -200,7 +132,7 @@ struct MRDOCS_VISIBLE
class is a certain type.
*/
template <InfoKind K>
struct IsInfo : Info
struct TypedInfo : Info
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer we don't change the name of this, or use Type anywhere in InfoNodes.inc. We already have TypeInfo, so this makes it pretty confusing. Prefer Kind for the names of the macro parameter.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We already have TypeInfo, so this makes it pretty confusing.

Mmm... Good thinking. I forgot about TypeInfo. That is confusing. You can also see why IsInfo is confusing: it's not a trait, and it has nothing to do with what it does. Is there another name you could suggest?

-InfoType

  • InfoCategory
  • ClassifiedInfo
  • SpecificInfo
  • CategorizedInfo
  • TypeSpecificInfo
  • TypedMetadata
  • InfoDiscriminator
  • InfoVariant
  • TypeDefinedInfo
  • ...

Prefer Kind for the names of the macro parameter

I don't know what you mean here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alandefreitas IsInfoKind? Regarding the name of the macro parameter, I'd use KIND rather than TYPE.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the Is* prefix makes it look like a trait, though. Maybe that's a convention somewhere else, but I've never seen an is* class that's not a trait.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

InfoBase? InfoCommon? InfoCommonBase? Anything that doesn't contain "type" :)

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I like InfoCommonBase for now.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@alandefreitas alandefreitas merged commit ab29a11 into cppalliance:develop Jun 11, 2024
6 of 7 checks passed
@alandefreitas alandefreitas deleted the doc-pages branch June 24, 2024 23:07
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.

None yet

2 participants