Apply various performance improvements
This commit is contained in:
parent
a375721566
commit
be60457a5a
1 changed files with 20 additions and 6 deletions
|
|
@ -59,11 +59,24 @@ if __name__ == '__main__':
|
||||||
profile_observer.subscribe('disabled', lambda event: pprint.pp((__sanitize_profile(event.subject), 'Disabled')) if event.meta.get('explicitly') else None)
|
profile_observer.subscribe('disabled', lambda event: pprint.pp((__sanitize_profile(event.subject), 'Disabled')) if event.meta.get('explicitly') else None)
|
||||||
profile_observer.subscribe('enabled', lambda event: pprint.pp((__sanitize_profile(event.subject), 'Enabled')))
|
profile_observer.subscribe('enabled', lambda event: pprint.pp((__sanitize_profile(event.subject), 'Enabled')))
|
||||||
|
|
||||||
def __get_name():
|
def __get_distribution():
|
||||||
return metadata.packages_distributions()['cli'][0]
|
|
||||||
|
|
||||||
def __get_version():
|
for candidate in metadata.distributions():
|
||||||
return metadata.version(__get_name())
|
|
||||||
|
if 'cli' not in candidate.name:
|
||||||
|
continue
|
||||||
|
|
||||||
|
candidate_files = candidate.files
|
||||||
|
|
||||||
|
if candidate_files is None:
|
||||||
|
continue
|
||||||
|
|
||||||
|
for distribution_file in candidate_files:
|
||||||
|
|
||||||
|
if distribution_file.parts[0] == 'cli':
|
||||||
|
return candidate
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
def __parse_composite_argument(argument: str, first_key: str, second_key: str, separator: str = ':'):
|
def __parse_composite_argument(argument: str, first_key: str, second_key: str, separator: str = ':'):
|
||||||
return dict(zip([first_key, second_key], argument.split(separator) + ['']))
|
return dict(zip([first_key, second_key], argument.split(separator) + ['']))
|
||||||
|
|
@ -92,6 +105,7 @@ if __name__ == '__main__':
|
||||||
sys.__excepthook__(identifier, message, traceback)
|
sys.__excepthook__(identifier, message, traceback)
|
||||||
|
|
||||||
sys.excepthook = __handle_exception
|
sys.excepthook = __handle_exception
|
||||||
|
distribution = __get_distribution()
|
||||||
|
|
||||||
pristine_parser = argparse.ArgumentParser(add_help=False)
|
pristine_parser = argparse.ArgumentParser(add_help=False)
|
||||||
pristine_parser.add_argument('--pristine', '-p', action='store_true')
|
pristine_parser.add_argument('--pristine', '-p', action='store_true')
|
||||||
|
|
@ -105,8 +119,8 @@ if __name__ == '__main__':
|
||||||
profile_state_protection_parser = argparse.ArgumentParser(add_help=False)
|
profile_state_protection_parser = argparse.ArgumentParser(add_help=False)
|
||||||
profile_state_protection_parser.add_argument('--without-profile-state-protection', action='store_true')
|
profile_state_protection_parser.add_argument('--without-profile-state-protection', action='store_true')
|
||||||
|
|
||||||
main_parser = argparse.ArgumentParser(prog=__get_name())
|
main_parser = argparse.ArgumentParser(prog=distribution.name)
|
||||||
main_parser.add_argument('--version', '-v', action='version', version=f'{__get_name()} v{__get_version()}')
|
main_parser.add_argument('--version', '-v', action='version', version=f'{distribution.name} v{distribution.version}')
|
||||||
main_subparsers = main_parser.add_subparsers(title='commands', dest='command')
|
main_subparsers = main_parser.add_subparsers(title='commands', dest='command')
|
||||||
|
|
||||||
profile_parser = main_subparsers.add_parser('profile')
|
profile_parser = main_subparsers.add_parser('profile')
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue