Repository navigation
build(deps): bump @mui/icons-material from 7.3.5 to 9.5.0 - #2451
Conversation
Bumps [@mui/icons-material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material) from 7.3.5 to 9.5.0. - [Release notes](https://github.com/mui/material-ui/releases) - [Changelog](https://github.com/mui/material-ui/blob/v9.5.0/CHANGELOG.md) - [Commits](https://github.com/mui/material-ui/commits/v9.5.0/packages/mui-icons-material) --- updated-dependencies: - dependency-name: "@mui/icons-material" dependency-version: 9.5.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2b4ece3 to
adaee7f
Compare
|
Verdict: Safe to merge after fix (fix pushed to this branch) Bump: Why the original bump failed: icons v9 require Added in this PR:
Verified (local, vs master):
Intentional difference: the top menus (Project/View/Object/Edit) now work from the keyboard (focus on the first item, arrows, Enter). On master they didn't respond to the keyboard at all, because the |
…yarn/mui/icons-material-9.5.0 # Conflicts: # package-lock.json # package.json
There was a problem hiding this comment.
🟡 Changes recommended
An unresolved active finding remains—an apparently unintended icon import swap that changes the UI outside the stated dependency-upgrade scope.
1 open issue
What changed in this PR
This is a Dependabot-initiated upgrade of @mui/icons-material from 7.3.5 to 9.5.0, which (together with @mui/material, @mui/system, @mui/lab, and material-ui-popup-state) represents a two-major-version jump of the MUI stack. Because MUI removed the system shorthand props from components and reworked several component APIs, the PR also carries the accompanying source migrations needed to keep the app compiling and behaving correctly.
Changes:
- Bump MUI packages (
@mui/material,@mui/system,@mui/icons-material→^9.5.0,@mui/lab→9.0.0-beta.10) andmaterial-ui-popup-state→^5.3.7, with lockfile updates (including removal of now-deduplicated nested@mui/types/@mui/utilsentries). - Migrate system shorthand props (
textTransform,fontSize,alignItems,color,gap,width,mr, etc.) into thesxprop across many components, and migrate changed APIs (inputProps→slotProps.input, AutocompleterenderTags→renderValue,renderInputparamsInputProps→slotProps.input,color='primary'→'primary.main'). - Add global theme
defaultPropsforMuiToggleButton(roving-key handling) andMuiAutocomplete(synthetic left-button mousedown re-dispatch), and update Selenium test xpaths to also matchrole='alertdialog'.
| File | Description |
|---|---|
| package.json / package-lock.json | Bump MUI stack to v9 and material-ui-popup-state; prune deduplicated nested deps |
| src/App.tsx | Add MuiToggleButton/MuiAutocomplete theme defaults for keyboard/mouse behavior |
| src/util/genericComponents/AutoCompleteSelect.tsx | Migrate renderInput params from InputProps to slotProps.input |
| .../category/GeantScoringFilterConfiguration.tsx | Add explicit AutoCompleteSelect<Particle, true> generics; import Particle |
| .../Simulation/BatchParametersEditor.tsx | inputProps→slotProps.input; Autocomplete renderTags→renderValue |
| .../Sidebar/SidebarTreeListItem.tsx | Reorder props; move width into sx |
| .../Dialog/OpenFileDialog.tsx | Icon import changed to RemoveCircleOutlineOutlined (flagged as likely unintended) |
| .../Header/SimulatorControls.tsx | Move system props into sx; color='primary'→'primary.main' |
| Many Typography/Stack/Box components | Move system shorthand props into sx |
| src/**/*.test.ts (converters, ProjectMenu, SimulationControls) | Match role='alertdialog' in addition to dialog |
Overall this is a well-executed mechanical migration. The MUI v9 API migrations I inspected (AutoCompleteSelect slot params, the generic typing in GeantScoringFilterConfiguration, the renderValue/slotProps changes, and the color token fix in SimulatorControls) all look internally consistent, and the lockfile dedup changes are expected. I raised one scoped observation about an unnecessary icon swap in OpenFileDialog.tsx. Given the size of the version jump and the custom runtime workaround added in App.tsx, final sign-off benefits from human runtime/visual validation.
Review effort: Balanced
| @@ -1,4 +1,4 @@ | |||
| import RemoveCircleOutlineIcon from '@mui/icons-material/RemoveCircleOutline'; | |||
| import RemoveCircleOutlineIcon from '@mui/icons-material/RemoveCircleOutlineOutlined'; | |||

Bumps @mui/icons-material from 7.3.5 to 9.5.0.
Release notes
Sourced from @mui/icons-material's releases.
... (truncated)
Changelog
Sourced from @mui/icons-material's changelog.
... (truncated)
Commits
1c3f8b4v9.5.0 (#49370)c0f247c[code-infra] Widen@babel/runtimerange and stop emitting empty class fields ...3c00906[code-infra] Migrate to babel 8 (@brijeshb42) (#49216)f6f0af3[icons] Make sure WarningRounded icon is vertically centered within its viewB...9599f6c[core] Replace@mui/internal-waterfallwith es-toolkit (#49155)c74a69dBump react to 19.3.0 (#49133)8b9c366[code-infra] Run TypeScript 7 alongside the TS6 JS API (#49075)2fd3219Bump code-infra:devDependencies (#49061)809a771[release] v9.4.0 (#49046)3f8d682[code-infra] Import the test globals from vitest (#49033)