Mono.Linker.MarkException: Error processing method: - xamarin.forms

I am getting the following build error in Xamarin.Forms.iOS
error MT2101: Can't resolve the reference 'System.Boolean FluentValidation.ValidatorOptions::get_DisableAccessorCache()', referenced from the method 'FluentValidation.IRuleBuilderInitial`2<T,TType> TPMobile.Forms.Components.Core.Validation.EnhancedAbstractValidator`1::RuleForProp(System.Linq.Expressions.Expression`1<System.Func`2<T,TPMobile.Forms.Components.Core.Validation.ValidatableProperty`1<TType>>>)' in 'FluentValidation, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7de548da2fbae0f0'.
This only happens in ios, android is fine
Here is the full build log;
1>------ Build started: Project: TPMobile.Forms.Components.Core, Configuration: Debug Any CPU ------
1>C:\Dev\TPMobile\TPMobile.Forms.Components.Core\TPMobile.Forms.Components.Core.csproj : warning NU1701: Package 'Microsoft.Bcl 1.1.6' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
1>C:\Dev\TPMobile\TPMobile.Forms.Components.Core\TPMobile.Forms.Components.Core.csproj : warning NU1701: Package 'Microsoft.Bcl.Async 1.0.165' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
1>C:\Dev\TPMobile\TPMobile.Forms.Components.Core\TPMobile.Forms.Components.Core.csproj : warning NU1701: Package 'PCLStorage 1.0.2' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
1>C:\Dev\TPMobile\TPMobile.Forms.Components.Core\TPMobile.Forms.Components.Core.csproj : warning NU1701: Package 'TruePotential.Objects.ForConsumers 2018.12.10.1' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
1>Helpers\Security\Cryptography.cs(100,34,100,36): warning CS0168: The variable 'ex' is declared but never used
1> Fody: Fody (version 3.2.13.0 # file:///C:/Users/davidp/.nuget/packages/fody/3.2.13/netclassictask/Fody.dll) Executing
1> Fody: Searched for 'PropertyChanged'. Found: C:\Users\davidp\.nuget\packages\propertychanged.fody\2.5.14\build\..\netclassicweaver\PropertyChanged.Fody.dll
1> Fody: Finished Fody 294ms.
1>TPMobile.Forms.Components.Core -> C:\Dev\TPMobile\TPMobile.Forms.Components.Core\bin\Debug\netstandard2.0\TPMobile.Forms.Components.Core.dll
1> Fody: Skipped Verifying assembly since it is disabled in configuration
1>Done building project "TPMobile.Forms.Components.Core.csproj".
2>------ Build started: Project: TPMobile.Forms.Components.iOS, Configuration: Debug Any CPU ------
3>------ Build started: Project: TPMobile.ExampleProject, Configuration: Debug Any CPU ------
3>C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject\TPMobile.ExampleProject.csproj : warning NU1701: Package 'Microsoft.Bcl 1.1.6' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
3>C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject\TPMobile.ExampleProject.csproj : warning NU1701: Package 'Microsoft.Bcl.Async 1.0.165' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
3>C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject\TPMobile.ExampleProject.csproj : warning NU1701: Package 'PCLStorage 1.0.2' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
3>C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject\TPMobile.ExampleProject.csproj : warning NU1701: Package 'TruePotential.Objects.ForConsumers 2018.12.10.1' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
3>ServiceReferences\ServiceFactory.cs(21,30,21,32): warning CS0168: The variable 'ex' is declared but never used
3> Fody: Fody (version 3.2.13.0 # file:///C:/Users/davidp/.nuget/packages/fody/3.2.13/netclassictask/Fody.dll) Executing
3> Fody: Searched for 'PropertyChanged'. Found: C:\Users\davidp\.nuget\packages\propertychanged.fody\2.5.14\build\..\netclassicweaver\PropertyChanged.Fody.dll
3> Fody: Finished Fody 786ms.
3>TPMobile.ExampleProject -> C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject\bin\Debug\netstandard2.0\TPMobile.ExampleProject.dll
3> Fody: Skipped Verifying assembly since it is disabled in configuration
3>Done building project "TPMobile.ExampleProject.csproj".
2> Connecting to Mac server 192.168.2.212...
2>C:\Dev\TPMobile\TPMobile.Forms.Components.iOS\Renderers\TPButtonRenderer.cs(24,22,24,35): warning CS0169: The field 'TPButtonRenderer.isWhiteButton' is never used
2> TPMobile.Forms.Components.iOS -> C:\Dev\TPMobile\TPMobile.Forms.Components.iOS\bin\Debug\TPMobile.Forms.Components.iOS.dll
4>------ Build started: Project: TPMobile.ExampleProject.iOS, Configuration: Debug iPhone ------
4> Connecting to Mac server 192.168.2.212...
4> Connecting to Mac server 192.168.2.212...
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3243: No way to resolve conflict between "FluentValidation, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7de548da2fbae0f0" and "FluentValidation, Version=6.2.1.0, Culture=neutral, PublicKeyToken=null". Choosing "FluentValidation, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7de548da2fbae0f0" arbitrarily.
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3243: No way to resolve conflict between "Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed" and "Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed". Choosing "Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed" arbitrarily.
4> No way to resolve conflict between "System.Runtime, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Runtime, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Globalization, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Globalization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Globalization, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Reflection, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Reflection, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Reflection, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Threading.Tasks, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Threading.Tasks, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Threading.Tasks, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Diagnostics.Debug, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Diagnostics.Debug, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Diagnostics.Debug, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Collections, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Collections, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Collections, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Runtime.Extensions, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Runtime.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Runtime.Extensions, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Threading, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Threading, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Threading, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Collections.Concurrent, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Collections.Concurrent, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Collections.Concurrent, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.Runtime, Version=4.0.20.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Runtime, Version=4.0.10.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.Runtime, Version=4.0.20.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.ServiceModel.Primitives, Version=4.5.0.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.ServiceModel.Primitives, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.ServiceModel.Primitives, Version=4.5.0.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> No way to resolve conflict between "System.ServiceModel.Http, Version=4.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.ServiceModel.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Choosing "System.ServiceModel.Http, Version=4.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" arbitrarily.
4> Consider app.config remapping of assembly "Newtonsoft.Json, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed" from Version "6.0.0.0" [C:\Users\davidp\.nuget\packages\truepotential.objects.forconsumers\2018.12.10.1\lib\Xamarin.iOS\Newtonsoft.Json.dll] to Version "11.0.0.0" [C:\Users\davidp\.nuget\packages\newtonsoft.json\11.0.2\lib\netstandard2.0\Newtonsoft.Json.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "SkiaSharp, Culture=neutral, PublicKeyToken=0738eb9f132ed756" from Version "1.59.0.0" [] to Version "1.60.0.0" [C:\Users\davidp\.nuget\packages\skiasharp\1.60.1\lib\Xamarin.iOS\SkiaSharp.dll] to solve conflict and get rid of warning.
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3277: Found conflicts between different versions of "System.IdentityModel" that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.
4> Consider app.config remapping of assembly "System.ServiceModel.Primitives, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Primitives\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.ServiceModel.Primitives.dll] to Version "4.5.0.3" [] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.ServiceModel.Http, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Http\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.ServiceModel.Http.dll] to Version "4.5.0.0" [] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Runtime, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.10.0" [] to Version "4.0.20.0" [] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Globalization, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Globalization\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Globalization.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Globalization.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Reflection, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Reflection\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Reflection.dll] to Version "4.0.10.0" [] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Threading.Tasks, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Threading.Tasks\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Threading.Tasks.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Threading.Tasks.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Diagnostics.Debug, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Diagnostics.Debug\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Diagnostics.Debug.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Diagnostics.Debug.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Threading, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Threading\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Threading.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Threading.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Collections.Concurrent, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Collections.Concurrent\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Collections.Concurrent.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Collections.Concurrent.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Collections, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Collections\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Collections.dll] to Version "4.0.10.0" [C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\Xamarin.iOS\v1.0\Facades\System.Collections.dll] to solve conflict and get rid of warning.
4> Consider app.config remapping of assembly "System.Runtime.Extensions, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" from Version "4.0.0.0" [C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Extensions\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.Extensions.dll] to Version "4.0.10.0" [] to solve conflict and get rid of warning.
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2110,5): warning MSB3276: Found conflicts between different versions of the same dependent assembly. Please set the "AutoGenerateBindingRedirects" property to true in the project file. For more information, see http://go.microsoft.com/fwlink/?LinkId=294190.
4> TPMobile.ExampleProject.iOS -> C:\Dev\TPMobile\TPMobile.ExampleProject\TPMobile.ExampleProject.iOS\bin\iPhone\Debug\TPMobile.ExampleProject.iOS.exe
4> Detected signing identity:
4> Code Signing Key: "iPhone Developer: Mobile Developer (25UP79M7PR)" (B188F70014885E17572ADB858598D4805952188B)
4> Provisioning Profile: "VS: WildCard Development" (ec2f1bdf-d784-4cef-bb5d-1c42c684fc47)
4> Bundle Id: com.tpllp.hellotpmobile
4> App Id: XSTU6BLQCD.com.tpllp.hellotpmobile
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(684,3): warning : Supported iPhone orientations are not matched pairs
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(795,3): error MT2101: Can't resolve the reference 'System.Boolean FluentValidation.ValidatorOptions::get_DisableAccessorCache()', referenced from the method 'FluentValidation.IRuleBuilderInitial`2<T,TType> TPMobile.Forms.Components.Core.Validation.EnhancedAbstractValidator`1::RuleForProp(System.Linq.Expressions.Expression`1<System.Func`2<T,TPMobile.Forms.Components.Core.Validation.ValidatableProperty`1<TType>>>)' in 'FluentValidation, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7de548da2fbae0f0'.
4> --- inner exception
4> Mono.Linker.MarkException: Error processing method: 'FluentValidation.IRuleBuilderInitial`2<T,TType> TPMobile.Forms.Components.Core.Validation.EnhancedAbstractValidator`1::RuleForProp(System.Linq.Expressions.Expression`1<System.Func`2<T,TPMobile.Forms.Components.Core.Validation.ValidatableProperty`1<TType>>>)' in assembly: 'TPMobile.Forms.Components.Core.dll' ---> Mono.Cecil.ResolutionException: Failed to resolve System.Boolean FluentValidation.ValidatorOptions::get_DisableAccessorCache()
4> at Mono.Linker.Steps.MarkStep.HandleUnresolvedMethod (Mono.Cecil.MethodReference reference) [0x0001b] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1828
4> at Mono.Linker.Steps.MarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00064] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1532
4> at Xamarin.Linker.Steps.MobileMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MobileMarkStep.cs:140
4> at Xamarin.Linker.Steps.CoreMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:228
4> at MonoTouch.Tuner.MonoTouchMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MonoTouch.Tuner/MonoTouchMarkStep.cs:98
4> at Mono.Linker.Steps.MarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00048] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1797
4> at Xamarin.Linker.Steps.CoreMarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00042] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:223
4> at Mono.Linker.Steps.MarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x000a5] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1775
4> at MonoTouch.Tuner.MonoTouchMarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x0000d] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MonoTouch.Tuner/MonoTouchMarkStep.cs:160
4> at Mono.Linker.Steps.MarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x0019d] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1623
4> at Xamarin.Linker.Steps.CoreMarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x00060] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:187
4> at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x0001f] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:183
4> --- End of inner exception stack trace ---
4> at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x0002c] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:185
4> at Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue () [0x00012] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:169
4> at Mono.Linker.Steps.MarkStep.Process () [0x00146] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:131
4> at Mono.Linker.Steps.MarkStep.Process (Mono.Linker.LinkContext context) [0x0000f] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:72
4> at Xamarin.Linker.Steps.MobileMarkStep.Process (Mono.Linker.LinkContext context) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MobileMarkStep.cs:33
4> at Xamarin.Linker.Steps.CoreMarkStep.Process (Mono.Linker.LinkContext context) [0x00017] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:32
4> at MonoTouch.Tuner.MonoTouchMarkStep.Process (Mono.Linker.LinkContext context) [0x0001d] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MonoTouch.Tuner/MonoTouchMarkStep.cs:36
4> at Mono.Linker.Pipeline.Process (Mono.Linker.LinkContext context) [0x0001f] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker/Pipeline.cs:127
4> at MonoTouch.Tuner.Linker.Process (MonoTouch.Tuner.LinkerOptions options, MonoTouch.Tuner.MonoTouchLinkContext& context, System.Collections.Generic.List`1[Mono.Cecil.AssemblyDefinition]& assemblies) [0x000e0] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Tuning.cs:80
4> ---
4> --- inner exception
4> Mono.Cecil.ResolutionException: Failed to resolve System.Boolean FluentValidation.ValidatorOptions::get_DisableAccessorCache()
4> at Mono.Linker.Steps.MarkStep.HandleUnresolvedMethod (Mono.Cecil.MethodReference reference) [0x0001b] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1828
4> at Mono.Linker.Steps.MarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00064] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1532
4> at Xamarin.Linker.Steps.MobileMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MobileMarkStep.cs:140
4> at Xamarin.Linker.Steps.CoreMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:228
4> at MonoTouch.Tuner.MonoTouchMarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MonoTouch.Tuner/MonoTouchMarkStep.cs:98
4> at Mono.Linker.Steps.MarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00048] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1797
4> at Xamarin.Linker.Steps.CoreMarkStep.MarkInstruction (Mono.Cecil.Cil.Instruction instruction) [0x00042] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:223
4> at Mono.Linker.Steps.MarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x000a5] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1775
4> at MonoTouch.Tuner.MonoTouchMarkStep.MarkMethodBody (Mono.Cecil.Cil.MethodBody body) [0x0000d] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/MonoTouch.Tuner/MonoTouchMarkStep.cs:160
4> at Mono.Linker.Steps.MarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x0019d] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:1623
4> at Xamarin.Linker.Steps.CoreMarkStep.ProcessMethod (Mono.Cecil.MethodDefinition method) [0x00060] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/linker/CoreMarkStep.cs:187
4> at Mono.Linker.Steps.MarkStep.ProcessQueue () [0x0001f] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/external/mono/external/linker/linker/Linker.Steps/MarkStep.cs:183
4> ---
4> at MonoTouch.Tuner.Linker.Process (MonoTouch.Tuner.LinkerOptions options, MonoTouch.Tuner.MonoTouchLinkContext& context, System.Collections.Generic.List`1[Mono.Cecil.AssemblyDefinition]& assemblies) [0x001f0] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Tuning.cs:99
4> at Xamarin.Bundler.Target.LinkAssemblies (System.Collections.Generic.List`1[Mono.Cecil.AssemblyDefinition]& assemblies, System.String output_dir, System.Collections.Generic.IEnumerable`1[T] sharedCodeTargets) [0x00256] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Target.cs:522
4> at Xamarin.Bundler.Target.ManagedLink () [0x00720] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Target.cs:669
4> at Xamarin.Bundler.Target.ProcessAssemblies () [0x000c2] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Target.cs:873
4> at Xamarin.Bundler.Application.ProcessAssemblies () [0x0002f] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Application.cs:1411
4> at Xamarin.Bundler.Application.BuildManaged () [0x00001] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Application.cs:839
4> at Xamarin.Bundler.Application+<>c.<BuildAll>b__140_1 (Xamarin.Bundler.Application v) [0x00000] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Application.cs:787
4> at System.Collections.Generic.List`1[T].ForEach (System.Action`1[T] action) [0x0001e] in <98fac219bd4e453693d76fda7bd96ab0>:0
4> at Xamarin.Bundler.Application.BuildAll () [0x00050] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/Application.cs:787
4> at Xamarin.Bundler.Driver.Main2 (System.String[] args) [0x00423] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/mtouch.cs:1402
4> at Xamarin.Bundler.Driver.Main (System.String[] args) [0x00015] in /Users/builder/jenkins/workspace/xamarin-macios/xamarin-macios/tools/mtouch/mtouch.cs:934
========== Build: 3 succeeded, 1 failed, 3 up-to-date, 0 skipped ==========
Additional
If i turn linking off the solution complies
This leads me to adding to Additional mono args;
--linkskip=FluentValidation
Still no joy

