Fix for restart of newer versions of tornado during update
Fix for updater with Beta Versions
This commit is contained in:
		
							parent
							
								
									87ca05f129
								
							
						
					
					
						commit
						f736a15c12
					
				| 
						 | 
					@ -103,6 +103,7 @@ class server:
 | 
				
			||||||
                            ssl_options=ssl)
 | 
					                            ssl_options=ssl)
 | 
				
			||||||
                http_server.listen(web.ub.config.config_port)
 | 
					                http_server.listen(web.ub.config.config_port)
 | 
				
			||||||
                self.wsgiserver=IOLoop.instance()
 | 
					                self.wsgiserver=IOLoop.instance()
 | 
				
			||||||
 | 
					                web.py3_gevent_link = self.wsgiserver
 | 
				
			||||||
                self.wsgiserver.start()
 | 
					                self.wsgiserver.start()
 | 
				
			||||||
                # wait for stop signal
 | 
					                # wait for stop signal
 | 
				
			||||||
                self.wsgiserver.close(True)
 | 
					                self.wsgiserver.close(True)
 | 
				
			||||||
| 
						 | 
					@ -142,10 +143,10 @@ class server:
 | 
				
			||||||
        # ToDo: Somehow caused by circular import under python3 refactor
 | 
					        # ToDo: Somehow caused by circular import under python3 refactor
 | 
				
			||||||
        if sys.version_info > (3, 0):
 | 
					        if sys.version_info > (3, 0):
 | 
				
			||||||
            if not self.wsgiserver:
 | 
					            if not self.wsgiserver:
 | 
				
			||||||
                if gevent_present:
 | 
					                # if gevent_present:
 | 
				
			||||||
                self.wsgiserver = web.py3_gevent_link
 | 
					                self.wsgiserver = web.py3_gevent_link
 | 
				
			||||||
                else:
 | 
					                #else:
 | 
				
			||||||
                    self.wsgiserver = IOLoop.instance()
 | 
					                #    self.wsgiserver = IOLoop.instance()
 | 
				
			||||||
        if self.wsgiserver:
 | 
					        if self.wsgiserver:
 | 
				
			||||||
            if gevent_present:
 | 
					            if gevent_present:
 | 
				
			||||||
                self.wsgiserver.close()
 | 
					                self.wsgiserver.close()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -426,18 +426,25 @@ class Updater(threading.Thread):
 | 
				
			||||||
                minor_version_update = int(commit[i]['tag_name'].split('.')[1])
 | 
					                minor_version_update = int(commit[i]['tag_name'].split('.')[1])
 | 
				
			||||||
                patch_version_update = int(commit[i]['tag_name'].split('.')[2])
 | 
					                patch_version_update = int(commit[i]['tag_name'].split('.')[2])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                current_version[0] = int(current_version[0])
 | 
				
			||||||
 | 
					                current_version[1] = int(current_version[1])
 | 
				
			||||||
 | 
					                try:
 | 
				
			||||||
 | 
					                    current_version[2] = int(current_version[2])
 | 
				
			||||||
 | 
					                except ValueError:
 | 
				
			||||||
 | 
					                    current_version[2] = int(current_version[2].split(' ')[0])-1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                # Check if major versions are identical search for newest nonenqual commit and update to this one
 | 
					                # Check if major versions are identical search for newest nonenqual commit and update to this one
 | 
				
			||||||
                if major_version_update == int(current_version[0]):
 | 
					                if major_version_update == current_version[0]:
 | 
				
			||||||
                    if (minor_version_update == int(current_version[1]) and
 | 
					                    if (minor_version_update == current_version[1] and
 | 
				
			||||||
                            patch_version_update > int(current_version[2])) or \
 | 
					                            patch_version_update > current_version[2]) or \
 | 
				
			||||||
                            minor_version_update > int(current_version[1]):
 | 
					                            minor_version_update > current_version[1]:
 | 
				
			||||||
                        parents.append([commit[i]['tag_name'],commit[i]['body'].replace('\r\n', '<p>')])
 | 
					                        parents.append([commit[i]['tag_name'],commit[i]['body'].replace('\r\n', '<p>')])
 | 
				
			||||||
                    i -= 1
 | 
					                    i -= 1
 | 
				
			||||||
                    continue
 | 
					                    continue
 | 
				
			||||||
                if major_version_update < int(current_version[0]):
 | 
					                if major_version_update < current_version[0]:
 | 
				
			||||||
                    i -= 1
 | 
					                    i -= 1
 | 
				
			||||||
                    continue
 | 
					                    continue
 | 
				
			||||||
                if major_version_update > int(current_version[0]):
 | 
					                if major_version_update > current_version[0]:
 | 
				
			||||||
                    # found update update to last version before major update, unless current version is on last version
 | 
					                    # found update update to last version before major update, unless current version is on last version
 | 
				
			||||||
                    # before major update
 | 
					                    # before major update
 | 
				
			||||||
                    if commit[i+1]['tag_name'].split('.')[1] == current_version[1]:
 | 
					                    if commit[i+1]['tag_name'].split('.')[1] == current_version[1]:
 | 
				
			||||||
| 
						 | 
					@ -466,7 +473,7 @@ class Updater(threading.Thread):
 | 
				
			||||||
                    'update': True,
 | 
					                    'update': True,
 | 
				
			||||||
                    'success': True,
 | 
					                    'success': True,
 | 
				
			||||||
                    'message': _(
 | 
					                    'message': _(
 | 
				
			||||||
                        u'A new update is available. Click on the button below to update to the latest version.'),
 | 
					                        u'Click on the button below to update to the latest stable version.'),
 | 
				
			||||||
                    'history': parents
 | 
					                    'history': parents
 | 
				
			||||||
                })
 | 
					                })
 | 
				
			||||||
                self.updateFile = commit[0]['zipball_url']
 | 
					                self.updateFile = commit[0]['zipball_url']
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user