I recently upgraded MvvmCross from 6.4.2 to 8.0.1 version.
Both Xamarin.Android and Core projects have same nuget packages versions.
After upgrading in ViewModel in line: IMvxMessenger mvxMessenger = Mvx.IoCProvider.Resolve<IMvxMessenger>();
I get an error Failed to resolve type MvvmCross.Plugin.Messenger.IMvxMessenger
Has anyone already faced such a problem?
I have never used the 6.4.2 version but u can try to add this on initialize/setup
Mvx.IoCProvider.RegisterSingleton<IMvxMessenger>(() => new MvxMessengerHub());
This works on the 7.1.2 version
It is related to this issue documented on GitHub.
https://github.com/MvvmCross/MvvmCross/issues/4286
onurhazar commented on Oct 8:
We are having the same issue when we try to load MvxMessenger plugin.
It throws an exception at app launch (device only)(iOS). As a
workaround, you can override LoadPlugins method in Setup.cs like
below;
public override void LoadPlugins(IMvxPluginManager pluginManager)
{
base.LoadPlugins(pluginManager);
pluginManager.EnsurePluginLoaded<MvvmCross.Plugin.Messenger.Plugin>();
}
Related
I use SkiaSharp libraries on my Xamarin.Core/Xamarin.iOS project.
I try to load an SVG file from the Core library like the following;
var svg = new SKSvg();
Assembly assembly = type.GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream($"{assembly.GetName().Name}.Images.watermark_light.svg"))
{
svg.Load(stream);
}
The code throws on the "Load" step saying "System.MissingMethodException: Method not found: SkiaSharp.SKTextBlob SkiaSharp.SKTextBlob.CreatePositioned(string,SkiaSharp.SKFont,System.ReadOnlySpan`1<SkiaSharp.SKPoint>)"
My configuration:
Device: Debug|Simulator
Linker Behaviour: Don't link
Xamarin.iOS 15.4.0.0
xcode13.2: 8fc41ae82
Rider IDE: RD-221.5591.20
OS: MacOS Monterey 12.4 (21F79)
Libraries
SkiaSharp v2.88.1-preview.79
SkiaSharp.Views v2.88.1-preview.79
Svg.Skia v0.5.14
SkiaSharp.Svg v1.60.0
CoreLibrary/Images/watermark_light.svg(svg path)
I tried to add SKTextBlob reference to LinkerPleaseInclude.cs as well. But, it should not be the case when the linker behaviour is set to "Don't link". Also a added --linkskip argument for the relevant namespace. None of them worked. Any ideas about the issue?
Thanks!
Try updating to version 0.5.16 https://www.nuget.org/packages/Svg.Skia/0.5.16
There seems to be a breaking change in the latest release (5.2.0)
To replicate:
download the latest stable template for mvc core
Update all nuget packages to latest stable
The property requiredPermissionName is no longer available
Any steps to overcome would be appreciated...
Sample Code from Template (.net core MVC)
public class GpNavigationProvider : NavigationProvider
{
public override void SetNavigation(INavigationProviderContext context)
{
context.Manager.MainMenu
.AddItem(
new MenuItemDefinition(
PageNames.Home,
L("HomePage"),
url: "",
icon: "home",
requiresAuthentication: true
)
).AddItem(
new MenuItemDefinition(
PageNames.Tenants,
L("Tenants"),
url: "Tenants",
icon: "business",
requiredPermissionName: PermissionNames.Pages_Tenants
)
Compile Error:
Severity Code Description Project File Line Suppression State
Error CS1739
The best overload for 'MenuItemDefinition' does not have a parameter named 'requiredPermissionName'
...\5.1.1\aspnet-core\src\Gp.Web.Mvc\Startup\GpNavigationProvider.cs 29 Active
The change is straightforward:
// requiredPermissionName: PermissionNames.Pages_Tenants,
permissionDependency: new SimplePermissionDependency(PermissionNames.Pages_Tenants),
requiredPermissionName was deprecated in version 2.2 in July 2017.
It was removed in version 5.2 that was released yesterday, after 3 major versions and more than 2.5 years.
References:
aspnetboilerplate/aspnetboilerplate#2289 (ABP 2.2)
aspnetboilerplate/aspnetboilerplate#5191 (ABP 5.2)
We are trying to upgrade to lastest sonarqube 5.5. We have mariadb 10.1 (latest) and since now we had no problems with sonarqube.
Now, with the upgrade, sonarqube will not boot. It says:
Unsupported mysql version: 5.5. Minimal supported version is 5.6.
Is there any trick we can use to make "sonar think" we are using mysql 5.6?
You could change the MINIMAL_SUPPORTED_DB_VERSIONS member in the Sonarqube's class https://github.com/SonarSource/sonarqube/blob/master/sonar-db/src/main/java/org/sonar/db/DatabaseChecker.java
private static final Map<String, Version> MINIMAL_SUPPORTED_DB_VERSIONS = ImmutableMap.of(
// MsSQL 2008 is 10.x
// MsSQL 2012 is 11.x
// MsSQL 2014 is 12.x
// https://support.microsoft.com/en-us/kb/321185
MsSql.ID, Version.create(10, 0, 0),
MySql.ID, Version.create(5, 6, 0),
Oracle.ID, Version.create(11, 0, 0),
PostgreSql.ID, Version.create(8, 0, 0)
);
And build the project again, but If they have that requirement it's possible that after the change not everything is going to work fine.
here is a bsdiff file.
you can Patch it with:
bspatch sonar-db-5.6.jar sonar-db-5.6.jar.new sonar-db-5.6.jar.patch
Replace it and it works!
https://drive.google.com/file/d/0B1EExMdpLmiLR1JmVFQ3ZTVPTlU/view?usp=sharing
MariaDB is not supported by SonarQube - still in v7. Please see this here:
SonarQube Requirements
The Solution to run SonarQube in combination with XAMPP is to change the database from MariaDB to MySQL. Here you'll find the steps for changing it:
https://gist.github.com/odan/c799417460470c3776ffa8adce57eece
I have built a Cordova-based Windows application. As soon as I add any plugin, the app starts crashing with the exception cordova/windows8/commandProxy not found.
Cordova version: 4.3.0
It seems that cordova/windows8/commandProxy is deprecated in Cordova 4.3.0.
I have replaced this statement in plugin file
require("cordova/windows8/commandProxy")
to
require("cordova/exec/proxy")
and it seems to work.
For example I changed line number 18 in PushPluginProxy.js from
require("cordova/windows8/commandProxy").add("PushPlugin", module.exports);
to
require("cordova/exec/proxy").add("PushPlugin", module.exports);
The name in the string varies depending on the plugin.
Alternatively, you can patch the plugin like in this pull request from the AppVersion plugin i.e.:
Change
require("cordova/windows8/commandProxy").add("AppVersion", AppVersionProxy);
to
cordova.commandProxy.add("AppVersion", AppVersionProxy);
When I start Netbeans 6.0.1 up, I get the following error message:
java.lang.NullPointerException
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:521)
at com.sun.servicetag.RegistrationDocument.initializeDocument(RegistrationDocument.java:121)
at com.sun.servicetag.RegistrationDocument.load(RegistrationDocument.java:81)
at com.sun.servicetag.RegistrationData.loadFromXML(RegistrationData.java:392)
at org.netbeans.modules.reglib.NbServiceTagSupport.getRegistrationData(NbServiceTagSupport.java:373)
at org.netbeans.modules.reglib.NbServiceTagSupport.getNbServiceTag(NbServiceTagSupport.java:453)
at org.netbeans.modules.reglib.NbServiceTagSupport.createNbServiceTag(NbServiceTagSupport.java:171)
at org.netbeans.modules.registration.NbInstaller.restored(NbInstaller.java:98)
at org.netbeans.core.startup.NbInstaller.loadCode(NbInstaller.java:378)
at org.netbeans.core.startup.NbInstaller.load(NbInstaller.java:297)
at org.netbeans.ModuleManager.enable(ModuleManager.java:933)
at org.netbeans.core.startup.ModuleList.installNew(ModuleList.java:405)
at org.netbeans.core.startup.ModuleList.trigger(ModuleList.java:341)
at org.netbeans.core.startup.ModuleSystem.restore(ModuleSystem.java:275)
at org.netbeans.core.startup.Main.getModuleSystem(Main.java:171)
at org.netbeans.core.startup.Main.start(Main.java:322)
at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:110)
[catch] at java.lang.Thread.run(Thread.java:655)
It doesn't keep Netbeans from functioning, I think, but what does it mean and how should I fix it?
Firstly, I would try a newer version of netbeans. 6.0.1 is well over 5 years old.
Also, try clearing out the netbeans cache. On linux, it's stored at $HOME/.netbeans/
Not sure where it would be stored on OSX.
As for what it means - read over this question/answer: What is a Null Pointer Exception?