Related

Assembly uses 'System.Runtime' Version=4.2.2.0 which has a higher version than referenced assembly 'System.Runtime' Version=4.1.2.0

I have a .NET Framework 4.7.2 project that reference a .NET Core 3.1 library. The problem is that I get this error:
Error CS1705 Assembly 'X' with identity 'X, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' uses 'System.Runtime, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' which has a higher version than referenced assembly 'System.Runtime' with identity 'System.Runtime, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
In NuGet Manager for both projects, I have tried to add System.Runtime 4.3.1. Still I get the same error. How can this be fixed?

Warning MSB3277: Found conflicts between different versions of "Microsoft.CSharp" that could not be resolved

I have been dragging around this build warning for quite some time and I would like to get rid of it when building my Xamarin.Forms.Ios project.
I get the warning
"/Applications/Visual
Studio.app/Contents/Resources/lib/monodevelop/bin/MSBuild/Current/bin/Microsoft.Common.CurrentVersion.targets(5,5):
Warning MSB3277: Found conflicts between different versions of
"Microsoft.CSharp" that could not be resolved. These reference
conflicts are listed in the build log when log verbosity is set to
detailed. (MSB3277) (BB.App.iOS)"
In the build log I find the following statement.
There was a conflict between "Microsoft.CSharp, Version=2.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
"Microsoft.CSharp, Version=2.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" was chosen because it was primary and "Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" was not.
References which depend on "Microsoft.CSharp, Version=2.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" [/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/Microsoft.CSharp.dll].
/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/Microsoft.CSharp.dll
Project file item includes which caused reference "/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/Microsoft.CSharp.dll".
Microsoft.CSharp
References which depend on "Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" [].
/Users/sjorsmiltenburg/.nuget/packages/automapper/10.0.0/lib/netstandard2.0/AutoMapper.dll
Project file item includes which caused reference "/Users/sjorsmiltenburg/.nuget/packages/automapper/10.0.0/lib/netstandard2.0/AutoMapper.dll".
/Users/sjorsmiltenburg/.nuget/packages/automapper/10.0.0/lib/netstandard2.0/AutoMapper.dll
/Users/sjorsmiltenburg/_Sources_BookaBooka/BB.App/BB.App/bin/Debug/netstandard2.0/BB.App.dll
I could find a similar issue on android but here the cause is related to newtonsoft.json having a reference to the old CSharp.dll.
What I read here is that Automapper is referencing Microsoft.CSharp 4.7 (which I can find in the nuget references of my main project), but I Can't figure out where the Microsoft.CSharp 2.0.5.0 reference comes from.
I can drill down the nuget - reference tree in my main project but not in my XF.ios project. In my ios.proj file i find no reference to CSharp.dll

