@@ -28,7 +28,9 @@ def _is_sha(current_version: str) -> bool:
2828
2929class GithubActionsTools (object ):
3030 _wf_cache : dict [str , dict [str , Any ]] = dict () # repo_name -> [path -> workflow/yaml]
31- __actions_latest_release : dict [str , Tuple [str , datetime ]] = dict () # action_name@current_release -> latest_release_tag
31+ __actions_latest_release : dict [str , Tuple [str , datetime ]] = (
32+ dict ()
33+ ) # action_name@current_release -> latest_release_tag
3234
3335 def __init__ (self , github_token : str , update_major_version_only : bool = False ):
3436 self .client = Github (login_or_token = github_token )
@@ -73,7 +75,7 @@ def _compare_versions(self, orig_v1: str, orig_v2: str) -> int:
7375
7476 def get_action_latest_release (self , uses_tag_value : str ) -> Optional [str ]:
7577 """Check whether an action has an update, and return the latest version if it does syntax for uses:
76- https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iduses
78+ https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iduses
7779 """
7880 if "@" not in uses_tag_value :
7981 return None
@@ -82,7 +84,9 @@ def get_action_latest_release(self, uses_tag_value: str) -> Optional[str]:
8284 latest_release = self .__actions_latest_release [action_name ]
8385 logging .debug (f"Found in cache { action_name } : { latest_release } " )
8486 if _is_sha (current_version ):
85- logging .debug (f"Current version for { action_name } is a SHA: { current_version } , checking whether latest release is newer" )
87+ logging .debug (
88+ f"Current version for { action_name } is a SHA: { current_version } , checking whether latest release is newer"
89+ )
8690 now = datetime .now (timezone .utc )
8791 release_time = latest_release [1 ]
8892 if release_time .tzinfo is None :
@@ -94,7 +98,7 @@ def get_action_latest_release(self, uses_tag_value: str) -> Optional[str]:
9498 logging .debug (f"Checking for updates for { action_name } @{ current_version } : Getting repo { action_name } " )
9599 try :
96100 repo : Repository = self ._get_repo (action_name )
97- except ValueError as e :
101+ except ValueError :
98102 return None
99103 logging .info (f"Getting latest release for repository: { action_name } " )
100104 latest_release : GitRelease
@@ -108,13 +112,20 @@ def get_action_latest_release(self, uses_tag_value: str) -> Optional[str]:
108112
109113 if _is_sha (current_version ):
110114 logging .debug (
111- f"Current version for { action_name } is a SHA: { current_version } , checking whether latest release is newer" )
115+ f"Current version for { action_name } is a SHA: { current_version } , checking whether latest release is newer"
116+ )
112117 current_version_commit = repo .get_commit (current_version )
113118 if latest_release .last_modified_datetime > current_version_commit .last_modified_datetime :
114- self .__actions_latest_release [action_name ] = self ._fix_version (latest_release .tag_name ), latest_release .last_modified_datetime
119+ self .__actions_latest_release [action_name ] = (
120+ self ._fix_version (latest_release .tag_name ),
121+ latest_release .last_modified_datetime ,
122+ )
115123 return latest_release .tag_name
116124 if self ._compare_versions (latest_release .tag_name , current_version ) > 0 :
117- self .__actions_latest_release [action_name ] = self ._fix_version (latest_release .tag_name ), latest_release .last_modified_datetime
125+ self .__actions_latest_release [action_name ] = (
126+ self ._fix_version (latest_release .tag_name ),
127+ latest_release .last_modified_datetime ,
128+ )
118129 return latest_release .tag_name
119130 return None
120131
@@ -140,13 +151,13 @@ def get_workflow_action_names(self, repo_name: str, workflow_path: str) -> Set[s
140151
141152 def get_repo_actions_latest (self , repo_name : str ) -> Dict [str , List [ActionVersion ]]:
142153 workflow_paths = self ._get_github_workflow_filenames (repo_name )
143- res :Dict [str , List [ActionVersion ]] = dict ()
144- actions_per_path :Dict [str ,Set [str ]]= dict () # actions without version, e.g., actions/checkout
154+ res : Dict [str , List [ActionVersion ]] = dict ()
155+ actions_per_path : Dict [str , Set [str ]] = dict () # actions without version, e.g., actions/checkout
145156 for path in workflow_paths :
146157 res [path ] = list ()
147158 actions = self .get_workflow_action_names (repo_name , path )
148159 for action in actions :
149- actions_per_path .setdefault (path ,set ()).add (action )
160+ actions_per_path .setdefault (path , set ()).add (action )
150161 all_actions_no_version = set ()
151162 for path , actions in actions_per_path .items ():
152163 for action in actions :
@@ -176,11 +187,11 @@ def get_repo_workflow_names(self, repo_name: str) -> Dict[str, str]:
176187 return res
177188
178189 def update_actions (
179- self ,
180- repo_name : str ,
181- workflow_path : str ,
182- updates : List [ActionVersion ],
183- commit_msg : str ,
190+ self ,
191+ repo_name : str ,
192+ workflow_path : str ,
193+ updates : List [ActionVersion ],
194+ commit_msg : str ,
184195 ) -> None :
185196 workflow_content = self ._get_workflow_file_content (repo_name , workflow_path )
186197 if isinstance (workflow_content , bytes ):
0 commit comments