Skip to content

Commit e3fc20d

Browse files
Add comprehensive license compatibility guide and clarify licensing requirements (#474)
Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: glennawatson <[email protected]>
1 parent 15d6367 commit e3fc20d

File tree

2 files changed

+115
-1
lines changed

2 files changed

+115
-1
lines changed

license-compatibility-guide.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# License Compatibility Guide
2+
3+
This guide provides detailed information on license compatibility requirements for .NET Foundation projects, including both current member projects and prospective applicants.
4+
5+
## Compatible Licenses
6+
7+
The .NET Foundation accepts projects that use permissive open source licenses. Any permissive license from the [Open Source Initiative (OSI)](https://opensource.org/) approved list is acceptable.
8+
9+
Examples of compatible permissive licenses:
10+
11+
- MIT License
12+
- Apache License 2.0
13+
- BSD licenses (2-clause, 3-clause)
14+
- ISC License
15+
16+
**Key requirements:**
17+
18+
- Your main codebase must use a permissive OSI-approved license
19+
- Mandatory dependencies must also use permissive licenses (with exceptions for platform-specific requirements like .NET Framework or hardware-specific libraries where no open source alternative exists)
20+
- Committers must be bound by a Contributor License Agreement (CLA) or willing to embrace the .NET Foundation's CLA
21+
- Copyright ownership must be clearly defined and documented
22+
23+
## Incompatible Licenses
24+
25+
The Foundation does not accept projects using copyleft licenses. These include:
26+
27+
- GPL (GNU General Public License) - any version
28+
- AGPL (GNU Affero General Public License)
29+
- RPL (Reciprocal Public License)
30+
- MPL (Mozilla Public License) in some contexts
31+
- Other licenses with strong copyleft provisions
32+
33+
**Why copyleft licenses aren't compatible:** Copyleft licenses require derivative works to be licensed under the same terms, which can be less attractive to corporate users and doesn't align with the Foundation's goal of broad ecosystem compatibility.
34+
35+
The .NET community has a significantly higher proportion of enterprise and corporate users compared to many other open source ecosystems. These organizations often have strict legal requirements around license compatibility and derivative works. Permissive licenses provide the flexibility these users need, which is why they're fundamental to the Foundation's mission of supporting the .NET ecosystem effectively.
36+
37+
## Supported Business Models
38+
39+
The Foundation supports various business models for member projects:
40+
41+
### 1. Dual Licensing
42+
43+
Projects may offer their code under two licenses simultaneously:
44+
45+
- One permissive OSI-approved license (for the open source community)
46+
- One commercial license (offering additional warranties, guarantees, or terms)
47+
48+
The Foundation operates on a per-repository basis. As long as the source code is available under a permissive license, dual licensing is acceptable.
49+
50+
### 2. Commercial Services
51+
52+
Projects may offer commercial services built around their open source code, including:
53+
54+
- Premium support packages
55+
- Consulting services
56+
- Training and certification
57+
- Managed hosting
58+
- Enterprise warranties and SLAs
59+
60+
The source code must remain free and open under a permissive license. Commercial services built around the code are acceptable.
61+
62+
### 3. Sponsorship and Funding
63+
64+
Projects are encouraged to use [GitHub Sponsors](https://github.com/sponsors) and other funding platforms to build sustainable support for maintainers.
65+
66+
### 4. Company Formation and Commercial Editions
67+
68+
Projects may:
69+
70+
- Establish a company around the project
71+
- Offer commercial editions with additional features
72+
- Provide paid support tiers
73+
- Maintain proprietary premium packages (provided the core remains under a permissive license)
74+
75+
## Core Licensing Principle
76+
77+
The Foundation's core requirement is that project source code must be freely available under a permissive open source license. Premium support, commercial editions, and value-added services are compatible with Foundation membership provided the core source code remains under a permissive license.
78+
79+
## Guidelines for Current and Prospective Maintainers
80+
81+
.NET Foundation project maintainers have flexibility in how they structure their projects and business models:
82+
83+
### Permitted Activities:
84+
85+
- Implement dual licensing (permissive + commercial)
86+
- Form a company around the project
87+
- Charge for premium support and services
88+
- Create paid tiers and enterprise offerings
89+
- Use GitHub Sponsors or other funding platforms
90+
- Maintain proprietary premium packages (provided core remains under a permissive license)
91+
- Offer commercial warranties and guarantees
92+
93+
### Prohibited Activities:
94+
95+
- Switch to a copyleft license (GPL, AGPL, RPL, etc.)
96+
- Make mandatory dependencies use copyleft licenses
97+
98+
**Why copyleft licenses aren't compatible:**
99+
100+
Copyleft licenses require derivative works to be licensed under the same terms, which can be less attractive to corporate users and doesn't align with the Foundation's goal of broad ecosystem compatibility.
101+
102+
The .NET community has a significantly higher proportion of enterprise and corporate users compared to many other open source ecosystems. These organizations often have strict legal requirements around license compatibility and derivative works. Permissive licenses provide the flexibility these users need, which is why they're fundamental to the Foundation's mission of supporting the .NET ecosystem effectively.
103+
104+
## Questions or Feedback
105+
106+
If you have questions about license compatibility or need clarification on any of these guidelines, please [open an issue](https://github.com/dotnet-foundation/projects/issues) in this repository.
107+
108+
The Foundation supports sustainable business models around open source projects. Commercial services, paid support, and business development around open source work are compatible with Foundation membership requirements.

readme.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ The Project Committee provides support for existing .NET Foundation projects inc
2828

2929
**Looking to join the .NET Foundation?** Start with our [New Project Application](https://github.com/dotnet-foundation/projects/issues/new?assignees=&labels=project+application&template=application.yml&title=Issue%3A+New+.NET+Foundation+Project+Application) or review our [new project onboarding guide](new-projects.md).
3030

31+
**Questions about licensing?** Check out our comprehensive [License Compatibility Guide](license-compatibility-guide.md) to understand what licenses are compatible, what business models we support, and how dual licensing works.
32+
3133
---
3234

3335
## Background
@@ -99,11 +101,15 @@ Broken into a variety of functional areas, the eligibility criteria is a checkli
99101

100102
**Licenses and Copyright**
101103

102-
- The code is offered under a standard, permissive open source license which has been approved by the .NET Foundation.
104+
- The code is offered under a standard, permissive open source license which has been approved by the .NET Foundation. Your project needs to be licensed under **at least one** permissive OSI-approved license (such as MIT, Apache 2.0, or BSD).
105+
- Dual licensing is fully supported - you can offer your project under both a permissive open source license AND a commercial license simultaneously.
106+
- Commercial business models are encouraged, including GitHub Sponsors, premium support, consulting services, and commercial editions (as long as the core source code remains available under a permissive license).
103107
- Libraries that are mandatory dependencies of the project are also offered under a standard, permissive open source license which has been approved by the .NET Foundation (exceptions include a dependency that is required by the target platform where no alternative open source dependency is available such as the .NET Framework or a hardware specific library).
104108
- Committers are bound by a Contributor License Agreement (CLA) and/or are willing to embrace the .NET Foundation's CLA when the project becomes a Member.
105109
- The copyright ownership of everything that the project produces is clearly defined and documented.
106110

111+
For more details on licensing requirements and business models, see our [License Compatibility Guide](license-compatibility-guide.md).
112+
107113
**Quality**
108114

109115
- The project is open and honest about the quality of its code.

0 commit comments

Comments
 (0)