[Concept,02/24] pickman: Move imports to top of control.py

Message ID 20251217022823.392557-3-sjg@u-boot.org
State New
Headers
Series pickman: Refine the feature set |

Commit Message

Simon Glass Dec. 17, 2025, 2:27 a.m. UTC
  From: Simon Glass <simon.glass@canonical.com>

Move datetime, re, and time imports from inside functions to the top
of the file, following Python style guidelines.

Also fix a few pylint warnings while here.

Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
---

 tools/pickman/control.py | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)
  

Patch

diff --git a/tools/pickman/control.py b/tools/pickman/control.py
index 96b014dfeca..0353bae9350 100644
--- a/tools/pickman/control.py
+++ b/tools/pickman/control.py
@@ -6,8 +6,11 @@ 
 """Control module for pickman - handles the main logic."""
 
 from collections import namedtuple
+from datetime import date
 import os
+import re
 import sys
+import time
 import unittest
 
 # Allow 'from pickman import xxx' to work via symlink
@@ -61,9 +64,9 @@  def compare_branches(master, source):
 
     # Get details about the merge-base commit
     info = run_git(['log', '-1', '--format=%H%n%h%n%s%n%ci', base])
-    full_hash, short_hash, subject, date = info.split('\n')
+    full_hash, short_hash, subject, commit_date = info.split('\n')
 
-    return count, Commit(full_hash, short_hash, subject, date)
+    return count, Commit(full_hash, short_hash, subject, commit_date)
 
 
 def do_add_source(args, dbs):
@@ -242,8 +245,6 @@  def format_history_summary(source, commits, branch_name):
     Returns:
         str: Formatted summary text
     """
-    from datetime import date
-
     commit_list = '\n'.join(
         f'- {c.short_hash} {c.subject}'
         for c in commits
@@ -266,9 +267,6 @@  def write_history(source, commits, branch_name, conversation_log):
         branch_name (str): Name of the cherry-pick branch
         conversation_log (str): The agent's conversation output
     """
-    import os
-    import re
-
     summary = format_history_summary(source, commits, branch_name)
     entry = f"""{summary}
 
@@ -522,8 +520,6 @@  def parse_mr_description(description):
     Returns:
         tuple: (source_branch, last_commit_hash) or (None, None) if not parseable
     """
-    import re
-
     # Extract source branch from "## date: source_branch" line
     source_match = re.search(r'^## [^:]+: (.+)$', description, re.MULTILINE)
     if not source_match:
@@ -664,8 +660,6 @@  def do_poll(args, dbs):
     Returns:
         int: 0 on success (never returns unless interrupted)
     """
-    import time
-
     interval = args.interval
     tout.info(f'Polling every {interval} seconds (Ctrl+C to stop)...')
     tout.info('')