Skip to content

build: set up isBeta extra property for all gradle subprojects#2000

Merged
EugeneTheDev merged 2 commits into
developfrom
eugenethedev/beta-modules
May 13, 2026
Merged

build: set up isBeta extra property for all gradle subprojects#2000
EugeneTheDev merged 2 commits into
developfrom
eugenethedev/beta-modules

Conversation

@EugeneTheDev
Copy link
Copy Markdown
Collaborator

We've agreed on the new versioning scheme that will separate between "stable" and "beta" modules. "beta" modules will contain experimental APIs, and to distinguish between "stable" and "beta", "beta" modules will get a "-beta" postfix in their version, e.g. "1.0-beta".

To simplify maintenance, isBeta extra property is introduced for all Koog modules. Now, there's no need to configure group and version manually in each module, these are controlled centrally. To mark a module as experimental, one can simply set the following somewhere in the root of a module's build.gradle.kts:

val isBeta by extra(true)

@EugeneTheDev
Copy link
Copy Markdown
Collaborator Author

Next steps:

  1. Go through all the modules and mark some of them as beta (currently only A2A SDK modules are marked as beta, just to give an example)
  2. Implement a check in koog-agents to make sure that all-in-one dependency doesn't bring beta modules

Copy link
Copy Markdown
Collaborator

@Ololoshechkin Ololoshechkin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Solid work!
@EugeneTheDev please test TC publication from a branch :)

Comment on lines -3 to -4
group = rootProject.group
version = rootProject.version
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't we need this?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I wrote in the PR description, it's now controlled centrally, from the root build.gradle.kts https://github.com/JetBrains/koog/pull/2000/changes#diff-c0dfa6bc7a8685217f70a860145fbdf416d449eaff052fa28352c5cec1a98c06R79

@Ololoshechkin
Copy link
Copy Markdown
Collaborator

@EugeneTheDev to make it fair test, feel free to create 0.9.0 branch, set the main version to 0.9.0-test and verify that everything will be published as 0.9.0-test and 0.9.0-test-beta, respectively. WDYT?

@EugeneTheDev
Copy link
Copy Markdown
Collaborator Author

Tried to publish test version, it worked as expected, so I'm merging it

@EugeneTheDev EugeneTheDev merged commit ad48232 into develop May 13, 2026
23 of 24 checks passed
@EugeneTheDev EugeneTheDev deleted the eugenethedev/beta-modules branch May 13, 2026 10:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants