The Boost Software License (BSL) is a simple open source license that has a lot in common with the MIT License. The BSL and MIT are very permissive licenses, meaning they place few restrictions on the use of the licensed code, and both are quite short. (The full text of each license is in the vicinity of 200 words.)
But there are a few parts of the BSL that differentiate it from the MIT and other permissive licenses. The biggest is that the BSL requires users to include a copyright notice and a copy of the license text in distributed copies or modifications of the licensed code — but only some of the time. Other permissive licenses do not have a similar exception.
We’ll discuss that provision — as well as other key requirements and permissions — in this overview of the Boost Software License.
History of the Boost Software License
Boost is a collection of open source C++ libraries. Originally, each library under the Boost umbrella was published under a separate open source license. But, over time, as Boost grew, this became impractical. Per the Boost website:
“Users complained that each license needed to be reviewed, and that reviews were difficult or impossible if Boost libraries contained many different licenses. Boost moderators and maintainers spent excessive time dealing with license issues. Boost developers often copied existing licenses without actually knowing if the license wording met legal needs.”
These concerns led Boost moderators to explore creating a new license that could be used for all Boost projects. The team worked with the Berkman Klein Center for Internet and Society at Harvard University to develop a simple, straightforward license that would become the BSL.
The BSL 1.0 was published in 2003, and it remains the only version of the license in existence. The BSL is an OSI-approved license.
Boost Software License: Key Provisions
As a permissive open source software license, the BSL places very few restrictions on use and redistribution of the licensed code, but there are a few provisions to keep in mind.
Boost Software License Requirements
The BSL requires users to include a copyright notice and a copy of the license text in copies or modifications of the licensed code — but, as mentioned, there’s a significant exception.
If your software is distributed in compiled code form (object libraries, shared libraries, executables), you are not subject to the requirement and do not need to include a copyright notice or license text. You do still need to include the copyright notice and a copy of the license if you distribute your software in source code form.
Also, neither copyright holders nor anyone distributing BSL-licensed software may be held responsible for damages or any other liability that may surface in connection with the software.
Boost Software License Permissions
As mentioned, the BSL places very few restrictions on licensed code, so users have plenty of leeway to use, modify, reproduce, distribute, and transmit it. Specifically, users can:
- Use the code in commercial applications:
- Modify the code
- Distribute copies of the code and any modifications
Boost Software License vs. Other Permissive Software Licenses
The Boost Software License has a lot in common with several popular permissive licenses, but there are a handful of noteworthy differences.
Boost Software License vs. MIT License
The BSL and MIT Licenses are quite similar. The main differences include:
- The MIT License always requires distributed copies/modifications of licensed code to include a copyright notice and the license text. The BSL does not require a copyright notice or license text if your copy/modification is in compiled code form.
- The first line of the MIT License text reads “Copyright (c) <year> <copyright holders>” — accordingly, the licensor simply applies the license with the copyright notice filled out. The BSL does not include such text.
- The MIT License grants users of the licensed code the broad permission to "deal in the software without restriction..." while the BSL specifies "use, reproduce, display, distribute, execute, and transmit.” However, the practical impact of this difference does seem limited.
Boost Software License vs. Apache License 2.0
There’s only one version of the BSL, while there are several versions of the Apache License (1.0, 1.1, and the current 2.0). But we’ll focus on the differences between the BSL and the Apache License 2.0 — of which there are several — in this section.
- If you modify Apache-licensed files and then distribute software that includes those modified files, the modified files must include notices stating that you made changes. The BSL has no such requirement.
- The Apache License 2.0 also requires a copy of the NOTICE file with attribution notes (if the original library has one).
- The Apache License 2.0 has a clause that specifies it does not grant rights to use the trademark (or trade names, service names, or product names) of the licensor.
- Finally, the Apache License 2.0 does have an explicit grant of patent rights.
Boost Software License vs. BSD License
There are multiple versions of the BSD License (0-Clause, 1-Clause, 2-Clause, 3-Clause, and 4-Clause.) In this section, we’ll compare the BSL with the most popular version of the BSDs, the BSD 3-Clause License.
Like the MIT License, the BSD 3-Clause requires copies/modifications of licensed code to include a copyright notice and the license text. This differs from the BSL, which only requires the copyright notice and license text in some situations, which we discussed earlier in this post.
Additionally, the BSD 3-Clause includes the following line in the license text:
“Copyright (c) $YEAR $OWNER, All rights reserved.”
The author of the code fills out this information before putting the license in the code repository. The BSL does not include this line.
The BSD 3-Clause also differs from the BSL in that the former has a specific non-endorsement provision. The BSD does not allow users of the licensed code to use the name of the copyright holder or contributors to promote a derivative work without written permission.
The Present and Future of the Boost Software License
Although the Boost Software License was created for Boost C++ libraries, any open source project is free to use it. And, open source authors looking to maximize adoption of their projects may find the BSL appealing because of its license text and copyright notice provisions.
Ultimately, the BSL offers open source authors another short, simple, and very permissive licensing option if they prefer to look beyond the MIT.
Note: We on the FOSSA Editorial Team are not lawyers. If you are seeking legal advice, we recommend you speak directly with an attorney.