-
Notifications
You must be signed in to change notification settings - Fork 831
Description
As in the title, this error is always thrown. Looks like I am not the first to be alarmed by it. It seems harmless, but can we remove / suppress this? I have no idea what causes it.
ERROR: The system was unable to find the specified registry key or value.
Repro steps
Run build.cmd
Expected behavior
No errors, provided prerequisites are satisfied.
Actual behavior
The error as mentioned, here's the log output at the end:
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:01:34.66
---------------- Done with build, starting pack/update/prepare ---------------
---------------- start update.cmd ---------------
ERROR: The system was unable to find the specified registry key or value.
1> Compiling assembly FSharp.Core, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
2> Compiling assembly FSharp.Core, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
1> Compiling assembly FSharp.Compiler.Private, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
2> Compiling assembly D:\Projects\OpenSource\VisualFSharp\release\net40\bin\FSharp.Build.dll (CLR v4.0.30319) ...
3> Compiling assembly FSharp.Core, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
3> Compiling assembly FSharp.Compiler.Server.Shared, Version=15.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
2> Compiling assembly FSharp.Compiler.Private, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
1> Compiling assembly D:\Projects\OpenSource\VisualFSharp\release\net40\bin\fsc.exe (CLR v4.0.30319) ...
2> Compiling assembly D:\Projects\OpenSource\VisualFSharp\release\net40\bin\fsi.exe (CLR v4.0.30319) ...
1> Compiling assembly FSharp.Core, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
1> Compiling assembly D:\Projects\OpenSource\VisualFSharp\release\net40\bin\FSharp.Build.dll (CLR v4.0.30319) ...
2> Compiling assembly FSharp.Core, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
2> Compiling assembly FSharp.Compiler.Private, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
3> Compiling assembly FSharp.Compiler.Server.Shared, Version=15.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a (CLR v4.0.30319) ...
1> Compiling assembly D:\Projects\OpenSource\VisualFSharp\release\net40\bin\fsiAnyCpu.exe (CLR v4.0.30319) ...
set NUNITPATH=packages\NUnit.Console.3.0.0\tools\
xcopy "packages\NUnit.Console.3.0.0\tools\*.*" "D:\Projects\OpenSource\VisualFSharp\tests\fsharpqa\testenv\bin\nunit\*.*" /S /Q /Y
18 File(s) copied
xcopy "D:\Projects\OpenSource\VisualFSharp\tests\fsharpqa\testenv\src\nunit*.*" "D:\Projects\OpenSource\VisualFSharp\tests\fsharpqa\testenv\bin\nunit\*.*" /S /Q /Y
2 File(s) copied
SDK environment vars from Registry
==================================
ERROR: The system was unable to find the specified registry key or value.
.
SDK environment vars
=======================
WINSDKNETFXTOOLS: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\
SNEXE32: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\sn.exe
SNEXE64: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\sn.exe
ILDASM: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ildasm.exe
ECHO is off.
Known workarounds
Just ignore the error. It seems harmless. Unless, of course, it is the cause of several issues we are seeing (like missing syntax highlighting, intellisense or strange compile errors when using the build).
Related information
Happens on current master of VisualFSharp, but older revisions had this too. See, for instance, the discussion here #1664.
If it is a genuine error, we should provide steps or instructions to resolve it. If it is a harmless error, it should be informational. If it is caused by a registry entry not there, but the information is gotten elsewhere anyway, we should write that to the log as such.
(opinionated) The problem with having an error that everyone ignores is that if come a genuine error, we will miss it. The build should be error-free, or errors should tell us something.
I'm willing to fix this, if I can, just need to know whether it should be fixed in the first place, or heeded.