Skip to content

release: prepare v0.8.0 - #57

Merged
krinart merged 8 commits into
trunkfrom
release/v0.8.0
Aug 20, 2026
Merged

release: prepare v0.8.0#57
krinart merged 8 commits into
trunkfrom
release/v0.8.0

Conversation

@krinart

@krinart krinart commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bumps pom.xml/Version.java to 0.8.0 and adds docs/release_notes/v0.8.0.md covering search() and nsql()/nsqlGenerateSql() — both merged to trunk.
  • #53 (listActiveQueries/cancelActiveQuery) and #56 (queryAsync/queryAsyncWithParams) are implemented and reviewed but will not be merged for this release — v0.8.0 ships search + nsql only.

Test plan

  • mvn install -DskipTests then mvn checkstyle:check japicmp:cmp both pass locally — japicmp cleanly compares 0.8.0 (search + nsql) against the real 0.6.0 baseline with no compatibility violations.

Bumps pom.xml/Version.java to 0.8.0 and adds release notes covering the
four additive feature PRs (#53-#56): search, Nsql/NsqlGenerateSql,
active-query management, and async queries.

japicmp.oldVersion stays at 0.6.0 rather than bumping to 0.7.0: v0.7.0
was tagged and GitHub-released but its Maven Central publish never
completed, so it isn't a resolvable dependency. See the pom.xml comment
for detail.
Copilot AI balanced review requested due to automatic review settings August 19, 2026 21:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Prepares the Java SDK v0.8.0 release and documents four pending additive API features.

Changes:

  • Bumps the SDK version to 0.8.0.
  • Documents release features and compatibility.
  • Explains retaining the 0.6.0 japicmp baseline.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
pom.xml Updates artifact version and compatibility baseline rationale.
src/main/java/ai/spice/Version.java Updates the runtime SDK version constant.
docs/release_notes/v0.8.0.md Adds v0.8.0 release notes and examples.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread docs/release_notes/v0.8.0.md Outdated
Comment thread pom.xml
Comment thread docs/release_notes/v0.8.0.md Outdated
Copilot AI review requested due to automatic review settings August 19, 2026 22:21

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

Suppressed comments (5)

pom.xml:7

  • The release version is now 0.8.0, but both installation snippets still point users to 0.7.0 (README.md:15 and README.md:25). Update those snippets as part of this release bump so the primary installation instructions select the release being prepared.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:61

  • This sample retains the ArrowReader without closing it, and then demonstrates polling/cancellation only after results() has already waited for completion. Use try-with-resources and place polling or cancellation before result retrieval so the example does not teach a native-resource leak or a no-op cancellation sequence.
AsyncQuery job = client.queryAsync("SELECT * FROM large_table");
ArrowReader results = job.results(); // waits for completion, then streams results

// Or poll manually:
QueryStatus status = job.status();

docs/release_notes/v0.8.0.md:50

  • The first sentence promises credential scoping unconditionally, while the next says all runtime versions through v2.1.5 provide no credential scoping. State that scoping is runtime-version dependent; otherwise users on those versions may incorrectly assume other credentials cannot view or cancel their queries.
Both calls are scoped to the authenticated API key or client certificate, not to the `SpiceClient` instance, and reach only the one runtime process behind the client's HTTP endpoint. Runtime releases up to and including v2.1.5 don't scope either endpoint by credential at all.

docs/release_notes/v0.8.0.md:73

  • Adding four public methods does change the public API, even though it is source- and binary-compatible. Calling the API “unchanged” contradicts the rest of this sentence; describe the release as having no breaking API changes instead.
- Public API unchanged: all four features are new methods; nothing existing was renamed, removed, or retyped.

docs/release_notes/v0.8.0.md:81

  • This pre-release status is guaranteed to be stale in the published notes: #53 and #56 must merge before v0.8.0 can contain the features documented above, so they will no longer be open when this release is cut. After updating this branch with those dependencies, replace the transient status with permanent feature provenance.
`search()` ([#54](https://github.com/spiceai/spice-java/pull/54)) and `nsql()`/`nsqlGenerateSql()` ([#55](https://github.com/spiceai/spice-java/pull/55)) have merged to trunk. This release still depends on two open PRs:

- [#53](https://github.com/spiceai/spice-java/pull/53) — `listActiveQueries()`/`cancelActiveQuery()`
- [#56](https://github.com/spiceai/spice-java/pull/56) — `queryAsync()`/`queryAsyncWithParams()`

#53 (active queries) and #56 (async queries) will not merge for this
release; remove them from the release notes' What's New and reflect
that in Release status instead of listing them as still-pending
dependencies.
Copilot AI review requested due to automatic review settings August 19, 2026 22:37

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

Suppressed comments (2)

pom.xml:7

  • The release version is updated here, but both installation snippets still direct users to 0.7.0 (README.md:15 and README.md:25). Since this PR also documents that 0.7.0 was never published, those instructions point to an unresolvable artifact; update both snippets to 0.8.0 as part of this release.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:44

  • Calling the public API “unchanged” contradicts the new public methods and request/response types described by this release. Describe this as backward-compatible API additions so consumers are not told that the API surface is identical.
- Public API unchanged: both features are new methods; nothing existing was renamed, removed, or retyped.

Removed release status section and notes on features not included in v0.8.0.
Copilot AI review requested due to automatic review settings August 19, 2026 22:40

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

Suppressed comments (3)

docs/release_notes/v0.8.0.md:7

  • The referenced “Release status” section does not exist in this document, leaving readers with a dangling pointer. Remove this sentence or add the promised section.
Active-query management and asynchronous queries were also implemented for this cycle ([#53](https://github.com/spiceai/spice-java/pull/53), [#56](https://github.com/spiceai/spice-java/pull/56)) but are **not included in v0.8.0** — those PRs will not be merged for this release. See "Release status" below.

pom.xml:7

  • The Maven and Gradle installation snippets in README.md:15 and README.md:25 still advertise v0.7.0. Since that artifact was never published and this PR prepares v0.8.0, publishing this version would leave users copying stale/unavailable coordinates; update both README snippets to v0.8.0 as part of this release bump.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:5

  • Because v0.7.0 was never published to Maven Central and the compatibility baseline remains v0.6.0, v0.8.0 is the next installable release for Maven users. Those users will also receive v0.7.0's dependency and behavior changes (including the dependency removals and pins documented in v0.7.0.md), so describing v0.8.0 as only these two features with “no dependency changes” is misleading. Either publish v0.7.0 first or make these notes cover/clearly link the cumulative v0.6.0-to-v0.8.0 changes.

This issue also appears on line 7 of the same file.

v0.8.0 is a **feature-parity release**, closing two of the four gaps between this SDK and its siblings (gospice, spice-rs, spicepy, spice.js): search and natural-language-to-SQL. Both are purely additive — no existing public API changes shape or behavior, and no dependency changes.

@krinart
krinart enabled auto-merge (squash) August 19, 2026 23:15
@krinart
krinart disabled auto-merge August 20, 2026 00:26
Removed testing section from release notes for v0.8.0.
Copilot AI review requested due to automatic review settings August 20, 2026 00:30

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

Suppressed comments (2)

pom.xml:7

  • The artifact is being released as 0.8.0, but the Maven and Gradle installation snippets remain pinned to 0.7.0 (README.md:15 and README.md:25). Since the PR notes that 0.7.0 was never published to Maven Central, users following the README will still receive an unresolvable dependency after this release. Update both snippets to 0.8.0 as part of the release bump.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:7

  • This points readers to a “Release status” section that does not exist in this document. Remove the dangling pointer (or add the referenced section) so the published notes do not contain a broken internal reference.
Active-query management and asynchronous queries were also implemented for this cycle ([#53](https://github.com/spiceai/spice-java/pull/53), [#56](https://github.com/spiceai/spice-java/pull/56)) but are **not included in v0.8.0** — those PRs will not be merged for this release. See "Release status" below.

Removed highlights section from release notes for v0.8.0.
Copilot AI review requested due to automatic review settings August 20, 2026 01:03

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

Suppressed comments (2)

pom.xml:7

  • The release bump leaves the primary installation snippets at README.md:15 and README.md:25 on 0.7.0. Since this release notes that 0.7.0 was never published, users following those instructions will request an unavailable artifact after 0.8.0 is released. Update both snippets to 0.8.0 as part of this release.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:34

  • Calling the public API “unchanged” contradicts the same sentence and the release itself: search, nsql, their request/response types, and their public members are additions to the public API. Describe this as backward-compatible/additive instead so consumers are not told there was no API change.
- Public API unchanged: both features are new methods; nothing existing was renamed, removed, or retyped.

Updated the old version for japicmp to 0.7.0.
Copilot AI review requested due to automatic review settings August 20, 2026 01:12

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

Suppressed comments (2)

pom.xml:7

  • The release version is now 0.8.0, but the Maven and Gradle installation snippets still advertise 0.7.0 at README.md:15 and README.md:25. Update those snippets as part of this release so users are not directed to the old, unpublished artifact.
    <version>0.8.0</version>

docs/release_notes/v0.8.0.md:34

  • “Public API unchanged” contradicts the addition of new public methods and types. The compatibility claim is that there are no breaking changes, not that the API is unchanged; wording it that way avoids misleading API consumers.
- Public API unchanged: both features are new methods; nothing existing was renamed, removed, or retyped.

Comment thread pom.xml
@krinart
krinart merged commit dd5a37e into trunk Aug 20, 2026
36 of 37 checks passed
@krinart
krinart deleted the release/v0.8.0 branch August 20, 2026 16:56
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.

3 participants