Coverage for src / tracekit / plugins / __init__.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-11 23:04 +0000

1"""TraceKit plugin system. 

2 

3This package provides plugin discovery, registration, and management 

4for extending TraceKit functionality. 

5 

6 

7Example: 

8 >>> from tracekit.plugins import discover_plugins, get_plugin 

9 >>> plugins = discover_plugins() 

10 >>> for plugin in plugins: 

11 ... print(f"{plugin.name} v{plugin.version}") 

12""" 

13 

14from tracekit.plugins.base import ( 

15 PluginBase, 

16 PluginCapability, 

17 PluginMetadata, 

18) 

19from tracekit.plugins.cli import ( 

20 PluginInstaller, 

21 cli_disable_plugin, 

22 cli_enable_plugin, 

23 cli_install_plugin, 

24 cli_list_plugins, 

25 cli_plugin_info, 

26 cli_validate_plugin, 

27) 

28from tracekit.plugins.discovery import ( 

29 discover_plugins, 

30 get_plugin_paths, 

31 scan_directory, 

32) 

33from tracekit.plugins.isolation import ( 

34 IsolationManager, 

35 Permission, 

36 PermissionSet, 

37 PluginSandbox, 

38 ResourceLimits, 

39 get_isolation_manager, 

40) 

41from tracekit.plugins.lifecycle import ( 

42 DependencyGraph, 

43 DependencyInfo, 

44 PluginHandle, 

45 PluginLifecycleManager, 

46 PluginLoadError, 

47 PluginState, 

48 get_lifecycle_manager, 

49 set_plugin_directories, 

50) 

51from tracekit.plugins.manager import ( 

52 PluginManager, 

53 get_plugin_manager, 

54 reset_plugin_manager, 

55) 

56from tracekit.plugins.registry import ( 

57 PluginRegistry, 

58 get_plugin, 

59 get_plugin_registry, 

60 is_compatible, 

61 list_plugins, 

62 register_plugin, 

63) 

64from tracekit.plugins.versioning import ( 

65 Migration, 

66 MigrationManager, 

67 VersionCompatibilityLayer, 

68 VersionRange, 

69 get_migration_manager, 

70) 

71 

72__all__ = [ 

73 # Base 

74 "DependencyGraph", 

75 "DependencyInfo", 

76 # CLI (PLUG-007) 

77 "IsolationManager", 

78 # Isolation (PLUG-004) 

79 "Migration", 

80 "MigrationManager", 

81 "Permission", 

82 "PermissionSet", 

83 "PluginBase", 

84 "PluginCapability", 

85 # Lifecycle 

86 "PluginHandle", 

87 "PluginInstaller", 

88 "PluginLifecycleManager", 

89 "PluginLoadError", 

90 # Manager 

91 "PluginManager", 

92 "PluginMetadata", 

93 # Registry 

94 "PluginRegistry", 

95 "PluginSandbox", 

96 "PluginState", 

97 "ResourceLimits", 

98 # Versioning (PLUG-003) 

99 "VersionCompatibilityLayer", 

100 "VersionRange", 

101 "cli_disable_plugin", 

102 "cli_enable_plugin", 

103 "cli_install_plugin", 

104 "cli_list_plugins", 

105 "cli_plugin_info", 

106 "cli_validate_plugin", 

107 # Discovery 

108 "discover_plugins", 

109 "get_isolation_manager", 

110 "get_lifecycle_manager", 

111 "get_migration_manager", 

112 "get_plugin", 

113 "get_plugin_manager", 

114 "get_plugin_paths", 

115 "get_plugin_registry", 

116 "is_compatible", 

117 "list_plugins", 

118 "register_plugin", 

119 "reset_plugin_manager", 

120 "scan_directory", 

121 "set_plugin_directories", 

122]