From b6b8f068c3e39f1b76567488f8db317958edb4e4 Mon Sep 17 00:00:00 2001 From: Lukas Tenbrink Date: Mon, 27 Oct 2025 15:02:27 +0100 Subject: [PATCH] Add a page for general contribution guidelines. --- engine/guidelines/best_practices.rst | 6 +- index.rst | 1 + organization/general_rules_and_guidelines.rst | 69 +++++++++++++++++++ 3 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 organization/general_rules_and_guidelines.rst diff --git a/engine/guidelines/best_practices.rst b/engine/guidelines/best_practices.rst index ad90ca7..6191dd9 100644 --- a/engine/guidelines/best_practices.rst +++ b/engine/guidelines/best_practices.rst @@ -233,8 +233,4 @@ larger if there is no other choice. .. _doc_best_practices_for_engine_contributors_license_compliance: Libraries must use a permissive enough license to be included into Godot. -Some examples of acceptable licenses are Apache 2.0, BSD, MIT, ISC, and MPL 2.0. -In particular, we cannot accept libraries licensed under the GPL or LGPL since -these licenses effectively disallow using it in proprietary software -(which Godot is distributed as in most exported projects). This -also applies for libraries that are only linked in the editor. +For more information, see :ref:`doc_licenses`. diff --git a/index.rst b/index.rst index b13ae2e..5a6feed 100644 --- a/index.rst +++ b/index.rst @@ -25,6 +25,7 @@ for your topic of interest. You can also use the search function in the top-left organization/how_to_contribute organization/areas organization/pull_requests/index + organization/general_rules_and_guidelines .. toctree:: :hidden: diff --git a/organization/general_rules_and_guidelines.rst b/organization/general_rules_and_guidelines.rst new file mode 100644 index 0000000..71c5a5c --- /dev/null +++ b/organization/general_rules_and_guidelines.rst @@ -0,0 +1,69 @@ +General rules and guidelines +============================ + +This page contains guidelines relevant for contributing to any area of Godot. + +When contributing to any particular area, please also refer to its respective guidelines. + +Respect our Code of Conduct +------------------------------- + +When you contribute to Godot, we expect that you respect our `Code of Conduct `__. + +.. _doc_licenses: + +Respect copyright +----------------- + +You must be mindful of the copyright and patent rights of anything you submit. + +If you authored every part of your contribution and own the rights, this is not a problem. +You can submit your contribution without reading further. + +However, any code or assets you took from somewhere else may be subject to copyright or patent rights, +which you must respect. In such cases, you need to check the license of the material. Some licenses are permissive +enough to be compatible with Godot's `MIT license `. +You must include this license in your contribution. +Examples of compatible licenses include Apache 2.0, BSD, ISC, MPL 2.0, and MIT itself. + +However, others are not compatible with Godot's license. This includes "copy-left" licenses like GPL or LGPL, +since these licenses effectively disallow static linking in proprietary software +(which Godot is distributed as in most exported projects). +This also applies for libraries that are only linked in the editor. + +"Source-available" is **not** "open-source". For example, you cannot submit exclusive code or ideas from proprietary +game engines like Unreal or Unity, nor use their code as inspiration. We strongly recommend against reading any +"source-available" code before contributing to Godot. + +Contribute only what you understand +----------------------------------- + +Please only submit code that you understand and are prepared to explain to a maintainer. + +If you do not fully understand the code, please take extra care to test it rigorously, and disclose this in your +pull request description. + +This especially applies if you implement the idea of another person, copy code from elsewhere, or if you use AI to +assist you with your contribution. In all of these cases, you must disclose which part of your submission wasn't fully +authored by you. + +AI-assisted contributions +------------------------- + +The use of AI to contribute to Godot is discouraged. + +We acknowledge that AI can be useful, but we are convinced that human effort results in better and more relevant +contributions. + +.. note:: "AI" in this page refers to any LLM/generative + AI model like ChatGPT, Claude, Grok, etc., or any other + models that fulfill the same role. Using translation + software to communicate is fine, and single-line code + completion does not have to be disclosed. + +If you do use AI, we expect that you put in effort to proofread and improve anything it generates, and that you disclose +what you used AI for. Maintainers are spending their personal time reviewing your code, please make sure +that the code you submit is well-tested and functional. +Please be respectful of their time and only submit something you have put thought and effort into. + +Contributions made entirely by AI are prohibited.