fsprojects / ProjectScaffold

A prototypical .NET solution (file system layout and tooling), recommended for F# projects
http://fsprojects.github.io/ProjectScaffold
The Unlicense
515 stars 154 forks source link

System.NotSupportedException in <StartupCode$FakeLib>.$Fake.Git.CommandHelper #222

Closed ForNeVeR closed 8 years ago

ForNeVeR commented 8 years ago

I've downloaded the current master branch code, extracted it into the empty directory, and run ./build.cmd from the PowerShell session. After I enter the project details (project name, author etc.) it builds the project and throws me an exception:

---------------------------------------------------------------------
Build Time Report
---------------------------------------------------------------------
Target         Duration
------         --------
Clean          00:00:00.0025432
AssemblyInfo   00:00:00.0169914
Build          00:00:01.3535761
CopyBinaries   00:00:00.0100146
RunTests       00:00:01.4181231
CleanDocs      00:00:00.0012382
Total:         00:00:02.8753364
Status:        Failure
---------------------------------------------------------------------
1) System.TypeInitializationException: Инициализатор типа "<StartupCode$FakeLib>.$Fake.Git.CommandHelper" выдал исключение. ---> System.NotSupportedException: Данный формат пути не поддерживается.
   в System.Security.Util.StringExpressionSet.CanonicalizePath(String path, Boolean needFullPath)
   в System.Security.Util.StringExpressionSet.CreateListFromExpressions(String[] str, Boolean needFullPath)
   в System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
   в System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
   в System.IO.DirectoryInfo.Init(String path, Boolean checkHost)
   в System.IO.DirectoryInfo..ctor(String path)
   в Fake.ProcessHelper.files@318-1.Invoke(String path) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 319
   в Microsoft.FSharp.Collections.IEnumerator.map@111.DoMoveNext(b& )
   в Microsoft.FSharp.Collections.IEnumerator.MapEnumerator`1.System-Collections-IEnumerator-MoveNext()
   в Microsoft.FSharp.Collections.IEnumerator.next@224[T](FSharpFunc`2 f, IEnumerator`1 e, FSharpRef`1 started, Unit unitVar0)
   в Microsoft.FSharp.Collections.IEnumerator.filter@219.System-Collections-IEnumerator-MoveNext()
   в Microsoft.FSharp.Collections.SeqModule.oneStepTo@1403[T](IEnumerable`1 source, List`1 prefix, FSharpRef`1 enumeratorR, Int32 i)
   в Microsoft.FSharp.Collections.SeqModule.f@4728-2[T](IEnumerable`1 source, List`1 prefix, FSharpRef`1 enumeratorR, Int32 i, Unit unitVar0)
   в Microsoft.FSharp.Collections.SeqModule.result@1419.Invoke(Int32 i)
   в Microsoft.FSharp.Collections.IEnumerator.unfold@236.DoMoveNext(b& )
   в Microsoft.FSharp.Collections.IEnumerator.MapEnumerator`1.System-Collections-IEnumerator-MoveNext()
   в Microsoft.FSharp.Collections.SeqModule.IsEmpty[T](IEnumerable`1 source)
   в Fake.ProcessHelper.tryFindFile(IEnumerable`1 dirs, String file) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 333
   в Fake.ProcessHelper.tryFindFileOnPath(String file) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 349
   в Fake.ProcessHelper.tryFindPath(String settingsName, String fallbackValue, String tool) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 369
   в Fake.ProcessHelper.findPath(String settingsName, String fallbackValue, String tool) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 376
   в <StartupCode$FakeLib>.$Fake.Git.CommandHelper..cctor() в C:\code\fake\src\app\FakeLib\Git\CommandHelper.fs:строка 24
   --- Конец трассировки внутреннего стека исключений ---
   в Fake.Git.CommandHelper.get_gitPath()
   в FSI_0001.Build.fakeStartInfo(String script, String workingDirectory, String args, String fsiargs, IEnumerable`1 environmentVars, ProcessStartInfo info) в D:\Projects\ProjectScaffold-master\build.fsx:строка 197
   в FSI_0001.Build.exitCode@204.Invoke(ProcessStartInfo info) в D:\Projects\ProjectScaffold-master\build.fsx:строка 204
   в Fake.ProcessHelper.ExecProcessWithLambdas(FSharpFunc`2 configProcessStartInfoF, TimeSpan timeOut, Boolean silent, FSharpFunc`2 errorF, FSharpFunc`2 messageF) в C:\code\fake\src\app\FakeLib\ProcessHelper.fs:строка 59
   в FSI_0001.Build.executeFAKEWithOutput(String workingDirectory, String script, String fsiargs, IEnumerable`1 envArgs) в D:\Projects\ProjectScaffold-master\build.fsx:строка 202
   в FSI_0001.Build.buildDocumentationTarget(String fsiargs, String target) в D:\Projects\ProjectScaffold-master\build.fsx:строка 212
   в FSI_0001.Build.generateHelp'(Boolean fail, Boolean debug) в D:\Projects\ProjectScaffold-master\build.fsx:строка 230
   в FSI_0001.Build.clo@235-20.Invoke(Unit _arg1) в D:\Projects\ProjectScaffold-master\build.fsx:строка 244
   в Fake.TargetHelper.runSingleTarget(TargetTemplate`1 target) в C:\code\fake\src\app\FakeLib\TargetHelper.fs:строка 483

(Sorry for the Russian stack trace, I still can't get how to switch the default exception language to English in .NET; in English this means something like "This path format is not supported".)

I am using Windows 10, Visual Studio 2015 Update 1 and 64-bit git 2.6.3 (which is available from my PATH environment variable if that matters).

ForNeVeR commented 8 years ago

Currently I cannot reproduce that. Let's say that my environment at that moment was broken and close this.