License

Garvan C++ is free, copyleft software, distributed under the GNU General Public License, version 3 (GPL-3.0-or-later). The full license text is shipped in the LICENSE file at the root of the source tree.

Summary

The GPL v3 guarantees four freedoms to every user of the software:

  • The freedom to run the program for any purpose.
  • The freedom to study how it works and adapt it to your needs.
  • The freedom to redistribute copies to anyone.
  • The freedom to improve the program and release your improvements to the public.
Plain English

You may use Garvan in any project — commercial or not — provided that, if you distribute the resulting work, you also distribute its complete source code under the same GPL v3 terms. If you only run Garvan as a private server, you are not required to publish your source.

Permissions

  • Commercial use — you may use Garvan in a commercial product.
  • Modification — you may modify the source to suit your needs.
  • Distribution — you may distribute original or modified copies.
  • Patent grant — contributors grant you a patent license for their contributions.
  • Private use — you may run a modified version privately without disclosing source.

Conditions

  • Disclose source — when you distribute the software, you must make the source code available.
  • Same license — derivative works must be licensed under GPL v3 (or later).
  • State changes — you must note any modifications you have made.
  • Preserve notices — keep the original copyright and license notices intact.

Limitations

  • No warranty — the software is provided “as is”, without warranty of any kind.
  • No liability — the authors are not liable for any damages arising from the use of the software.
  • No trademark grant — the license does not grant rights to use the names or trademarks of the authors.

Third-party notices

Garvan bundles or builds on top of several open-source projects. Each retains its own license:

  • Crow — BSD 3-Clause License.
  • Asio — Boost Software License 1.0.
  • nlohmann/json (where used) — MIT License.
  • Database client libraries (libpq, libmysqlcppconn, libmongoc, libsqlite3, libmonetdb-mapi) are linked dynamically and each retain their respective licenses.
Compliance

When you redistribute a binary built against Garvan, make sure to also redistribute the corresponding source of Garvan and any modifications you have made to it, in accordance with section 6 of the GPL v3.

Full license text

The complete, authoritative text of the GPL v3 is available from the Free Software Foundation:

You can also read the verbatim copy that ships with this repository in the file LICENSE at the root of the source tree.