chore: bump to 0.8.1, changelog for the alkcall 0.10.1 adoption

- alkcall requirement 0.10.0 -> 0.10.1 (same-family version-only bump:
  the adoption-window ordering fix, private fix surface, no type alktty
  touches); lockfiles updated in both the root and fuzz workspaces
- AGENTS.md pin refreshed from the stale 0.9.0 note

Verification: cargo test 113 default / 137 all-features (unchanged from
the 0.8.0 baseline); fuzz corpus replay 9 green; clippy stable + wasm
(-D warnings); fmt; doc; wasm32-unknown-unknown check; publish dry run
(43 files)
This commit is contained in:
glm-5.3-flash committed 2026-10-22 06:22:33 +00:00
1 parent 56d0556240
commit e3d7f6f3f2
5 files changed
+41 -14

No files matched your search

+5 -6
View File
@@ -320,12 +320,11 @@ release and after touching `src/wire.rs`, `src/negotiation.rs`,
`BiStream`, `BidiStreamSource`, `AuthContext`, `Identity`,
`IdentityProvider`, `AccessControl`, `OwnershipProvider`,
`OwnershipStore`, `InMemoryOwnershipStore`, `HandlerError`,
`StreamError`) come from `alkcall::core`. alkcall is v0.9.x —
`StreamError`) come from `alkcall::core`. alkcall is v0.10.x —
breaking changes are expected at this major-zero stage; this is the
first real consumer, so we find and fix issues upstream rather than
working around them. Pin `alkcall = "0.9.0"` (0.9.0 is the stub-sweep
release: the marked-pub open contract, `channel/control`,
`channel/resources/subscribe`, and `op/register` forward-through are
real implementations; `register_openable*` now refuses `Pub`-typed
specs — alktty's op is `Sub`-typed and unaffected) and bump
working around them. Pin `alkcall = "0.10.1"` (0.10.1 is the
adoption-window ordering fix: the `adopt_channel` install→drain
window is atomic, so a routed chunk can no longer jump ahead of
parked early arrivals or get parked forever past the drain — and bump
deliberately.
+28
View File
@@ -4,6 +4,33 @@ All notable changes to this crate are documented here. The format is
based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
this crate adheres to [Semantic Versioning](https://semver.org/).
## [0.8.1] - 2026-10-22
The alkcall 0.10.1 adoption: a dependency bump only — no source change
in alktty. alkcall 0.10.1 is the adoption-window ordering fix (review
013, routed from alkgit's wave-2 gate): a chunk routed by the demux
inside the `adopt_channel` install→drain window could be delivered
ahead of earlier-parked early arrivals (inverting the channel's
byte-stream order) and a related chunk could sit parked forever past
the drain. alktty adopts channels only as a consumer-side client
(`TtySession::open_via_channels`, which opens and then adopts the
session channel), so the fix applies to every channels-path session
under multi-process load — the reassembled chunk stream now preserves
wire-arrival order through the adoption window. The surface of the fix
is private to alkcall (`ChannelState` and the `install_locked` path):
no API, wire-format, or documented-cap change; the behavior only
strengthens. The direct-ALPN path does not touch the adopt machinery
at all.
### Changed
- **`alkcall` requirement updated to `0.10.1`; lockfile bumped from
0.10.0 to 0.10.1.** Version-requirement-only (0.10.1 is inside the
`0.10` caret family; alkcall 0.10.1 changed no type alktty touches
— the fix surface is private). alktty's public signatures reference
alkcall types, so downstream crates composing alktty with the fixed
alkcall pick this patch bump up on their next `cargo update`.
## [0.8.0] - 2026-10-19
The alkcall 0.10.0 adoption: a dependency bump only — no source change
@@ -471,6 +498,7 @@ alknet mono-repo.
the client→backend pump is aborted at session end instead of
lingering until the client disconnects.
[0.8.1]: https://git.alk.dev/alkdev/alktty/releases/tag/v0.8.1
[0.8.0]: https://git.alk.dev/alkdev/alktty/releases/tag/v0.8.0
[0.7.0]: https://git.alk.dev/alkdev/alktty/releases/tag/v0.7.0
[0.6.0]: https://git.alk.dev/alkdev/alktty/releases/tag/v0.6.0
Generated
+3 -3
View File
@@ -27,9 +27,9 @@ dependencies = [
[[package]]
name = "alkcall"
version = "0.10.0"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b8ef0591beff0e3fe64b7277a67d8e7caeccf71c27538b4b7aced028d22ca44"
checksum = "690d747f42baf385dc22cd120f79d43cf1ea239bc426675e0e1e225b57fc031a"
dependencies = [
"async-trait",
"bytes",
@@ -48,7 +48,7 @@ dependencies = [
[[package]]
name = "alktty"
version = "0.8.0"
version = "0.8.1"
dependencies = [
"alkcall",
"async-trait",
+2 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "alktty"
version = "0.8.0"
version = "0.8.1"
edition = "2021"
rust-version = "1.88"
license = "MIT OR Apache-2.0"
@@ -29,7 +29,7 @@ default = []
local = ["dep:portable-pty", "dep:tokio-util", "tokio/process", "tokio/rt-multi-thread"]
[dependencies]
alkcall = "0.10.0"
alkcall = "0.10.1"
# Minimal, wasm-clean tokio features. `local` adds `process` +
# `rt-multi-thread` (non-wasm). Do NOT use `features = ["full"]` — it
# pulls in `signal`/`fs`/`net` which break `wasm32-unknown-unknown`.
+3 -3
View File
@@ -27,9 +27,9 @@ dependencies = [
[[package]]
name = "alkcall"
version = "0.10.0"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b8ef0591beff0e3fe64b7277a67d8e7caeccf71c27538b4b7aced028d22ca44"
checksum = "690d747f42baf385dc22cd120f79d43cf1ea239bc426675e0e1e225b57fc031a"
dependencies = [
"async-trait",
"bytes",
@@ -48,7 +48,7 @@ dependencies = [
[[package]]
name = "alktty"
version = "0.8.0"
version = "0.8.1"
dependencies = [
"alkcall",
"async-trait",