diff --git a/dotnet-interactive.sln b/dotnet-interactive.sln index dfcc24a28b..9b3199b4f2 100644 --- a/dotnet-interactive.sln +++ b/dotnet-interactive.sln @@ -72,7 +72,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.DotNet.Interactiv EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.DotNet.Interactive.PackageManagement", "src\Microsoft.DotNet.Interactive.PackageManagement\Microsoft.DotNet.Interactive.PackageManagement.csproj", "{53EF46D6-5E21-4507-B8C0-779B634262AA}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.DotNet.Interactive.Netstandard20", "src\Microsoft.DotNet.Interactive.NetStandard20\Microsoft.DotNet.Interactive.Netstandard20.csproj", "{0FAA07B9-DBE4-47B5-939F-E1A69B975AD0}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.DotNet.Interactive.VisualStudio", "src\Microsoft.DotNet.Interactive.VisualStudio\Microsoft.DotNet.Interactive.VisualStudio.csproj", "{0FAA07B9-DBE4-47B5-939F-E1A69B975AD0}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.DotNet.Interactive.VSCode", "src\Microsoft.DotNet.Interactive.VSCode\Microsoft.DotNet.Interactive.VSCode.csproj", "{382C875B-2CB2-4F93-B5E9-EC14CDDB2256}" EndProject diff --git a/eng/publish/PublishVSCodeExtension.ps1 b/eng/publish/PublishVSCodeExtension.ps1 index 4c35f97f57..107d9faa26 100644 --- a/eng/publish/PublishVSCodeExtension.ps1 +++ b/eng/publish/PublishVSCodeExtension.ps1 @@ -35,7 +35,7 @@ try { Get-ChildItem "$artifactsPath\packages\Shipping\Microsoft.DotNet*.nupkg" | ForEach-Object { $nugetPackagePath = $_.ToString() # don't publish asp or netstandard packages - if (-Not ($nugetPackagePath -match "(CSharpProject|Netstandard20)")) { + if (-Not ($nugetPackagePath -match "(CSharpProject|VisualStudio)")) { Write-Host "Publishing $nugetPackagePath" if (-Not $simulate) { dotnet nuget push $nugetPackagePath --source https://api.nuget.org/v3/index.json --api-key $nugetToken --no-symbols diff --git a/src/Microsoft.DotNet.Interactive.NetStandard20/Directory.Build.props b/src/Microsoft.DotNet.Interactive.VisualStudio/Directory.Build.props similarity index 100% rename from src/Microsoft.DotNet.Interactive.NetStandard20/Directory.Build.props rename to src/Microsoft.DotNet.Interactive.VisualStudio/Directory.Build.props diff --git a/src/Microsoft.DotNet.Interactive.NetStandard20/Microsoft.DotNet.Interactive.Netstandard20.v3.ncrunchproject b/src/Microsoft.DotNet.Interactive.VisualStudio/Microsoft.DotNet.Interactive.Netstandard20.v3.ncrunchproject similarity index 100% rename from src/Microsoft.DotNet.Interactive.NetStandard20/Microsoft.DotNet.Interactive.Netstandard20.v3.ncrunchproject rename to src/Microsoft.DotNet.Interactive.VisualStudio/Microsoft.DotNet.Interactive.Netstandard20.v3.ncrunchproject diff --git a/src/Microsoft.DotNet.Interactive.NetStandard20/Microsoft.DotNet.Interactive.Netstandard20.csproj b/src/Microsoft.DotNet.Interactive.VisualStudio/Microsoft.DotNet.Interactive.VisualStudio.csproj similarity index 76% rename from src/Microsoft.DotNet.Interactive.NetStandard20/Microsoft.DotNet.Interactive.Netstandard20.csproj rename to src/Microsoft.DotNet.Interactive.VisualStudio/Microsoft.DotNet.Interactive.VisualStudio.csproj index 53f07d2fc2..d83d1763ad 100644 --- a/src/Microsoft.DotNet.Interactive.NetStandard20/Microsoft.DotNet.Interactive.Netstandard20.csproj +++ b/src/Microsoft.DotNet.Interactive.VisualStudio/Microsoft.DotNet.Interactive.VisualStudio.csproj @@ -2,19 +2,29 @@ netstandard2.0 - Microsoft.DotNet.Interactive.Netstandard20 + Microsoft.DotNet.Interactive.VisualStudio Core types for building applications providing interactive programming for .NET. for the desktop interactive desktop - + + + + + + + + + + + diff --git a/src/dotnet-interactive/Connection/StdIoKernelConnector.cs b/src/dotnet-interactive/Connection/StdIoKernelConnector.cs index d2a268cbc4..d944facc06 100644 --- a/src/dotnet-interactive/Connection/StdIoKernelConnector.cs +++ b/src/dotnet-interactive/Connection/StdIoKernelConnector.cs @@ -74,7 +74,9 @@ public async Task CreateKernelAsync(string kernelName) RedirectStandardInput = true, RedirectStandardOutput = true, RedirectStandardError = true, - StandardOutputEncoding = Encoding.UTF8 + StandardOutputEncoding = Encoding.UTF8, + UseShellExecute = false, + CreateNoWindow = true, }, EnableRaisingEvents = true }; @@ -87,7 +89,7 @@ public async Task CreateKernelAsync(string kernelName) stdOutObservable.OnNext(args.Data); } }; - + var stdErr = new StringBuilder(); _process.ErrorDataReceived += (_, args) => { @@ -176,8 +178,13 @@ private void KillRemoteKernelProcess() { if (_process is { HasExited: false }) { - // todo: ensure killing process tree - _process?.Kill(true); +#if NETSTANDARD2_0 + // TODO: Kill entire process tree. + _process?.Kill(); +#else + _process?.Kill(entireProcessTree: true); +#endif + _process?.Dispose(); _process = null; }