Licenses
Aspects of software licenses
A software license determines how you can use the software. Specifically, in the context of open source, an open-source license is what makes a software program open-source software. Open-source licenses explicitly grant rights to the licensee, but also impose obligations on them regarding how they must handle the software. If you find a software project that has published its source code publicly but no license is available, then it is not open source, but merely Source Available. When introducing open source, you should find out within your company whether anyone is handling the licensing issue and, if so, who.
Especially in larger companies that use many different programming languages, there may be a central authority responsible for ensuring license compatibility when using open-source components.
Overview of open source licenses
In the table below you will find popular open source licenses that are also used in ABAP development (source dotabap.org). Details can be found, for example, under choosealicense or choosealicense Appendix.
| MIT | Apache 2.0 | GPL 3.0 | GPL 2.0 | |
|---|---|---|---|---|
| Rights | ||||
| Commercial use | Allowed | Allowed | Allowed | Allowed |
| Redistribution | Allowed | Allowed | Allowed | Allowed |
| Modification | Allowed | Allowed | Allowed | Allowed |
| Obligations | ||||
| Publication of source code for modifications | Required | Required | ||
| Indication of the license / copyright in your own product | Required | Required | Required | Required |
| Use of the same license for modifications | Required | Required | ||
| Limitations | ||||
| Liability | Limited | Limited | Limited | Limited |
| Warranty | Limited | Limited | Limited | Limited |