Repository navigation
Switch license from Apache 2.0 to the Axoniq Terms of Service - #191
Merged
Merged
Conversation
SlidingTimeWindowReservoir was adapted from Dropwizard Metrics by way of Axon Framework, both Apache 2.0. It cannot move to the Axoniq Terms of Service with the rest of the client, so it is replaced by a new implementation. SlidingWindowSum keeps one running sum per one-second bucket. It holds 61 slots for a 60-second window, and sum() covers the 60 completed buckets. The window is always exactly 60 seconds, so busy-bus capacity reports are accurate. A task's duration is counted once its bucket closes, so the gauge lags by at most one second. Memory is now fixed. The old reservoir kept an entry for every task that finished in the last minute, which grows large on a busy bus.
The client is part of Axoniq Framework. Starting with 5.4.0 it is licensed under the Axoniq Terms of Service, like the rest of the framework. The Terms at https://www.axoniq.io/legal/terms-of-service govern all use, so the license texts in this repository point there instead of summarising them. Legal approved the wording. - Replace LICENSE.txt with a copyright line and a pointer to the Terms, naming the client as part of Axoniq Framework - Replace the Apache header in all project files with the short Terms of Service header; the copyright holder is written as Axoniq B.V. - Declare the Terms of Service in the pom <licenses> block published to Maven Central - Update the IntelliJ copyright template so new files get the same header - Add a License section to the README and drop the "Open-Source" wording - Spell Axoniq consistently in published pom metadata - Restore the original Apache Software Foundation notice in the Maven wrapper files. An earlier bulk header update had replaced it with an Axoniq copyright, but the wrapper is third-party code that cannot be relicensed.
CodeDrivenMitch
requested review from
a team,
Andrew-deVillier and
stefanmirkovic
and removed request for
a team
October 19, 2026 06:48
CodeDrivenMitch
marked this pull request as ready for review
October 19, 2026 06:48
smcvb
approved these changes
Oct 19, 2026
smcvb
left a comment
Contributor
There was a problem hiding this comment.
Looks good to me, although it seems you (accidentally) sneaked in another clean-up in this PR.
| return busyTime.sum().toDouble() / WINDOW.toNanos().toDouble() | ||
| } | ||
|
|
||
| private companion object { |
Contributor
There was a problem hiding this comment.
This doesn't look like a license change to me ;-)
| * added. [sum] covers the last [bucketCount] completed buckets, which always span exactly the full window. A value | ||
| * therefore only shows up in [sum] once the bucket it was added to has elapsed. | ||
| */ | ||
| class SlidingWindowSum( |
Contributor
There was a problem hiding this comment.
Seems like a side track of the intent of this PR. Or something you had pending locally and accidentally committed with it.
stefanmirkovic
approved these changes
Oct 19, 2026
SonarCloud is no longer used. Drop the analysis step and the coverage build from the main and pull request workflows, and remove the Sonar properties and the JaCoCo coverage profile that only existed to feed it.
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.
Summary
The Axoniq Platform Framework Client is part of Axoniq Framework. From 5.4.0 it is licensed under
the Axoniq Terms of Service, like the rest of the
framework. The Terms explicitly govern Axoniq Framework. Legal approved the wording of the license
file and the file header.
Changes
License switch
LICENSE.txtis now a copyright line and a pointer to the Terms, which govern all use. It namesthe client as part of Axoniq Framework and no longer summarises the Terms.
(
Copyright (c) 2022-2026. Axoniq B.V.).<licenses>block, which Maven Central publishes, now declares the Terms of Service.copyright-template.xml(IntelliJ) produces the same header for new files.Third-party code
SlidingTimeWindowReservoirwas adapted from Dropwizard Metrics (Apache 2.0) and couldn't berelicensed. It is replaced by a new
SlidingWindowSum, whichMeasuringExecutorServiceDecoratoruses for busy-bus capacity.
the gauge lags by at most one second.
mvnwandmaven-wrapper.propertiesget back the original notices an earlier bulk header updatehad replaced: the Apache Software Foundation header in
mvnw, and no header in the propertiesfile.
Sonar removal
and pull request workflows.
coverageprofile that fed it are removed from the pom.