Required CLA for Chromium Project Contributors

Before any developer or organization can merge their first code patch into the Chromium web browser project, they must sign a specific Google Contributor License Agreement (CLA). This article provides a straightforward breakdown of the exact agreements required for both individuals and corporations, what these agreements entail, and how the verification process works before your code can be accepted into the Chromium repository.

Even though Chromium is an open-source project, its legal framework is managed by Google. Therefore, contributors do not sign a Chromium-specific document; instead, they must sign the standard Google Contributor License Agreement. Depending on who owns the intellectual property of the code being submitted, one of two specific agreements must be signed.

1. For Individuals: The Google Individual CLA

If you are an independent developer working on your own time and using your own equipment, you must sign the Google Individual Contributor License Agreement.

  • Who should sign it: Any person who holds the copyright to their own work and is not contributing on behalf of an employer.
  • Note on employment: If you are employed as a software developer, your employer may legally own the intellectual property you create, even on your personal time. You must verify that your employment contract allows you to sign this agreement independently.
  • How to sign: This agreement is completed electronically through Google's CLA portal using a standard Google Account. Approval is instantaneous.

2. For Businesses: The Google Corporate CLA

If you are writing code for Chromium as part of your job, or if your company owns the intellectual property you create, your employer must sign the Google Software Grant and Corporate Contributor License Agreement (often referred to simply as the Google Corporate CLA).

  • Who should sign it: An authorized representative of the corporation (such as a legal executive or company officer) who has the legal authority to bind the company to the agreement.
  • Employee authorization: Once a corporation signs this agreement, they set up a designated Google Group. The company adds the email addresses of authorized employees to this group. If your email is in that group, you are covered by the Corporate CLA and do not need to sign an Individual CLA.

What the Google CLA Actually Does

Signing the Google CLA does not transfer ownership of your copyright to Google. You (or your company) retain full ownership of your original code. Instead, the agreement grants Google and the users of the Chromium project two main things:

  1. A Copyright License: A perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable license to reproduce, prepare derivative works of, publicly display, and distribute your contribution.
  2. A Patent License: An irrevocable license to make, use, and sell your contribution under any patents you hold that are necessarily infringed by the code you are submitting.

The Verification Process in Chromium

Signing the CLA is only the first step; the Chromium submission system must also verify it before your first patch can be merged.

  1. Gerrit Email Matching: Chromium uses Gerrit for code reviews. The email address you use to configure your Git client and your Gerrit account must match the exact email address associated with your signed Individual CLA or your employer's Corporate CLA roster. Gerrit runs an automated check on every patch and will block the merge if a valid CLA is not detected.
  2. Updating the AUTHORS File: As part of your very first code patch, you are required to add your name and email address (or your company's name, if not already present) to the AUTHORS file located in the root directory of the Chromium source tree.

Once the correct Google CLA is signed, the automated Gerrit check passes, and the AUTHORS file is updated, your patch is legally cleared to be reviewed and merged into the Chromium project.