def plugin_loaded(): if need_package_control_upgrade: sublime.error_message( u"SVN\n\nThe SVN package seems to have been " + u"installed using an older version of Package Control. Please " + u"remove the SVN package, upgrade Package Control to 2.0.0 " + u"and then reinstall SVN.\n\nIt may be necessary to delete " + u'the "Packages/Package Control/" folder and then follow the ' + u"instructions at https://sublime.wbond.net/installation to " + u"properly upgrade Package Control." ) return init_config() settings = sublime.load_settings("SVN.sublime-settings") svn_debug.set_debug(settings.get("debug", False)) svn_debug.set_debug_log_file(settings.get("debug_log_file", None)) def reset_shown(): SVN.shown_missing = {} settings.add_on_change("svn_binary_path", reset_shown) settings.add_on_change("auto_update_check_frequency", StatusCache.set_check_updates) StatusCache.set_check_updates() settings_dict["svn_binary_path"] = settings.get("svn_binary_path") SvnInit().start() bin_folder = os.path.join(os.path.dirname(os.path.abspath(__file__)), "bin") has_bin = os.path.exists(bin_folder) svn_exe = os.path.join(bin_folder, "1.8", "svn.exe") has_svn = os.path.exists(svn_exe) if os.name == "nt" and (not has_bin or not has_svn): sublime.error_message( u"SVN\n\nThe SVN package seems to have been " + u"synced or copied from an OS X or Linux machine. The Windows " + u"version of the package is different due to the inclusion of " + u"a number of necessary exe files.\n\nTo fix the SVN package " + u'so that it may run properly, please run "Remove Package" and ' + u'then reinstall it using the "Install Package" command.\n\nTo ' + u"learn how to properly sync packages across different machines, " + u"please visit https://sublime.wbond.net/docs/syncing" )
def plugin_loaded(): if need_package_control_upgrade: sublime.error_message(u'SVN\n\nThe SVN package seems to have been ' + \ u'installed using an older version of Package Control. Please ' + \ u'remove the SVN package, upgrade Package Control to 2.0.0 ' + \ u'and then reinstall SVN.\n\nIt may be necessary to delete ' + \ u'the "Packages/Package Control/" folder and then follow the ' + \ u'instructions at https://sublime.wbond.net/installation to ' + \ u'properly upgrade Package Control.') return init_config() settings = sublime.load_settings('SVN.sublime-settings') svn_debug.set_debug(settings.get('debug', False)) svn_debug.set_debug_log_file(settings.get('debug_log_file', None)) def reset_shown(): SVN.shown_missing = {} settings.add_on_change('svn_binary_path', reset_shown) settings.add_on_change('auto_update_check_frequency', StatusCache.set_check_updates) StatusCache.set_check_updates() settings_dict['svn_binary_path'] = settings.get('svn_binary_path') SvnInit().start() bin_folder = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'bin') has_bin = os.path.exists(bin_folder) svn_exe = os.path.join(bin_folder, '1.8', 'svn.exe') has_svn = os.path.exists(svn_exe) if os.name == 'nt' and (not has_bin or not has_svn): sublime.error_message(u'SVN\n\nThe SVN package seems to have been ' + \ u'synced or copied from an OS X or Linux machine. The Windows ' + \ u'version of the package is different due to the inclusion of ' + \ u'a number of necessary exe files.\n\nTo fix the SVN package ' + \ u'so that it may run properly, please run "Remove Package" and ' + \ u'then reinstall it using the "Install Package" command.\n\nTo ' + \ u'learn how to properly sync packages across different machines, ' + \ u'please visit https://sublime.wbond.net/docs/syncing')
paths as svn_paths, proc as svn_proc, threads as svn_threads ) settings = sublime.load_settings('SVN.sublime-settings') svn_debug.set_debug(settings.get('debug', False)) svn_debug.set_debug_log_file(settings.get('debug_log_file', None)) def reset_shown(): SVN.shown_missing = {} settings.add_on_change('svn_binary_path', reset_shown) settings.add_on_change('auto_update_check_frequency', StatusCache.set_check_updates) StatusCache.set_check_updates() hook_match = re.search("<class '(\w+).ExcepthookChain'>", str(sys.excepthook)) if not hook_match: class ExcepthookChain(object): callbacks = [] names = {} @classmethod def add(cls, name, callback): if name == 'sys.excepthook': if name in cls.names: return cls.callbacks.append(callback) else:
import sublimesvn.proc import sublimesvn.threads settings = sublime.load_settings('SVN.sublime-settings') sublimesvn.debug.set_debug(settings.get('debug', False)) sublimesvn.debug.set_debug_log_file(settings.get('debug_log_file', None)) def reset_shown(): SVN.shown_missing = {} settings.add_on_change('svn_binary_path', reset_shown) settings.add_on_change('auto_update_check_frequency', StatusCache.set_check_updates) StatusCache.set_check_updates() hook_match = re.search("<class '(\w+).ExcepthookChain'>", str(sys.excepthook)) if not hook_match: class ExcepthookChain(object): callbacks = [] names = {} @classmethod def add(cls, name, callback): if name == 'sys.excepthook': if name in cls.names: return cls.callbacks.append(callback)
def unload_handler(): StatusCache.stop() ExcepthookChain.remove('svn_uncaught_except')