Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core] Support @mui/material@6 peer dependency #14142

Merged
merged 120 commits into from
Aug 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
b11d987
add @mui/material@^6 to peer dependencies
cherniavskii Aug 8, 2024
e6456ff
log @mui/material version in tests
cherniavskii Aug 8, 2024
b521dce
temp: add @mui/material@next to dev deps
cherniavskii Aug 8, 2024
c30d0b5
fix matchMedia stub
cherniavskii Aug 8, 2024
fb12801
fix failing test
cherniavskii Aug 8, 2024
29c5ec4
temp: use monorepo version from the PR
cherniavskii Aug 9, 2024
1e4d2c1
Revert "temp: use monorepo version from the PR"
cherniavskii Aug 9, 2024
b198bcb
temp: use test utils from a PR
cherniavskii Aug 9, 2024
7e4e8c7
pnpm dedupe
cherniavskii Aug 9, 2024
0ef6096
Merge branch 'master' into material-ui-v6
cherniavskii Aug 12, 2024
080e02c
fix test
cherniavskii Aug 12, 2024
38a27b4
lint
cherniavskii Aug 12, 2024
f1ca4a5
use material ui v6 in the docs
cherniavskii Aug 12, 2024
e9f9c0f
Merge branch 'master' into material-ui-v6
cherniavskii Aug 13, 2024
4a90723
bump material in the root package.json
cherniavskii Aug 13, 2024
5fb0be8
proptypes
LukasTy Aug 13, 2024
9c9bece
Propagate `slots` and `slotProps` to fields
LukasTy Aug 13, 2024
ff76fa7
Bumo remaining dev material deps to v6
LukasTy Aug 14, 2024
658db02
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 14, 2024
13299eb
Fix import
LukasTy Aug 14, 2024
4210fbe
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 14, 2024
0e7395b
docs:api
LukasTy Aug 14, 2024
706969e
Bump `system` and `utils` to v6
LukasTy Aug 14, 2024
3ea45df
Use stable `CssVarsProvider`
LukasTy Aug 14, 2024
52753e9
Use stable grid and working API
LukasTy Aug 14, 2024
70a5b1d
Merge branch 'master' into material-ui-v6
cherniavskii Aug 16, 2024
0fd9edb
Merge branch 'master' into material-ui-v6
cherniavskii Aug 19, 2024
938c714
fix failing test
cherniavskii Aug 19, 2024
1ef093e
dedupe
LukasTy Aug 19, 2024
367a893
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 19, 2024
6d8c54e
dedupe
LukasTy Aug 19, 2024
2f39b71
Merge branch 'master' into material-ui-v6
cherniavskii Aug 19, 2024
f3b885b
use waitFor where necessary only
cherniavskii Aug 19, 2024
5115974
remove waitFor
cherniavskii Aug 19, 2024
f8a13ab
fix act warnings in test:unit
cherniavskii Aug 19, 2024
8a5b09f
Merge branch 'master' into material-ui-v6
cherniavskii Aug 19, 2024
4080545
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 20, 2024
c14d7f7
Fix lock file
LukasTy Aug 20, 2024
6ccf1b8
get rid of waitFor
cherniavskii Aug 20, 2024
1e43dc0
Merge branch 'master' into material-ui-v6
cherniavskii Aug 20, 2024
683a4d7
update lockfile
cherniavskii Aug 20, 2024
511a9b4
fix merge
cherniavskii Aug 20, 2024
69412eb
temp: Revert "Propagate `slots` and `slotProps` to fields"
cherniavskii Aug 20, 2024
bf0c1be
fix ts issues
cherniavskii Aug 20, 2024
fbbcd55
fix errors in jsdom tests
cherniavskii Aug 20, 2024
9933919
fix errors in jsdom tests
cherniavskii Aug 20, 2024
8734cc5
fix browser tests
cherniavskii Aug 20, 2024
0df4c92
flush microtasks
cherniavskii Aug 20, 2024
bb4ed81
mock deprecated methods as well
cherniavskii Aug 20, 2024
1cdb9d2
Merge branch 'master' into material-ui-v6
cherniavskii Aug 20, 2024
052064d
Merge remote-tracking branch 'mui/master' into material-ui-v6
cherniavskii Aug 21, 2024
28878a2
automate @mui/material version testing
cherniavskii Aug 21, 2024
5f387e6
use @mui/material v5
cherniavskii Aug 21, 2024
c63a240
use v5 imports
cherniavskii Aug 21, 2024
e7e1ded
Merge remote-tracking branch 'mui/master' into material-ui-v6
cherniavskii Aug 21, 2024
d43e721
update lockfile
cherniavskii Aug 21, 2024
bf97234
proptypes
LukasTy Aug 21, 2024
32ef7c5
docs:api
LukasTy Aug 21, 2024
88fefcd
Use `>=` v6 specifier
LukasTy Aug 21, 2024
8455ec7
Use more specific v6 `^` version specifier
LukasTy Aug 21, 2024
9f509d4
update supported version range for @mui/material peer dep
cherniavskii Aug 21, 2024
65ba268
add use-material-ui-v6 script
cherniavskii Aug 21, 2024
9c6b41d
add material-ui-v6 workflow
cherniavskii Aug 21, 2024
cbf3d26
fix workflow
cherniavskii Aug 21, 2024
52004b4
try to fix skipped step
cherniavskii Aug 21, 2024
03793d1
exit with proper code
cherniavskii Aug 21, 2024
ec08b52
--no-frozen-lockfile
cherniavskii Aug 21, 2024
3ce39ea
fix jobs names
cherniavskii Aug 21, 2024
8175906
Merge remote-tracking branch 'mui/master' into material-ui-v6
cherniavskii Aug 21, 2024
4663687
Avoid using `Grid2` because of unstable behavior between v6 and v5
LukasTy Aug 22, 2024
d5694b9
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 22, 2024
e03bf63
remove unnecessary from the readme
cherniavskii Aug 22, 2024
33b61ac
update readme
cherniavskii Aug 22, 2024
5c0267c
format
cherniavskii Aug 22, 2024
1a9b909
update readme
cherniavskii Aug 22, 2024
e8ed9c9
update readme
cherniavskii Aug 22, 2024
cc54863
update patch
cherniavskii Aug 22, 2024
10684a9
fix applying 0-unified patch
cherniavskii Aug 22, 2024
30ba53b
update readme
cherniavskii Aug 22, 2024
8bc293b
ignore material ui v6 warnings
cherniavskii Aug 22, 2024
983e44e
use createTheme instead of extendTheme
cherniavskii Aug 22, 2024
a7789df
add test_types job to material-ui-v6 workflow
cherniavskii Aug 22, 2024
6fc6b5f
only diff specific folders after docs:typescript:formatted
cherniavskii Aug 22, 2024
2856ca6
Make `@mui/system` a peer dep
LukasTy Aug 23, 2024
4fa883e
update patch
cherniavskii Aug 23, 2024
30b0113
fix ignored warnings check
cherniavskii Aug 23, 2024
27719dd
Merge remote-tracking branch 'mui/master' into material-ui-v6
cherniavskii Aug 23, 2024
6262ce2
use pnpm update instead of git patch
cherniavskii Aug 23, 2024
e84a016
format test/package.json
cherniavskii Aug 23, 2024
0fdb1a7
Test `@mui/system` dependency with `||` case
LukasTy Aug 23, 2024
ae64e19
Test `>=` specifier
LukasTy Aug 26, 2024
567b805
Revert "Test `>=` specifier"
LukasTy Aug 26, 2024
087882a
Revert "Test `@mui/system` dependency with `||` case"
LukasTy Aug 26, 2024
20b8a85
Align `@mui/system` peer dep version with `@mui/material`
LukasTy Aug 26, 2024
8fa45f1
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 26, 2024
555d8e1
Don't update `@mui/system` as it's a peer dependency now
LukasTy Aug 26, 2024
af2f7f3
Try updating only what is relevant to packages (excluding `docs`)
LukasTy Aug 26, 2024
98fcced
prettier
LukasTy Aug 26, 2024
5932ead
fix failing browser test
cherniavskii Aug 26, 2024
9b8d679
Merge branch 'master' into material-ui-v6
cherniavskii Aug 26, 2024
c045f74
avoid visual regression with material-ui-v6
cherniavskii Aug 26, 2024
ba041e2
avoid visual regressions between v5 and v6
cherniavskii Aug 26, 2024
e5650dd
Merge branch 'master' into material-ui-v6
cherniavskii Aug 27, 2024
ddcb5c7
Merge branch 'master' into material-ui-v6
cherniavskii Aug 27, 2024
442ad04
Remove no longer needed version case
LukasTy Aug 27, 2024
9234725
Use `6.x` in the script for material v6
LukasTy Aug 27, 2024
00d0080
Merge remote-tracking branch 'upstream/master' into material-ui-v6
LukasTy Aug 27, 2024
6e5c397
dedupe
LukasTy Aug 27, 2024
767d9f1
Forgot this one :(
LukasTy Aug 27, 2024
6335c86
Try reverting `flushMicrotasks` usage
LukasTy Aug 27, 2024
b88a0aa
These as well
LukasTy Aug 27, 2024
3ef28ea
And a few more
LukasTy Aug 27, 2024
9d35f08
Fix majority of tests on @mui/material@6
LukasTy Aug 28, 2024
efcf5e6
fix data grid tests
cherniavskii Aug 28, 2024
ad1ef0a
fix pickers test
cherniavskii Aug 28, 2024
540d383
Merge branch 'master' into material-ui-v6
cherniavskii Aug 28, 2024
39805f5
Fix 2 open/close Pickers tests
LukasTy Aug 29, 2024
af8eefe
Remove no longer relevant `experimental_extendTheme` error message ex…
LukasTy Aug 29, 2024
054893f
prettier
LukasTy Aug 29, 2024
e64adb1
Merge branch 'master' into material-ui-v6
cherniavskii Aug 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 29 additions & 1 deletion .circleci/config.yml
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@LukasTy

The errors in next tests are the same as I saw when doing the opposite—using v6 material, but v5 @mui/utils and @mui/system.

The next tests use material v6 and v5 for @mui/utils and @mui/system, so it's an identical situation.
I hoped we could keep using v5 for @mui/utils and @mui/system, but this doesn't play nice with material v6.
I can try it the other way around – using v6 of @mui/utils and @mui/system with both v5 and v6 of @mui/material.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can try it the other way around – using v6 of @mui/utils and @mui/system with both v5 and v6 of @mui/material.

I believe I've mentioned it—I have tried this inverse approach, results are the same... 🙈

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, I'm not sure what to do then... @mui/system and @mui/utils are direct dependencies, so we need to declare a specific version there (as opposed to @mui/material which is a peer dependency).
Any ideas?
cc @mui/core

Copy link
Member

@DiegoAndai DiegoAndai Aug 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is useRtl the problem? AFAIK it hasn't been modified since it was introduced 🤔

But yeah, Material UI v6 is not compatible with @mui/utils and @mui/system v5 or vice-versa because of (at least) these v6 changes

  • @mui/system:
    • Unstable_Grid -> Grid
  • @mui/utils:
    • Removed useIsFocusVisible in favor of isFocusVisible
    • Removed scrollLeft as it was only necessary for IE 11

But independent of what MUI X sets its @mui/utils and @mui/system dependencies to, if Material UI v5/v6 sets them to v5/v6, respectively, shouldn't those be used for the Material UI package? I might be wrong, I'm not a package manager resolution expert 😅

@Janpot might be able to help us with this one.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here is the difference:

@mui/material@5 @mui/material@6

useRtl returns false even when RTL is turned on:

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Firstly, sorry for being "late to the party".
I stumbled into this problem/realization just before finishing my work day and didn't add a comment. 🙈

Is it wrong, though? 🤔 We know @mui/material will be installed, and we know it will install @mui/system and @mui/utils, and everything will match.

It is somewhat wrong, because @mui/system is used directly in the packages.
Such dependencies should be direct.
Besides, if my memory serves me well unless users will explicitly install @mui/system in their apps, they will always see a warning that peer dependency is missing after an installation (even though @mui/material has it as a direct dependency).


Should I make @mui/system a peer dependency again?

I'm not sure we should, given the last comment.
Unless @mui/material also does the same. 🙈
I wanted to finish reading https://github.com/mui/pigment-css/issues/129 before jumping to any conclusions.
But it seems that the RtlProvider is a now a bit of a problem to integrate the multiple major support with. 🙈

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about moving RtlProvider inside @mui/private-theming (a dependency of MUI System) in v5 and pin the version to MUI system?

This way the RtlProvider will be the same context. @mui/private-theming has not been changed since v5 and I don't think it will change in the future.

To summarize:

  • Move RtlProvider from System to private-theming in v5 and next branch (still reexport RtlProvider from System), then do the latest release.
  • In v6 branch, for MUI system pin the version of private-theming to ^v5.x.x so that the context is the same between Material UI v5 and v6.

Copy link
Member

@Janpot Janpot Aug 23, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that having all these packages in the same major would be enough. We need MUI X packages to use the exact same @mui/system package that @mui/material uses.

👍 This is the right observation. If @mui/system creates a context that's shared between multiple packages, all these packages must resolve their import to the exact same installed dependency. Same version is not even enough, it may be twice installed with the same version.

Should I make @mui/system a peer dependency again?

I think so, yes. For @mui/material we solve the problem by declaring a peer dependency. I believe it makes sense to do the same for @mui/system. A peer dependency is saying "I want to use this dependency, but I want to use the version that's already installed by the user" which is part of the behavior we're after. I don't believe there is any way to 100% guarantee we will be receiving the exact transitive dependency of a peer dependency.

Unless @mui/material also does the same. 🙈

I don't think that will be necessary to solve the problem here. It can be the decider for which version of @mui/system is used.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, it seems like the duplicated @mui/system package could be the issue here.
The provider comes from @mui/material@6 > @mui/system@6
But in the packages, we import useRtl from @mui/system@5, which does not see the provider from v6 since it's a different React context.
Does this make sense?

Yep, this is the issue, adding @mui/system as a peer dependency makes sense. It doesn't makes sense to move the RtlProvider to @mui/private-theming, as this package is aim to share the context between JSS and Emotion. Moving the context is not a solution, resolving to the same @mui/system instance is, so peer dependency is the only solution I see.

Copy link
Member

@oliviertassinari oliviertassinari Aug 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

adding @mui/system as a peer dependency makes sense

👍 one step closer to fix mui/material-ui#40594. We should treat our styling engine, like Shadcn experiences using Tailwind CSS. It's a dependency they are aware of.

Ideally, we would fix mui/material-ui#43443 though. I don't get why MUI System needs a singleton.

As for how this fits with Pigment CSS, regardless of the path we go with, we will need one dependency. The two possible directions:

  • Pigment CSS is the new brand name for MUI System, it progressively gain all of it features, emotion runtime included
  • MUI System grow to be the bridge between Emotion and Pigment CSS

Now MUI X should be copying the lab, so we should match with https://github.com/mui/material-ui/blob/71a7ff1355e8b6df873dd8440c5a13ae25987ef4/packages/mui-lab/package.json#L45.

Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,14 @@ commands:
# log a patch for maintainers who want to check out this change
git --no-pager diff HEAD

- when:
condition:
equal: [material-ui-v6, << pipeline.parameters.workflow >>]
steps:
- run:
name: Install @mui/material@next
command: pnpm use-material-ui-v6

- when:
condition: << parameters.browsers >>
steps:
Expand Down Expand Up @@ -248,7 +256,7 @@ jobs:
command: pnpm docs:typescript:formatted --disable-cache
- run:
name: '`pnpm docs:typescript:formatted` changes committed?'
command: git add -A && git diff --exit-code --staged
command: git add -A && git diff --exit-code --staged docs/src docs/data
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step was failing because there were changes to package.json files when v6 was used

- run:
name: Tests TypeScript definitions
command: pnpm typescript:ci
Expand Down Expand Up @@ -383,3 +391,23 @@ workflows:
<<: *default-context
react-version: next
name: test_e2e-react@next

material-ui-v6:
when:
equal: [material-ui-v6, << pipeline.parameters.workflow >>]
jobs:
- test_unit:
<<: *default-context
name: test_unit-material@next
- test_browser:
<<: *default-context
name: test_browser-material@next
- test_regressions:
<<: *default-context
name: test_regressions-material@next
- test_e2e:
<<: *default-context
name: test_e2e-material@next
cherniavskii marked this conversation as resolved.
Show resolved Hide resolved
- test_types:
<<: *default-context
name: test_types-material@next
10 changes: 5 additions & 5 deletions docs/data/data-grid/joy-ui/GridJoyUISlots.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import Box from '@mui/material/Box';
import { DataGrid, GridToolbar, GridActionsCellItem } from '@mui/x-data-grid';
import { unstable_joySlots } from '@mui/x-data-grid/joy';
import {
experimental_extendTheme as materialExtendTheme,
Experimental_CssVarsProvider as MaterialCssVarsProvider,
createTheme,
ThemeProvider as MaterialThemeProvider,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need to use the experimental_extendTheme in this demo.
This makes it easier to test with @mui/material v6 because the import path is the same for both v5 and v6

THEME_ID as MATERIAL_THEME_ID,
} from '@mui/material/styles';
import { CssVarsProvider as JoyCssVarsProvider } from '@mui/joy/styles';
Expand All @@ -18,7 +18,7 @@ import {
randomArrayItem,
} from '@mui/x-data-grid-generator';

const materialTheme = materialExtendTheme({
const materialTheme = createTheme({
components: {
MuiSvgIcon: {
styleOverrides: {
Expand Down Expand Up @@ -97,7 +97,7 @@ export default function GridJoyUISlots() {
}, []);

return (
<MaterialCssVarsProvider theme={{ [MATERIAL_THEME_ID]: materialTheme }}>
<MaterialThemeProvider theme={{ [MATERIAL_THEME_ID]: materialTheme }}>
<JoyCssVarsProvider>
<Box sx={{ height: 400, width: '100%' }}>
<DataGrid
Expand Down Expand Up @@ -133,6 +133,6 @@ export default function GridJoyUISlots() {
/>
</Box>
</JoyCssVarsProvider>
</MaterialCssVarsProvider>
</MaterialThemeProvider>
);
}
10 changes: 5 additions & 5 deletions docs/data/data-grid/joy-ui/GridJoyUISlots.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import Box from '@mui/material/Box';
import { DataGrid, GridToolbar, GridActionsCellItem } from '@mui/x-data-grid';
import { unstable_joySlots } from '@mui/x-data-grid/joy';
import {
experimental_extendTheme as materialExtendTheme,
Experimental_CssVarsProvider as MaterialCssVarsProvider,
createTheme,
ThemeProvider as MaterialThemeProvider,
THEME_ID as MATERIAL_THEME_ID,
} from '@mui/material/styles';
import { CssVarsProvider as JoyCssVarsProvider } from '@mui/joy/styles';
Expand All @@ -19,7 +19,7 @@ import {
} from '@mui/x-data-grid-generator';
import type {} from '@mui/material/themeCssVarsAugmentation';

const materialTheme = materialExtendTheme({
const materialTheme = createTheme({
components: {
MuiSvgIcon: {
styleOverrides: {
Expand Down Expand Up @@ -106,7 +106,7 @@ export default function GridJoyUISlots() {
}, []);

return (
<MaterialCssVarsProvider theme={{ [MATERIAL_THEME_ID]: materialTheme }}>
<MaterialThemeProvider theme={{ [MATERIAL_THEME_ID]: materialTheme }}>
<JoyCssVarsProvider>
<Box sx={{ height: 400, width: '100%' }}>
<DataGrid
Expand Down Expand Up @@ -142,6 +142,6 @@ export default function GridJoyUISlots() {
/>
</Box>
</JoyCssVarsProvider>
</MaterialCssVarsProvider>
</MaterialThemeProvider>
);
}
4 changes: 2 additions & 2 deletions docs/src/modules/components/ChartFeaturesGrid.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as React from 'react';
import Grid from '@mui/material/Unstable_Grid2';
import Grid from '@mui/material/Grid';
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoiding the use of Grid2, because of breaking changes between v5 and v6.
Once we make v6 the default, we can change all usages of Grid to Grid2. 👌

Copy link
Member

@oliviertassinari oliviertassinari Aug 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This component is for the docs-infra though, why not use v6 / Grid2 here? Not important though, maybe best do to later.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it introduces problems when testing/running our codebase on v5 and v6 of @mui/material.
There is no graceful migration for Unstable_Grid2, it only works with one props on v5 and different props on v6.
We can use Grid2 when we change the default of @mui/material to v6 in our repo (possibly when we start work on v8). 😉

import { InfoCard } from '@mui/docs/InfoCard';
import LineAxisRoundedIcon from '@mui/icons-material/LineAxisRounded';
import DashboardCustomizeRoundedIcon from '@mui/icons-material/DashboardCustomizeRounded';
Expand Down Expand Up @@ -45,7 +45,7 @@ export default function ChartFeaturesGrid() {
return (
<Grid container spacing={2}>
{content.map(({ icon, title, link }) => (
<Grid key={title} xs={12} sm={4}>
<Grid item key={title} xs={12} sm={4}>
<InfoCard dense classNameTitle="algolia-lvl3" link={link} title={title} icon={icon} />
</Grid>
))}
Expand Down
4 changes: 2 additions & 2 deletions docs/src/modules/components/InstallationGrid.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as React from 'react';
import Grid from '@mui/material/Unstable_Grid2';
import Grid from '@mui/material/Grid';
import { InfoCard } from '@mui/docs/InfoCard';
import AccountTreeRounded from '@mui/icons-material/AccountTreeRounded';
import PivotTableChartRoundedIcon from '@mui/icons-material/PivotTableChartRounded';
Expand Down Expand Up @@ -38,7 +38,7 @@ export default function InstallationGrid() {
return (
<Grid container spacing={2}>
{content.map(({ icon, title, description, link }) => (
<Grid key={title} xs={12} sm={6}>
<Grid item key={title} xs={12} sm={6}>
<InfoCard
classNameTitle="algolia-lvl3"
link={link}
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
"typescript": "lerna run --no-bail --parallel typescript",
"typescript:ci": "lerna run --concurrency 1 --no-bail --no-sort typescript",
"use-react-version": "node scripts/useReactVersion.mjs",
"use-material-ui-v6": "node scripts/useMaterialUIv6.mjs",
"build:codesandbox": "lerna run --concurrency 3 --no-private --scope \"@mui/*\" build",
"install:codesandbox": "pnpm install --no-frozen-lockfile",
"release:changelog": "node scripts/releaseChangelog.mjs",
Expand Down
6 changes: 4 additions & 2 deletions packages/x-charts-pro/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
},
"dependencies": {
"@babel/runtime": "^7.25.4",
"@mui/system": "^5.16.7",
"@mui/utils": "^5.16.6",
"@mui/x-charts": "workspace:*",
"@mui/x-charts-vendor": "workspace:*",
Expand All @@ -53,7 +52,8 @@
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.15.14",
"@mui/material": "^5.15.14 || ^6.0.0",
"@mui/system": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0",
"react-dom": "^17.0.0 || ^18.0.0"
},
Expand All @@ -66,6 +66,8 @@
}
},
"devDependencies": {
"@mui/material": "^5.16.5",
"@mui/system": "^5.16.7",
"@react-spring/core": "^9.7.4",
"@react-spring/shared": "^9.7.4",
"@types/prop-types": "^15.7.12",
Expand Down
5 changes: 5 additions & 0 deletions packages/x-charts-pro/src/tests/materialVersion.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import materialPackageJson from '@mui/material/package.json';
import { checkMaterialVersion } from 'test/utils/checkMaterialVersion';
import packageJson from '../../package.json';

checkMaterialVersion({ packageJson, materialPackageJson });
6 changes: 4 additions & 2 deletions packages/x-charts/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
},
"dependencies": {
"@babel/runtime": "^7.25.4",
"@mui/system": "^5.16.7",
"@mui/utils": "^5.16.6",
"@mui/x-charts-vendor": "workspace:*",
"@react-spring/rafz": "^9.7.4",
Expand All @@ -51,7 +50,8 @@
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.15.14",
"@mui/material": "^5.15.14 || ^6.0.0",
"@mui/system": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0",
"react-dom": "^17.0.0 || ^18.0.0"
},
Expand All @@ -65,6 +65,8 @@
},
"devDependencies": {
"@mui/internal-test-utils": "^1.0.10",
"@mui/material": "^5.16.5",
"@mui/system": "^5.16.7",
"@react-spring/core": "^9.7.4",
"@react-spring/shared": "^9.7.4",
"@types/prop-types": "^15.7.12",
Expand Down
5 changes: 5 additions & 0 deletions packages/x-charts/src/tests/materialVersion.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import materialPackageJson from '@mui/material/package.json';
import { checkMaterialVersion } from 'test/utils/checkMaterialVersion';
import packageJson from '../../package.json';

checkMaterialVersion({ packageJson, materialPackageJson });
6 changes: 4 additions & 2 deletions packages/x-data-grid-generator/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,16 @@
"lru-cache": "^10.4.3"
},
"devDependencies": {
"@mui/icons-material": "^5.16.5",
"@mui/material": "^5.16.5",
"@types/chance": "^1.1.6",
"rimraf": "^5.0.10"
},
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/icons-material": "^5.4.1",
"@mui/material": "^5.15.14",
"@mui/icons-material": "^5.4.1 || ^6.0.0",
"@mui/material": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0"
},
"peerDependenciesMeta": {
Expand Down
6 changes: 4 additions & 2 deletions packages/x-data-grid-premium/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@
},
"dependencies": {
"@babel/runtime": "^7.25.4",
"@mui/system": "^5.16.7",
"@mui/utils": "^5.16.6",
"@mui/x-data-grid": "workspace:*",
"@mui/x-data-grid-pro": "workspace:*",
Expand All @@ -59,7 +58,8 @@
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.15.14",
"@mui/material": "^5.15.14 || ^6.0.0",
"@mui/system": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0",
"react-dom": "^17.0.0 || ^18.0.0"
},
Expand All @@ -73,6 +73,8 @@
},
"devDependencies": {
"@mui/internal-test-utils": "^1.0.10",
"@mui/material": "^5.16.5",
"@mui/system": "^5.16.7",
"@types/prop-types": "^15.7.12",
"date-fns": "^2.30.0",
"rimraf": "^5.0.10"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,7 @@ describe('<DataGridPremium /> - Aggregation', () => {
}),
).getByText('max'),
);
clock.runToLast();

expect(getColumnValues(0)).to.deep.equal(['0', '1', '2', '3', '4', '5', '5' /* Agg */]);
});
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import materialPackageJson from '@mui/material/package.json';
import { checkMaterialVersion } from 'test/utils/checkMaterialVersion';
import packageJson from '../../package.json';

checkMaterialVersion({ packageJson, materialPackageJson });
6 changes: 4 additions & 2 deletions packages/x-data-grid-pro/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@
},
"dependencies": {
"@babel/runtime": "^7.25.4",
"@mui/system": "^5.16.7",
"@mui/utils": "^5.16.6",
"@mui/x-data-grid": "workspace:*",
"@mui/x-internals": "workspace:*",
Expand All @@ -57,7 +56,8 @@
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.15.14",
"@mui/material": "^5.15.14 || ^6.0.0",
"@mui/system": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0",
"react-dom": "^17.0.0 || ^18.0.0"
},
Expand All @@ -71,6 +71,8 @@
},
"devDependencies": {
"@mui/internal-test-utils": "^1.0.10",
"@mui/material": "^5.16.5",
"@mui/system": "^5.16.7",
"@types/prop-types": "^15.7.12",
"rimraf": "^5.0.10"
},
Expand Down
5 changes: 5 additions & 0 deletions packages/x-data-grid-pro/src/tests/materialVersion.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import materialPackageJson from '@mui/material/package.json';
import { checkMaterialVersion } from 'test/utils/checkMaterialVersion';
import packageJson from '../../package.json';

checkMaterialVersion({ packageJson, materialPackageJson });
6 changes: 4 additions & 2 deletions packages/x-data-grid/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@
},
"dependencies": {
"@babel/runtime": "^7.25.4",
"@mui/system": "^5.16.7",
"@mui/utils": "^5.16.6",
"@mui/x-internals": "workspace:*",
"clsx": "^2.1.1",
Expand All @@ -58,7 +57,8 @@
"peerDependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.15.14",
"@mui/material": "^5.15.14 || ^6.0.0",
"@mui/system": "^5.15.14 || ^6.0.0",
"react": "^17.0.0 || ^18.0.0",
"react-dom": "^17.0.0 || ^18.0.0"
},
Expand All @@ -73,6 +73,8 @@
"devDependencies": {
"@mui/internal-test-utils": "^1.0.10",
"@mui/joy": "^5.0.0-beta.48",
"@mui/material": "^5.16.5",
"@mui/system": "^5.16.7",
"@mui/types": "^7.2.15",
"@types/prop-types": "^15.7.12",
"rimraf": "^5.0.10"
Expand Down
Loading