4

From the Apache non-lawyer version of the license:

It requires you to:

include a copy of the license in any redistribution you may make that includes Apache software;

provide clear attribution to The Apache Software Foundation for any distributions that include Apache software.

The license itself clarifies derivative work:

For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof

My question is what feels like a common use case, but I'm not exactly sure where it fits into their license.

If I am using an Apache 2.0 licensed software purely as an API for an internal project (not modifying the licensed code at all), what are my responsibilities from a licensing perspective? It seems my work is not a "derivative work" since I am not modifying the actual code.

This link seems to suggest I only need to include it in a NOTICE file. Are there other obligations?

This feels like a really common use case but I can't seem to find much actually referencing this in any of the sources I quoted from?

  • I'm obliged to +1 this excellent question. – Aaron Hall Mar 16 '16 at 15:42
4

In general, licensing obligations pivot on the subject of distribution. If you don't distribute, you generally have no obligations, because you're not impacting anyone outside of your organization.

For completeness, I will talk a bit about "derivative works." Because the GPL depends greatly on the definition of "derivative work," it discusses this matter in greater detail in their license and on their pages, so it provides a good platform for discussion.

In layman's terms, the GPL considers "a separate program" (i.e. not a derivative work) to be a program that:

  • Communicates at arm's length with the covered work, and
  • The covered work can operate successfully without it.

By "arm's length," they mean something like a command-line interface or some sort of published specification for a runtime plugin, and not a DLL reference (i.e. compilation of the two works together).

But since you'll never distribute outside of the organization, the issue of "derivative works" is moot.

  • 1
    Ah, I think the "distribute" part was the confusing part since I was not considering it to be "distribute outside your organization". – enderland Mar 16 '16 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.