equal
deleted
inserted
replaced
501 |
501 |
502 |
502 |
503 @classmethod |
503 @classmethod |
504 def available_cubes(cls): |
504 def available_cubes(cls): |
505 cubes = set() |
505 cubes = set() |
|
506 prefix = 'cubicweb_' |
506 for entry_point in pkg_resources.iter_entry_points( |
507 for entry_point in pkg_resources.iter_entry_points( |
507 group='cubicweb.cubes', name=None): |
508 group='cubicweb.cubes', name=None): |
508 try: |
509 try: |
509 module = entry_point.load() |
510 module = entry_point.load() |
510 except ImportError: |
511 except ImportError: |
511 continue |
512 continue |
512 else: |
513 else: |
513 modname = module.__name__ |
514 modname = module.__name__ |
514 if not modname.startswith('cubicweb_'): |
515 if not modname.startswith(prefix): |
515 cls.warning('entry point %s does not appear to be a cube', |
516 cls.warning('entry point %s does not appear to be a cube', |
516 entry_point) |
517 entry_point) |
517 continue |
518 continue |
518 cubes.add(modname) |
519 cubes.add(modname[len(prefix):]) |
519 # Legacy cubes. |
520 # Legacy cubes. |
520 for directory in cls.cubes_search_path(): |
521 for directory in cls.cubes_search_path(): |
521 if not exists(directory): |
522 if not exists(directory): |
522 cls.error('unexistant directory in cubes search path: %s' |
523 cls.error('unexistant directory in cubes search path: %s' |
523 % directory) |
524 % directory) |