+def checkForNewerVersion():
+ if isDevVersion():
+ return None
+ try:
+ updateBaseURL = 'http://software.ultimaker.com'
+ localVersion = map(int, getVersion(False).split('.'))
+ while len(localVersion) < 3:
+ localVersion += [1]
+ latestFile = urllib2.urlopen("%s/latest.xml" % (updateBaseURL))
+ latestXml = latestFile.read()
+ latestFile.close()
+ xmlTree = ElementTree.fromstring(latestXml)
+ for release in xmlTree.iter('release'):
+ os = str(release.attrib['os'])
+ version = [int(release.attrib['major']), int(release.attrib['minor']), int(release.attrib['revision'])]
+ filename = release.find("filename").text
+ if platform.system() == os:
+ if version > localVersion:
+ return "%s/current/%s" % (updateBaseURL, filename)
+ except:
+ print sys.exc_info()
+ return None
+ return None
+