Files
alksocks/Cargo.toml
T
glm-5.3-flash 9ed3e8c83d release: v0.2.0 — the dependency-major (alkcall 0.9.0 / alktunnels 0.3.0)
- Cargo.toml: alkcall 0.8.1 -> 0.9.0 (crates.io, the stub-sweep
  release) and alktunnels 0.2.1 -> 0.3.0 (its dependency-major ride);
  0.1.0 -> 0.2.0 (semver-incompatible dep bumps + public alkcall
  re-exports -> minor, matching the alktunnels 0.2.1 -> 0.3.0 ride)
- fuzz/shared/Cargo.toml: alkcall 0.9.0 (one alkcall version across
  the path graph)
- No code change: zero contact with the 0.9.0 breaking surface (no
  marked-pub registration, no control-handle subscription, no
  resource enumerator use, no generic op/register announcements;
  Establishment::default() is the only Establishment contact, in the
  session gate)
- CHANGELOG: 0.2.0 section + compare links
- README: the 0.2.0 note
- docs/architecture/overview.md: dep tree + feature table alkcall
  0.9.0 / alktunnels 0.3.0
- AGENTS.md: alkcall refs — v0.8.x/0.8.0 pin -> v0.9.x/0.9.0

Verification: cargo test (145 default / 171 all-features), fuzz/shared
corpus replay (3/3), clippy --all-targets -D warnings (native +
wasm32-unknown-unknown), fmt --check, wasm32 check, cargo doc, and
cargo publish --dry-run --allow-dirty all green
2026-10-14 05:33:44 +00:00

62 lines
2.6 KiB
TOML

[package]
name = "alksocks"
version = "0.2.0"
edition = "2021"
rust-version = "1.88"
license = "MIT OR Apache-2.0"
description = "SOCKS5 (RFC 1928) proxy protocol over alkcall channels: targeted-forked fast-socks5 typestate core plus producer/consumer sessions. Producer/consumer protocol crate."
repository = "https://git.alk.dev/alkdev/alksocks"
readme = "README.md"
keywords = ["socks5", "proxy", "rfc1928", "channels", "alkcall"]
categories = ["network-programming", "asynchronous"]
exclude = [".opencode/", "AGENTS.md", "docs/reviews/", "docs/research/", "docs/plans/", "tasks/", "docs/sdd_process.md", "fuzz/"]
[workspace]
members = ["."]
exclude = ["fuzz"]
[lib]
name = "alksocks"
[features]
# Declared empty by design (ADR-009): `local` adds tokio/net when its
# modules land, `composed` adds the alktunnels dep. The default build
# is protocol-only and wasm-clean by construction.
default = []
local = ["tokio/net"]
composed = ["dep:alktunnels"]
[dependencies]
# The substrate (convention 11): pinned, bump deliberately, never
# transitively. 0.9.0: the stub-sweep release (the marked-pub open
# contract, channel/control, channel/resources/subscribe, op/register
# forward-through — none on this crate's paths; zero code contact with
# the breaking surface, this crate's only Establishment use is
# `Establishment::default()` in the session gate).
alkcall = "0.9.0"
tokio = { version = "1", default-features = false, features = ["rt", "sync", "io-util", "macros", "time"] }
# The fork's declared logging seam (rfc1928.md: upstream `log` calls
# were dropped or re-pointed here); no source file references it yet —
# the first consumer is expected to be the producer layer's
# diagnostics (review 001 N-2).
tracing = "0.1"
thiserror = "2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
bytes = "1"
futures = { version = "0.3", default-features = false, features = ["std"] }
# The sibling crate (the composed egress's direct-op vehicle — ADR-008/
# ADR-009): rides `composed` alone. Pinned; bump deliberately
# (convention 11's deliberate-bump rule applies to siblings too).
# 0.3.0: the dependency-major (the alkcall 0.9.0 bump), bug-fix ride,
# no alktunnels API/wire change.
alktunnels = { version = "0.3.0", optional = true }
[dev-dependencies]
tokio = { version = "1", features = ["full", "test-util", "macros"] }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# The composed suite's topology (the alktunnels direct-op producer) —
# dev-only: the test binary gates itself on the `composed` feature
# (`#![cfg(feature = "composed")]`), the dev-dep keeps it compiling.
alktunnels = "0.3.0"