XrmToolBox
XrmToolBox copied to clipboard
Improve compatibility checks for plugins
Related to https://github.com/Innofactor/FetchXMLBuilder/issues/167
Yes, we're automatically checking is it possible to install plugin from store or not based on minimum required version of XTB. But case, when XTB core gets updated is not covered.
I'm suggesting to add logic that will run after update of XTB and will try to detect potentially broken plugins and disable them.
After platform breaking change we normally updating XTB minimum version required in NuGet package definition. I think we can rely on this information during that procedure.
For example XTB upgraded to version 1.2017.1.10 and we will scan plugin store for plugins, and minimum versions they require. We see that older Fetch XML builder was updated, and minimum required version for it was changed from 1.2016.6.26 to 1.2017.1.9, most likely this means that its older version will not work with newer version of the core. So we need to warn user about potential issues and offer to update this plugin.
What do you think?
When the new XTB portal is alive, a matrix of compatible versions should be possible to maintain, without implementing too much overhead try-catch-investigate-behavior in XTB core. Already it takes ~5 seconds to start the app...
But yes, having the possibility to inform users of incompatible versions before installing them would be really good...!
We can run that process asynchronously.
And regarding loading time. It's artificial delay of 3 seconds: https://github.com/MscrmTools/XrmToolBox/blob/master/XrmToolBox/Forms/WelcomeDialog.cs#L89-L104
It could be less, since I believe all background tasks with loading plugins actually finishes earlier.