From 1578976f08e296b4e5073690d4f9d689d55c8519 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Fory=C5=9B?= Date: Wed, 16 Apr 2025 06:43:16 +0000 Subject: [PATCH 1/2] replace panic in gitextractor with error handling. --- backend/plugins/gitextractor/tasks/repo_cloner.go | 3 ++- backend/plugins/gitextractor/tasks/repo_collector.go | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/backend/plugins/gitextractor/tasks/repo_cloner.go b/backend/plugins/gitextractor/tasks/repo_cloner.go index c7284110525..18cb61e1e17 100644 --- a/backend/plugins/gitextractor/tasks/repo_cloner.go +++ b/backend/plugins/gitextractor/tasks/repo_cloner.go @@ -39,7 +39,8 @@ var CloneGitRepoMeta = plugin.SubTaskMeta{ func CloneGitRepo(subTaskCtx plugin.SubTaskContext) errors.Error { taskData, ok := subTaskCtx.GetData().(*parser.GitExtractorTaskData) if !ok { - panic("git repo reference not found on context") + subTaskCtx.GetLogger().Error("git repo reference not found on context") + return errors.Default.New("git repo reference not found on context") } op := taskData.Options storage := store.NewDatabase(subTaskCtx, op.RepoId) diff --git a/backend/plugins/gitextractor/tasks/repo_collector.go b/backend/plugins/gitextractor/tasks/repo_collector.go index 23fbe173455..2b728b59c03 100644 --- a/backend/plugins/gitextractor/tasks/repo_collector.go +++ b/backend/plugins/gitextractor/tasks/repo_collector.go @@ -84,10 +84,12 @@ func CollectGitDiffLines(subTaskCtx plugin.SubTaskContext) errors.Error { func getGitRepo(subTaskCtx plugin.SubTaskContext) parser.RepoCollector { taskData, ok := subTaskCtx.GetData().(*parser.GitExtractorTaskData) if !ok { - panic("git repo reference not found on context") + subTaskCtx.GetLogger().Error("git repo reference not found on context") + return nil } if taskData.GitRepo == nil { - panic("git repo is empty, please check subtask: clone repo") + subTaskCtx.GetLogger().Error("git repo is empty, skipping Collect Commits subtask") + return nil } return taskData.GitRepo } From f28945b41b704a428baa315ccfc87b36287fe599 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Fory=C5=9B?= Date: Thu, 17 Apr 2025 06:52:06 +0000 Subject: [PATCH 2/2] Fix subTaskCtx.GetLogger().Error arguments --- backend/plugins/gitextractor/tasks/repo_cloner.go | 2 +- backend/plugins/gitextractor/tasks/repo_collector.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/plugins/gitextractor/tasks/repo_cloner.go b/backend/plugins/gitextractor/tasks/repo_cloner.go index 18cb61e1e17..d4efd278d9d 100644 --- a/backend/plugins/gitextractor/tasks/repo_cloner.go +++ b/backend/plugins/gitextractor/tasks/repo_cloner.go @@ -39,7 +39,7 @@ var CloneGitRepoMeta = plugin.SubTaskMeta{ func CloneGitRepo(subTaskCtx plugin.SubTaskContext) errors.Error { taskData, ok := subTaskCtx.GetData().(*parser.GitExtractorTaskData) if !ok { - subTaskCtx.GetLogger().Error("git repo reference not found on context") + subTaskCtx.GetLogger().Error(nil, "git repo reference not found on context") return errors.Default.New("git repo reference not found on context") } op := taskData.Options diff --git a/backend/plugins/gitextractor/tasks/repo_collector.go b/backend/plugins/gitextractor/tasks/repo_collector.go index 2b728b59c03..42da505519f 100644 --- a/backend/plugins/gitextractor/tasks/repo_collector.go +++ b/backend/plugins/gitextractor/tasks/repo_collector.go @@ -84,11 +84,11 @@ func CollectGitDiffLines(subTaskCtx plugin.SubTaskContext) errors.Error { func getGitRepo(subTaskCtx plugin.SubTaskContext) parser.RepoCollector { taskData, ok := subTaskCtx.GetData().(*parser.GitExtractorTaskData) if !ok { - subTaskCtx.GetLogger().Error("git repo reference not found on context") + subTaskCtx.GetLogger().Error(nil, "git repo reference not found on context") return nil } if taskData.GitRepo == nil { - subTaskCtx.GetLogger().Error("git repo is empty, skipping Collect Commits subtask") + subTaskCtx.GetLogger().Error(nil, "git repo is empty, skipping Collect Commits subtask") return nil } return taskData.GitRepo