Skip to content

Add xml documentation inheritdoc conversion [#245]#337

Merged
fgreinacher merged 31 commits intoTestableIO:masterfrom
robertlarkins:master
Aug 14, 2018
Merged

Add xml documentation inheritdoc conversion [#245]#337
fgreinacher merged 31 commits intoTestableIO:masterfrom
robertlarkins:master

Conversation

@robertlarkins
Copy link
Copy Markdown
Contributor

This adds the inheritdoc tool to convert the inheritdoc tag in the xml documentation to the associated comments in System.IO. These comments are updated using those found in mscorlib.xml.

Note: The changes to appveyor.yml will need to be checked confirm they are operating correctly on appveyor.

Setting the XML documentation file through Project Properties/Build
only generated the XML documentation file for NET40 and not
netstandard1.4 nor netstandard2.0. Adding the property
GenerateDocumentationFile and setting it to true generates the
documentation for all build types.
This is used to update the xml documentation by replacing the
inheritdoc tags with the associated documentation.
This should convert the inheritdoc tags to the documentation in the
mscorlib.xml file.
@robertlarkins
Copy link
Copy Markdown
Contributor Author

Will have to look at what caused the AppVeyor build error tomorrow.

Fix the environment variable syntax for ps (powershell) rather than cmd.
Calling InheritDoc needed to occur before the nuget package creation,
so was moved to the before_build step. PowerShell variables are not
resolved if wrapped by single quotation marks, so these have been
removed.
@robertlarkins
Copy link
Copy Markdown
Contributor Author

@fgreinacher This should hopefully be working now, but I don't have a way (that I know of) of checking that the xml documentation has been converted.

@fgreinacher
Copy link
Copy Markdown
Contributor

Thanks for working on this @robertlarkins. For verification you could download the nupkgs from https://ci.appveyor.com/project/tathamoddie/system-io-abstractions/build/2.1.0.212-tcfasuhb/artifacts, extract them and then look at the “final” contents.

The InheritDoc call is not working, hopefully this will fix it.
@robertlarkins
Copy link
Copy Markdown
Contributor Author

@fgreinacher Just done another fix and checked the artifact, the inheritdoc tags have now been replaced, so should be good to go.

</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PackageReference Include="InheritDoc">
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's weird to have this here as a package reference. Its not actually "used" in the project and forces a new dependency on our consumers. Furthermore the version here needs to be in sync with the version mentioned in the appveyor script.

What about doing dotnet add package InheritDoc --version 1.2.0.1 from within the appveyor script? This would make the installation and usage much more local.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

That's a good point, will look into it.

@robertlarkins
Copy link
Copy Markdown
Contributor Author

InheritDoc isn't converting all the inheritdoc tags, so need to investigate why that is...

This is in attempt to fix the missing inheritdoc conversions.
@ericnewton76
Copy link
Copy Markdown
Contributor

This one looks mergeable without problems.

@robertlarkins
Copy link
Copy Markdown
Contributor Author

@ericnewton76 don't merge yet, there's an issue with converting the inheritdoc tags to the actual comments that is being looked into. See here: firesharkstudios/InheritDoc#3

@robertlarkins
Copy link
Copy Markdown
Contributor Author

Wish I had found this half an hour ago: http://www.yamllint.com/

Trying a non-powershell approach.
If this doesn't work, then back to the forums.
This is based on feedback from the appveyor forum.
@robertlarkins
Copy link
Copy Markdown
Contributor Author

@fgreinacher @ericnewton76 InheritDoc appears to be fixed and the yaml build script is finally working (after getting help on the appveyor forums). So take a look and see if it's good to go.

@fgreinacher
Copy link
Copy Markdown
Contributor

Great - so here we go! Thanks for making this work!

@fgreinacher fgreinacher merged commit e8d8e72 into TestableIO:master Aug 14, 2018
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.

3 participants