diff --git a/api/src/main/kotlin/io/spine/protodata/ast/FilePatternFactory.kt b/api/src/main/kotlin/io/spine/protodata/ast/FilePatternFactory.kt index 60362d90e..559232573 100644 --- a/api/src/main/kotlin/io/spine/protodata/ast/FilePatternFactory.kt +++ b/api/src/main/kotlin/io/spine/protodata/ast/FilePatternFactory.kt @@ -1,5 +1,5 @@ /* - * Copyright 2024, TeamDev. All rights reserved. + * Copyright 2025, TeamDev. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,11 +41,21 @@ public object FilePatternFactory { suffix = value } + /** + * Creates a new [FilePattern] with the [infix][FilePattern.getInfix] field filled. + */ + public fun infix(value: String): FilePattern = filePattern { + value.checkNotBlank("infix") + infix = value + } + /** * Creates a new [FilePattern] with the [prefix][FilePattern.getPrefix] field filled. */ + @Deprecated(message = "Please use `infix` instead.", ReplaceWith("infix(value)")) public fun prefix(value: String): FilePattern = filePattern { value.checkNotBlank("prefix") + @Suppress("DEPRECATION") // Supporting for backward compatibility. prefix = value } @@ -59,7 +69,7 @@ public object FilePatternFactory { private fun String.checkNotBlank(name: String) { require(isNotBlank()) { - "File pattern $name cannot be empty or blank: `$this`." + "The file pattern `$name` cannot be empty or blank. Encountered: `$this`." } } } diff --git a/api/src/main/kotlin/io/spine/protodata/ast/FilePatterns.kt b/api/src/main/kotlin/io/spine/protodata/ast/FilePatterns.kt index b0cd30cf5..011523956 100644 --- a/api/src/main/kotlin/io/spine/protodata/ast/FilePatterns.kt +++ b/api/src/main/kotlin/io/spine/protodata/ast/FilePatterns.kt @@ -1,5 +1,5 @@ /* - * Copyright 2024, TeamDev. All rights reserved. + * Copyright 2025, TeamDev. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,8 +29,8 @@ package io.spine.protodata.ast import io.spine.protodata.ast.FilePattern.KindCase.KIND_NOT_SET -import io.spine.protodata.ast.FilePattern.KindCase.PREFIX import io.spine.protodata.ast.FilePattern.KindCase.REGEX +import io.spine.protodata.ast.FilePattern.KindCase.INFIX import io.spine.protodata.ast.FilePattern.KindCase.SUFFIX /** @@ -38,8 +38,10 @@ import io.spine.protodata.ast.FilePattern.KindCase.SUFFIX */ public fun FilePattern.matches(file: File): Boolean { val path = file.path + @Suppress("DEPRECATION") // Support the `PREFIX` kind for backward compatibility. return when (kindCase) { - PREFIX -> path.startsWith(prefix) + io.spine.protodata.ast.FilePattern.KindCase.PREFIX -> path.startsWith(prefix) + INFIX -> path.contains(infix) SUFFIX -> path.endsWith(suffix) REGEX -> path.matches(Regex(regex)) KIND_NOT_SET -> false diff --git a/api/src/main/kotlin/io/spine/protodata/ast/FilesAndPaths.kt b/api/src/main/kotlin/io/spine/protodata/ast/FilesAndPaths.kt index 229e93408..af8a93bbd 100644 --- a/api/src/main/kotlin/io/spine/protodata/ast/FilesAndPaths.kt +++ b/api/src/main/kotlin/io/spine/protodata/ast/FilesAndPaths.kt @@ -24,6 +24,8 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +@file:Suppress("TooManyFunctions") // ... we need for relative and absolute paths. + package io.spine.protodata.ast import io.spine.protodata.util.Format @@ -33,14 +35,20 @@ import kotlin.io.path.Path import kotlin.io.path.absolutePathString import kotlin.io.path.name import kotlin.io.path.nameWithoutExtension +import kotlin.io.path.pathString /** * Converts the given path to a [File] message containing an absolute version of this path. */ -public fun Path.toProto(): File = file { +public fun Path.toAbsoluteFile(): File = file { path = absolutePathString().toUnix() } +/** + * Converts this path to a [File] message with conversion to Unix path separators. + */ +public fun Path.toProto(): File = file { path = this@toProto.pathString.toUnix() } + private fun String.toUnix(): String = replace('\\', '/') /** @@ -53,9 +61,19 @@ public fun java.io.File.unixPath(): String = path.toUnix() */ public fun Path.toDirectory(): Directory = toFile().toDirectory() +/** + * Converts this path to a [Directory] with the absolute path. + */ +public fun Path.toAbsoluteDirectory(): Directory = toAbsolutePath().toDirectory() + /** * Converts this instance of [java.io.File] to a [File] message with an absolute path. */ +public fun java.io.File.toAbsoluteFile(): File = toPath().toAbsoluteFile() + +/** + * Converts this path to a [File] message with conversion to Unix path separators. + */ public fun java.io.File.toProto(): File = toPath().toProto() /** diff --git a/api/src/main/kotlin/io/spine/protodata/render/InsertionPointPrinter.kt b/api/src/main/kotlin/io/spine/protodata/render/InsertionPointPrinter.kt index 5110b7298..6ab291c05 100644 --- a/api/src/main/kotlin/io/spine/protodata/render/InsertionPointPrinter.kt +++ b/api/src/main/kotlin/io/spine/protodata/render/InsertionPointPrinter.kt @@ -27,7 +27,8 @@ package io.spine.protodata.render import io.spine.core.userId -import io.spine.protodata.ast.file +import io.spine.protodata.ast.toAbsoluteFile +import io.spine.protodata.ast.toProto import io.spine.protodata.render.CoordinatesFactory.Companion.endOfFile import io.spine.protodata.render.event.insertionPointPrinted import io.spine.text.TextCoordinates @@ -168,7 +169,7 @@ public abstract class InsertionPointPrinter( private fun reportPoint(sourceFile: SourceFile<*>, pointLabel: String, comment: String) { val event = insertionPointPrinted { - file = file { path = sourceFile.relativePath.toString() } + file = sourceFile.relativePath.toProto() label = pointLabel representationInCode = comment } diff --git a/api/src/main/kotlin/io/spine/protodata/render/SourceFile.kt b/api/src/main/kotlin/io/spine/protodata/render/SourceFile.kt index 33f307c99..dff1728b8 100644 --- a/api/src/main/kotlin/io/spine/protodata/render/SourceFile.kt +++ b/api/src/main/kotlin/io/spine/protodata/render/SourceFile.kt @@ -32,6 +32,7 @@ import com.intellij.openapi.fileTypes.FileTypeRegistry import com.intellij.psi.PsiFile import com.intellij.psi.PsiFileFactory import io.spine.protodata.ast.file +import io.spine.protodata.ast.toProto import io.spine.protodata.util.Cache import io.spine.server.query.select import io.spine.text.Text @@ -262,7 +263,7 @@ private constructor( */ public fun atInline(insertionPoint: InsertionPoint): SourceAtPoint { val points = sources.querying.select() - .findById(file { path = relativePath.toString() }) + .findById(relativePath.toProto()) val point = points?.pointList?.firstOrNull { it.label == insertionPoint.label } return if (point != null) { SpecificPoint(this@SourceFile, point) diff --git a/api/src/main/kotlin/io/spine/protodata/settings/SettingsDirectory.kt b/api/src/main/kotlin/io/spine/protodata/settings/SettingsDirectory.kt index b5ddea2b1..6555f7fc8 100644 --- a/api/src/main/kotlin/io/spine/protodata/settings/SettingsDirectory.kt +++ b/api/src/main/kotlin/io/spine/protodata/settings/SettingsDirectory.kt @@ -27,7 +27,7 @@ package io.spine.protodata.settings import io.spine.protodata.util.ensureExistingDirectory -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.settings.event.SettingsFileDiscovered import io.spine.protodata.settings.event.settingsFileDiscovered import io.spine.protodata.util.Format @@ -122,7 +122,7 @@ public class SettingsDirectory( public fun emitEvents(): List = files().map { settingsFileDiscovered { - file = it.toProto() + file = it.toAbsoluteFile() } } diff --git a/api/src/main/proto/spine/protodata/directory.proto b/api/src/main/proto/spine/protodata/directory.proto index 16109bcb2..b3cd557b9 100644 --- a/api/src/main/proto/spine/protodata/directory.proto +++ b/api/src/main/proto/spine/protodata/directory.proto @@ -1,5 +1,5 @@ /* - * Copyright 2024, TeamDev. All rights reserved. + * Copyright 2025, TeamDev. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,8 +36,12 @@ option java_outer_classname = "DirectoryProto"; option java_multiple_files = true; // A path to a directory in an arbitrary OS. +// +// The Protobuf compiler only works with the Unix-style file separator (`/`), regardless of +// the current operating system. This value holds this exact format of the path. +// message Directory { - // The path to the directory, could be relative or absolute. - string path = 1 [(required) = true]; + // The path to the directory, could be relative or absolute, with the slash (`/`) separator. + string path = 1 [(required) = true, (pattern).regex = "^[^\\\\]*$"]; } diff --git a/api/src/main/proto/spine/protodata/file.proto b/api/src/main/proto/spine/protodata/file.proto index 131fe08e1..eb415cbd3 100644 --- a/api/src/main/proto/spine/protodata/file.proto +++ b/api/src/main/proto/spine/protodata/file.proto @@ -45,6 +45,6 @@ option java_multiple_files = true; // message File { - // The path to the file, separating directories with slash (`/`) symbol. - string path = 1 [(required) = true]; + // The path to the file, separating directories with the slash (`/`) symbol. + string path = 1 [(required) = true, (pattern).regex = "^[^\\\\]*$"]; } diff --git a/api/src/main/proto/spine/protodata/file_pattern.proto b/api/src/main/proto/spine/protodata/file_pattern.proto index bd6e1a533..89fea57e2 100644 --- a/api/src/main/proto/spine/protodata/file_pattern.proto +++ b/api/src/main/proto/spine/protodata/file_pattern.proto @@ -1,5 +1,5 @@ /* - * Copyright 2024, TeamDev. All rights reserved. + * Copyright 2025, TeamDev. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,8 +44,16 @@ message FilePattern { // The path must end with this string. string suffix = 1; + // The path must contain this infix. + string infix = 4; + // The path must start with this string. - string prefix = 2; + // + // Deprecated: File paths managed by Spine Compiler are primarily absolute. + // That is why this kind of pattern would not work in most cases. + // Please use the `infix` property instead. + // + string prefix = 2 [deprecated = true]; // The path must match this regular expression. string regex = 3; diff --git a/api/src/test/kotlin/io/spine/protodata/CompilationSpec.kt b/api/src/test/kotlin/io/spine/protodata/CompilationSpec.kt index 8b77bfc00..e5c6b7319 100644 --- a/api/src/test/kotlin/io/spine/protodata/CompilationSpec.kt +++ b/api/src/test/kotlin/io/spine/protodata/CompilationSpec.kt @@ -33,7 +33,7 @@ import io.spine.logging.testing.tapConsole import io.spine.protodata.Compilation.ERROR_PREFIX import io.spine.protodata.Compilation.WARNING_PREFIX import io.spine.protodata.ast.Span -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.testing.TestValues import java.io.File import java.nio.file.Paths @@ -146,7 +146,7 @@ internal class CompilationSpec { @Test fun `provide the 'check' utility function`() { - val file = File("some/path/goes/here.proto").toProto() + val file = File("some/path/goes/here.proto").toAbsoluteFile() val span = Span.getDefaultInstance() val msg = TestValues.randomString() val error = assertThrows { diff --git a/api/src/test/kotlin/io/spine/protodata/ast/FilePatternsSpec.kt b/api/src/test/kotlin/io/spine/protodata/ast/FilePatternsSpec.kt index 5f30b0720..0a3cfd3c1 100644 --- a/api/src/test/kotlin/io/spine/protodata/ast/FilePatternsSpec.kt +++ b/api/src/test/kotlin/io/spine/protodata/ast/FilePatternsSpec.kt @@ -33,6 +33,7 @@ import com.google.protobuf.Timestamp import io.kotest.matchers.shouldBe import io.spine.protodata.ast.FilePatternFactory.prefix import io.spine.protodata.ast.FilePatternFactory.regex +import io.spine.protodata.ast.FilePatternFactory.infix import io.spine.protodata.ast.FilePatternFactory.suffix import io.spine.validate.ValidationError import org.junit.jupiter.api.DisplayName @@ -52,6 +53,13 @@ internal class FilePatternsSpec { assertThrowing { suffix(" ") } } + @Test + fun infix() { + assertThrowing { infix("") } + assertThrowing { infix(" ") } + } + + @Suppress("DEPRECATION") // Supporting for backward combability. @Test fun prefix() { assertThrowing { prefix("") } @@ -76,12 +84,22 @@ internal class FilePatternsSpec { @Test fun prefix() { + @Suppress("DEPRECATION") // Supporting for backward compatibility. prefix("google/protobuf/any").run { matches(messageTypeOf()) shouldBe true matches(messageTypeOf()) shouldBe false } } + @Test + fun infix() { + infix("protodata/file").run { + matches(messageTypeOf()) shouldBe true + matches(messageTypeOf()) shouldBe true + matches(messageTypeOf()) shouldBe false + } + } + @Test fun suffix() { suffix("y.proto").run { diff --git a/api/src/test/kotlin/io/spine/protodata/ast/FileSpec.kt b/api/src/test/kotlin/io/spine/protodata/ast/FileSpec.kt new file mode 100644 index 000000000..9e76e975e --- /dev/null +++ b/api/src/test/kotlin/io/spine/protodata/ast/FileSpec.kt @@ -0,0 +1,47 @@ +/* + * Copyright 2025, TeamDev. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Redistribution and use in source and/or binary forms, with or without + * modification, must retain the above copyright notice and the following + * disclaimer. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package io.spine.protodata.ast + +import io.spine.validate.ValidationException +import org.junit.jupiter.api.DisplayName +import org.junit.jupiter.api.Test +import org.junit.jupiter.api.assertDoesNotThrow +import org.junit.jupiter.api.assertThrows + +@DisplayName("`File` should") +internal class FileSpec { + + @Test + fun `prohibit non-Unix path separators`() { + assertThrows { + file { path = "foo\\bar.proto" } + } + assertDoesNotThrow { + file { path = "foo/bar.proto" } + } + } +} diff --git a/api/src/test/kotlin/io/spine/protodata/ast/ProtoDeclarationSpec.kt b/api/src/test/kotlin/io/spine/protodata/ast/ProtoDeclarationSpec.kt index 759d02730..02aed2653 100644 --- a/api/src/test/kotlin/io/spine/protodata/ast/ProtoDeclarationSpec.kt +++ b/api/src/test/kotlin/io/spine/protodata/ast/ProtoDeclarationSpec.kt @@ -31,7 +31,6 @@ import io.spine.protodata.given.StubDeclaration import io.spine.protodata.given.copy import io.spine.protodata.given.stubDeclaration import kotlin.io.path.Path -import kotlin.io.path.absolutePathString import org.junit.jupiter.api.DisplayName import org.junit.jupiter.api.Nested import org.junit.jupiter.api.Test @@ -97,4 +96,4 @@ private fun StubDeclaration.withAbsoluteFile(path: File): StubDeclaration = replaceIfNotAbsoluteAlready(path) { copy { file = path } } private fun absoluteFile(path: String): File = - file { this.path = Path(".").resolve(path).absolutePathString() } + Path(".").resolve(path).toAbsolutePath().toAbsoluteFile() diff --git a/backend/src/main/kotlin/io/spine/protodata/backend/event/CompilerEvents.kt b/backend/src/main/kotlin/io/spine/protodata/backend/event/CompilerEvents.kt index 951c65668..122f29d4a 100644 --- a/backend/src/main/kotlin/io/spine/protodata/backend/event/CompilerEvents.kt +++ b/backend/src/main/kotlin/io/spine/protodata/backend/event/CompilerEvents.kt @@ -42,7 +42,7 @@ import io.spine.protodata.ast.event.fileOptionDiscovered import io.spine.protodata.ast.file import io.spine.protodata.ast.produceOptionEvents import io.spine.protodata.ast.toJava -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.backend.DescriptorFilter import io.spine.protodata.protobuf.file import io.spine.protodata.protobuf.toHeader @@ -106,7 +106,7 @@ private class ProtoFileEvents( val relativePath = hdr.file.toJava() val fullPath = typeSystem.compiledProtoFiles.find(relativePath) if (fullPath != null) { - hdr.copy { file = fullPath.toProto() } + hdr.copy { file = fullPath.toAbsoluteFile() } } else { hdr } diff --git a/backend/src/test/kotlin/io/spine/protodata/backend/CodeGenerationContextSpec.kt b/backend/src/test/kotlin/io/spine/protodata/backend/CodeGenerationContextSpec.kt index 438cc9823..2343a2897 100644 --- a/backend/src/test/kotlin/io/spine/protodata/backend/CodeGenerationContextSpec.kt +++ b/backend/src/test/kotlin/io/spine/protodata/backend/CodeGenerationContextSpec.kt @@ -51,7 +51,7 @@ import io.spine.protodata.ast.ProtobufSourceFile import io.spine.protodata.ast.doc import io.spine.protodata.ast.option import io.spine.protodata.ast.span -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.ast.toType import io.spine.protodata.backend.event.CompilerEvents import io.spine.protodata.context.CodegenContext @@ -170,7 +170,7 @@ class CodeGenerationContextSpec { fun `with files marked for generation`() { val fullPath = typeSystem.findAbsolute(DoctorProto.getDescriptor()) val assertSourceFile = ctx.assertEntity( - fullPath!!.toProto() + fullPath!!.toAbsoluteFile() ) assertSourceFile.exists() @@ -216,7 +216,7 @@ class CodeGenerationContextSpec { fun `with respect for custom options among the source files`() { val filePath = typeSystem.findAbsolute(PhDProto.getDescriptor()) val phdFile = ctx.assertEntity( - filePath!!.toProto() + filePath!!.toAbsoluteFile() ).actual()!!.state() as ProtobufSourceFile val paperType = phdFile.typeMap.values.find { it.name.simpleName == "Paper" }!! val keywordsField = paperType.fieldList.find { it.name.value == "keywords" }!! diff --git a/backend/src/test/kotlin/io/spine/protodata/backend/PipelineSpec.kt b/backend/src/test/kotlin/io/spine/protodata/backend/PipelineSpec.kt index 9a276037c..51cd30615 100644 --- a/backend/src/test/kotlin/io/spine/protodata/backend/PipelineSpec.kt +++ b/backend/src/test/kotlin/io/spine/protodata/backend/PipelineSpec.kt @@ -33,7 +33,7 @@ import com.google.protobuf.compiler.PluginProtos.CodeGeneratorRequest import com.google.protobuf.compiler.codeGeneratorRequest import io.kotest.matchers.shouldBe import io.kotest.matchers.string.shouldContain -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.context.CodegenContext import io.spine.protodata.params.PipelineParameters import io.spine.protodata.plugin.ConfigurationError @@ -101,7 +101,7 @@ internal class PipelineSpec { private lateinit var sourceSet: SourceFileSet private fun PipelineParameters.Builder.addAbsoluteCompiledProtoPaths() { - addAllCompiledProto(typeSystem.compiledProtoFiles.files.map { it.toProto() }) + addAllCompiledProto(typeSystem.compiledProtoFiles.files.map { it.toAbsoluteFile() }) } @BeforeEach diff --git a/buildSrc/src/main/kotlin/DokkaExts.kt b/buildSrc/src/main/kotlin/DokkaExts.kt index 89cbee645..6189b5286 100644 --- a/buildSrc/src/main/kotlin/DokkaExts.kt +++ b/buildSrc/src/main/kotlin/DokkaExts.kt @@ -179,16 +179,11 @@ fun Project.dokkaKotlinJar(): TaskProvider = tasks.getOrCreate("dokkaKotlin } /** - * Tells if this task belongs to the execution graph which contains publishing tasks. - * - * The task `"publishToMavenLocal"` is excluded from the check because it is a part of - * the local testing workflow. + * Tells if this task belongs to the execution graph which contains the "publish" task. */ fun AbstractDokkaTask.isInPublishingGraph(): Boolean = project.gradle.taskGraph.allTasks.any { - with(it.name) { - startsWith("publish") && !startsWith("publishToMavenLocal") - } + it.name == "publish" } /** diff --git a/buildSrc/src/main/kotlin/module.gradle.kts b/buildSrc/src/main/kotlin/module.gradle.kts index 0bebc92d5..c6b5dfcd7 100644 --- a/buildSrc/src/main/kotlin/module.gradle.kts +++ b/buildSrc/src/main/kotlin/module.gradle.kts @@ -49,6 +49,8 @@ plugins { kotlin("jvm") id("net.ltgt.errorprone") id("detekt-code-analysis") + id("dokka-for-java") + id("dokka-for-kotlin") jacoco idea } diff --git a/cli/src/test/kotlin/io/spine/protodata/cli/app/LoggingLevelSpec.kt b/cli/src/test/kotlin/io/spine/protodata/cli/app/LoggingLevelSpec.kt index 4392ec459..e8dc07941 100644 --- a/cli/src/test/kotlin/io/spine/protodata/cli/app/LoggingLevelSpec.kt +++ b/cli/src/test/kotlin/io/spine/protodata/cli/app/LoggingLevelSpec.kt @@ -32,8 +32,9 @@ import io.kotest.matchers.shouldBe import io.kotest.matchers.string.shouldContain import io.spine.logging.Level import io.spine.logging.WithLogging -import io.spine.protodata.ast.directory import io.spine.protodata.ast.file +import io.spine.protodata.ast.toAbsoluteDirectory +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.ast.toProto import io.spine.protodata.cli.test.TestOptionsProto import io.spine.protodata.cli.test.TestProto @@ -76,14 +77,14 @@ class LoggingLevelSpec { codegenRequestFile = sandbox.resolve("code-gen-request.bin") val compiledProtos = CompiledProtosFile(this::class.java.classLoader) - val absoluteFiles = compiledProtos.listFiles { file { path = it } } + val absoluteFiles = compiledProtos.listFiles { File(it).toProto() } val params = pipelineParameters { compiledProto.addAll(absoluteFiles) - settings = directory { path = workingDir.settingsDirectory.path.absolutePathString() } - sourceRoot.add(directory { path = sandbox.resolve("src").absolutePathString() }) - targetRoot.add(directory { path = sandbox.resolve("generated").absolutePathString() }) - request = codegenRequestFile.toFile().toProto() + settings = workingDir.settingsDirectory.path.toAbsoluteDirectory() + sourceRoot.add(sandbox.resolve("src").toAbsoluteDirectory()) + targetRoot.add(sandbox.resolve("generated").toAbsoluteDirectory()) + request = codegenRequestFile.toAbsoluteFile() pluginClassName.add(LoggingLevelAsserterPlugin::class.jvmName) } parametersFile = workingDir.parametersDirectory.write(SourceSetName.main, params) diff --git a/cli/src/test/kotlin/io/spine/protodata/cli/app/MainSpec.kt b/cli/src/test/kotlin/io/spine/protodata/cli/app/MainSpec.kt index 7a1f52d65..d44937bdb 100644 --- a/cli/src/test/kotlin/io/spine/protodata/cli/app/MainSpec.kt +++ b/cli/src/test/kotlin/io/spine/protodata/cli/app/MainSpec.kt @@ -35,9 +35,9 @@ import io.spine.base.Time import io.spine.protobuf.pack import io.spine.protodata.ast.AstProto import io.spine.protodata.ast.FileProto -import io.spine.protodata.ast.file -import io.spine.protodata.ast.toDirectory import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toDirectory +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.cli.given.DefaultOptionsCounterPlugin import io.spine.protodata.cli.given.DefaultOptionsCounterRenderer import io.spine.protodata.cli.given.DefaultOptionsCounterRendererPlugin @@ -111,18 +111,18 @@ class MainSpec { targetRoot.toFile().mkdirs() val compiledProtos = CompiledProtosFile(this::class.java.classLoader) - val thisModuleFiles = compiledProtos.listFiles { file { path = it } } + val thisModuleFiles = compiledProtos.listFiles { File(it).toProto() } val testEnvJar = ProjectProto::class.java.protectionDomain.codeSource.location val urlClassLoader = URLClassLoader(arrayOf(testEnvJar), null) - val testEnvJarFiles = CompiledProtosFile(urlClassLoader).listFiles { file { path = it } } + val testEnvJarFiles = CompiledProtosFile(urlClassLoader).listFiles { File(it).toProto() } val params = pipelineParameters { compiledProto.addAll(thisModuleFiles + testEnvJarFiles) settings = workingDir.settingsDirectory.path.toDirectory() sourceRoot.add(srcRoot.toDirectory()) targetRoot.add(this@MainSpec.targetRoot.toDirectory()) - request = codegenRequestFile.toFile().toProto() + request = codegenRequestFile.toFile().toAbsoluteFile() } parametersFile = workingDir.parametersDirectory.write(SourceSetName.test, params) diff --git a/dependencies.md b/dependencies.md index 4b99e7605..ffd7ada83 100644 --- a/dependencies.md +++ b/dependencies.md @@ -1,6 +1,6 @@ -# Dependencies of `io.spine.protodata:protodata-api:0.92.6` +# Dependencies of `io.spine.protodata:protodata-api:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -150,7 +150,7 @@ * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -836,7 +836,7 @@ * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -856,6 +856,10 @@ * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -1045,12 +1049,12 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:06 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:27:59 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-api-tests:0.92.6` +# Dependencies of `io.spine.protodata:protodata-api-tests:0.92.7` ## Runtime 1. **Group** : org.jetbrains. **Name** : annotations. **Version** : 13.0. @@ -1657,6 +1661,10 @@ This report was generated on **Fri Feb 21 14:57:06 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-script-runtime. **Version** : 1.8.21. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -1693,7 +1701,7 @@ This report was generated on **Fri Feb 21 14:57:06 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -1713,6 +1721,10 @@ This report was generated on **Fri Feb 21 14:57:06 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -1898,12 +1910,12 @@ This report was generated on **Fri Feb 21 14:57:06 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:00 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-backend:0.92.6` +# Dependencies of `io.spine.protodata:protodata-backend:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -2053,7 +2065,7 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -2731,7 +2743,7 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -2751,6 +2763,10 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -2936,12 +2952,12 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:00 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-cli:0.92.6` +# Dependencies of `io.spine.protodata:protodata-cli:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -3099,7 +3115,7 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -3848,7 +3864,7 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -3868,6 +3884,10 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -4053,12 +4073,12 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:00 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-gradle-api:0.92.6` +# Dependencies of `io.spine.protodata:protodata-gradle-api:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -4208,7 +4228,7 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -4832,6 +4852,10 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-script-runtime. **Version** : 1.8.21. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -4868,6 +4892,10 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -4884,6 +4912,10 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -5069,12 +5101,12 @@ This report was generated on **Fri Feb 21 14:57:07 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:01 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-gradle-plugin:0.92.6` +# Dependencies of `io.spine.protodata:protodata-gradle-plugin:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -5244,7 +5276,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -5956,6 +5988,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-script-runtime. **Version** : 1.8.21. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -6012,6 +6048,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -6032,6 +6072,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -6257,12 +6301,12 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:01 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-java:0.92.6` +# Dependencies of `io.spine.protodata:protodata-java:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -6412,7 +6456,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -7090,7 +7134,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -7110,6 +7154,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -7295,12 +7343,12 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:01 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-params:0.92.6` +# Dependencies of `io.spine.protodata:protodata-params:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -7450,7 +7498,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -8135,7 +8183,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -8155,6 +8203,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -8340,12 +8392,12 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:02 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-protoc:0.92.6` +# Dependencies of `io.spine.protodata:protodata-protoc:0.92.7` ## Runtime 1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2. @@ -8394,11 +8446,11 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [http://www.jetbrains.org](http://www.jetbrains.org) * **License:** [The Apache Software License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -8945,6 +8997,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-script-runtime. **Version** : 1.8.21. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -8981,7 +9037,7 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -9001,6 +9057,10 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -9182,12 +9242,12 @@ This report was generated on **Fri Feb 21 14:57:08 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:02 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-test-env:0.92.6` +# Dependencies of `io.spine.protodata:protodata-test-env:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -9337,7 +9397,7 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -10030,7 +10090,7 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -10050,6 +10110,10 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -10235,12 +10299,12 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). +This report was generated on **Sat Feb 22 19:28:02 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). -# Dependencies of `io.spine.protodata:protodata-testlib:0.92.6` +# Dependencies of `io.spine.protodata:protodata-testlib:0.92.7` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.15.3. @@ -10468,7 +10532,7 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://github.com/JetBrains/java-annotations](https://github.com/JetBrains/java-annotations) * **License:** [The Apache Software License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -11130,6 +11194,10 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-reflect. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-script-runtime. **Version** : 1.8.21. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -11166,7 +11234,7 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) -1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.23. +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib. **Version** : 1.9.24. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -11186,6 +11254,10 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) +1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 1.9.24. + * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) + * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) + 1. **Group** : org.jetbrains.kotlin. **Name** : kotlin-stdlib-common. **Version** : 2.0.0. * **Project URL:** [https://kotlinlang.org/](https://kotlinlang.org/) * **License:** [The Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt) @@ -11371,4 +11443,4 @@ This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-Lice The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Feb 21 14:57:09 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file +This report was generated on **Sat Feb 22 19:28:02 WET 2025** using [Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under [Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE). \ No newline at end of file diff --git a/gradle-plugin/src/main/kotlin/io/spine/protodata/gradle/plugin/LaunchProtoData.kt b/gradle-plugin/src/main/kotlin/io/spine/protodata/gradle/plugin/LaunchProtoData.kt index e6c963af3..a27052da5 100644 --- a/gradle-plugin/src/main/kotlin/io/spine/protodata/gradle/plugin/LaunchProtoData.kt +++ b/gradle-plugin/src/main/kotlin/io/spine/protodata/gradle/plugin/LaunchProtoData.kt @@ -30,7 +30,7 @@ import com.google.protobuf.gradle.GenerateProtoTask import com.intellij.openapi.util.io.FileUtil import io.spine.protodata.Constants.CLI_APP_CLASS import io.spine.protodata.ast.toDirectory -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.gradle.Names.PROTO_DATA_RAW_ARTIFACT import io.spine.protodata.gradle.Names.USER_CLASSPATH_CONFIGURATION import io.spine.protodata.gradle.error @@ -210,7 +210,7 @@ private fun LaunchProtoData.createParametersFile() { val params = pipelineParameters { val protoFiles = generateProtoTask.sourceDirs.asFileTree.files.toList().sorted() .map { - it.toProto() + it.toAbsoluteFile() } compiledProto.addAll(protoFiles) settings = workingDir.settingsDirectory.path.toAbsolutePath().toDirectory() @@ -220,7 +220,9 @@ private fun LaunchProtoData.createParametersFile() { targetRoot.addAll( targets.absoluteDirs().map { it.toDirectory() } ) - request = workingDir.requestDirectory.file(SourceSetName(sourceSetName.get())).toProto() + request = workingDir.requestDirectory + .file(SourceSetName(sourceSetName.get())) + .toAbsoluteFile() pluginClassName.addAll(plugins.get()) diff --git a/pom.xml b/pom.xml index 63527dddb..98e1288c7 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ all modules and does not describe the project structure per-subproject. --> io.spine.protodata ProtoData -0.92.6 +0.92.7 2015 @@ -131,16 +131,10 @@ all modules and does not describe the project structure per-subproject. 2.0.0-SNAPSHOT.246 compile - - io.spine.tools - spine-testutil-server - 2.0.0-SNAPSHOT.206 - compile - io.spine.tools spine-tool-base - 2.0.0-SNAPSHOT.244 + 2.0.0-SNAPSHOT.246 compile @@ -215,6 +209,12 @@ all modules and does not describe the project structure per-subproject. 2.0.0-SNAPSHOT.246 test + + io.spine.tools + spine-testutil-server + 2.0.0-SNAPSHOT.206 + test + io.spine.tools spine-time-testlib @@ -303,7 +303,12 @@ all modules and does not describe the project structure per-subproject. io.spine.tools prototap-protoc-plugin - 0.9.0 + 0.9.1 + + + io.spine.tools + spine-dokka-extensions + 2.0.0-SNAPSHOT.6 io.spine.tools @@ -386,6 +391,11 @@ all modules and does not describe the project structure per-subproject. jekyll-template-processing-plugin 1.9.20 + + org.jetbrains.dokka + kotlin-as-java-plugin + 1.9.20 + org.jetbrains.kotlin kotlin-compiler-embeddable diff --git a/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineParametersExts.kt b/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineParametersExts.kt index c96620b81..7c5712180 100644 --- a/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineParametersExts.kt +++ b/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineParametersExts.kt @@ -27,7 +27,7 @@ package io.spine.protodata.testing import io.spine.protodata.ast.toDirectory -import io.spine.protodata.ast.toProto +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.params.PipelineParameters import io.spine.protodata.params.WorkingDirectory import io.spine.tools.code.SourceSetName @@ -50,7 +50,7 @@ public fun pipelineParams( * Assigns the given [file] as the reference to the request parameters file. */ public fun PipelineParameters.Builder.withRequestFile(file: File): PipelineParameters.Builder { - request = file.toProto() + request = file.toAbsoluteFile() return this } @@ -108,7 +108,7 @@ public fun parametersForWorkingDir( val requestFile = wd.requestDirectory.file(SourceSetName("testFixtures")) val params = PipelineParameters.newBuilder() .setSettings(wd.settingsDirectory.path.toDirectory()) - .setRequest(requestFile.toProto()) + .setRequest(requestFile.toAbsoluteFile()) .buildPartial() return params } diff --git a/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineSetup.kt b/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineSetup.kt index 157ae87b0..3e2b216df 100644 --- a/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineSetup.kt +++ b/testlib/src/main/kotlin/io/spine/protodata/testing/PipelineSetup.kt @@ -32,8 +32,8 @@ import io.spine.code.proto.parse import io.spine.io.Resource import io.spine.io.ResourceDirectory import io.spine.io.replaceExtension -import io.spine.protodata.ast.file import io.spine.protodata.ast.toPath +import io.spine.protodata.ast.toAbsoluteFile import io.spine.protodata.backend.CodeGenerationContext import io.spine.protodata.backend.DescriptorFilter import io.spine.protodata.backend.Pipeline @@ -60,6 +60,7 @@ import io.spine.validate.NonValidated import java.nio.file.Path import java.nio.file.StandardOpenOption.CREATE import java.nio.file.StandardOpenOption.TRUNCATE_EXISTING +import kotlin.io.path.Path import kotlin.io.path.writeBytes import kotlin.io.path.writeText import org.gradle.api.Project @@ -349,7 +350,7 @@ public class PipelineSetup( ): @NonValidated PipelineParameters{ return if (params.compiledProtoList.isEmpty()) { val files = CompiledProtosFile(classLoader) - .listFiles { file { path = it } } + .listFiles { Path(it).toAbsoluteFile() } params.toBuilder() .addAllCompiledProto(files) .buildPartial() diff --git a/version.gradle.kts b/version.gradle.kts index 48bf97ff6..ad27715f4 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -32,4 +32,4 @@ * * For dependencies on Spine SDK module please see [io.spine.dependency.local.Spine]. */ -val protoDataVersion: String by extra("0.92.6") +val protoDataVersion: String by extra("0.92.7")