Goal
Fix the HTTP tracker announce handler to return the compact peer list by default when the client omits the compact GET parameter, aligning the tracker with the SUGGESTION in BEP 23.
Background
BEP 23 states: "It is SUGGESTED that trackers return compact format by default." The current implementation only returns compact when compact=1 is explicit. When absent, it falls through to non-compact (dictionary) format.
Scope
- Invert the compact-default logic in
build_response so None maps to compact
- Remove the deviation NOTICE in
packages/axum-http-server/src/lib.rs
- Rename and invert the contract test
- Remove the
code-review comment that flagged this deviation
Full spec: docs/issues/drafts/align-http-tracker-compact-default-with-bep-23/ISSUE.md
Goal
Fix the HTTP tracker announce handler to return the compact peer list by default when the client omits the
compactGET parameter, aligning the tracker with the SUGGESTION in BEP 23.Background
BEP 23 states: "It is SUGGESTED that trackers return compact format by default." The current implementation only returns compact when
compact=1is explicit. When absent, it falls through to non-compact (dictionary) format.Scope
build_responsesoNonemaps to compactpackages/axum-http-server/src/lib.rscode-reviewcomment that flagged this deviationFull spec: docs/issues/drafts/align-http-tracker-compact-default-with-bep-23/ISSUE.md