spuru9 opened a new pull request, #28602:
URL: https://github.com/apache/flink/pull/28602

   ## What is the purpose of the change
   
   Third and final visualization-library migration under FLINK-40033. 
`@antv/g2` 5 is a complete rewrite with a declarative, encode-based API, so the 
two components that use it are rewritten against v5:
   
   - **job-chart** — the real-time metrics line chart.
   - **job-timeline** — the Gantt-style job / subtask timeline (transposed 
interval charts).
   
   ## Brief change log
   
   - `package.json` / lockfile: `@antv/g2` `^4.1.34` → `^5.4.8`.
   - **job-chart.component.ts**: build the line with 
`encode('x'/'y'/'color'/'shape')` + `scale`/`axis`/`style` instead of the v4 
`position/color/shape/size` chain; `changeData`/`forceFit` retained for live 
updates and resize.
   - **job-timeline.component.ts**:
     - `coordinate({ transform: [{ type: 'transpose' }] })` for the horizontal 
bars.
     - `encode('x'/'y'/'color')`; status colours mapped via a color `scale` 
built from `ConfigService.COLOR_MAP` (`domain`/`range`).
     - the v5 `interval:click` event (`e.data.data`) replaces the removed 
`getSnapRecords`/`_origin` drill-down.
     - `changeSize` width read from the container element (`chart.width` is 
gone in v5).
   - **angular.json**: allowlist g2 v5's CommonJS transitives (`@antv/coord`, 
`color-string`, `html2canvas`, `pdfast`, `svg-path-parser`) so the build has no 
optimization-bailout warnings.
   - **NOTICE**: refreshed for the new g2 v5 dependency tree (old `@antv/*` v4 
packages removed, v5 packages + their new transitives added).
   
   ## Verifying this change
   
   ⚠️ **This needs manual visual verification against a running dashboard** — a 
green build/lint confirms the v5 API usage type-checks, but not that the charts 
render correctly. Reviewer/QA checklist:
   
   - **Metrics line chart** (Job → a running vertex → a metric): line renders 
with a time x-axis (`HH:mm:ss`), updates live as new samples arrive, and 
resizes with the panel.
   - **Job timeline** (Job → Timeline): horizontal Gantt bars in the expected 
top-to-bottom order, bars coloured by status per `COLOR_MAP`, vertex-name 
labels, time axis (`HH:mm:ss.SSS`); clicking a vertex bar drills into the 
subtask timeline.
   
   A couple of v5 details are runtime-sensitive and worth a close look during 
QA: the transposed-coordinate bar orientation (v5 may need an added reflect vs 
v4's `scale(1,-1)`), the interval `y`-range (`[start,end]`) rendering, and the 
label offset direction. Happy to adjust once verified on a live cluster.
   
   Build (`npm run build`) and lint (`npm run lint`) pass with no warnings.
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): yes (web-dashboard: 
@antv/g2 4 → 5)
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: no
     - The serializers: no
     - The runtime per-record code paths (performance sensitive): no
     - Anything that affects deployment or recovery: no
     - The S3 file system connector: no
   
   ## Documentation
   
     - Does this pull request introduce a new feature? no
     - If yes, how is the feature documented? not applicable
   
   ## AI Usage Disclosure
   
   - [x] Claude Code


-- 
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]

Reply via email to