Build conflicts in ASP.Net with Visual Studio 2017

A new message appears in every Visual Studio 2017 Version 15.4.1 build done now.
warning MSB3277: Found conflicts between different versions of the same
dependent assembly that could not be resolved. These reference conflicts are
listed in the build log when log verbosity is set to detailed.
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
Stack Overflow told me how to get a more detailed log message which is listed next. I found three conflicts that I do not know how to resolve. All build objects are added automatically making these quite problems mysterious for a programmer.
Conflict JSON
There was a conflict between "Newtonsoft.Json, Version=8.0.0.0, Culture=neutral,
PublicKeyToken=30ad4fe6b2a6aeed" and "Newtonsoft.Json, Version=10.0.0.0,
Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed".
"Newtonsoft.Json, Version=8.0.0.0, Culture=neutral,
PublicKeyToken=30ad4fe6b2a6aeed" was chosen because it was primary and
"Newtonsoft.Json, Version=10.0.0.0, Culture=neutral,
PublicKeyToken=30ad4fe6b2a6aeed" was not.
References which depend on "Newtonsoft.Json, Version=8.0.0.0, Culture=neutral,
PublicKeyToken=30ad4fe6b2a6aeed"
[C:\Users\George\OneDrive\SignupList\SignupList\bin\Newtonsoft.Json.dll].
The NuGet Package Manager says I only have Newtonsoft.JSON 10.0.3. How do I get rid of version 8? There is only one Newtonsoft.Json.dll in bin. I upgraded to JSON 10 recently, I am surprised Visual Studio did not look after it being called an upgrade.
Confict mscorlib
There was a conflict between "mscorlib, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" and "mscorlib, Version=2.0.5.0,
Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes".
"mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
was chosen because it was primary and "mscorlib, Version=2.0.5.0,
Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" was not.
References which depend on "mscorlib, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" [C:\Program Files (x86)\Reference
Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll].
C:\Program Files (x86)\Reference
Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll
No idea what mscorlib.dll is. I have NETFramework folders for v3.5, v4.0, v4.5, v4.5.1, v4.5.2, v4.6, v4.6.1, and v4.X. Where can I control which one is being used for mscorlib.dll and how would I choose? mscorlib.dll has been a recurring problem over the years in this project.
System.dll seems to be similar to the mscorlib.dll conflict issue.
There was a conflict between "System, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" and "System, Version=2.0.5.0,
Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes".
"System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" was `enter code here`
chosen because it was primary and "System, Version=2.0.5.0, Culture=neutral,
PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" was not.
References which depend on "System, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" [C:\Program Files (x86)\Reference
Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.dll].
Thank you for any help.
Try reinstalling your nuget packages.
We used to get scenarios like this when we used TFS and noobs kept checking in the packages folder.
Execute the following command in nuget package manager console:
update-package -reinstall
The other common time that erors like this can ocurr is when you change the target platform of your project.
If re-install doesn't work, one of your other (non-NuGet, or incorrect NuGet) references is compiled against Newtonsoft.Json v8
NuGet package authors should declare all dependencies, including references to Newtonsoft.Json... When they do so, NuGet will not let you install a higher version of a package unless it is compatible with all the existing packages. That reinstall usually works, it forces the dependencies to be re-evaluated against the current framework. Unfortunately, it is pretty easy to get the dependency definitions wrong in the NuGet manifest, or to omit them altogether.
Try using assembly binding mapping in web.config:
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

