Skip to content

Azure DevOps: .NET build fails on macOS 15.3 but succeeds on macOS 15.2 – what's changed? #113390

Closed
@tmontagnoni

Description

@tmontagnoni

We have Azure DevOps pipelines compiling a .NET 8 application for iOS and Android. Since the last macOS update (15.3), our pipelines are failing inconsistently—sometimes during the restore step and sometimes during the build step. Azure agents are on version 3.238.0

Here’s an example of the error we get when installing the iOS workload:

/xxxx/sds-azure-agent/agent/_work/_tool/dotnet/dotnet workload install ios
dotnet(55273,0x1edec4840) malloc: Unrecognized value for MallocDebugReport (1) - using 'stderr'
dotnet(55273) MallocStackLogging: could not tag MSL-related memory as no_footprint, so those pages will be included in process footprint - (null)
dotnet(55273) MallocStackLogging: stack logs being written to /private/tmp/stack-logs.55273.105074000.dotnet.8X77wI.index
dotnet(55273) MallocStackLogging: recording malloc and VM allocation stacks to disk using standard recorder
dotnet(55273,0x16b4db000) malloc: *** error for object 0x600003c0a0e0: pointer being freed was not allocated
dotnet(55273,0x16b4db000) malloc: *** set a breakpoint in malloc_error_break to debug
[1] 55273 abort /xxx/sds-azure-agent/agent/_work/_tool/dotnet/dotnet

We use the following task to install dotnet-sdk:

    - task: UseDotNet@2
      displayName: 'Configuration - Dotnet'
      inputs:
        version: '8.0.405'

This task works on both macOS versions, but we noticed that the workload version differs, which might be causing the issue.

On Macos 15.2 we have:

    .NET SDK:
     Version:           8.0.405
     Commit:            fb1830d421
     Workload version:  8.0.400-manifests.56b5f3fe
     MSBuild version:   17.11.9+a69bbaaf5

On Macos 15.3 we have:

    .NET SDK:
     Version:           8.0.405
     Commit:            fb1830d421
     Workload version:  8.0.400-manifests.c7afa696
     MSBuild version:   17.11.9+a69bbaaf5

An this is what we do during restore task for iOS apps:

    - task: CmdLine@2
      displayName: Project - Install workload
      inputs:
         script: |
            ulimit -n 65536
            dotnet workload uninstall ios
            dotnet workload install ios --from-rollback-file $(Build.SourcesDirectory)/workload-manifest.json 

For Android apps:

    - task: CmdLine@2
      displayName: Project - Install workload
      inputs:
         script: |
            ulimit -n 65536
            dotnet workload uninstall android
            dotnet workload install android --from-rollback-file $(Build.SourcesDirectory)/workload-manifest.json 

And our workload-manifest:

    {
      "microsoft.net.sdk.android": "34.0.145/8.0.100",
      "microsoft.net.sdk.ios": "18.0.8319/8.0.100"
    }

Does anyone have an idea what might be causing this issue? Could it be related to the workload version differences or a change in macOS 15.3?

Thank you! 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-Hostneeds-author-actionAn issue or pull request that requires more info or actions from the author.os-mac-os-xmacOS aka OSX

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions