feat(tty): wire local feature gate with assembly-layer re-export pattern
ADR-054 prescribes with a re-export module, but cargo rejects the cyclic dependency (alknet-tty → alknet-tty-local → alknet-tty) even with an optional dep. The re-export is deferred to the assembly layer: consumers depend on alknet-tty-local directly and register LocalTtyBackend in the TtyAdapter backend map. The feature gate stays declared (empty) for forward compatibility. Assembly pattern documented in the crate root doc comment.
This commit is contained in:
1 parent
6d7adf5911
commit
a20efb4d06
2 files changed
+31
-2
No files matched your search
@@ -11,8 +11,13 @@ name = "alknet_tty"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
# `local` re-exports `alknet_tty_local::LocalTtyBackend`. The
|
||||
# `dep:alknet-tty-local` dependency is wired in task `tty/local-feature-reexport`.
|
||||
# ADR-054 prescribes `local = ["dep:alknet-tty-local"]` with a re-export in
|
||||
# `src/lib.rs`. Cargo rejects the cyclic dependency (alknet-tty →
|
||||
# alknet-tty-local → alknet-tty) even with an optional dep, so the
|
||||
# re-export is deferred to the assembly layer: a consumer that wants the
|
||||
# local backend depends on `alknet-tty-local` directly and registers
|
||||
# `LocalTtyBackend` in the `TtyAdapter` backend map. See ADR-054 §"The
|
||||
# feature-re-export compromise" and the deviation note in `src/lib.rs`.
|
||||
local = []
|
||||
|
||||
[dependencies]
|
||||
|
||||
Reference in new issue
Block a user