diff --git a/README.md b/README.md index 49d2b60773..3ef5a3a46a 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,126 @@ [![codecov.io][codecov-badge]][codecov-report] [![license][apache-badge]][apache-license] -Spine Compiler is a collection of tools for generating quality -domain models from Protobuf definitions. +Spine Compiler is a collection of tools for generating quality domain models from Protobuf +definitions. It plugs into your Gradle build and extends the code that `protoc` produces, +turning plain `.proto` messages into rich domain types — with validation, factory methods, +and other conveniences contributed by pluggable code generators. -The project is under development right now. Proceed with caution. +The Compiler is part of the [Spine SDK][spine-site] and powers code generation across +Spine-based projects. It is not limited to them, though: any Protobuf-based JVM project can +apply the Compiler and drive it with its own code-generation plugins. + +## How it works + +The Compiler treats your Protobuf definitions as a model and processes it reactively: + +1. `protoc` parses the `.proto` files. A `protoc` plugin bundled with the Compiler captures + the result as a code-generation request. +2. The Compiler reads that request and represents the Protobuf files, types, fields, and + options as a model, delivered as a stream of events. +3. The plugins you attach observe the model through *views* and react to it through + *policies*, then emit source code through *renderers*. +4. The renderers create new source files or edit the ones `protoc` generated, producing the + final domain model. + +A *plugin* bundles these parts together, so attaching one plugin is enough to contribute a +whole feature to the generated code. + +## Getting started + +### Requirements + +- JDK 17 or newer. +- The [Protobuf Gradle Plugin][protobuf-gradle] (`com.google.protobuf`), which the Compiler + builds upon. + +### Apply the Gradle plugin + +The Compiler ships as a Gradle plugin published to the Gradle Plugin Portal under the +`io.spine.compiler` ID. It requires the Protobuf Gradle Plugin, so apply both: + +```kotlin +plugins { + java + id("com.google.protobuf") version "" + id("io.spine.compiler") version "" +} +``` + +The example applies the `java` plugin; use `kotlin("jvm")` instead for a Kotlin project — the +Compiler generates code for both. Once applied, the Compiler hooks into the `generateProto` +tasks, so the generated model is refreshed on every build. + +### Configure code-generation plugins + +Out of the box the Compiler runs the pipeline without changing the generated code. To make it +do something, attach one or more Compiler plugins: list their classes in the `compiler { }` +block — nested inside the `spine { }` extension — and put them on the Compiler classpath with +the `spineCompiler` configuration. + +```kotlin +spine { + compiler { + plugins( + "com.acme.codegen.MyPlugin", + ) + } +} + +dependencies { + spineCompiler("com.acme:my-codegen:1.0.0") +} +``` + +Then build the project as usual: + +```bash +./gradlew build +``` + +## Writing a plugin + +A Compiler plugin is a class with a parameterless constructor that bundles the components doing +the work. The most common component is a *renderer*, which creates or edits source files: + +```kotlin +import io.spine.tools.code.Java +import io.spine.tools.compiler.plugin.Plugin +import io.spine.tools.compiler.render.Renderer +import io.spine.tools.compiler.render.SourceFileSet + +/** Modifies the Java sources produced for the Protobuf model. */ +public class MyRenderer : Renderer(Java) { + + override fun render(sources: SourceFileSet) { + // Inspect the Protobuf model and create or edit source files here. + } +} + +/** Exposes the renderer — and any views or policies — to the Compiler. */ +public class MyPlugin : Plugin(renderers = listOf(MyRenderer())) +``` + +Compile the plugin against the public API artifact: + +```kotlin +dependencies { + implementation("io.spine.tools:compiler-api:") +} +``` + +Renderers can inspect the Protobuf model through views and react to it through policies. See the +`api` module and its API documentation for the full set of building blocks. + +## Further reading + +- [Spine SDK website][spine-site] +- [Contributing guidelines](CONTRIBUTING.md) +- [Code of conduct](CODE_OF_CONDUCT.md) + +## License + +Spine Compiler is released under the [Apache License, Version 2.0](LICENSE.md). [ubuntu-badge]: https://github.com/SpineEventEngine/compiler/actions/workflows/build-on-ubuntu.yml/badge.svg [ubuntu-build]: https://github.com/SpineEventEngine/compiler/actions/workflows/build-on-ubuntu.yml @@ -19,5 +135,8 @@ The project is under development right now. Proceed with caution. [codecov-badge]: https://codecov.io/github/SpineEventEngine/compiler/coverage.svg?branch=master [codecov-report]: https://codecov.io/github/SpineEventEngine/compiler?branch=master -[apache-badge]: https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat +[apache-badge]: https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat [apache-license]: https://www.apache.org/licenses/LICENSE-2.0 + +[spine-site]: https://spine.io/ +[protobuf-gradle]: https://github.com/google/protobuf-gradle-plugin diff --git a/buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt b/buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt index 54029eb046..d4b8a18ccc 100644 --- a/buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt +++ b/buildSrc/src/main/kotlin/io/spine/dependency/local/CoreJvm.kt @@ -39,7 +39,7 @@ typealias CoreJava = CoreJvm @Suppress("ConstPropertyName", "unused") object CoreJvm { const val group = Spine.group - const val version = "2.0.0-SNAPSHOT.380" + const val version = "2.0.0-SNAPSHOT.381" const val coreArtifact = "spine-core" const val clientArtifact = "spine-client" diff --git a/docs/dependencies/dependencies.md b/docs/dependencies/dependencies.md index 28bdd11628..3c7981933f 100644 --- a/docs/dependencies/dependencies.md +++ b/docs/dependencies/dependencies.md @@ -1,6 +1,6 @@ -# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -1067,14 +1067,14 @@ The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-api-tests:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-api-tests:2.0.0-SNAPSHOT.057` ## Runtime ## Compile, tests, and tooling @@ -1444,14 +1444,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:23 WEST 2026** 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.tools:compiler-backend:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-backend:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -2522,14 +2522,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-cli:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-cli:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -3759,14 +3759,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-gradle-api:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-gradle-api:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -4783,14 +4783,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -5851,14 +5851,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-jvm:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-jvm:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -6946,14 +6946,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-params:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-params:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -8012,14 +8012,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2. @@ -8852,14 +8852,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-test-env:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-test-env:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -9926,14 +9926,14 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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.tools:compiler-testlib:2.0.0-SNAPSHOT.056` +# Dependencies of `io.spine.tools:compiler-testlib:2.0.0-SNAPSHOT.057` ## Runtime 1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.22.0. @@ -11107,6 +11107,6 @@ This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using The dependencies distributed under several licenses, are used according their commercial-use-friendly license. -This report was generated on **Fri Jun 26 18:10:51 WEST 2026** using +This report was generated on **Sat Jun 27 23:12:24 WEST 2026** 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/docs/dependencies/pom.xml b/docs/dependencies/pom.xml index 957a2fdd3e..7f838991c9 100644 --- a/docs/dependencies/pom.xml +++ b/docs/dependencies/pom.xml @@ -10,7 +10,7 @@ all modules and does not describe the project structure per-subproject. --> io.spine.tools compiler -2.0.0-SNAPSHOT.056 +2.0.0-SNAPSHOT.057 2015 @@ -137,7 +137,7 @@ all modules and does not describe the project structure per-subproject. io.spine spine-server - 2.0.0-SNAPSHOT.380 + 2.0.0-SNAPSHOT.381 compile @@ -209,7 +209,7 @@ all modules and does not describe the project structure per-subproject. io.spine.tools server-testlib - 2.0.0-SNAPSHOT.380 + 2.0.0-SNAPSHOT.381 compile diff --git a/docs/project.md b/docs/project.md index a785162ca6..5a442db963 100644 --- a/docs/project.md +++ b/docs/project.md @@ -24,10 +24,12 @@ with these modules: published separately from the rest of the modules. - `test-env`, `testlib` — shared test fixtures and utilities. -Module artifacts are published under `io.spine.tools` (see -[`dependencies.md`](dependencies/dependencies.md) for the published coordinates). Public -API boundaries live in `api` and `gradle-api`; downstream Spine repos depend -on these. +Module artifacts are published under the `io.spine.tools` group with the +`compiler-` prefix — for example, `io.spine.tools:compiler-api` (see +[`dependencies.md`](dependencies/dependencies.md) for the full coordinates) — +and the Gradle plugin to the Gradle Plugin Portal as `io.spine.compiler`. +Public API boundaries live in `api` and `gradle-api`; downstream Spine repos +depend on these. Read [`.agents/guidelines/jvm-project.md`](../.agents/guidelines/jvm-project.md) for build stack, coding style, tests, and versioning. diff --git a/gradle-plugin/README.md b/gradle-plugin/README.md index 72761986df..256627ea97 100644 --- a/gradle-plugin/README.md +++ b/gradle-plugin/README.md @@ -1,6 +1,6 @@ -# ProtoData Gradle plugin +# Spine Compiler Gradle plugin -This Gradle plugin allows Java developers launch ProtoData without extra CLI commands. +This Gradle plugin allows Java developers to launch the Compiler without extra CLI commands. ## Usage @@ -10,7 +10,9 @@ To apply the plugin to the project, use the `plugins { }` block syntax. ```kotlin plugins { - id("io.spine.compiler") version("") + java + id("com.google.protobuf") version("") + id("io.spine.compiler") version("") } ``` @@ -24,78 +26,73 @@ buildscript { } dependencies { - classpath("io.spine:compiler:") + classpath("io.spine.tools:compiler-gradle-plugin:") } } apply(plugin = "io.spine.compiler") ``` -See the plugin [homepage](https://plugins.gradle.org/plugin/io.spine.protodata) for more. +See the plugin [homepage](https://plugins.gradle.org/plugin/io.spine.compiler) for more. -### Launching ProtoData +### Launching the Compiler -When used from Gradle, ProtoData does not require installation. +When used from Gradle, the Compiler does not require installation. -Just launch [configure](#Configuration) code generation and start a build: +Just [configure](#configuration) code generation and start a build: ``` ./gradlew build ``` ### Configuration -ProtoData requires Renderers and Plugins for meaningful operation. You can specify those and more -via a Gradle extension. +The Compiler runs the plugins you specify via the `compiler { }` extension, nested under the +`spine { }` block. The plugins' own classpath is declared via the `spineCompiler` configuration. Here is the complete list of configuration options: -| Name | Format | Description | Default value | -|---------------------------|---------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------| -| `renderers` | Java class names | Implementations of `io.spine.compiler.renderer.Renderer`. Renderer ordering is preserved. | N/A | -| `plugins` | Java class names | Implementations of `io.spine.compiler.plugin.Plugin`. | N/A | -| `optionProviders` | Java class names | Implementations of `io.spine.compiler.option.OptionProvider`. | N/A | -| `requestFile` | File path | Where the serialized `CodeGeneratorRequest` should be stored. | A file under the `build` dir. | -| `srcBaseDir` | Directory path | Base directory where files generated by Protoc are located. | A directory under the `build` dir. | -| `targetBaseDir` | Directory path | Base directory where files generated by ProtoData are placed. Files from the source directory are copied into the target directory as well. | `$projectDir/generated/` | -| `subDir` | Directory path part | Subdirectory within `srcBaseDir` where files generated by the given Protoc plugin are located. This structure is mirrored in `targetBaseDir`. | `java` | -| Configuration `protoData` | Dependencies | The dependencies required to launch ProtoData with the given args. | N/A | +| Name | Format | Description | Default value | +|-----------------|------------------|-------------------------------------------------------------------------------------------|----------------------------------------| +| `plugins` | Java class names | Class names of `io.spine.tools.compiler.plugin.Plugin` implementations the Compiler runs. | None | +| `subDirs` | Directory names | Subdirectories under the generated source set that the Compiler processes. | `java`, `kotlin`, `grpc`, `js`, `dart` | +| `outputBaseDir` | Directory | Base directory where the files generated by the Compiler are placed. | `$projectDir/generated/` | A complete configuration may look as follows: ```kotlin plugins { - id("io.spine.compiler") version("") + java + id("com.google.protobuf") version("") + id("io.spine.compiler") version("") } -protoData { - renderers("com.acme.MyInsertionPointPrinter", "com.acme.MyRenderer", "org.example.Renderer") - plugins("com.acme.MyPlugin") - optionProviders("com.acme.MyOptions") - - requestFile("${rootProject.buildDir}/commonRequestFile/request.bin") - srcBaseDir("$projectDir/my-generated-files/") - targetBaseDir("$projectDir/my-complete-files/") - subDir("foobar") +spine { + compiler { + plugins("com.acme.MyPlugin", "org.example.MyOtherPlugin") + subDirs = listOf("java", "kotlin") + outputBaseDir.set(project.layout.projectDirectory.dir("generated")) + } } dependencies { - protoData(project(":my-compiler-plugin")) - protoData("org.example:compiler-plugin:1.42") + spineCompiler(project(":my-compiler-plugin")) + spineCompiler("org.example:compiler-plugin:1.42") } ``` ## Source sets -For each source set in the project, the plugin generates a distinct task launching ProtoData. +For each source set in the project, the plugin generates a distinct task launching the Compiler. Each task only processes the sources of the associated source set. This allows users to apply -ProtoData to production and test code alike. +the Compiler to production and test code alike. -To reference a specific task by name, use the following format: `launchProtoData`, -for example, `launchProtoData`, `launchTestProtoData`, `launchIntegrationTestProtoData`, etc. +To reference a specific task by name, use the following format: +`launchSpineCompiler`, for example, `launchSpineCompiler`, +`launchTestSpineCompiler`, `launchIntegrationTestSpineCompiler`, etc. -To find all the tasks in a Gradle script, use the `LaunchProtoData` task type. For example: +To find all the tasks in a Gradle script, use the `LaunchSpineCompiler` task type. For example: ```kotlin -tasks.withType { - onlyIf { moon.phase >= 0.7 } +tasks.withType { + // Configure every Compiler launch task here. } ``` @@ -103,13 +100,13 @@ tasks.withType { The plugin changes the configuration of the Protobuf Gradle plugin in such a way that the files generated from Protobuf are placed under the `build` directory. After the files are then processed -by ProtoData, they will end up in ProtoData target directory, which is, by default, -`$projectDir/generated/`. To change the output dir, see the ProtoData plugin configuration. +by the Compiler, they will end up in the Compiler's target directory, which is, by default, +`$projectDir/generated/`. To change the output dir, see the Compiler plugin configuration. ## Caveat The plugin relies on the Java Project structure, the Java Gradle plugin, the Protobuf Gradle -plugin, and the ProtoData Maven repository. +plugin, and the Spine Compiler Maven repository. To make everything work, at this stage, users have to add the following config: @@ -117,12 +114,12 @@ To make everything work, at this stage, users have to add the following config: plugins { java id("com.google.protobuf") version("") - id("io.spine.compiler") version("") + id("io.spine.compiler") version("") } repositories { maven { - url = uri("https://maven.pkg.github.com/SpineEventEngine/ProtoData") + url = uri("https://maven.pkg.github.com/SpineEventEngine/compiler") credentials { username = "" password = "" @@ -131,9 +128,9 @@ repositories { } ``` -Users who wish to extend ProtoData must also add the dependency to the API: +Users who wish to extend the Compiler must also add the dependency to the API: ```kotlin dependencies { - implementation("io.spine.compiler:compiler-compiler:") + implementation("io.spine.tools:compiler-api:") } ``` diff --git a/tests/README.md b/tests/README.md index b2b473ed4e..4328568397 100644 --- a/tests/README.md +++ b/tests/README.md @@ -1,7 +1,7 @@ -# ProtoData integration tests +# Spine Compiler integration tests This subdirectory —`tests`— contains a separate Gradle product that runs integration -tests of the ProtoData command-line application and the ProtoData Gradle plugin. +tests of the Spine Compiler command-line application and the Compiler's Gradle plugin. This directory is a separate Gradle project, which fetches the artifacts from the primary Gradle project, via a Gradle [composite build][composite-build]. @@ -23,7 +23,7 @@ please run the following command: ./gradlew integrationTest ``` -If your current directory is `tests`, just run the Gradle build as usualy: +If your current directory is `tests`, just run the Gradle build as usual: ```bash ./gradlew clean build diff --git a/version.gradle.kts b/version.gradle.kts index a76f6ab32e..e6860dfd24 100644 --- a/version.gradle.kts +++ b/version.gradle.kts @@ -1,5 +1,5 @@ /* - * Copyright 2025, TeamDev. All rights reserved. + * Copyright 2026, 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. @@ -30,7 +30,7 @@ * This version is also used by integration test projects. * E.g. see `tests/consumer/build.gradle.kts`. */ -val compilerVersion: String by extra("2.0.0-SNAPSHOT.056") +val compilerVersion: String by extra("2.0.0-SNAPSHOT.057") /** * The version, same as [compilerVersion], which is used for publishing