Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Kåre Mai 26 posts 164 karma points
    Nov 01, 2023 @ 11:24
    Kåre Mai
    1

    Unable to run Umbraco 12 after upgrade from Umbraco 11.4.1

    Hi,

    If i upgrade from Umbraco 11.4.1 in Nuget packet manager to Umbraco 12.2.0 then i can't run my project anymore. It fails with the following exception inside GlobalizationMode.cs -> LoadLibrary:

    System.ExecutionEngineException
      HResult=0x80131506
      Message=Exception of type 'System.ExecutionEngineException' was thrown.
    

    The method which fails:

    private static IntPtr LoadLibrary(string library, bool failOnLoadFailure)
    {
        if (!NativeLibrary.TryLoad(library, typeof(object)!.Assembly, DllImportSearchPath.ApplicationDirectory | DllImportSearchPath.System32, out var handle) && failOnLoadFailure)
        {
            Environment.FailFast("Failed to load app-local ICU: " + library);
        }
        return handle;
    }
    

    I have no clue why this happens and why it seems that no one else if having this issue! There is nothing special about my Umbraco project at all.

  • Huw Reddick 1684 posts 5917 karma points MVP c-trib
    Nov 01, 2023 @ 13:47
    Huw Reddick
    104

    Have you by any chance updated this nuget package?

    Microsoft.ICU.ICU4C.Runtime

    If you did then you should roll it back to ver 68.2.0.9

  • Kåre Mai 26 posts 164 karma points
    Nov 01, 2023 @ 17:23
    Kåre Mai
    0

    Hi Huw,

    Yes, i updated all nuget packages with available updates.

    I now downgraded the ICU package and now it works! May i ask where you've found the information about this incompatibility with the latest ICU package?

    I generally update all the packages available when also updating Umbraco. Is there any documentation anywhere that documents when you can update the other packages used by Umbraco?

  • Huw Reddick 1684 posts 5917 karma points MVP c-trib
    Nov 01, 2023 @ 17:29
    Huw Reddick
    0

    It has come up before, maybe on discord. I also had the same issue myself in v10

  • andrew shearer 501 posts 647 karma points
    15 days ago
    andrew shearer
    0

    this one had me stumped for a while, so leaving a comment for anyone else that finds themselves here :)

    make sure these two lines have the same version in your proj file:

        <!-- Opt-in to app-local ICU to ensure consistent globalization APIs across different platforms -->
    <PackageReference Include="Microsoft.ICU.ICU4C.Runtime" Version="72.1.0.3" />
    <RuntimeHostConfigurationOption Include="System.Globalization.AppLocalIcu" Value="72.1.0.3" Condition="$(RuntimeIdentifier.StartsWith('linux')) or $(RuntimeIdentifier.StartsWith('win')) or ('$(RuntimeIdentifier)' == '' and !$([MSBuild]::IsOSPlatform('osx')))" />
    

    I somehow had ended up with "72.1.0.1" on that second one and the app wouldn't boot with a:

    Exception of type 'System.ExecutionEngineException'
    
Please Sign in or register to post replies

Write your reply to:

Draft