[status, message] = checkVersion(filename, fexId, mode)
checkVersion implements an auto-update background mechanism to check for a newer version of a file on the Matlab File Exchange (FEX). This enables FEX authors to easily embed a non-intrusive update mechanism in their utilities, enabling its users to automatically update whenever a new version is uploaded to FEX.
checkVersion(filename,fexId) checks on FILENAME's File Exchange webpage whether any newer version of this utility has been uploaded. If so, a popup notice is presented with the date and description of the latest version. The popup enables users to download the newer version into the current folder, or skip. There is also an option to skip the update and not to remind ever again.
checkVersion is typically used after an applications has completed its main task or has presented its GUI, in order to silently check for an available update with minimal impact on the user. This could also be done by using a background single-shot timer (see example below).
checkVersion(...,'silent') runs checkVersion in silent mode, without prompting the user in case a newer version is detected. Newer file versions will automatically be downloaded and installed.
[status, message] = checkVersion(...) returns a string with the update check's status (ignored / unknown / up-to-date / available / downloaded / error), along with a descriptive message.
status = checkVersion('uiinspect',17935);
[status, latestUploadDate] = checkVersion('uiinspect',17935);
[status, errorMessage] = checkVersion('noSuchFile',1234);
% run checkVersion in a background single-shot timer
This utility will silently fail if and when MathWorks will ever modify the File Exchange webpage format. In such case, download the latest version of the utility, which hopefully solves the problem, or send me an email.
Bugs and suggestions:
Please send to Yair Altman (altmany at gmail dot com)