From e15795b1be85ca29d659d66e9145da9d3c43eadb Mon Sep 17 00:00:00 2001 From: Alessandro Ros Date: Sun, 27 Jul 2025 20:45:09 +0200 Subject: [PATCH] apidocs: add missing format to integers and floats (#4796) --- apidocs/openapi.yaml | 43 ++++++++++++++++++++++++++++ internal/testapidocs/apidocs_test.go | 6 +++- 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/apidocs/openapi.yaml b/apidocs/openapi.yaml index 2a80c765..df6298eb 100644 --- a/apidocs/openapi.yaml +++ b/apidocs/openapi.yaml @@ -65,8 +65,10 @@ components: type: string writeQueueSize: type: integer + format: int64 udpMaxPayloadSize: type: integer + format: int64 runOnConnect: type: string runOnConnectRestart: @@ -193,16 +195,20 @@ components: type: string multicastRTPPort: type: integer + format: int64 multicastRTCPPort: type: integer + format: int64 srtpAddress: type: string srtcpAddress: type: string multicastSRTPPort: type: integer + format: int64 multicastSRTCPPort: type: integer + format: int64 rtspServerKey: type: string rtspServerCert: @@ -249,6 +255,7 @@ components: type: string hlsSegmentCount: type: integer + format: int64 hlsSegmentDuration: type: string hlsPartDuration: @@ -336,6 +343,7 @@ components: type: string maxReaders: type: integer + format: int64 srtReadPassphrase: type: string fallback: @@ -382,24 +390,31 @@ components: # Raspberry Pi Camera source rpiCameraCamID: type: integer + format: int64 rpiCameraSecondary: type: boolean rpiCameraWidth: type: integer + format: int64 rpiCameraHeight: type: integer + format: int64 rpiCameraHFlip: type: boolean rpiCameraVFlip: type: boolean rpiCameraBrightness: type: number + format: float64 rpiCameraContrast: type: number + format: float64 rpiCameraSaturation: type: number + format: float64 rpiCameraSharpness: type: number + format: float64 rpiCameraExposure: type: string rpiCameraAWB: @@ -410,16 +425,20 @@ components: maxItems: 2 items: type: number + format: float64 rpiCameraDenoise: type: string rpiCameraShutter: type: integer + format: int64 rpiCameraMetering: type: string rpiCameraGain: type: number + format: float64 rpiCameraEV: type: number + format: float64 rpiCameraROI: type: string rpiCameraHDR: @@ -430,6 +449,7 @@ components: type: string rpiCameraFPS: type: number + format: float64 rpiCameraAfMode: type: string rpiCameraAfRange: @@ -438,10 +458,12 @@ components: type: string rpiCameraLensPosition: type: number + format: float64 rpiCameraAfWindow: type: string rpiCameraFlickerPeriod: type: integer + format: int64 rpiCameraTextOverlayEnable: type: boolean rpiCameraTextOverlay: @@ -450,8 +472,10 @@ components: type: string rpiCameraIDRPeriod: type: integer + format: int64 rpiCameraBitrate: type: integer + format: int64 rpiCameraHardwareH264Profile: type: string rpiCameraHardwareH264Level: @@ -462,6 +486,7 @@ components: type: string rpiCameraMJPEGQuality: type: integer + format: int64 # Hooks runOnInit: @@ -500,8 +525,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -542,8 +569,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -604,8 +633,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -626,8 +657,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -667,8 +700,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -698,8 +733,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -760,8 +797,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -999,8 +1038,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: @@ -1040,8 +1081,10 @@ components: properties: pageCount: type: integer + format: int64 itemCount: type: integer + format: int64 items: type: array items: diff --git a/internal/testapidocs/apidocs_test.go b/internal/testapidocs/apidocs_test.go index f4d14b13..9d0352ed 100644 --- a/internal/testapidocs/apidocs_test.go +++ b/internal/testapidocs/apidocs_test.go @@ -16,6 +16,7 @@ import ( type openAPIProperty struct { Ref string `json:"$ref"` Type string `json:"type"` + Format string `json:"format"` Nullable bool `json:"nullable"` Items *openAPIProperty `json:"items"` } @@ -157,7 +158,10 @@ func TestAPIDocs(t *testing.T) { content2.Properties[js] = openAPIProperty{Type: "string"} case sf.Type == reflect.TypeOf(int(0)): - content2.Properties[js] = openAPIProperty{Type: "integer"} + content2.Properties[js] = openAPIProperty{Type: "integer", Format: "int64"} + + case sf.Type == reflect.TypeOf(float64(0)): + content2.Properties[js] = openAPIProperty{Type: "number", Format: "float64"} case sf.Type == reflect.TypeOf(false): content2.Properties[js] = openAPIProperty{Type: "boolean"}