Open Source Usage Policy
Approved Licenses for Build Dependencies
These are known licenses that should always be acceptable to incorporate. Any engineer who would like to build into a project software with a different license must get approval from a director. The director may instruct the engineer to get confirmation from additional stakeholders as well.
- MIT
- ISC
- Free Public License
- Apache 2 note: Apache has some restrictions which are not an unreasonable burden, and engineers should observe.
- Microsoft Public License (MS-PL)
- Unlicense
- zlib/libpng License (Zlib)
- Public Domain Note: public domain is not really a license at all, rather a statement is made by the original author that grants their work to the public, however, public domain is more "free" than any license.
- Any license certified to meet the Copyfree Standard Definition
Engineers may use dependencies for compiling and running projects that have more restricted licenses. For example, Linux and Postgres are not subject to these restrictions in cases where they do not "ship" as part of the client's product, but rather are used to run the client's software.
Reference licenses are available from OSI. In general, approval by OSI does not necessarily make a license acceptable, but any license not approved by OSI should be considered suspect and not be included in work without reasonable legal review.
BSD
The BSD license grants reasonable permissions, but one of the clauses in the most popular version is:
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Each discipline may handle this requirement differently, so engineers should check with their director before including BSD-licensed work.