MCPcopy Create free account
hub / github.com/FastLED/FastLED / __init__

Method __init__

ci/compiler/lock_manager.py:31–43  ·  view source on GitHub ↗
(self, platform_name: str)

Source from the content-addressed store, hash-verified

29 """A process lock for global package installation per board. Acquired once during first build and released after completion."""
30
31 def __init__(self, platform_name: str) -> None:
32 self.platform_name = platform_name
33
34 # Use centralized path management
35 self.paths = FastLEDPaths(platform_name)
36 # Use global lock DB (~/.fastled/locks.db)
37 home_dir = Path.home()
38 db_path = home_dir / ".fastled" / "locks.db"
39 self._db = LockDatabase(db_path)
40 self._lock_name = f"global_package:{platform_name}"
41 # Keep lock_file for backward compatibility
42 self.lock_file = self.paths.global_package_lock_file
43 self._is_acquired = False
44
45 def _check_stale_lock(self) -> bool:
46 """Check if lock is stale (dead process) and remove if stale.

Callers

nothing calls this directly

Calls 2

FastLEDPathsClass · 0.90
LockDatabaseClass · 0.90

Tested by

no test coverage detected