mirror of
https://github.com/fatedier/frp.git
synced 2026-10-20 20:43:28 +08:00
Record the deprecation of the observability endpoints on webServer in doc/deprecations.md, so the removal target is in one place next to the other active deprecations. The webServer /healthz, the frps webServer /metrics with its top-level enablePrometheus switch, and the pprof handlers with webServer.pprofEnable are deprecated since v0.72.0, when metricsServer was added. They are replaced by metricsServer, whose /healthz, /metrics and pprofEnable are independent of the dashboard listener.
3.2 KiB
3.2 KiB
Deprecations
This document tracks deprecated features and APIs that are still shipped but scheduled for removal. Maintainers should review this list before each release to decide whether any items are due for removal.
For the version compatibility policy that bounds these support windows, see the latest Release.md.
Active
Observability endpoints on webServer
- Deprecated since: v0.72.0 (when
metricsServerwas added). - Removal target: v0.80.0 or later. v0.71.x is the last line without
metricsServerand is supported until v0.80.0 is released, so v0.79.x is the last release that must keep these endpoints. - Replacement:
metricsServer. Point health probes at its/healthz, scrapes at its/metrics(frps exposes business metrics there withoutenablePrometheus), and usemetricsServer.pprofEnablefor profiling. - Deprecated items:
/healthzonwebServerin both frps and frpc;/metricson the frpswebServerand the top-levelenablePrometheusthat gates it; the pprof handlers onwebServerandwebServer.pprofEnablein both frps and frpc. - Code references:
server/api_router.go—/healthz, and/metricswhenenablePrometheusis set.client/api_router.go—/healthz.pkg/util/http/server.go— pprof handlers registered whenwebServer.pprofEnableis set.server/service.go— startup deprecation warnings andmetricsCollectors.client/service.go— startup deprecation warnings.pkg/config/v1/server.go—EnablePrometheus;pkg/config/v1/common.go—WebServerConfig.PprofEnable.
- Notes: Removal drops the startup warnings and the deprecation notes in
README.mdand the twoconf/*_full_example.tomlfiles together.webServerthen serves only the dashboard and the admin API.
Wire protocol v1
- Deprecated since: v0.70.0 (planned, when v2 becomes the default).
- Removal target: v0.78.0 or later. v0.69.0 (the last release where v1 is the default) is supported until v0.78.0 is released, so v0.77.0 is the last release that must keep v1 support.
- Replacement: wire protocol v2 (
transport.wireProtocol = "v2"in frpc). - Code references: v1 message types and codec under
pkg/msg/and the protocol negotiation path inclient/andserver/. - Notes: Removing v1 will also drop compatibility with any frpc/frps that does not negotiate v2.
INI configuration format
- Deprecated since: predates this document; startup warning has been in place for several releases.
- Removal target: TBD.
- Replacement: YAML / JSON / TOML.
- Code references:
cmd/frpc/sub/root.go— frpc startup warning.cmd/frps/root.go— frps startup warning.pkg/config/legacy/— legacy INI parser; remove together with the warnings.
Visitor connections without runID
- Deprecated since: v0.50.0 (when
runIDwas introduced). - Removal target: TBD.
- Replacement: require
runIDon every visitor connection. - Code references:
server/service.go—RegisterVisitorConnstill accepts emptyrunIDfor backward compatibility.
- Notes: Removal will break frpc clients released before v0.50.0. Schedule for a release where dropping pre-v0.50.0 frpc is acceptable.
Removed
None yet.