Repository navigation
Releases: erikwang2013/apidoc-go
Release list
v1.0.13
v1.0.13
Scope
apidoc-go is an annotation + documentation API library. It does not implement protocol services or an embedded UI. The external UI consumes /api/menus, /api/protocols, /api/detail, /api/export and makes the test request itself.
Added
- Protocol registry at
GET /api/protocols: key, display name, category, URL schemes, aliases and default port for the full annotation list. - Alias-aware
@protocol: canonical keys, URL schemes and human names are accepted, including multi-word names such asISO 8583,OPC UA,WebRTC DataChannel,Unix Domain Socket,Raw Socket,IEC 60870-5-104andBACnet/IP. protocol_infoin/api/detailso the external UI can render the protocol name/category without a second lookup.- Binary body annotations:
@param ... type=binary(orhex/base64) within=payload.
Supported annotation protocols: HTTP/2, HTTP/3, REST/HTTP, SOAP, GraphQL, JSON-RPC, XML-RPC, OData, Webhooks, gRPC, Dubbo, Thrift, Hessian, MCP, A2A, ISO 8583, WebSocket, SSE, Socket.IO, WebRTC DataChannel, RTSP, RTMP, HLS, SIP, XMPP, AMQP, MQTT, STOMP, Kafka, CoAP, LwM2M, OPC UA, Modbus TCP, DNP3, IEC 60870-5-104, BACnet/IP, RTP, RTCP, TCP, UDP, Raw Socket and Unix Domain Socket.
Removed (breaking vs v1.0.10)
- Embedded Web UI,
/api/debug/*execution/streaming,Debugger/StreamDebuggerSPI, TargetPolicy/audit, protocol adapter example modules, e2e/scripts and internal plans/specs. - If you use the v1.0.10 debug extension, pin
v1.0.10or vendor it;v1.0.13is the annotation/docs-API line.
Documentation
- README and all 12 localized READMEs now describe the API-only scope, the full protocol registry and
/api/protocols. - Features, architecture, lifecycle and social-preview SVGs are aligned with the external-UI scope; unused per-language SVG copies were removed.
Verification
go test ./...passgo vet ./...cleangofmt -l .clean
Full changelog: https://github.com/erikwang2013/apidoc-go/blob/main/CHANGELOG.md
v1.0.12
v1.0.12
Same annotation + documentation API scope as v1.0.11.
This patch aligns the README diagrams (features, lifecycle, social preview) with the external-UI scope and removes unused per-language SVG copies.
See v1.0.11 for:
- the full protocol registry at
GET /api/protocols; - alias-aware
@protocol(including multi-word names such asISO 8583,OPC UA,WebRTC DataChannel); protocol_infoin/api/detail;- removal of the embedded UI,
/api/debug/*execution/streaming and protocol service implementations.
The external UI consumes /api/menus, /api/protocols, /api/detail and /api/export, and makes test requests itself.
Full changelog: https://github.com/erikwang2013/apidoc-go/blob/main/CHANGELOG.md
v1.0.11
v1.0.11
Scope
apidoc-go is now an annotation + documentation API library. It does not implement protocol services or an embedded UI. The external UI consumes /api/menus, /api/protocols, /api/detail, /api/export and makes the test request itself.
Added
- Protocol registry at
GET /api/protocols: key, display name, category, URL schemes, aliases and default port for the full annotation list. - Alias-aware
@protocol: canonical keys, URL schemes and human names are accepted, including multi-word names such asISO 8583,OPC UA,WebRTC DataChannel,Unix Domain Socket,Raw Socket,IEC 60870-5-104andBACnet/IP. protocol_infoin/api/detailso the external UI can render the protocol name/category without a second lookup.- Binary body annotations: declare
@param ... type=binary(orhex/base64) within=payload.
Supported annotation protocols include: HTTP/2, HTTP/3, REST/HTTP, SOAP, GraphQL, JSON-RPC, XML-RPC, OData, Webhooks, gRPC, Dubbo, Thrift, Hessian, MCP, A2A, ISO 8583, WebSocket, SSE, Socket.IO, WebRTC DataChannel, RTSP, RTMP, HLS, SIP, XMPP, AMQP, MQTT, STOMP, Kafka, CoAP, LwM2M, OPC UA, Modbus TCP, DNP3, IEC 60870-5-104, BACnet/IP, RTP, RTCP, TCP, UDP, Raw Socket and Unix Domain Socket.
Removed (breaking vs v1.0.10)
- Embedded Web UI,
/api/debug/*execution/streaming,Debugger/StreamDebuggerSPI, TargetPolicy/audit, protocol adapter example modules, e2e/scripts and internal plans/specs. - The library no longer starts any protocol service or executes test requests. If you use the v1.0.10 debug extension, pin
v1.0.10or vendor it;v1.0.11is the annotation/docs-API line.
Verification
go test ./...passgo vet ./...cleangofmt -l .clean
Full changelog: https://github.com/erikwang2013/apidoc-go/blob/main/CHANGELOG.md
v1.0.10
v1.0.10
Highlights
- P1 — protocol-neutral docs/debug:
@protocol+ existingMethod/URL,DebuggerSPI,/api/debug/exec, data-driven panel, built-in HTTP browser mode. - P2 — streaming:
StreamDebugger/Session,POST /api/debug/open|send|close,GET /api/debug/events(SSE), live transcript UI, session limits. - P3 — hardening:
TargetPolicy, audit callback, snippets, file/cert upload,debugtest, open/response concurrency caps, URL-userinfo redaction. - Coverage: all 8 framework adapters expose the debug routes; real-browser Chrome/CDP E2E covers one-shot, SSE streaming, snippets/file UI, no-responses and streaming→browser regressions.
- Adapter packs (nested modules): web (WS/SSE/Socket.IO/WebRTC/MCP/A2A), HTTP (SOAP/GraphQL/OData/Webhooks/HTTP2/3), messaging (MQTT/Kafka/AMQP/STOMP), RPC (gRPC/Dubbo/Thrift/Hessian/JSON-RPC/XML-RPC), industrial/IoT (TCP/UDP/UDS/Modbus/ISO8583/CoAP/LwM2M/OPC UA/DNP3/IEC104/BACnet), telecom/media (XMPP/SIP/RTSP/RTMP/HLS/RTP/RTCP).
Verification
bash scripts/test-examples.sh— root module + 6 example modules + browser E2E pass.gofmt -l .clean;go vet ./...clean;go test ./...pass.
Compatibility
- Non-HTTP registrations are no longer forwarded to HTTP framework adapters; this is a documented breaking change in the changelog.
- Server-mode debug requires auth + CSRF + limits;
DebugPolicyis available, while the adapter remains responsible for its own target policy.
Known limitations
- Industrial/messaging nested modules may request Go 1.26 (
moov-io/iso8583); the root module remains Go 1.24.2. - The RPC module uses a local
goststub because the full dependency graph could not build offline; AMQP tests use an in-memory fake; DNP3/BACnet/LwM2M/IEC104/CoAP and telecom adapters are partial implementations; TLS/SRTP paths are not locally covered.
Full changelog: https://github.com/erikwang2013/apidoc-go/blob/main/CHANGELOG.md
v1.0.9
v1.0.9
Highlights
- P1 — protocol-neutral docs/debug:
@protocol+ existingMethod/URL,DebuggerSPI,/api/debug/exec, data-driven panel, built-in HTTP browser mode. - P2 — streaming:
StreamDebugger/Session,POST /api/debug/open|send|close,GET /api/debug/events(SSE), live transcript UI, session limits. - P3 — hardening:
TargetPolicy, audit callback, snippets, file/cert upload,debugtest, open/response concurrency caps, URL-userinfo redaction. - Coverage: all 8 framework adapters expose the debug routes; real-browser Chrome/CDP E2E covers one-shot, SSE streaming, snippets/file UI, no-responses and streaming→browser regressions.
- Adapter packs (nested modules): web (WS/SSE/Socket.IO/WebRTC/MCP/A2A), HTTP (SOAP/GraphQL/OData/Webhooks/HTTP2/3), messaging (MQTT/Kafka/AMQP/STOMP), RPC (gRPC/Dubbo/Thrift/Hessian/JSON-RPC/XML-RPC), industrial/IoT (TCP/UDP/UDS/Modbus/ISO8583/CoAP/LwM2M/OPC UA/DNP3/IEC104/BACnet), telecom/media (XMPP/SIP/RTSP/RTMP/HLS/RTP/RTCP).
Verification
bash scripts/test-examples.sh— root module + 6 example modules + browser E2E pass.gofmt -l .clean;go vet ./...clean;go test ./...pass.
Compatibility
- Non-HTTP registrations are no longer forwarded to HTTP framework adapters; this is a documented breaking change in the changelog.
- Server-mode debug requires auth + CSRF + limits;
DebugPolicyis available, while the adapter remains responsible for its own target policy.
Known limitations
- Industrial/messaging nested modules may request Go 1.26 (
moov-io/iso8583); the root module remains Go 1.24.2. - The RPC module uses a local
goststub because the full dependency graph could not build offline; AMQP tests use an in-memory fake; DNP3/BACnet/LwM2M/IEC104/CoAP and telecom adapters are partial implementations; TLS/SRTP paths are not locally covered.
Full changelog: https://github.com/erikwang2013/apidoc-go/blob/main/CHANGELOG.md