Skip to content

Commit 3aa38df

Browse files
committed
Extract ficus result source unit
1 parent 73259ed commit 3aa38df

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/App/Fossa/Analyze.hs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ import App.Fossa.Config.Analyze (
5151
import App.Fossa.Config.Analyze qualified as Config
5252
import App.Fossa.Config.Common (DestinationMeta (..), destinationApiOpts, destinationMetadata)
5353
import App.Fossa.Ficus.Analyze (analyzeWithFicus)
54+
import App.Fossa.Ficus.Types (FicusAnalysisResults (vendoredDependencyScanResults), FicusVendoredDependencyScanResults (FicusVendoredDependencyScanResults))
5455
import App.Fossa.FirstPartyScan (runFirstPartyScan)
5556
import App.Fossa.Lernie.Analyze (analyzeWithLernie)
5657
import App.Fossa.Lernie.Types (LernieResults (..))
@@ -103,7 +104,7 @@ import Data.Flag (Flag, fromFlag)
103104
import Data.Foldable (traverse_)
104105
import Data.Functor (($>))
105106
import Data.List.NonEmpty qualified as NE
106-
import Data.Maybe (fromMaybe, isJust, mapMaybe)
107+
import Data.Maybe (fromMaybe, isJust, mapMaybe, maybeToList)
107108
import Data.String.Conversion (decodeUtf8, toText)
108109
import Data.Text.Extra (showT)
109110
import Data.Traversable (for)
@@ -378,13 +379,22 @@ analyze cfg = Diag.context "fossa-analyze" $ do
378379
vsiResults' :: [SourceUnit]
379380
vsiResults' = fromMaybe [] $ join (resultToMaybe vsiResults)
380381

382+
ficusResults' :: [SourceUnit]
383+
ficusResults' =
384+
maybeToList $
385+
ficusResults
386+
>>= vendoredDependencyScanResults
387+
>>= \(FicusVendoredDependencyScanResults maybeSrcUnit) -> maybeSrcUnit
388+
381389
additionalSourceUnits :: [SourceUnit]
382-
additionalSourceUnits = vsiResults' <> mapMaybe (join . resultToMaybe) [manualSrcUnits, binarySearchResults, dynamicLinkedResults]
390+
additionalSourceUnits = vsiResults' <> ficusResults' <> mapMaybe (join . resultToMaybe) [manualSrcUnits, binarySearchResults, dynamicLinkedResults]
383391
traverse_ (Diag.flushLogs SevError SevDebug) [manualSrcUnits, binarySearchResults, dynamicLinkedResults]
384392
-- Flush logs using the original Result from VSI.
385393
traverse_ (Diag.flushLogs SevError SevDebug) [vsiResults]
386394
-- Flush logs from lernie
387395
traverse_ (Diag.flushLogs SevError SevDebug) [maybeLernieResults]
396+
-- Flush logs from ficus
397+
traverse_ (Diag.flushLogs SevError SevDebug) [maybeFicusResults]
388398

389399
maybeFirstPartyScanResults <-
390400
Diag.errorBoundaryIO . diagToDebug $

0 commit comments

Comments
 (0)