"msbuild /v:minimal" is too noisy

Topics: Developer Forum
Feb 28, 2014 at 5:34 PM
I'm using "msbuild /v:minimal" in my build script. While Visual Studio usually prints out all warnings, sometimes file names it's processed and other stuff, in minimal mode, it only tells me the projects it's built. That's fine for a build script that should not be as wild as Linux make scripts that print every single .c file name...

SHFB however doesn't care for this setting. It produces just as much output as within Visual Studio. That's a line for every module it starts or whatever that is, and all warnings for missing XML documentation content.

The warnings are fine at times, when I'm specifically lokking to complete the documentation. But I'd like them to stay out of my build script.

Is there something I can/should do to make SHFB regard /v:minimal or is a greater change required for this?
Coordinator
Feb 28, 2014 at 7:25 PM
Missing documentation warnings are controlled using the project properties in the Missing Tags category. Turn off the ones you don't care to see. Unresolved links are usually the other most common warnings. They can be suppressed using the Additional Reference Links plug-in to provide a project containing the reference assemblies and a link type (None to suppress links if not available).

On a broader level, you can use the BuildAssembler Verbosity property to only show errors from BuildAssembler. It can be set on the MSBuild command line using "/p:BuildAssemblerVerbosity=OnlyErrors".

Likewise, the MSBuild console logger "/clp:ErrorsOnly" option will probably hide the warnings.

Eric
Feb 28, 2014 at 7:38 PM
The plug-in doesn't work. Here's the build log output:

SHFB: Error BE0028: Plug-in loading errors:
ARL0002: At least one target is required for the Additional Reference Links plug-in.

The option /p:BuildAssemblerVerbosity=OnlyErrors works as expected, warnings are gone. But the following lines are still left:
  Removing build files...
  Removing build folders...
  Building C:\Source\FieldLog\CodeReference\CodeReference.shfbproj
  Initializing
  ValidatingDocumentationSources
  GenerateSharedContent
  GenerateApiFilter
  GenerateReflectionInfo
  TransformReflectionInfo
  GenerateNamespaceSummaries
  CopyConceptualContent
  CreateConceptualTopicConfigs
  CopyAdditionalContent
  MergeTablesOfContents
  GenerateIntermediateTableOfContents
  CreateBuildAssemblerConfigs
  MergeCustomConfigs
  BuildConceptualTopics
  BuildReferenceTopics
  CombiningIntermediateTocFiles
  ExtractingHtmlInfo
  CopyStandardHelpContent
  GenerateHelpFormatTableOfContents
  GenerateHelpFileIndex
  GenerateHelpProject
  CompilingHelpFile
  GenerateHelpFormatTableOfContents
  GenerateHelpProject
  CompilingHelpFile
  GenerateHelpFormatTableOfContents
  GenerateFullTextIndex
  CopyingWebsiteFiles
  CleanIntermediates
  Completed
  The help output is located at: C:\Source\FieldLog\CodeReference\Help\
  Build details can be found in C:\Source\FieldLog\CodeReference\Help\LastBuild.log
I'd be happy with a single line that indicates that the SHFB project has been successfully processed.
Coordinator
Mar 1, 2014 at 2:10 AM
The ARL0002 error means you didn't configure the plug-in. It needs at least one project containing the assemblies to use for the reference links. See the plug-in's help topic for details. Regarding the remaining messages, I suppose I could add a build task option to make it completely silent.

Eric
Mar 1, 2014 at 9:06 AM
They can be suppressed using the Additional Reference Links plug-in to provide a project containing the reference assemblies and a link type (None to suppress links if not available).
That's what I was trying. Add the plug-in but no further configuration. Okay, didn't work.
Coordinator
Mar 1, 2014 at 7:30 PM
Edited Mar 1, 2014 at 7:31 PM
No, you have to add a project to the plug-in and set the link types to None on its plug-in configuration.

Eric