def _import_bears(file_path, kinds): # recursive imports: for bear_list in iimport_objects(file_path, names="__additional_bears__", types=list): for bear_class in bear_list: if _get_kind(bear_class) in kinds: yield bear_class # normal import for bear_class in iimport_objects(file_path, attributes="kind", local=True): if _get_kind(bear_class) in kinds: yield bear_class
def _import_bears(file_path, kinds): # recursive imports: for bear_list in iimport_objects(file_path, names='__additional_bears__', types=list): for bear_class in bear_list: if _get_kind(bear_class) in kinds: yield bear_class # normal import for bear_class in iimport_objects(file_path, attributes='kind', local=True): if _get_kind(bear_class) in kinds: yield bear_class
def _import_bears(file_path, kinds): # recursive imports: for bear_list in iimport_objects(file_path, names='__additional_bears__', types=list): for bear_class in bear_list: if _right_kind(bear_class, kinds): yield bear_class # normal import for bear_class in iimport_objects(file_path, attributes='kind', local=True): if _right_kind(bear_class, kinds): yield bear_class
def main(): args = create_upload_parser().parse_args() os.makedirs(os.path.join('bears', 'upload'), exist_ok=True) nano_version = str(int(time.time())) for bear_file_name in sorted(set(glob('bears/**/*Bear.py'))): bear_object = next(iimport_objects( bear_file_name, attributes='kind', local=True), None) if bear_object: bear_name, _ = os.path.splitext(os.path.basename(bear_file_name)) create_file_structure_for_packages( os.path.join('bears', 'upload'), bear_file_name, bear_name) bear_version = VERSION if 'dev' in bear_version: # pragma: no cover bear_version = bear_version[:bear_version.find("dev")] + ( nano_version) else: # pragma: no cover bear_version = repr(bear_version) + '.' + nano_version substitution_dict = {'NAME': repr(bear_name), 'VERSION': bear_version, 'AUTHORS': str(bear_object.AUTHORS), 'AUTHORS_EMAILS': str(bear_object.AUTHORS_EMAILS), 'MAINTAINERS': str(bear_object.maintainers), 'MAINTAINERS_EMAILS': str(bear_object.maintainers_emails), 'PLATFORMS': str(bear_object.PLATFORMS), 'LICENSE': str(bear_object.LICENSE), 'LONG_DESCRIPTION': str(bear_object.__doc__), 'BEAR_NAME': bear_name} create_file_from_template(os.path.join('bears', 'setup.py.in'), os.path.join('bears', 'upload', bear_name, 'setup.py'), substitution_dict) bear_dist_name = bear_name + '-' + bear_version if args.register: perform_register(os.path.join('bears', 'upload', bear_name), bear_dist_name) if args.upload: perform_upload(os.path.join('bears', 'upload', bear_name))
def main(): args = create_upload_parser().parse_args() os.makedirs(os.path.join('bears', 'upload'), exist_ok=True) bear_file_name_list = glob('bears/**/*Bear.py') for bear_file_name in bear_file_name_list: bear_object = next(iimport_objects( bear_file_name, attributes='kind', local=True), None) if bear_object: bear_name, _ = os.path.splitext(os.path.basename(bear_file_name)) create_file_structure_for_packages( os.path.join('bears', 'upload'), bear_file_name, bear_name) substitution_dict = {'NAME': repr(bear_name), 'VERSION': repr(VERSION), 'AUTHORS': str(bear_object.AUTHORS), 'AUTHORS_EMAILS': str(bear_object.AUTHORS_EMAILS), 'MAINTAINERS': str(bear_object.maintainers), 'MAINTAINERS_EMAILS': str(bear_object.maintainers_emails), 'PLATFORMS': str(bear_object.PLATFORMS), 'LICENSE': str(bear_object.LICENSE), 'LONG_DESCRIPTION': str(bear_object.__doc__)} create_file_from_template(os.path.join('bears', 'setup.py.in'), os.path.join('bears', 'upload', bear_name, 'setup.py'), substitution_dict) bear_dist_name = bear_name + '-' + VERSION if args.register: perform_register(os.path.join('bears', 'upload', bear_name), bear_dist_name) if args.upload: perform_upload(os.path.join('bears', 'upload', bear_name))
def main(): args = create_upload_parser().parse_args() os.makedirs(os.path.join('bears', 'upload'), exist_ok=True) bear_version = VERSION if 'dev' in bear_version: bear_version = bear_version[:bear_version.find("dev")] + ( str(int(time.time()))) else: bear_version = repr(bear_version) + '.' + str(int(time.time())) for bear_file_name in sorted(set(glob('bears/**/*Bear.py'))): bear_object = next(iimport_objects( bear_file_name, attributes='kind', local=True), None) if bear_object: bear_name, _ = os.path.splitext(os.path.basename(bear_file_name)) create_file_structure_for_packages( os.path.join('bears', 'upload'), bear_file_name, bear_name) if bear_object.REQUIREMENTS: for requirement in bear_object.REQUIREMENTS: if isinstance(requirement, PipRequirement): with open(os.path.join( 'bears', 'upload', bear_name, 'requirements.txt'), 'a') as reqtxt: reqtxt.write( requirement.package + '==' + requirement.version + '\n') if os.path.exists(os.path.join('bears', 'upload', bear_name, 'requirements.txt')): with open(os.path.join( 'bears', 'upload', bear_name, 'MANIFEST.in'), 'w') as manifest: manifest.write('include requirements.txt') substitution_dict = {'NAME': repr(bear_name), 'VERSION': bear_version, 'AUTHORS': str(bear_object.AUTHORS), 'AUTHORS_EMAILS': str(bear_object.AUTHORS_EMAILS), 'MAINTAINERS': str(bear_object.maintainers), 'MAINTAINERS_EMAILS': str(bear_object.maintainers_emails), 'PLATFORMS': str(bear_object.PLATFORMS), 'LICENSE': str(bear_object.LICENSE), 'LONG_DESCRIPTION': str(bear_object.__doc__), 'BEAR_NAME': bear_name, 'ENTRY': 'coala' + bear_name} create_file_from_template(os.path.join('bears', 'setup.py.in'), os.path.join('bears', 'upload', bear_name, 'setup.py'), substitution_dict) bear_dist_name = bear_name + '-' + bear_version if args.register: perform_register(os.path.join('bears', 'upload', bear_name), bear_dist_name) if args.upload: perform_upload(os.path.join('bears', 'upload', bear_name))