@@ -39,10 +39,9 @@ object AnalyzeDependencyGraph {
3939 """
4040
4141 val commands : Seq [Command ] = Seq (
42- Command (AnalyzeDependencies ,
43- (AnalyzeDependenciesUsage , AnalyzeDependenciesDetail ),
44- AnalyzeDependenciesDetail
45- )(parser)(analyzeDependencies)
42+ Command (AnalyzeDependencies , (AnalyzeDependenciesUsage , AnalyzeDependenciesDetail ), AnalyzeDependenciesDetail )(
43+ parser
44+ )(analyzeDependencies)
4645 )
4746
4847 private def parser (state : State ): Parser [AnalysisParams ] =
@@ -53,7 +52,7 @@ object AnalyzeDependencyGraph {
5352 }
5453 }.failOnException
5554
56- private def analyzeDependencies (state : State , params : AnalysisParams ) : State =
55+ private def analyzeDependencies (state : State , params : AnalysisParams ): State =
5756 (for {
5857 repo <- params.repository.orElse(getGitHubRepo)
5958 vulnerabilities <- downloadAlerts(state, repo) match {
@@ -62,8 +61,7 @@ object AnalyzeDependencyGraph {
6261 state.log.error(s " Failed to download alerts: ${e.getMessage}" )
6362 None
6463 }
65- } yield (analyzeCves(state, vulnerabilities))
66- ).getOrElse(state)
64+ } yield analyzeCves(state, vulnerabilities)).getOrElse(state)
6765
6866 private def analyzeCves (state : State , vulnerabilities : Seq [Vulnerability ]): State = {
6967 val artifacts = getAllArtifacts(state)
@@ -101,10 +99,10 @@ object AnalyzeDependencyGraph {
10199 }
102100
103101 case class Vulnerability (
104- packageId : String ,
105- vulnerableVersionRange : String ,
106- firstPatchedVersion : String ,
107- severity : String
102+ packageId : String ,
103+ vulnerableVersionRange : String ,
104+ firstPatchedVersion : String ,
105+ severity : String
108106 ) {
109107 def severityColor : String = severity match {
110108 case " critical" => Console .RED
@@ -162,15 +160,18 @@ object AnalyzeDependencyGraph {
162160 VersionNumber (translateToSemVer(versionStr)).matchesSemVer(SemanticSelector (translateToSemVer(range)))
163161 }
164162
165- private def vulnerabilityMatchesArtifacts (alert : Vulnerability , artifacts : Seq [String ]): (Seq [String ], Seq [String ]) = {
166- val alertMavenPath = s " pkg:maven/ ${alert.packageId.replace(" :" , " /" )}@ "
167- artifacts
168- .filter(_.startsWith(alertMavenPath))
169- .partition { artifact =>
170- val version = artifact.replaceAll(" .*@" , " " )
171- versionMatchesRange(version, alert.vulnerableVersionRange)
172- }
173- }
163+ private def vulnerabilityMatchesArtifacts (
164+ alert : Vulnerability ,
165+ artifacts : Seq [String ]
166+ ): (Seq [String ], Seq [String ]) = {
167+ val alertMavenPath = s " pkg:maven/ ${alert.packageId.replace(" :" , " /" )}@ "
168+ artifacts
169+ .filter(_.startsWith(alertMavenPath))
170+ .partition { artifact =>
171+ val version = artifact.replaceAll(" .*@" , " " )
172+ versionMatchesRange(version, alert.vulnerableVersionRange)
173+ }
174+ }
174175
175176 def getGitHubRepo : Option [String ] = {
176177 val remoteUrl = " git config --get remote.origin.url" .!! .trim
@@ -211,5 +212,5 @@ object AnalyzeDependencyGraph {
211212 }
212213 }
213214
214- private def githubToken (): String = Properties .envOrElse(" GITHUB_TOKEN" , " " )
215+ private def githubToken (): String = Properties .envOrElse(" GITHUB_TOKEN" , " " )
215216}
0 commit comments