Support this project by becoming a Sponsors. The company avatar will show up here with a link to your website. The avatar will also be added to all GitHub repositories under this organization.
Thanks to all the backing developers! Support this project by becoming a patron.
It is expected that all developers become a Patron to use any of these libraries.
Honesty System / Enforcement
It is an honesty system with no code or legal enforcement. When raising an issue or a pull request, the GitHub Id may be checked to ensure they are a patron, and that issue/PR may be closed without further examination. This process will depend on the issue quality, your circumstances, and the impact on the larger user base. If a individual or organization has no interest in the long term sustainability of the project, then they are legally free to ignore the honesty system.
Why charge for open source?
- Open-Source Maintainers are Jerks! | Nick Randolph & Geoffrey Huntley
- FOSS is free as in toilet | Geoffroy Couprie
- How to Charge for your Open Source | Mike Perham
- Sustain OSS: The Report
- Open Source Maintainers Owe You Nothing | Mike McQuaid
- Who should fund open source projects? | Jane Elizabeth
- Apply at OSS Inc today| Ryan Chenkie
- The Ethics of Unpaid Labor and the OSS Community | ashe dryden
So what OSS license are projects using?
All projects are under the MIT License
Why not use a modified MIT license?
Using any OSS license in a modified form causes significant problems with adoption of tools. There is no simplified guidance on using modified licenses. For example they are not included in choose a license or tldr legal. It often forces an organization to obtain approval from a legal department. It means any consuming tools need to ensure that the modified license does not propagate in an undesirable way.
But shouldn't OSS be completely free and supported by the community through their contributions?
Yes in theory this is true, however the long term reality has shown this not to be the case. The vast majority of consumers of open source projects do not contribute enough to ensure those project survive. This results in a small core team spending large amounts of their own free time maintaining projects.
But it is MIT, can't I use it for free?
Yes all projects are under MIT and you can ignore the community backing honesty system and use these project for free.
Do I need to be a Patron to contribute a Pull Request?
Yes. You must be a Patron to be a user of the below NuGet packages. Contributing Pull Requests does not cancel this out. It may seem unfair to expect people both contribute PRs and also financially back this project. However it is important to remember the effort in reviewing and merging a PR is often similar to that of creating the PR. Also the project maintainers are committing to support that added code (feature or bug fix) for the life of the project.
How to handle multiple developers
There are two options for an organization.
- Apply a multiplier to the Patron cost. The Patron tier has no upper bound on the monthly amount. This allows an organization with multiple developers to pay a single monthly price. For example: An organization with 5 developers would pay $25 per month, i.e. 5 x $5 per patron. An organization with 10 developers would pay $50 per month, i.e. 10 x $5 per patron and so on.
- Create an Open Collective organization A organization can Create an Open Collective organization and then allow their developers to draw on the funds from that organization. See FAQ for backers. This is the recommended option as it also opens up the opportunity for developers to select other projects they feel need support.
Do all developers in a organization need to become Patrons?
No. Only those coding against projects that directly, or indirectly, consume any of the NuGet packages listed below.
Can only one developer of an organization become a patron?
Yes, since the only point of (optional) enforcement is when an issue or PR is raised, then legally an organization can ignore the honesty system and route all issues and PRs though a single GitHub user account. However if a single GitHub user account is drawing on significant time to support, they may be requested to purchase some hourly support.
What about open source projects that consume/extend these libraries?
It is be expected that the core team of maintainers of any open source projects that consume/extend these libraries would become Patrons. Non core contributors do not need to become Patrons.
Do I need a license to use these libraries at runtime in production or testing environments?
No license is required on production systems.
Can I fork, re-use code, or start competing (possibly commercial) projects?
What happens if I wrap one of these libraries in another library?
Consumers of that wrapper should also become Patrons.
Add support for sending NServiceBus logging message through Serilog.
Add support for NServiceBus to log to Microsoft.Extensions.Logging.
Message validation using FluentValidation.
Message validation using DataAnnotations.
An implementation of the claim check pattern against SQL server.
An implementation of the claim check pattern against a network file share.
SQL Server Transport Native is a shim providing low-level access to the SQL Server Transport with no NServiceBus or SQL Server Transport reference required.
Allows the dependency between handlers to be expressed via interfaces and the resulting order is derived at runtime.
Selectively choose what message types should be sent to the Audit queue.
Leverages the Newtonsoft Json.net extension API to encrypt/decrypt specific parts of messages at serialization time.