Skip to main content
See other licenses

CPL-1.0

Common Public License 1.0

CPL-1.0 is IBM's weak copyleft that EPL-1.0 replaced. Reciprocity sits on the module, with a patent grant and a choice-of-law clause.

On this page

What it does

The Common Public License 1.0 is the ancestor of the Eclipse Public License. You may use and ship commercially. Modifications to covered modules that you distribute must be available under the CPL. IBM later moved Eclipse to EPL-1.0 to change the patent-retaliation and choice-of-law terms. You will still meet CPL on older IBM and Eclipse-era jars.

Pros

  • The grant is public and the reciprocity is written down. Buyers know what they are looking at.
  • Internal use without distribution stays ordinary. The hard work starts when a copy leaves the company.

Cons

  • The source-offer duty is real the moment you distribute binaries that include covered files.
  • How far copyleft reaches in a mixed stack is a counsel question. Do not guess from a blog post.

What it allows and requires

Choose a category to see the full grant in one scannable list. Permissions show what the license allows, limits show what it withholds, and obligations show the conditions your release process must satisfy.

Permissions

  • Commercial use

    You may ship the code inside a paid product. The license does not restrict commercial use.

  • Modify

    You may change the code, including keeping those changes private, unless a later obligation says otherwise.

  • Distribute

    You may give copies to others. Distribution is what usually turns notice and source duties into real work.

  • Private use

    Use inside your company, including internal forks, does not by itself trigger distribution duties.

  • Patent use

    These licenses typically include a patent grant covering the licensed files. Read the grant before relying on it in a high-stakes deal.

What CPL-1.0 requires when you ship

When you distribute a binary that includes CPL-1.0 code, notice still travels with the copy, and the corresponding source has to be available under the same license. Internal use without a copy leaving the company is a different situation. The list below is the shipping work: what a recipient of that binary can demand, and what you record so a buyer can see it.

  1. You meet CPL-1.0 on a shipped binary when every recipient can get the corresponding source the license describes.

  2. You meet the notice terms when the original copyright lines and the license text travel with the copy.

  3. You keep internal use inside the terms when no copy leaves your company. Distribution is what usually turns the source duty into real work.

The duties named in CPL-1.0

Notice still travels with the copy. On top of that, CPL-1.0 names a source duty. These are the conditions in the text. The how-to above is when they become real work.

Include copyright

Keep copyright notices on the covered files you distribute.

Include license

Keep the license text with the covered files, and say that those files are under this license.

Disclose source

Modifications to covered files that you distribute have to be available in source form under this license.

Same license

Reciprocity stays on the covered modules. How far a 'module' reaches is the usual counsel question.

Things to be aware of

  • Saying you only use CPL-1.0 on the server, then shipping a Docker image or an on-prem build. Ask the question per artifact you hand out.
  • Offering source for the covered package alone when the license asks for corresponding source of the work you shipped.

What the Common Public License 1.0 does not do

Search results often flatten Common Public License 1.0 into a slogan. These are the usual misreads. CPL-1.0 is a grant with conditions, not a permission to skip the paperwork below.

  • CPL-1.0 is not "permissive with extra paperwork." Change covered files and ship them, and that source has to be available under the same license.
  • CPL-1.0 does not erase notice duties. Copyright lines and the license text still travel with the copies you hand over.

How CPL-1.0 differs from nearby licenses

These licenses are often confused with CPL-1.0, but their release duties differ. Each row summarizes what the license requires when you ship. Open the linked page for the full checklist.

CPL-1.0
CPL-1.0 is IBM's weak copyleft that EPL-1.0 replaced. Reciprocity sits on the module, with a patent grant and a choice-of-law clause.
EPL-1.0
The older Eclipse license. Same Contribution-scoped duty as EPL-2.0, but with no GPL bridge, so mixing with GPL code is a real problem.
EPL-2.0
Eclipse-family copyleft scoped to each Contribution. It reaches GPL compatibility only when the project designates a Secondary License.
IPL-1.0
IPL-1.0 is IBM's module-level copyleft, cousin to CPL. Reciprocity on modifications you distribute, plus a patent grant.

