pype.misc#
- pype.misc.import_module(module_name, module_path)[source]#
Import a module from a specific path.
- Parameters:
- Returns:
Imported module object
- Raises:
ImportError – If module cannot be loaded
- Return type:
- pype.misc.generate_uid(n=4, timestamp=True)[source]#
Generate a unique identifier with timestamp and random chars.
- pype.misc.package_modules(package)[source]#
Get all Python modules in a package directory.
- Parameters:
package (ModuleType)
- Return type:
- pype.misc.package_files(package, extension)[source]#
Get all files with specific extension in a package directory.
- Parameters:
package (ModuleType)
extension (str)
- Return type:
- pype.misc.try_import(path, module_name)[source]#
Import a module, creating __init__.py if needed.
- Parameters:
- Returns:
Imported module object
- Raises:
ImportError – If module cannot be created or loaded
- Return type:
- pype.misc.get_modules(parent, subparsers, progs)[source]#
Get all modules and their parsers.
- Parameters:
parent (ModuleType)
subparsers (Any)
progs (Dict)
- Return type:
- pype.misc.get_modules_names(parent)[source]#
Get names of all valid modules in parent.
- Parameters:
parent (ModuleType)
- Return type:
- pype.misc.get_module_method(parent, module, method)[source]#
Get a specific method from a module.
- Parameters:
parent (ModuleType) – Parent module package
module (str) – Name of submodule within parent
method (str) – Name of method/function to retrieve
- Returns:
The method/function if found, None otherwise
- Return type:
Any | None
- pype.misc.bases_format(string_unit, base=1000)[source]#
Convert string with units to number of bases.
- class pype.misc.Tee(f1, f2)[source]#
Bases:
objectFile-like object that writes to two output streams simultaneously.
- class pype.misc.SubcommandHelpFormatter(prog, indent_increment=2, max_help_position=24, width=None)[source]#
Bases:
RawDescriptionHelpFormatterCustom formatter that groups subcommands by category.
- CATEGORIES = {'API Integration': ['compute_bio'], 'Diagnostics': ['validate'], 'Manage': ['profiles', 'registry'], 'Run': ['pipelines', 'snippets', 'resume'], 'Simplified': ['run']}#
- class pype.misc.DefaultHelpParser(prog=None, usage=None, description=None, epilog=None, parents=[], formatter_class=<class 'pype.argparse.HelpFormatter'>, prefix_chars='-', fromfile_prefix_chars=None, argument_default=None, conflict_handler='error', add_help=True, allow_abbrev=True, exit_on_error=True)[source]#
Bases:
ArgumentParserArgumentParser that prints help before exiting on errors.
- error(message)[source]#
Handle parse errors by printing help and exiting.
- Parameters:
message (str) – Error message to display
- Raises:
SystemExit – Always exits with code 2
- Return type:
None
- pype.misc.responsive_sleep(stop_event, duration)[source]#
Sleep with immediate exit capability via stop_event.
Sleeps for the specified duration in 1-second intervals, checking for stop event between each interval. Allows responsive shutdown in threading scenarios without waiting for the full duration.
- Parameters:
stop_event – threading.Event that when set causes immediate return
duration (int) – Number of seconds to sleep
- Return type:
None
- pype.misc.create_minimal_profile(name='minimal')[source]#
Create a minimal profile object for use with PypeLogger.
Used when a real profile object isn’t available (e.g., in listener daemon or resume mode). Provides __name__ and __path__ attributes that PypeLogger expects.
- Parameters:
name (str) – Name for the profile (default: “minimal”)
- Returns:
Module-like object with __name__ and __path__ attributes
- Return type: