DebadityaHait opened a new pull request, #2397:
URL: https://github.com/apache/datafusion-ballista/pull/2397

   # Which issue does this PR close?
   
   Closes #2351
   
   # Rationale for this change
   
   Ballista's public REST interfaces currently lack a machine-readable OpenAPI 
specification. As proposed in #2351, this PR addresses Phase 1 by using 
\utoipa\ to generate OpenAPI documentation directly from our Rust DTO types and 
serving the spec at \GET /api/openapi.json\.
   
   # What changes are included in this PR?
   
   - Added \utoipa\ (5.5) as a workspace dependency with \macros\ enabled.
   - Added an optional \utoipa\ feature to \allista-api-types\ and derived 
\utoipa::ToSchema\ on shared DTO types (\JobResponse\, \TaskStatus\, 
\TaskSummary\, \Percentiles\, \QueryStageSummary\, \QueryStagesResponse\, 
\PlanFormat\).
   - Added \#[utoipa::path(...)]\ annotations to all public scheduler endpoints 
in \allista-scheduler\ (\/api/state\, \/api/version\, \/api/executors\, 
\/api/executor/{executor_id}\, \/api/jobs\, \/api/job/{job_id}\, 
\/api/job/{job_id}/config\, \/api/job/{job_id}/stages\, 
\/api/job/{job_id}/dot\, \/api/job/{job_id}/stage/{stage_id}/dot\, 
\/api/metrics\, and \/api/job/{job_id}/dot_svg\ when \graphviz-support\ is 
enabled).
   - Added \allista_scheduler::api::openapi\ defining the \ApiDoc\ structure 
and \GET /api/openapi.json\ route handler.
   - Added comprehensive unit tests in \allista_scheduler\ and 
\allista_api_types\ asserting schema registration, path coverage, 
serialization, and endpoint response.
   
   # Are there any user-facing changes?
   
   The scheduler REST API now exposes \GET /api/openapi.json\ returning the 
OpenAPI v3 JSON specification. No existing endpoints or serialization schemas 
were modified.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to