Common questions about Common Public License 1.0

Answers to common questions about what Common Public License 1.0 requires, when its duties apply, and what evidence belongs with a release.

What is the Common Public License 1.0?

The Common Public License 1.0 is the ancestor of the Eclipse Public License. You may use and ship commercially. Modifications to covered modules that you distribute must be available under the CPL. IBM later moved Eclipse to EPL-1.0 to change the patent-retaliation and choice-of-law terms. You will still meet CPL on older IBM and Eclipse-era jars.

What does CPL-1.0 require when you ship a product?

You meet CPL-1.0 on a shipped binary when every recipient can get the corresponding source the license describes. You meet the notice terms when the original copyright lines and the license text travel with the copy. You keep internal use inside the terms when no copy leaves your company. Distribution is what usually turns the source duty into real work.

Does hosting a product that uses CPL-1.0 trigger extra duties?

Hosting alone usually does not trigger the source duty for CPL-1.0. Shipping a binary, a container, or an on-prem build does. Notice still travels with any copy you hand over.

Can I keep my application closed if I use CPL-1.0?

CPL-1.0 is library-scoped copyleft. Your application can stay closed if recipients can replace the library with their own build. Static linking makes that expensive. The library itself still ships with corresponding source and notices. Confirm the linking story on the component, then record it.

What is corresponding source for CPL-1.0?

Corresponding source is the source a recipient needs to build and run the same binary, including scripts and interface files the license names. Hosting a repository URL can be an offer. The offer has to match what you actually shipped. SourceTrust records that a person on your team confirmed the offer. It does not publish your source and does not host a mirror.

How is CPL-1.0 different from Eclipse Public License 1.0?

CPL-1.0 asks this: CPL-1.0 is IBM's weak copyleft that EPL-1.0 replaced. Reciprocity sits on the module, with a patent grant and a choice-of-law clause. Eclipse Public License 1.0 asks this: The older Eclipse license. Same Contribution-scoped duty as EPL-2.0, but with no GPL bridge, so mixing with GPL code is a real problem. Open the Eclipse Public License 1.0 page for what that license requires when you ship. Do not treat the SPDX ids as interchangeable because the short names look similar.

Where do I record CPL-1.0 for a buyer?

The catalog marks CPL-1.0 as copyleft, so a source offer item appears on the project checklist when the project's distribution context is Distributed binary or Mixed. A SaaS-only project sees no item for it unless the row also carries a network trigger. Nobody ticks the item for you: a person on your team confirms it, and publishing stays blocked until every applicable item is confirmed. SourceTrust does not publish your source and does not host a mirror.

Where do I record CPL-1.0 for a buyer?

The catalog marks CPL-1.0 as copyleft, so a source offer item appears on the project checklist when the project's distribution context is Distributed binary or Mixed. A SaaS-only project sees no item for it unless the row also carries a network trigger.

Nobody ticks the item for you: a person on your team confirms it, and publishing stays blocked until every applicable item is confirmed. SourceTrust does not publish your source and does not host a mirror.

Read /docs/obligation-copyleft-source-offer.

See also

The hub is the pillar for this cluster. Sibling licenses are the other spokes. Product FAQ links explain how SourceTrust records the duty, not the license text itself.

Practical guidance for procurement review, not legal advice. Confirm high-stakes use with counsel.

Ship the proof.

Import Common Public License 1.0 and the rest of what you ship. Free to import and review. You only pay when you publish.

Start for free

Cookies on sourcetrust.dev

We use essential cookies for security, including abuse prevention on our site scan and walkthrough request form. With your permission, we also use optional analytics and diagnostics (Google Tag Manager on this site, and the Sentry browser SDK on the SourceTrust application when configured). See our cookie policy.