From 34580978aadd1f1f979778b6a114dc1fd5f86994 Mon Sep 17 00:00:00 2001
From: David Douard <david.douard@sdfa3.org>
Date: Fri, 7 Mar 2025 12:17:44 +0100
Subject: [PATCH] cli: Fix the 'run' command for package loaders

The visit is expected to be kept as an attribute of the 'run' cli
command, so make it be the case for package loaders as well.

This probably should be properly handled at interface level as well...
---
 swh/loader/package/loader.py | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/swh/loader/package/loader.py b/swh/loader/package/loader.py
index 13c6ae48..07b05e4e 100644
--- a/swh/loader/package/loader.py
+++ b/swh/loader/package/loader.py
@@ -587,7 +587,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
         origin = Origin(url=self.origin.url)
         try:
             self.storage.origin_add([origin])
-            visit = list(
+            self.visit = list(
                 self.storage.origin_visit_add(
                     [
                         OriginVisit(
@@ -616,7 +616,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
             sentry_sdk.capture_exception(e)
             return self.finalize_visit(
                 snapshot=snapshot,
-                visit=visit,
+                visit=self.visit,
                 failed_branches=failed_branches,
                 status_visit="failed",
                 status_load="failed",
@@ -631,7 +631,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
         except NotFound as e:
             return self.finalize_visit(
                 snapshot=snapshot,
-                visit=visit,
+                visit=self.visit,
                 failed_branches=failed_branches,
                 status_visit="not_found",
                 status_load="failed",
@@ -642,7 +642,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
             sentry_sdk.capture_exception(e)
             return self.finalize_visit(
                 snapshot=snapshot,
-                visit=visit,
+                visit=self.visit,
                 failed_branches=failed_branches,
                 status_visit="failed",
                 status_load="failed",
@@ -784,7 +784,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
             logger.error("Failed to load any release for %s", self.origin.url)
             return self.finalize_visit(
                 snapshot=snapshot,
-                visit=visit,
+                visit=self.visit,
                 failed_branches=failed_branches,
                 status_visit="failed",
                 status_load="failed",
@@ -848,7 +848,7 @@ class PackageLoader(BaseLoader, Generic[TPackageInfo]):
 
         return self.finalize_visit(
             snapshot=snapshot,
-            visit=visit,
+            visit=self.visit,
             failed_branches=failed_branches,
             status_visit=self.status_visit,
             status_load=self.status_load,
-- 
GitLab