runtime: mac:dotnet new FailFast (ja_JP.UTF-8)

I have an error below, when I run “dotnet new --all” command after installed a pkg of “dotnet-sdk-2.1.300-osx-x64.pkg” on macOS High Sierra v10.13.5.

FailFast: Infinite recursion during resource lookup within System.Private.CoreLib. This may be a bug in System.Private.CoreLib, or potentially in certain extensibility points such as assembly resolve events or CultureInfo names. Resource name: Argument_InvalidResourceCultureName

at System.Environment.FailFast(System.String) at System.SR.InternalGetResourceString(System.String) at System.SR.GetResourceString(System.String, System.String) at System.Globalization.CultureInfo.VerifyCultureName(System.String, Boolean) at System.Resources.ResourceManager.GetResourceFileName(System.Globalization.CultureInfo) at System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(System.Globalization.CultureInfo, System.Collections.Generic.Dictionary2<System.String,System.Resources.ResourceSet>, Boolean, Boolean, System.Threading.StackCrawlMark ByRef) at System.Resources.ResourceManager.InternalGetResourceSet(System.Globalization.CultureInfo, Boolean, Boolean, System.Threading.StackCrawlMark ByRef) at System.Resources.ResourceManager.InternalGetResourceSet(System.Globalization.CultureInfo, Boolean, Boolean) at System.Resources.ResourceManager.GetString(System.String, System.Globalization.CultureInfo) at System.SR.InternalGetResourceString(System.String) at System.SR.GetResourceString(System.String, System.String) at System.Globalization.CultureInfo.VerifyCultureName(System.String, Boolean) at System.Resources.ResourceManager.GetResourceFileName(System.Globalization.CultureInfo) at System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(System.Globalization.CultureInfo, System.Collections.Generic.Dictionary2<System.String,System.Resources.ResourceSet>, Boolean, Boolean, System.Threading.StackCrawlMark ByRef) at System.Resources.ResourceManager.InternalGetResourceSet(System.Globalization.CultureInfo, Boolean, Boolean, System.Threading.StackCrawlMark ByRef) at System.Resources.ResourceManager.InternalGetResourceSet(System.Globalization.CultureInfo, Boolean, Boolean) at System.Resources.ResourceManager.GetString(System.String, System.Globalization.CultureInfo) at System.SR.InternalGetResourceString(System.String) at System.SR.GetResourceString(System.String, System.String) at Interop.GetExceptionForIoErrno(ErrorInfo, System.String, Boolean) at Interop.ThrowExceptionForIoErrno(ErrorInfo, System.String, Boolean, System.Func`2<ErrorInfo,ErrorInfo>) at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(System.String, OpenFlags, Int32) at System.IO.FileStream…ctor(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare, Int32, System.IO.FileOptions) at Microsoft.Extensions.EnvironmentAbstractions.FileWrapper.OpenFile(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare, Int32, System.IO.FileOptions) at Microsoft.DotNet.Configurer.NuGetCacheSentinel.SetInProgressSentinel() at Microsoft.DotNet.Configurer.NuGetCacheSentinel…ctor(Microsoft.DotNet.Configurer.CliFolderPathCalculator) at Microsoft.DotNet.Cli.Program.ProcessArgs(System.String[], Microsoft.DotNet.Cli.Telemetry.ITelemetry) at Microsoft.DotNet.Cli.Program.Main(System.String[]) Abort trap: 6

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 26 (16 by maintainers)

Most upvoted comments

Hi jkotas,

Thank you for your super support. My Lang is jp.UTF-8 and LC_ALL is blank. below is result. $ echo $LANG LANG=ja_JP.UTF-8

$ echo $LC_ALL (Blank)

I set export LANG=en_US.UTF-8 and export LANG=en_US.UTF-8, and then run “dotnet new --all” command.

It’s working!! and actually I was able to run “dotnet new -i Amazon.Lambda.Templates:😗” without any errors.

Thanks again! Awesome!

$ dotnet new --all

Welcome to .NET Core!

Learn more about .NET Core: https://aka.ms/dotnet-docs Use ‘dotnet --help’ to see available commands or visit: https://aka.ms/dotnet-cli-docs

Telemetry

The .NET Core tools collect usage data in order to help us improve your experience. The data is anonymous and doesn’t include command-line arguments. The data is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to ‘1’ or ‘true’ using your favorite shell.

Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry

ASP.NET Core

Successfully installed the ASP.NET Core HTTPS Development Certificate. To trust the certificate run ‘dotnet dev-certs https --trust’ (Windows and macOS only). For establishing trust on other platforms refer to the platform specific documentation. For more information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054. Invalid input switch: –all Run dotnet new --help for usage information. See https://aka.ms/dotnet-install-templates to learn how to install additional template packs. $

Could you please tell us what your LANG and LC_ALL environment variables are set to?

echo $LANG
echo $LC_ALL

Could you please try setting them to en_US.UTF-8 and see whether it fixes the problem?

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

@tanagoa I am closing this and let me know if you able to repro the issue again in your side.

Closing the issue per @tanagoa comment.

@tanagoa could you please respond to my last comments? We need some help with what configuration you have may caused such issue.

@tanagoa would be nice if you try to install the latest net core 2.1.301 too.

I have tried this with botnet 2.1.301 and I cannot repro it.

➜  Test dotnet new --all    
無効な入力スイッチ:
  --all
使用方法の情報を確認するには、dotnet new --help を実行します。
その他のテンプレート パックのインストール方法については、https://aka.ms/dotnet-install-templates をご覧ください。

@tanagoa looks your machine has more specific configuration.

could you please try to revert setting the LANG environment variable back and repro the issue, then try to create a small console app and then print the values of:

CultureInfo.CurrentCulture and CultureInfo.CurrentUICulture?

The check in VerifyCultureName is very simple, it would be interesting to know what the culture is htat it is failing on.

Good to hear that setting these environment variables worked around the issue. I am keeping the issue open. There is a bug somewhere - it should work out of the box without the workaround.