Why?

Per the GitHub terms of services, a contributor who opens a pull request agrees to license their work under the same license used by the repository.

Whenever you add Content to a repository containing notice of a license, you license that Content under the same terms, and you agree that you have the right to license that Content under those terms,

Source

So when a nontrivial pull request is merged, the copyright of the codebase is shared between the initial copyright holders and the new contributor. This works well with the MIT license code.

It doesn’t work with commercial software because MUI needs to be able to license the software following these terms: https://mui.com/r/x-license-eula, which is not the same as “having a developer license its code following these terms”. Hence the need to sign the CLA.

For contributors - How to sign the CLA?

Our CLA is almost an exact copy of the CLA used by Apache for all the contributions that they accept.

Steps:

  1. Open https://docs.google.com/forms/d/e/1FAIpQLScPaIH-TzkfyeHqT_QTvwScQ99oujDUh_WWSLeGg747OCVy0w/viewform:

    Screenshot 2023-05-23 at 12.39.48.png

  2. Fill out the Google Form, up to the end:

    SCR-20240825-lian.png

  3. Forward the “form submission confirmation” email (check also your spam folder) to [email protected] to confirm your identity. Also, include the link to the pull request it corresponds to.

For maintainers - How to handle CLA?

Steps:

  1. In the PR, check if a source was changed with a commercial license.

    The CLA doesn’t need to be signed for Trivial changes.

  2. Open https://docs.google.com/spreadsheets/d/1-HVeO-PiHPfaKrIXzT9Fhnz0hQBIXeHdMei8q66ctHI/edit?resourcekey#gid=2051566583

  3. Check if the contributor (GitHub slug) has signed the CLA.

    SCR-20240824-twnj.png

  4. If he did, add the CLA: signed label, and stop here.

  5. If he didn’t, add the CLA: required and ask him to follow the steps above:

    @xyz thank you for this pull request! Your changes seem to impact the commercially licensed code. For any changes of this nature, we require contributors to sign the MUI’s Contributor License Agreement (CLA). However, I can’t find a CLA signed that could cover these changes. Please follow the steps at https://mui-org.notion.site/CLA-Contributor-License-Agreement-92ece655b1584b10b00e4de9e67eedb0 to sign the document.

    <aside> 💡

    You can save this as a GitHub macro to save time.

    </aside>

  6. Wait for the email at [email protected], see: ‣.