Declare the modules tool-base was split into - #748
Merged
Conversation
SpineEventEngine/tool-base#189 breaks the monolithic `tool-base` module into focused modules. `ToolBase` gains a constant for each of them and stops presenting the retired artifact as the way in. `lib` is deprecated rather than removed. The `io.spine.tools:tool-base` artifact is no longer published as of `2.0.0-SNAPSHOT.420`, but the constant is referenced in 19 repositories across the SDK, so deleting it outright would break them all at once. Deprecating it lets each migrate to the module it actually needs, with the KDoc naming the replacements and pointing at `io.spine.environment.OsFamily` for the enum the module also carried. The object KDoc no longer calls `tool-base` a module — the repository keeps its name, only the module is gone. Note on ordering: `version` moves to `2.0.0-SNAPSHOT.420`, where the new modules first exist. This must not merge before that version of `tool-base` is published. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 38045329e0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
... because these modules are removed in ToolBase.
JavaScript and Dart are not supported languages in v2.x, so SpineEventEngine/tool-base#189 no longer publishes `js-code` or `dart-code`. Declaring constants for them would point at artifacts that will not exist. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…l-base-module-split
armiol
approved these changes
Aug 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Important
Do not merge before
io.spine.tools:*:2.0.0-SNAPSHOT.420is published.This bumps
ToolBase.versionto.420, where the new modules first exist.Merging earlier points every consumer at artifacts that do not exist yet.
Blocked on SpineEventEngine/tool-base#189.
What
SpineEventEngine/tool-base#189 splits the monolithic
tool-basemodule intofocused modules.
ToolBasegains a constant for each, and stops presenting theretired artifact as the way in.
archiveio.spine.tools:archivecodeio.spine.tools:codefsio.spine.tools:fsjavaCodeio.spine.tools:java-codekotlinCodeio.spine.tools:kotlin-codeprotoCodeio.spine.tools:proto-codeWhy
libis deprecated and not removedio.spine.tools:tool-baseis no longer published as of.420, so the constantnow names a non-existent artifact. It is nonetheless referenced in 19
repositories across the SDK —
compiler,core-jvm-compiler,core-jvm,validation,delivery-server,jdbc-storage,web,ProtoTapand others,about 64 call sites in total.
Deleting it would break all of them in one step.
@Deprecatedlets eachmigrate to the module it actually needs, and the KDoc names the replacements —
including
io.spine.environment.OsFamilyin Base Libraries for the enum thattool-basealso carried.Not included
js-codeanddart-codewere extracted mid-branch and then removed:JavaScript and Dart are not supported languages in v2.x, so no constants are
declared for them.
Also
The object KDoc no longer calls
tool-basea module. The repository keeps itsname; only the module of that name is gone.
Follow-up
Migrating the 19 consumer repositories off
ToolBase.libis deliberately notpart of this change.
🤖 Generated with Claude Code