diff --git a/.release-please-manifest.json b/.release-please-manifest.json index c39891b..104e73a 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.0.0-rc.1" + ".": "1.0.0-rc.2" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 43940a1..01c0bca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,71 @@ # Changelog +## [1.0.0-rc.2](https://github.com/tableau/hyper-api-rust/compare/v1.0.0-rc.1...v1.0.0-rc.2) (2026-09-06) + + +### ⚠ BREAKING CHANGES + +* **mcp:** `hyperdb-mcp` is published to crates.io, and this reshapes its library surface: `Engine::execute_in_transaction` takes `&mut self` and yields `EngineTransaction` rather than `&Engine`, the seven ingest entry points and `merge_via_temp_table` take `&mut Engine`, and `Engine::with_search_path` is new. The `missing_docs` allow reason on `src/lib.rs` claimed the crate is not published; corrected in passing. +* **core:** bind scaled Numeric and Geography as text parameters ([#257](https://github.com/tableau/hyper-api-rust/issues/257)) +* **bootstrap:** source hyperd from the PyPI tableauhyperapi wheels ([#254](https://github.com/tableau/hyper-api-rust/issues/254)) +* **bootstrap:** hyperdb-bootstrap no longer has a build id or a releases-page scraper, because a wheel URL is fully constructible from the version alone. Removed public API: + - `PinnedRelease::build_id` and `InstalledHyperd::build_id` — use `.version`, + now the only release identifier, plus the new + `PinnedRelease::wheel_tag_for(Platform)` for the per-platform wheel tag. + - `PinnedRelease::version_tag()` — use `.version`. It existed only to join the + version and the build id into `0.0.26479.r96880f6a`; there is no build id + left to join. + - `VersionSource::ScrapeLatest` and the `scrape` module — deleted with no + replacement. With a constructible URL and PyPI-published digests there is + nothing left to discover. + - `Error::Http`, `Error::HttpStatus` and `Error::ScrapeFailed` — all three + existed only to serve the scraper. `Error::MissingWheelTag` is new, because + `url::build_download_url` is now fallible. + - the `--latest` CLI flag — no replacement, it is deleted along with the + scraper it drove. Pass `--version X` or `--version-file PATH` instead. + - the `--build-id` CLI flag — it simply goes away. Wheel URLs need no build + id, so `--version X` on its own is now a complete version source: it + inherits the builtin pin's `[wheel_tag]` values and carries no digests, so + the download is unverified and logs a WARN. Use `--version-file` with a full + pin when you need verified bytes. + - the `regex`, `reqwest` and `rustls` dependencies — no in-process HTTP client + remains, which also retires the rustls crypto-provider workaround. +* **grpc:** report Arrow failures in label lookups instead of a partial map + +### Features + +* **api:** constraint-preserving table copy for hyper export ([#258](https://github.com/tableau/hyper-api-rust/issues/258)) ([4eb61d5](https://github.com/tableau/hyper-api-rust/commit/4eb61d56fa3c13a6abaee202d997a998fedefd9a)) +* **bootstrap:** source hyperd from the PyPI tableauhyperapi wheels ([cb2b63d](https://github.com/tableau/hyper-api-rust/commit/cb2b63d8ae481596a14a6ce5131ec88305da7a43)) +* **bootstrap:** source hyperd from the PyPI tableauhyperapi wheels ([#254](https://github.com/tableau/hyper-api-rust/issues/254)) ([fa35a45](https://github.com/tableau/hyper-api-rust/commit/fa35a45b5a9072e386f607cdda7527a306929292)) +* **core:** bind scaled Numeric and Geography as text parameters ([#257](https://github.com/tableau/hyper-api-rust/issues/257)) ([8a443c6](https://github.com/tableau/hyper-api-rust/commit/8a443c6f95b15fb92bdd2c89d013df651a95f0db)) +* **mcp:** report the hyperd connection descriptor in status ([#259](https://github.com/tableau/hyper-api-rust/issues/259)) ([5333bd0](https://github.com/tableau/hyper-api-rust/commit/5333bd08f8500b98f79d25cd6e2929e0719b2042)) +* **mcp:** report the hyperd endpoint in connectable form in status ([5333bd0](https://github.com/tableau/hyper-api-rust/commit/5333bd08f8500b98f79d25cd6e2929e0719b2042)) + + +### Bug Fixes + +* **api:** add missing #[must_use] on the Windows-gated pipe_name ([56fb280](https://github.com/tableau/hyper-api-rust/commit/56fb280ae2379e5168128288d248d37e9392984e)) +* **bench:** report decimal MB, not MiB under an MB label ([1684bfc](https://github.com/tableau/hyper-api-rust/commit/1684bfc21aaa3614904cb737ccbff8813b1c174c)) +* **bootstrap:** bump pinned hyperd to 0.0.26479 (r96880f6a) ([8c99d20](https://github.com/tableau/hyper-api-rust/commit/8c99d20d15af016b42647e6a826ad0a49c4a9082)) +* **bootstrap:** use the post-rename crate name in module docs and errors ([d7da987](https://github.com/tableau/hyper-api-rust/commit/d7da987ba4045a4a4a1965e091ce40a5810f52d3)) +* **compile-check:** stop false "not registered" errors in rust-analyzer ([22b0a7a](https://github.com/tableau/hyper-api-rust/commit/22b0a7ab111f04f0d45d4ed69b5f2078e1b23f1d)) +* correct the pre-rename hyperd-bootstrap name in user-facing errors ([0cc65e2](https://github.com/tableau/hyper-api-rust/commit/0cc65e2b997aafcd2a607bda022eb59fade2f58f)) +* **grpc:** report Arrow failures in label lookups instead of a partial map ([1cbdd4d](https://github.com/tableau/hyper-api-rust/commit/1cbdd4d61f8f60cfb2cf9fcd7ed8f0f5024d723f)) +* identify hyperd by executable path, and report decimal MB in the bench harness ([#256](https://github.com/tableau/hyper-api-rust/issues/256)) ([816ecbb](https://github.com/tableau/hyper-api-rust/commit/816ecbb5576e1ae71b28755d5a73bdc3aefc7124)) +* **mcp:** identify hyperd by executable, not thread name ([14dd334](https://github.com/tableau/hyper-api-rust/commit/14dd33419692fae4f6f79d29ec761ba10d136e83)) +* **mcp:** scope a Unix-only test import so Windows sees no unused import ([6d2a0b5](https://github.com/tableau/hyper-api-rust/commit/6d2a0b5dac12bb846f37a10596187d1b14a8aced)) + + +### Miscellaneous Chores + +* release 1.0.0-rc.2 ([a9fe1b0](https://github.com/tableau/hyper-api-rust/commit/a9fe1b04dd2e2c2aafb12346c0b5b41436f0d787)) +* release 1.0.0-rc.2 ([099ad49](https://github.com/tableau/hyper-api-rust/commit/099ad49a5c17f1c8274e91a0821aa3657e19a0c1)) + + +### Code Refactoring + +* **mcp:** drive Engine transactions with the RAII guard, and flatten client::Error ([#261](https://github.com/tableau/hyper-api-rust/issues/261)) ([68ff688](https://github.com/tableau/hyper-api-rust/commit/68ff688ebd22b29494ff69479133a4bb35db7f63)) + ## [1.0.0-rc.1](https://github.com/tableau/hyper-api-rust/compare/v0.7.3...v1.0.0-rc.1) (2026-09-05) diff --git a/Cargo.lock b/Cargo.lock index 92ee383..620afde 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1778,7 +1778,7 @@ dependencies = [ [[package]] name = "hyperdb-api" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "arrow", "async-stream", @@ -1803,7 +1803,7 @@ dependencies = [ [[package]] name = "hyperdb-api-core" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "arrow", "base64 0.23.1", @@ -1844,7 +1844,7 @@ dependencies = [ [[package]] name = "hyperdb-api-derive" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "hyperdb-api", "hyperdb-compile-check", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "hyperdb-api-node" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "hyperdb-api", "napi", @@ -1868,7 +1868,7 @@ dependencies = [ [[package]] name = "hyperdb-api-salesforce" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "arrow", "base64 0.23.1", @@ -1890,7 +1890,7 @@ dependencies = [ [[package]] name = "hyperdb-bootstrap" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "anyhow", "clap", @@ -1907,7 +1907,7 @@ dependencies = [ [[package]] name = "hyperdb-compile-check" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "hyperdb-api", "parking_lot", @@ -1916,7 +1916,7 @@ dependencies = [ [[package]] name = "hyperdb-mcp" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "arrow", "base64 0.23.1", @@ -3591,7 +3591,7 @@ dependencies = [ [[package]] name = "sea-query-hyperdb" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "sea-query", ] diff --git a/Cargo.toml b/Cargo.toml index 60ce97c..315b36c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,7 @@ exclude = ["hyperdb-compile-check"] # `cargo build --manifest-path hyperdb-compile-check/Cargo.toml`. [workspace.package] -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" edition = "2024" rust-version = "1.88" license = "MIT OR Apache-2.0" diff --git a/hyperdb-api-core/Cargo.toml b/hyperdb-api-core/Cargo.toml index 3d3e773..710ba07 100644 --- a/hyperdb-api-core/Cargo.toml +++ b/hyperdb-api-core/Cargo.toml @@ -66,7 +66,7 @@ serde_json = { workspace = true } # Salesforce OAuth authentication (optional, via standalone crate) # x-release-please-start-version -hyperdb-api-salesforce = { path = "../hyperdb-api-salesforce", version = "=1.0.0-rc.1", optional = true } +hyperdb-api-salesforce = { path = "../hyperdb-api-salesforce", version = "=1.0.0-rc.2", optional = true } # x-release-please-end # Arrow parsing for catalog operations (optional, used by authenticated_client) diff --git a/hyperdb-api-derive/Cargo.toml b/hyperdb-api-derive/Cargo.toml index be61787..3a73417 100644 --- a/hyperdb-api-derive/Cargo.toml +++ b/hyperdb-api-derive/Cargo.toml @@ -27,7 +27,7 @@ syn = { version = "2", features = ["full"] } quote = "1" proc-macro2 = "1" # x-release-please-start-version -hyperdb-compile-check = { path = "../hyperdb-compile-check", version = "=1.0.0-rc.1", optional = true } +hyperdb-compile-check = { path = "../hyperdb-compile-check", version = "=1.0.0-rc.2", optional = true } # x-release-please-end [dev-dependencies] diff --git a/hyperdb-api/Cargo.toml b/hyperdb-api/Cargo.toml index e8ed736..3620904 100644 --- a/hyperdb-api/Cargo.toml +++ b/hyperdb-api/Cargo.toml @@ -14,7 +14,7 @@ autobenches = false [dependencies] # x-release-please-start-version -hyperdb-api-core = { path = "../hyperdb-api-core", version = "=1.0.0-rc.1" } +hyperdb-api-core = { path = "../hyperdb-api-core", version = "=1.0.0-rc.2" } # x-release-please-end # NOTE: hyperdb-api-derive is intentionally NOT a dep of hyperdb-api. # Adding it creates a cycle: diff --git a/hyperdb-compile-check/Cargo.lock b/hyperdb-compile-check/Cargo.lock index 2632381..0684a55 100644 --- a/hyperdb-compile-check/Cargo.lock +++ b/hyperdb-compile-check/Cargo.lock @@ -863,7 +863,7 @@ dependencies = [ [[package]] name = "hyperdb-api" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "arrow", "async-stream", @@ -881,7 +881,7 @@ dependencies = [ [[package]] name = "hyperdb-api-core" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "base64 0.23.1", "byteorder", @@ -916,7 +916,7 @@ dependencies = [ [[package]] name = "hyperdb-compile-check" -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" dependencies = [ "hyperdb-api", "parking_lot", diff --git a/hyperdb-compile-check/Cargo.toml b/hyperdb-compile-check/Cargo.toml index 2c7f967..96ce690 100644 --- a/hyperdb-compile-check/Cargo.toml +++ b/hyperdb-compile-check/Cargo.toml @@ -7,7 +7,7 @@ [package] name = "hyperdb-compile-check" # x-release-please-start-version -version = "1.0.0-rc.1" +version = "1.0.0-rc.2" # x-release-please-end edition = "2024" rust-version = "1.88" @@ -25,7 +25,7 @@ categories = ["database", "development-tools"] [dependencies] # x-release-please-start-version -hyperdb-api = { path = "../hyperdb-api", version = "=1.0.0-rc.1" } +hyperdb-api = { path = "../hyperdb-api", version = "=1.0.0-rc.2" } # x-release-please-end parking_lot = "0.12" tempfile = "3.20" diff --git a/hyperdb-mcp/Cargo.toml b/hyperdb-mcp/Cargo.toml index 1c17deb..96f706d 100644 --- a/hyperdb-mcp/Cargo.toml +++ b/hyperdb-mcp/Cargo.toml @@ -21,7 +21,7 @@ path = "src/main.rs" [dependencies] # x-release-please-start-version -hyperdb-api = { path = "../hyperdb-api", version = "=1.0.0-rc.1" } +hyperdb-api = { path = "../hyperdb-api", version = "=1.0.0-rc.2" } # x-release-please-end rmcp = { version = "1.7", features = ["server", "transport-io"] } tokio = { version = "1", features = ["rt-multi-thread", "macros", "io-std", "signal", "time"] } diff --git a/version.txt b/version.txt index 9c21819..fedbd0b 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.0.0-rc.1 +1.0.0-rc.2