MVVMLight installs one version of assembly, but references different version

MVVMLight 4.3.31.28629 in WPF project, VS2013.
The MVVMLight install (via nuget) added Microsoft.Practices.ServiceLocation 1.2.0.0.
Inspecting MvvmLight.Extras.WPF4, I find this:
My application runs in the debugger, but not when launched from the command line. (It throws an exception from the ViewModelLocator ctor, trying to find Microsoft.Practices.ServiceLocation 1.0.0.0.)
Why does it run inside the debugger, and how do I fix it to run outside the debugger?
Thanks --
UPDATE
What the hell? Why are two versions of the same assembly referenced?
at ProdoMetro.ViewModel.ViewModelLocator..ctor()
InnerException: System.IO.FileLoadException
HResult=-2146234304
Message=Could not load file or assembly **Microsoft.Practices.ServiceLocation, Version=1.2.0.0**, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Source=TimerDoro
FileName=Microsoft.Practices.ServiceLocation, Version=1.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
FusionLog=""
StackTrace:
at ProdoMetro.ViewModel.ViewModelLocator..cctor()
InnerException: System.IO.FileLoadException
HResult=-2146234304
Message=Could not load file or assembly **Microsoft.Practices.ServiceLocation, Version=1.0.0.0**, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
FileName=Microsoft.Practices.ServiceLocation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
FusionLog==== Pre-bind state information ===
LOG: DisplayName = Microsoft.Practices.ServiceLocation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
(Fully-specified)

Unable to find reference to assembly in a Visual Studio website

I have a legacy WebSite project (as opposed to a Web Application project). It was using .net 3.5 but I am updating it to 4.0.
Due to the compilation error ...
Compiler Error Message: CS1705: Assembly 'System.Web.Mvc, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35' uses 'System.Web.WebPages,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has
a higher version than referenced assembly 'System.Web.WebPages,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
... I added a reference to the newer version of System.Web.WebPages. This added the following line to the web.config file:
<add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
However, when I try to build the website I get this error:
The type 'System.Web.WebPages.WebPage' exists in both
c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Web.WebPages\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.dll'
and 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Web.WebPages\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.dll'
I cannot seem to find a reference anywhere in the project to the v4.0 1 version of WebPages. I assume this means that some other assembly is probably referring to it but I'm not sure where to go from here.
Any idea how to track down what is referring to the assembly and either remove the reference or update the calling the assembly?

Resources