Status Update
Comments
mc...@ebay.com <mc...@ebay.com> #2
I forgot the repro steps. Sigh.
To repro with the project, simply run: ./gradlew prGroupCheck
gm...@google.com <gm...@google.com>
je...@google.com <je...@google.com>
yo...@gmail.com <yo...@gmail.com> #3
Hit this with AGP 8.5.2
, Gradle 8.10
Hit this when trying to run GMD tests with 12 max workers.
Stack trace.
2024-08-26T15:18:24.3229399Z Caused by: java.lang.IllegalArgumentException: Unable to start the UTP test results listener gRPC server.
2024-08-26T15:18:24.3230572Z at com.android.build.gradle.internal.testing.utp.UtpTestResultListenerServerRunner.<init>(UtpTestResultListenerServerRunner.kt:70)
2024-08-26T15:18:24.3231904Z at com.android.build.gradle.internal.testing.utp.UtpTestResultListenerServerRunner.<init>(UtpTestResultListenerServerRunner.kt:35)
2024-08-26T15:18:24.3233131Z at com.android.build.gradle.internal.testing.utp.UtpTestUtilsKt$runUtpTestSuiteAndWait$1.invoke(UtpTestUtils.kt:120)
2024-08-26T15:18:24.3234256Z at com.android.build.gradle.internal.testing.utp.UtpTestUtilsKt$runUtpTestSuiteAndWait$1.invoke(UtpTestUtils.kt:119)
2024-08-26T15:18:24.3235380Z at com.android.build.gradle.internal.testing.utp.UtpTestUtilsKt.runUtpTestSuiteAndWait(UtpTestUtils.kt:134)
2024-08-26T15:18:24.3236538Z at com.android.build.gradle.internal.testing.utp.UtpTestUtilsKt.runUtpTestSuiteAndWait$default(UtpTestUtils.kt:110)
2024-08-26T15:18:24.3237832Z at com.android.build.gradle.internal.testing.utp.ManagedDeviceTestRunner$1.invoke(ManagedDeviceTestRunner.kt:61)
2024-08-26T15:18:24.3238929Z at com.android.build.gradle.internal.testing.utp.ManagedDeviceTestRunner$1.invoke(ManagedDeviceTestRunner.kt:60)
2024-08-26T15:18:24.3240284Z at com.android.build.gradle.internal.testing.utp.ManagedDeviceTestRunner.runUtpWithRetryForEmulatorTimeoutException(ManagedDeviceTestRunner.kt:233)
2024-08-26T15:18:24.3241687Z at com.android.build.gradle.internal.testing.utp.ManagedDeviceTestRunner.runTests(ManagedDeviceTestRunner.kt:177)
2024-08-26T15:18:24.3243202Z at com.android.build.gradle.internal.tasks.ManagedDeviceInstrumentationTestTask.doTaskAction(ManagedDeviceInstrumentationTestTask.kt:293)
2024-08-26T15:18:24.3244497Z at com.android.build.gradle.internal.tasks.NonIncrementalTask$taskAction$$inlined$recordTaskAction$1.invoke(BaseTask.kt:66)
2024-08-26T15:18:24.3245446Z at com.android.build.gradle.internal.tasks.Blocks.recordSpan(Blocks.java:51)
2024-08-26T15:18:24.3246345Z at com.android.build.gradle.internal.tasks.NonIncrementalTask.taskAction(NonIncrementalTask.kt:97)
2024-08-26T15:18:24.3247366Z at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
2024-08-26T15:18:24.3248230Z at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:125)
2024-08-26T15:18:24.3249109Z at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:58)
2024-08-26T15:18:24.3250165Z at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:51)
2024-08-26T15:18:24.3251193Z at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:29)
2024-08-26T15:18:24.3252131Z at org.gradle.api.internal.tasks.execution.TaskExecution$3.run(TaskExecution.java:244)
2024-08-26T15:18:24.3253087Z at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
2024-08-26T15:18:24.3254164Z at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
2024-08-26T15:18:24.3255209Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
2024-08-26T15:18:24.3256272Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3257476Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
2024-08-26T15:18:24.3258571Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3259620Z at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47)
2024-08-26T15:18:24.3260611Z at org.gradle.api.internal.tasks.execution.TaskExecution.executeAction(TaskExecution.java:229)
2024-08-26T15:18:24.3261570Z at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:212)
2024-08-26T15:18:24.3262638Z at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:195)
2024-08-26T15:18:24.3263660Z at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:162)
2024-08-26T15:18:24.3264541Z at org.gradle.internal.execution.steps.ExecuteStep.executeInternal(ExecuteStep.java:105)
2024-08-26T15:18:24.3265402Z at org.gradle.internal.execution.steps.ExecuteStep.access$000(ExecuteStep.java:44)
2024-08-26T15:18:24.3266190Z at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:59)
2024-08-26T15:18:24.3266947Z at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:56)
2024-08-26T15:18:24.3267999Z at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
2024-08-26T15:18:24.3269342Z at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
2024-08-26T15:18:24.3270681Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
2024-08-26T15:18:24.3271746Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3272809Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
2024-08-26T15:18:24.3273887Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3274935Z at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
2024-08-26T15:18:24.3275849Z at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:56)
2024-08-26T15:18:24.3276629Z at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:44)
2024-08-26T15:18:24.3277499Z at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:42)
2024-08-26T15:18:24.3278458Z at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:75)
2024-08-26T15:18:24.3279318Z at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:55)
2024-08-26T15:18:24.3280287Z at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:50)
2024-08-26T15:18:24.3281388Z at org.gradle.internal.execution.steps.PreCreateOutputParentsStep.execute(PreCreateOutputParentsStep.java:28)
2024-08-26T15:18:24.3282694Z at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:67)
2024-08-26T15:18:24.3283783Z at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:37)
2024-08-26T15:18:24.3284907Z at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:61)
2024-08-26T15:18:24.3286065Z at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:26)
2024-08-26T15:18:24.3287274Z at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:69)
2024-08-26T15:18:24.3288519Z at org.gradle.internal.execution.steps.CaptureOutputsAfterExecutionStep.execute(CaptureOutputsAfterExecutionStep.java:46)
2024-08-26T15:18:24.3289843Z at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:40)
2024-08-26T15:18:24.3290885Z at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:29)
2024-08-26T15:18:24.3291898Z at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:189)
2024-08-26T15:18:24.3292860Z at org.gradle.internal.execution.steps.BuildCacheStep.lambda$execute$1(BuildCacheStep.java:75)
2024-08-26T15:18:24.3293596Z at org.gradle.internal.Either$Right.fold(Either.java:175)
2024-08-26T15:18:24.3294271Z at org.gradle.internal.execution.caching.CachingState.fold(CachingState.java:62)
2024-08-26T15:18:24.3295088Z at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:73)
2024-08-26T15:18:24.3295936Z at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:48)
2024-08-26T15:18:24.3296886Z at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:46)
2024-08-26T15:18:24.3297934Z at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:35)
2024-08-26T15:18:24.3298935Z at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:75)
2024-08-26T15:18:24.3299905Z at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$2(SkipUpToDateStep.java:53)
2024-08-26T15:18:24.3300838Z at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:53)
2024-08-26T15:18:24.3301732Z at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:35)
2024-08-26T15:18:24.3303024Z at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
2024-08-26T15:18:24.3304414Z at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
2024-08-26T15:18:24.3305814Z at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:49)
2024-08-26T15:18:24.3307229Z at org.gradle.internal.execution.steps.ResolveIncrementalCachingStateStep.executeDelegate(ResolveIncrementalCachingStateStep.java:27)
2024-08-26T15:18:24.3308541Z at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:71)
2024-08-26T15:18:24.3309765Z at org.gradle.internal.execution.steps.AbstractResolveCachingStateStep.execute(AbstractResolveCachingStateStep.java:39)
2024-08-26T15:18:24.3310854Z at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:65)
2024-08-26T15:18:24.3311775Z at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:36)
2024-08-26T15:18:24.3312651Z at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:107)
2024-08-26T15:18:24.3313467Z at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:56)
2024-08-26T15:18:24.3314586Z at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:64)
2024-08-26T15:18:24.3316004Z at org.gradle.internal.execution.steps.AbstractCaptureStateBeforeExecutionStep.execute(AbstractCaptureStateBeforeExecutionStep.java:43)
2024-08-26T15:18:24.3317381Z at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.executeWithNonEmptySources(AbstractSkipEmptyWorkStep.java:125)
2024-08-26T15:18:24.3318597Z at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:56)
2024-08-26T15:18:24.3319703Z at org.gradle.internal.execution.steps.AbstractSkipEmptyWorkStep.execute(AbstractSkipEmptyWorkStep.java:36)
2024-08-26T15:18:24.3320932Z at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
2024-08-26T15:18:24.3322504Z at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:36)
2024-08-26T15:18:24.3323707Z at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:23)
2024-08-26T15:18:24.3324837Z at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:75)
2024-08-26T15:18:24.3325859Z at org.gradle.internal.execution.steps.HandleStaleOutputsStep.execute(HandleStaleOutputsStep.java:41)
2024-08-26T15:18:24.3326962Z at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.lambda$execute$0(AssignMutableWorkspaceStep.java:35)
2024-08-26T15:18:24.3328015Z at org.gradle.api.internal.tasks.execution.TaskExecution$4.withWorkspace(TaskExecution.java:289)
2024-08-26T15:18:24.3329037Z at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:31)
2024-08-26T15:18:24.3330157Z at org.gradle.internal.execution.steps.AssignMutableWorkspaceStep.execute(AssignMutableWorkspaceStep.java:22)
2024-08-26T15:18:24.3331187Z at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:40)
2024-08-26T15:18:24.3332111Z at org.gradle.internal.execution.steps.ChoosePipelineStep.execute(ChoosePipelineStep.java:23)
2024-08-26T15:18:24.3333291Z at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.lambda$execute$2(ExecuteWorkBuildOperationFiringStep.java:67)
2024-08-26T15:18:24.3334653Z at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:67)
2024-08-26T15:18:24.3336132Z at org.gradle.internal.execution.steps.ExecuteWorkBuildOperationFiringStep.execute(ExecuteWorkBuildOperationFiringStep.java:39)
2024-08-26T15:18:24.3337249Z at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:46)
2024-08-26T15:18:24.3338155Z at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:34)
2024-08-26T15:18:24.3339024Z at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:48)
2024-08-26T15:18:24.3339828Z at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:35)
2024-08-26T15:18:24.3340737Z at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:61)
2024-08-26T15:18:24.3341869Z at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:127)
2024-08-26T15:18:24.3343075Z at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:116)
2024-08-26T15:18:24.3344277Z at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
2024-08-26T15:18:24.3345552Z at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
2024-08-26T15:18:24.3346811Z at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
2024-08-26T15:18:24.3347965Z at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:74)
2024-08-26T15:18:24.3349076Z at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
2024-08-26T15:18:24.3350223Z at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
2024-08-26T15:18:24.3351298Z at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
2024-08-26T15:18:24.3352347Z at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
2024-08-26T15:18:24.3353541Z at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209)
2024-08-26T15:18:24.3355004Z at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
2024-08-26T15:18:24.3356198Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
2024-08-26T15:18:24.3357250Z at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3358312Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166)
2024-08-26T15:18:24.3359388Z at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
2024-08-26T15:18:24.3360460Z at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
2024-08-26T15:18:24.3361523Z at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
2024-08-26T15:18:24.3362667Z at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:42)
2024-08-26T15:18:24.3363764Z at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:331)
2024-08-26T15:18:24.3365028Z at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:318)
2024-08-26T15:18:24.3366369Z at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.lambda$execute$0(DefaultTaskExecutionGraph.java:314)
2024-08-26T15:18:24.3367567Z at org.gradle.internal.operations.CurrentBuildOperationRef.with(CurrentBuildOperationRef.java:85)
2024-08-26T15:18:24.3368892Z at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:314)
2024-08-26T15:18:24.3370281Z at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:303)
2024-08-26T15:18:24.3371455Z at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:459)
2024-08-26T15:18:24.3372413Z at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:376)
2024-08-26T15:18:24.3373382Z at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
2024-08-26T15:18:24.3374371Z at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48)
yo...@gmail.com <yo...@gmail.com> #4
For our setup this seems to happen most of the time with more than 10 concurrent emulators via GMD, running on more than 10 subprojects with tests.
If we limit to 10 (--max-workers 10
) it seems to avoid this.
yo...@gmail.com <yo...@gmail.com> #5
Fixing the root cause would be best, but even retrying rather than failing would be useful.
ar...@google.com <ar...@google.com>
hu...@google.com <hu...@google.com>
zo...@gmail.com <zo...@gmail.com> #6
I have been running into this issue locally for quite some time as well!
It's always running into this error when doing android instrumentation tests using GMDs when the project has many modules being tested in parallel.
The idea that this might be easier to reproduce with higher concurrent workers (or directly caused by) is something that makes sense based on the data I have available. I run my project on two different machines, an older MacBook Pro with a 4 core intel processor and a newer MacBook Pro running the Apple M3 Max. The M3 Max machine runs into this
When using --max-workers 10
command, I can no longer see the issue - so at least for now this is a good workaround for me, but obviously there seems to be some deeper root cause here!
Description
Attempts at running a parallel build leveraging GMD emulators will fail with the following error message:
This renders the functionality unusable for us. We'd love to be able to utilize GMD as it would allow us to easily parallelize the most expensive part of our build.
Repro project containing 100 libraries (which is actually well under our actual count) attached. Console log of a failed run is also attached.
Studio Build: Jellyfish Version of Gradle Plugin: 8.4.0 Version of Gradle: 8.6 Version of Java: 17.0.6 (Azul Systems, Inc. 17.0.6+10-LTS) OS: Mac OS X 14.4.1 aarch64