@@ -1226,7 +1226,6 @@ def _find_project_root(self):
12261226 """
12271227 Find the project root directory by looking for setup.py, pyproject.toml, or .git
12281228 """
1229-
12301229 current_dir = Path.cwd()
12311230 module_dir = Path(__file__).parent.parent
12321231 search_paths = [current_dir, module_dir]
@@ -2392,7 +2391,6 @@ def get_actual_current_site_packages(self) -> Path:
23922391 This is more reliable than calculating it from sys.prefix when hotswapping is involved.
23932392 Cross-platform compatible with special handling for Windows.
23942393 """
2395-
23962394 is_windows = platform.system() == "Windows"
23972395
23982396 try:
@@ -2513,7 +2511,6 @@ def _get_paths_for_interpreter(self, python_exe_path: str) -> Optional[Dict[str,
25132511 Runs an interpreter in a subprocess to ask for its version and calculates its site-packages path.
25142512 This is the only reliable way to get paths for an interpreter that isn't the currently running one.
25152513 """
2516-
25172514 try:
25182515 # Step 1: Get version and prefix (this part works fine)
25192516 cmd = [
@@ -2634,7 +2631,6 @@ def _first_time_setup(self, interactive=True) -> Dict:
26342631
26352632 AUTO-DETECTS non-interactive environments (Docker, CI, piped input, etc.)
26362633 """
2637-
26382634 # ============================================================================
26392635 # CRITICAL: Auto-detect non-interactive environments
26402636 # ============================================================================
@@ -3209,7 +3205,6 @@ def _extract_version_from_path(self, exe_path: Path) -> Optional[str]:
32093205 - /path/to/.omnipkg/interpreters/cpython-3.10-managed/bin/python3.10 → "3.10"
32103206 - /path/to/bin/python3.11 → "3.11"
32113207 """
3212-
32133208 # Try to extract from the executable name itself
32143209 match = re.search(r'python(\d+\.\d+)', exe_path.name)
32153210 if match:
@@ -5054,7 +5049,6 @@ def _get_import_candidates_for_bubble(
50545049 (Authoritative) Finds import candidates by reading top_level.txt from the
50555050 package's .dist-info directory. Handles PyPI's inconsistent naming conventions.
50565051 """
5057-
50585052 # Strategy 1: Find ANY .dist-info directory that might match this package
50595053 version = pkg_info["version"]
50605054 canonical = canonicalize_name(pkg_name)
@@ -5221,7 +5215,6 @@ def _fix_bubble_import_failures(
52215215
52225216 def _extract_missing_module_name(self, error_msg: str) -> str:
52235217 """Extract the specific missing module name from error messages."""
5224-
52255218 # Try different patterns for extracting module names
52265219 patterns = [
52275220 r"No module named '([^']+)'",
@@ -6359,7 +6352,6 @@ def _self_heal_omnipkg_installation(self):
63596352 2. Managed interpreters (in .omnipkg/) NEVER trigger syncs
63606353 3. On Windows, extra conservative - can be disabled entirely
63616354 """
6362-
63636355 overall_start = time.perf_counter_ns()
63646356
63656357 # === SAFETY CHECK 1: Determine if we're the native interpreter ===
@@ -9185,7 +9177,6 @@ def show_package_info(
91859177 """
91869178 Enhanced package data display with interactive selection.
91879179 """
9188-
91899180 c_name = canonicalize_name(pkg_name)
91909181
91919182 # Find all installations
@@ -12112,7 +12103,6 @@ def _schedule_background_kb_scan(self, bubble_paths: Dict[str, Path], python_ver
1211212103 """
1211312104 Launches a non-blocking background process to scan nested packages inside bubbles.
1211412105 """
12115-
1211612106 bubble_list = [f"{name}:{path}" for name, path in bubble_paths.items()]
1211712107
1211812108 # Create a background scan script
@@ -13227,7 +13217,6 @@ def _register_package_in_knowledge_base(
1322713217
1322813218 def _get_current_timestamp(self) -> str:
1322913219 """Helper to get current timestamp for knowledge base entries."""
13230-
1323113220 return datetime.datetime.now().isoformat()
1323213221
1323313222 def _find_package_installations(
0 commit comments