Updated operations.py
Operation functions now take the transaction object as an input. Annotation is provided using the TYPE_CHECKING constant. Added more logging statements.
This commit is contained in:
parent
f312a85353
commit
8dc0e10969
|
|
@ -1,15 +1,22 @@
|
|||
import sys
|
||||
import clog
|
||||
import typing
|
||||
import soypak.deps.bottler as bottler
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
import soypak.deps.transaction as transaction
|
||||
|
||||
|
||||
_log = clog.Logger.get("runtime_logger")
|
||||
|
||||
|
||||
def install_packages(pkgs: list[bottler.PackageItem]):
|
||||
def install_packages(tx: transaction.Transaction, pkgs: list[bottler.PackageItem]):
|
||||
_log.debug(f"The transaction goal is {tx.pkg_goal=}. Attempting to perform installation.")
|
||||
if not isinstance(pkgs, bottler.PackageItem):
|
||||
_log.error(f"TypeError: {pkgs=}, expected list[PackageItem].")
|
||||
_log.printLog("There was an issue when operating on the transaction.", level=4)
|
||||
sys.exit(1)
|
||||
|
||||
# :@TODO: install the damned things!
|
||||
|
||||
_log.debug("Installation of packages is complete. Ensure to resolve problems within the transaction.")
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user