The GenerateToolsSettingsFile task unconditionally writes DotnetToolSettings.xml on every build. This causes issues with incremental builds; specifically, dotnet pack will always generate a fresh package because the GenerateNuspec target considers this file as one of its inputs.
I'm not sure what the proper fix is here. Maybe GenerateToolsSettingsFile should compare the generated document with the existing file and only write the document if it's different?