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] Allow React 17 in peer dependencies #23697

Merged
merged 7 commits into from Nov 30, 2020
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
91 changes: 64 additions & 27 deletions README.md
Expand Up @@ -6,22 +6,19 @@

<div align="center">

[React](https://reactjs.org/) components for faster and easier web development. Build your own design system, or start with [Material Design](https://material.io/design/introduction/).
[React](https://reactjs.org/) components for faster and simpler web development. Build your own design system, or start with [Material Design](https://material.io/design/introduction/).

[![npm package](https://img.shields.io/npm/v/@material-ui/core/latest.svg)](https://www.npmjs.com/package/@material-ui/core)
[![license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/mui-org/material-ui/blob/master/LICENSE)
[![npm latest package](https://img.shields.io/npm/v/@material-ui/core/latest.svg)](https://www.npmjs.com/package/@material-ui/core)
[![npm next package](https://img.shields.io/npm/v/@material-ui/core/next.svg)](https://www.npmjs.com/package/@material-ui/core)
[![npm downloads](https://img.shields.io/npm/dm/@material-ui/core.svg)](https://www.npmjs.com/package/@material-ui/core)
[![CircleCI](https://img.shields.io/circleci/project/github/mui-org/material-ui/master.svg)](https://circleci.com/gh/mui-org/material-ui/tree/master)
[![Build Status](https://dev.azure.com/mui-org/Material-UI/_apis/build/status/mui-org.material-ui?branchName=master)](https://dev.azure.com/mui-org/Material-UI/_build/latest?definitionId=1&branchName=master)
[![Coverage Status](https://img.shields.io/codecov/c/github/mui-org/material-ui/master.svg)](https://codecov.io/gh/mui-org/material-ui/branch/master)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/1320/badge)](https://bestpractices.coreinfrastructure.org/projects/1320)
![Code style](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)
[![CircleCI](https://img.shields.io/circleci/project/github/mui-org/material-ui/next.svg)](https://app.circleci.com/pipelines/github/mui-org/material-ui?branch=next)
[![Coverage Status](https://img.shields.io/codecov/c/github/mui-org/material-ui/next.svg)](https://codecov.io/gh/mui-org/material-ui/branch/next)
[![Follow on Twitter](https://img.shields.io/twitter/follow/MaterialUI.svg?label=follow+Material-UI)](https://twitter.com/MaterialUI)
[![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=mui-org/material-ui)](https://dependabot.com)
[![PeerDependencies](https://david-dm.org/mui-org/material-ui/master/peer-status.svg?path=packages/material-ui)](https://david-dm.org/mui-org/material-ui/master?type=peer&path=packages/material-ui)
[![Dependencies](https://david-dm.org/mui-org/material-ui/master/status.svg?path=packages/material-ui)](https://david-dm.org/mui-org/material-ui/master?path=packages/material-ui)
[![DevDependencies](https://david-dm.org/mui-org/material-ui/master/dev-status.svg?path=packages/material-ui)](https://david-dm.org/mui-org/material-ui/master?type=dev)
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/mui-org/material-ui.svg)](https://isitmaintained.com/project/mui-org/material-ui "Average time to resolve an issue")
[![Crowdin](https://d322cqt584bo4o.cloudfront.net/material-ui-docs/localized.svg?cache=v1)](https://translate.material-ui.com/project/material-ui-docs)
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/mui-org/material-ui.svg)](https://isitmaintained.com/project/mui-org/material-ui 'Average time to resolve an issue')
[![Crowdin](https://badges.crowdin.net/material-ui-docs/localized.svg)](https://translate.material-ui.com/project/material-ui-docs)
[![Open Collective backers and sponsors](https://img.shields.io/opencollective/all/material-ui)](https://opencollective.com/material-ui)

</div>

Expand All @@ -30,6 +27,7 @@
Material-UI is available as an [npm package](https://www.npmjs.com/package/@material-ui/core).

**[Stable channel v4](https://material-ui.com/)**

```sh
// with npm
npm install @material-ui/core
Expand All @@ -38,9 +36,25 @@ npm install @material-ui/core
yarn add @material-ui/core
```

**[v3.x](https://v3.material-ui.com/)** ([Migration from v3 to v4](https://material-ui.com/guides/migration-v3/))
⚠️ All ongoing work has moved to v5. The support of v4 is limited to security fixes, third-party conflicts when not requiring breaking changes (Chrome, React, etc.), and important bug fixes.

**[Alpha channel v5](https://next.material-ui.com/)**

**[v0.x](https://v0.material-ui.com/)** ([Migration to v1](https://material-ui.com/guides/migration-v0x/))
```sh
// with npm
npm install @material-ui/core@next

// with yarn
yarn add @material-ui/core@next
```

<details>
<summary>Older versions</summary>

- **[v3.x](https://v3.material-ui.com/)** ([Migration from v3 to v4](https://material-ui.com/guides/migration-v3/))
- **[v0.x](https://v0.material-ui.com/)** ([Migration to v1](https://material-ui.com/guides/migration-v0x/))

</details>

Please note that `@next` will only point to pre-releases; to get the latest stable release use `@latest` instead.

Expand All @@ -67,11 +81,11 @@ via [Patreon](https://www.patreon.com/oliviertassinari)
via [OpenCollective](https://opencollective.com/material-ui)

<p style="display: flex; justify-content: center; flex-wrap: wrap;">
<a data-ga-event-category="sponsor" data-ga-event-action="logo" data-ga-event-label="callemall" href="https://www.call-em-all.com" rel="noopener sponsored" target="_blank" style="margin-right: 16px;"><img src="https://images.opencollective.com/callemall/a6946da/logo/96.png" srcset="https://images.opencollective.com/callemall/a6946da/logo/192.png 2x" alt="call-em-all" title="The easy way to message your group" height="96" width="96" loading="lazy"></a>
<a data-ga-event-category="sponsor" data-ga-event-action="logo" data-ga-event-label="textemall" href="https://www.text-em-all.com" rel="noopener sponsored" target="_blank" style="margin-right: 16px;"><img src="https://images.opencollective.com/callemall/a6946da/logo/96.png" srcset="https://images.opencollective.com/callemall/a6946da/logo/192.png 2x" alt="call-em-all" title="Mass Text Messaging & Automated Calling" height="96" width="96" loading="lazy"></a>
<a data-ga-event-category="sponsor" data-ga-event-action="logo" data-ga-event-label="canadacasino" href="https://www.canadacasino.ca/" rel="noopener sponsored" target="_blank" style="margin-right: 16px;"><img height="96" width="96" src="https://images.opencollective.com/canadacasino/5b19004/logo/96.png" srcset="https://images.opencollective.com/canadacasino/5b19004/logo/192.png 2x" alt="bitsrc" title="" loading="lazy" /></a>
</p>

Gold Sponsors are those who have pledged $500/month or more to Material-UI.
Gold Sponsors are those who have pledged \$500/month or more to Material-UI.

### There is more!

Expand All @@ -87,11 +101,7 @@ import ReactDOM from 'react-dom';
import Button from '@material-ui/core/Button';

function App() {
return (
<Button variant="contained" color="primary">
Hello World
</Button>
);
return <Button variant="contained">Hello World</Button>;
}

ReactDOM.render(<App />, document.querySelector('#app'));
Expand All @@ -103,8 +113,8 @@ Yes, it's really all you need to get started as you can see in this live and int

## Questions

For *how-to* questions and other non-issues,
please use [StackOverflow](https://stackoverflow.com/questions/tagged/material-ui) instead of Github issues.
For _how-to_ questions and other non-issues,
please use [StackOverflow](https://stackoverflow.com/questions/tagged/material-ui) instead of GitHub issues.
There is a StackOverflow tag called "material-ui" that you can use to tag your questions.

## Examples
Expand All @@ -118,19 +128,18 @@ Check out our [documentation website](https://material-ui.com/).

## Premium Themes

You can find complete templates & themes in the [Material-UI store](https://material-ui.com/store/?utm_source=docs&utm_medium=referral&utm_campaign=readme-store) .
You can find complete templates & themes in the [Material-UI store](https://material-ui.com/store/?utm_source=docs&utm_medium=referral&utm_campaign=readme-store).

## Contributing

Read our [contributing guide](/CONTRIBUTING.md) to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Material-UI.
Read the [contributing guide](/CONTRIBUTING.md) to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Material-UI.

Notice that contributions go far beyond pull requests and commits.
Although we love giving you the opportunity to put your stamp on Material-UI, we also are thrilled to receive a variety of [other contributions](https://material-ui.com/getting-started/faq/#material-ui-is-awesome-how-can-i-support-the-project).

## Changelog

Recently Updated?
Please read the [changelog](https://github.com/mui-org/material-ui/releases).
If you have recently updated, please read the [changelog](https://github.com/mui-org/material-ui/releases) for details of what has changed.

## Roadmap

Expand All @@ -140,3 +149,31 @@ The future plans and high priority features and enhancements can be found in the

This project is licensed under the terms of the
[MIT license](/LICENSE).

## Sponsoring services

These great services sponsor Material-UI's core infrastructure:

[<img loading="lazy" alt="GitHub" src="https://github.githubassets.com/images/modules/logos_page/GitHub-Logo.png" height="25">](https://github.com/)

GitHub allows us to host the Git repository.

[<img loading="lazy" alt="CircleCI" src="https://assets.brandfolder.com/otz6k5-cj8pew-e4rk9u/element.png?v=1501538594" height="32">](https://circleci.com/)

CircleCI allows us to run the test suite.

[<img loading="lazy" alt="Netlify" src="https://cdn.netlify.com/15ecf59b59c9d04b88097c6b5d2c7e8a7d1302d0/1b6d6/img/press/logos/full-logo-light.svg" height="30">](https://www.netlify.com/)

Netlify allows us to distribute the documentation.

[<img loading="lazy" alt="CrowdIn" src="https://support.crowdin.com/assets/logos/crowdin-logo1-small.png" height="30">](https://crowdin.com/)

CrowdIn allows us to translate the documentation.

[<img loading="lazy" alt="BrowserStack" src="https://www.browserstack.com/images/mail/browserstack-logo-footer.png" height="30">](https://www.browserstack.com/)

BrowserStack allows us to test in real browsers.

[<img loading="lazy" alt="CodeCov" src="https://github.com/codecov.png?size=70" width="35" height="35">](https://codecov.io/)

CodeCov allows us to monitor the test coverage.
12 changes: 6 additions & 6 deletions docs/src/pages/versions/versions.md
Expand Up @@ -43,12 +43,12 @@ In general, you can expect the following release cycle:

## Release schedule

| Date | Version | Status |
|:-----|:--------|:-------|
| May 2018 | v1.0.0 | Released |
| September 2018 | v3.0.0 | Released |
| May 2019 | v4.0.0 | Released |
| Q4 2020 | v5.0.0 | ⏳ |
| Date | Version | Status |
| :------------- | :------ | :------- |
| May 2018 | v1.0.0 | Released |
| September 2018 | v3.0.0 | Released |
| May 2019 | v4.0.0 | Released |
| Q1 2021 | v5.0.0 | ⏳ |

You can follow the [milestones](https://github.com/mui-org/material-ui/milestones) for a more detailed overview.

Expand Down
4 changes: 2 additions & 2 deletions framer/Material-UI.framerfx/package.json
Expand Up @@ -24,8 +24,8 @@
"peerDependencies": {
"@types/react": "^16.8.6",
"framer": "^1.0.0",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand Down
3 changes: 2 additions & 1 deletion package.json
Expand Up @@ -165,7 +165,8 @@
"**/@babel/runtime": "^7.10.2",
"**/@babel/types": "^7.10.2",
"**/hoist-non-react-statics": "^3.3.2",
"**/next/terser": "^4.1.2"
"**/next/terser": "^4.1.2",
"**/react-is": "^16.13.1"
},
"nyc": {
"include": [
Expand Down
6 changes: 3 additions & 3 deletions packages/material-ui-docs/package.json
Expand Up @@ -33,9 +33,9 @@
},
"peerDependencies": {
"@material-ui/core": "^4.0.0",
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand Down
6 changes: 3 additions & 3 deletions packages/material-ui-icons/package.json
Expand Up @@ -39,9 +39,9 @@
},
"peerDependencies": {
"@material-ui/core": "^4.0.0",
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand Down
8 changes: 4 additions & 4 deletions packages/material-ui-lab/package.json
Expand Up @@ -35,9 +35,9 @@
},
"peerDependencies": {
"@material-ui/core": "^4.9.10",
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand All @@ -49,7 +49,7 @@
"@material-ui/utils": "^4.10.2",
"clsx": "^1.0.4",
"prop-types": "^15.7.2",
"react-is": "^16.8.0"
"react-is": "^16.8.0 || ^17.0.0"
},
"devDependencies": {
"@material-ui/types": "^5.1.0"
Expand Down
6 changes: 3 additions & 3 deletions packages/material-ui-styles/package.json
Expand Up @@ -38,9 +38,9 @@
"typescript": "tslint -p tsconfig.json \"{src,test}/**/*.{ts,tsx}\""
},
"peerDependencies": {
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand Down
6 changes: 3 additions & 3 deletions packages/material-ui-system/package.json
Expand Up @@ -38,9 +38,9 @@
"typescript": "tslint -p tsconfig.json \"src/**/*.{ts,tsx}\""
},
"peerDependencies": {
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand Down
6 changes: 3 additions & 3 deletions packages/material-ui-utils/package.json
Expand Up @@ -33,13 +33,13 @@
"test": "cd ../../ && cross-env NODE_ENV=test mocha 'packages/material-ui-utils/**/*.test.js' --exclude '**/node_modules/**'"
},
"peerDependencies": {
"react": "^16.8.0",
"react-dom": "^16.8.0"
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"dependencies": {
"@babel/runtime": "^7.4.4",
"prop-types": "^15.7.2",
"react-is": "^16.8.0"
"react-is": "^16.8.0 || ^17.0.0"
},
"devDependencies": {
"@babel/helper-module-imports": "^7.8.3",
Expand Down
8 changes: 4 additions & 4 deletions packages/material-ui/package.json
Expand Up @@ -39,9 +39,9 @@
"typescript": "tslint -p tsconfig.json \"{src,test}/**/*.{spec,d}.{ts,tsx}\" && tsc -p tsconfig.test.json && tsc -p tsconfig.build.json"
},
"peerDependencies": {
"@types/react": "^16.8.6",
"react": "^16.8.0",
"react-dom": "^16.8.0"
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^16.8.0 || ^17.0.0",
"react-dom": "^16.8.0 || ^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
Expand All @@ -59,7 +59,7 @@
"hoist-non-react-statics": "^3.3.2",
"popper.js": "1.16.1-lts",
"prop-types": "^15.7.2",
"react-is": "^16.8.0",
"react-is": "^16.8.0 || ^17.0.0",
"react-transition-group": "^4.4.0"
},
"devDependencies": {},
Expand Down
7 changes: 1 addition & 6 deletions yarn.lock
Expand Up @@ -13787,12 +13787,7 @@ react-final-form@^6.3.0:
"@scarf/scarf" "^1.0.5"
ts-essentials "^6.0.5"

react-is@16.8.6:
version "16.8.6"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==

react-is@^16.12.0, react-is@^16.13.0, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6, react-is@^16.9.0:
react-is@16.8.6, react-is@^16.12.0, react-is@^16.13.0, react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0, "react-is@^16.8.0 || ^17.0.0", react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6, react-is@^16.9.0:
version "16.13.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
Expand Down