Skip to content

Commit db32f05

Browse files
committed
deps: Upgrade ORT to version 54.0.0
Note that this ORT release concludes the plugin API migration and requires package manager adaptions. Signed-off-by: Sebastian Schuberth <[email protected]>
1 parent 9291413 commit db32f05

File tree

5 files changed

+35
-27
lines changed

5 files changed

+35
-27
lines changed

build.gradle.kts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ plugins {
4040
alias(libs.plugins.detekt)
4141
alias(libs.plugins.ideaExt)
4242
alias(libs.plugins.kotlin)
43+
alias(libs.plugins.ksp)
4344
alias(libs.plugins.shadow)
4445
}
4546

@@ -144,6 +145,9 @@ dependencies {
144145

145146
implementation(libs.log4jApiKotlin)
146147

148+
ksp(libs.ortAnalyzer)
149+
ksp(libs.ortPluginCompiler)
150+
147151
"analyzerCliClasspath"(libs.ortAnalyzerCommand)
148152
"analyzerCliClasspath"(libs.ortCli)
149153

@@ -161,6 +165,10 @@ detekt {
161165
tasks.withType<Detekt>().configureEach {
162166
jvmTarget = maxKotlinJvmTarget.target
163167

168+
exclude {
169+
"/build/generated/" in it.file.absoluteFile.invariantSeparatorsPath
170+
}
171+
164172
reports {
165173
xml.required.set(false)
166174
html.required.set(false)

gradle/libs.versions.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,20 @@
22
detektPlugin = "1.23.8"
33
ideaExtPlugin = "1.1.10"
44
kotlinPlugin = "2.1.10"
5+
kspPlugin = "2.1.10-1.0.31"
56
shadowPlugin = "8.3.6"
67

78
kotest = "5.9.1"
89
log4jApi = "2.24.3"
910
log4jApiKotlin = "1.5.0"
1011
logback = "1.5.17"
11-
ort = "53.0.0"
12+
ort = "54.0.0"
1213

1314
[plugins]
1415
detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detektPlugin" }
1516
ideaExt = { id = "org.jetbrains.gradle.plugin.idea-ext", version.ref = "ideaExtPlugin" }
1617
kotlin = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlinPlugin" }
18+
ksp = { id = "com.google.devtools.ksp", version.ref = "kspPlugin" }
1719
shadow = { id = "com.gradleup.shadow", version.ref = "shadowPlugin" }
1820

1921
[libraries]
@@ -28,4 +30,5 @@ ortAnalyzerCommand = { module = "org.ossreviewtoolkit.plugins.commands:analyzer-
2830
ortCli = { module = "org.ossreviewtoolkit:cli", version.ref = "ort" }
2931
ortDetektRules = { module = "org.ossreviewtoolkit:detekt-rules", version.ref = "ort" }
3032
ortModel = { module = "org.ossreviewtoolkit:model", version.ref = "ort" }
33+
ortPluginCompiler = { module = "org.ossreviewtoolkit.plugins:compiler", version.ref = "ort" }
3134
ortTestUtils = { module = "org.ossreviewtoolkit.utils:test-utils", version.ref = "ort" }

src/funTest/kotlin/MyPackageManagerFunTest.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,14 @@ import io.kotest.matchers.collections.shouldHaveSingleElement
2424

2525
import java.io.File
2626

27-
import org.ossreviewtoolkit.analyzer.create
2827
import org.ossreviewtoolkit.analyzer.resolveSingleProject
2928

3029
class MyPackageManagerFunTest : WordSpec({
3130
"Resolving project dependencies" should {
3231
"return an empty list of issues" {
3332
val definitionFile = File("funTest/kotlin/resources/MyPackageManager.DefinitionFile").absoluteFile
3433

35-
val result = create("MyPackageManager").resolveSingleProject(definitionFile)
34+
val result = MyPackageManagerFactory.create().resolveSingleProject(definitionFile)
3635

3736
result.issues shouldHaveSingleElement { it.message == "Not yet implemented." }
3837
}

src/main/kotlin/MyPackageManager.kt

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -21,35 +21,34 @@ package org.ossreviewtoolkit.plugins.packagemanagers.mypackagemanager
2121

2222
import java.io.File
2323

24-
import org.ossreviewtoolkit.analyzer.AbstractPackageManagerFactory
2524
import org.ossreviewtoolkit.analyzer.PackageManager
25+
import org.ossreviewtoolkit.analyzer.PackageManagerFactory
2626
import org.ossreviewtoolkit.model.Project
2727
import org.ossreviewtoolkit.model.ProjectAnalyzerResult
2828
import org.ossreviewtoolkit.model.config.AnalyzerConfiguration
29-
import org.ossreviewtoolkit.model.config.RepositoryConfiguration
29+
import org.ossreviewtoolkit.model.config.Excludes
3030
import org.ossreviewtoolkit.model.createAndLogIssue
31-
31+
import org.ossreviewtoolkit.plugins.api.OrtPlugin
32+
import org.ossreviewtoolkit.plugins.api.PluginDescriptor
33+
34+
@OrtPlugin(
35+
displayName = "My Package Manager",
36+
description = "A template for implementing an ORT package manager plugin.",
37+
factory = PackageManagerFactory::class
38+
)
3239
class MyPackageManager(
33-
name: String,
34-
analysisRoot: File,
35-
analyzerConfig: AnalyzerConfiguration,
36-
repoConfig: RepositoryConfiguration
37-
) : PackageManager(name, "MyProjectType", analysisRoot, analyzerConfig, repoConfig) {
38-
class Factory : AbstractPackageManagerFactory<MyPackageManager>("MyPackageManager") {
39-
override val globsForDefinitionFiles = listOf("MyPackageManager.DefinitionFile")
40-
41-
override fun create(
42-
analysisRoot: File,
43-
analyzerConfig: AnalyzerConfiguration,
44-
repoConfig: RepositoryConfiguration
45-
) = MyPackageManager(type, analysisRoot, analyzerConfig, repoConfig)
46-
}
47-
48-
override fun resolveDependencies(definitionFile: File, labels: Map<String, String>): List<ProjectAnalyzerResult> {
49-
val issue = createAndLogIssue(
50-
source = managerName,
51-
message = "Not yet implemented."
52-
)
40+
override val descriptor: PluginDescriptor = MyPackageManagerFactory.descriptor
41+
) : PackageManager("MyProjectType") {
42+
override val globsForDefinitionFiles = listOf("MyPackageManager.DefinitionFile")
43+
44+
override fun resolveDependencies(
45+
analysisRoot: File,
46+
definitionFile: File,
47+
excludes: Excludes,
48+
analyzerConfig: AnalyzerConfiguration,
49+
labels: Map<String, String>
50+
): List<ProjectAnalyzerResult> {
51+
val issue = createAndLogIssue("Not yet implemented.")
5352

5453
val result = ProjectAnalyzerResult(
5554
project = Project.EMPTY,

src/main/resources/META-INF/services/org.ossreviewtoolkit.analyzer.PackageManagerFactory

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)