Repository navigation
chore(deps): bump d3 from 3.5.17 to 7.9.0 in /superset-frontend - #45198
dependabot[bot] wants to merge 1 commit into
Conversation
| }, | ||
| "dependencies": { | ||
| "d3": "^3.5.17", | ||
| "d3": "^7.9.0", |
There was a problem hiding this comment.
Bumping d3 to ^7 here, and in the country-map, partition and world-map plugins, with no source changes will break these four charts at load time. Their src still does import d3 from 'd3' and calls v3-only APIs (d3.layout.chord, d3.svg.arc/d3.svg.chord in Chord.ts; d3.scale.linear, d3.mouse, d3.event in Partition.ts; d3.geo.path, d3.geo.centroid, d3.event in CountryMap.ts; d3.event in WorldMap.ts). v7 has no default export and none of those namespaces, and d3.event is gone, so Chord, Partition, Country Map and World Map would fail on render. The two failing sharded-jest-tests shards look like the same thing. Should this stay on v3, or is the migration of these four plugins meant to land with the bump?
e46b645 to
e72b00d
Compare
✅ Deploy Preview for superset-docs-preview ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
e72b00d to
ac1c3b3
Compare
| }, | ||
| "dependencies": { | ||
| "d3": "^3.5.17", | ||
| "d3": "^7.9.0", |
There was a problem hiding this comment.
Even once the v3 API calls are migrated, Jest still can't load the plugin-local d3 7.9.0: its entry is ESM (node_modules/d3/src/index.js), and transformIgnorePatterns in jest.config.js only lets d3-(array|interpolate|color|time|scale|time-format|format|selection) through Babel, not d3, d3-dispatch or d3-transition. That is what the failing sharded-jest-tests shards 1, 7 and 8 show: SyntaxError: Unexpected token 'export' at the country-map and world-map d3/src/index.js:1, before any assertion runs. Should the Jest transform allowlist be extended for the d3 7 dependency graph as part of this bump?
e2fe025 to
79768a5
Compare
There was a problem hiding this comment.
This one's not safe to merge as-is. plugin-chart-chord, plugin-chart-partition, plugin-chart-country-map, and plugin-chart-world-map all call straight into the v3 namespaced API directly: d3.svg.arc(), d3.scale.linear(), d3.geo.path(), d3.behavior.zoom(), d3.event, d3.mouse(), the old callback-style d3.json(url, cb), none of which exist anymore as of v4 (the whole API got flattened/modularized, and d3.event/d3.mouse were removed later still). Bumping straight to 7.9.0 breaks all four plugins at runtime.
CI is green here because nothing actually exercises Chord.ts/Partition.ts/CountryMap.ts/WorldMap.ts. The existing tests only cover buildQuery/transformProps/controlPanel, not the rendering code that calls d3 directly. So passing CI isn't a real signal on this one.
Porting each plugin's d3 usage up to v7 is real work, not a mechanical bump. I'd hold this until that's done per-plugin rather than merge it now.
bf3dda0 to
49010d9
Compare
|
Looked closer at this one. The jest failures are just the first symptom (d3 7.x ships ESM-only, so |
f002df4 to
4b8b88c
Compare
dcebc22 to
7e57a36
Compare
Bumps [d3](https://github.com/d3/d3) from 3.5.17 to 7.9.0. - [Release notes](https://github.com/d3/d3/releases) - [Changelog](https://github.com/d3/d3/blob/main/CHANGES.md) - [Commits](d3/d3@v3.5.17...v7.9.0) --- updated-dependencies: - dependency-name: d3 dependency-version: 7.9.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
7e57a36 to
f1befa2
Compare
Bumps d3 from 3.5.17 to 7.9.0.
Release notes
Sourced from d3's releases.
... (truncated)
Changelog
Sourced from d3's changelog.
... (truncated)
Commits
1f8dd3b7.9.0a8afcf8d3-geo 3.1.1b79e7dafix vitepress colors, again1461bfbupdate actions, again6d6fb02documentation for schemeObservable10 (#3804)a353aa5Documentation for d3-geo#281 (#3803)9f9d468fix: jsx compatible camelCase syntax in svg (#3816)cb875eeRemove defunct newsletter signup link from footer (#3808)33b372dRevert "Remove mastodon link, change twitter to x (#3801)"4d3e273Remove mastodon link, change twitter to x (#3801)