Skip to content

Commit dff6752

Browse files
committed
Cleanup various repository documentation files
- Reformat logo license as a plain text file. - Fix outdated links or references to SFC or Visual Script. - Tweak contents of `CONTRIBUTING.md` to highlight contributor docs more prominently, and make it easier to parse. - Tweak formatting and contents in `thirdparty/README.md` for consistency.
1 parent b931a6e commit dff6752

File tree

10 files changed

+236
-217
lines changed

10 files changed

+236
-217
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ body:
5959
- A small Godot project which reproduces the issue, with no unnecessary files included. Be sure to not include the `.godot` folder in the archive (but keep `project.godot`).
6060
- Required, unless the reproduction steps are trivial and don't require any project files to be followed. In this case, write "N/A" in the field.
6161
- Drag and drop a ZIP archive to upload it. **Do not select another field until the project is done uploading.**
62-
- **Note for C# users:** If your issue is *not* Mono-specific, please upload a minimal reproduction project written in GDScript or VisualScript. This will make it easier for contributors to reproduce the issue locally as not everyone has a Mono setup available.
62+
- **Note for C# users:** If your issue is *not* C#-specific, please upload a minimal reproduction project written in GDScript. This will make it easier for contributors to reproduce the issue locally as not everyone has a .NET setup available.
6363
- **If you've been asked by a maintainer to upload a minimal reproduction project, you *must* do so within 7 days.** Otherwise, your bug report will be closed as it'll be considered too difficult to diagnose.
6464
validations:
6565
required: true

CONTRIBUTING.md

+108-84
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,44 @@
1-
# How to contribute efficiently
1+
# Contributors guidelines
2+
3+
This document summarizes the most important points for people interested in
4+
contributing to Godot, especially via bug reports or pull requests.
5+
6+
The Godot documentation has a dedicated [Contributing section](https://docs.godotengine.org/en/latest/contributing/ways_to_contribute.html)
7+
which details these points and more, and is a recommended read.
28

39
## Table of contents
410

511
- [Reporting bugs](#reporting-bugs)
612
- [Proposing features or improvements](#proposing-features-or-improvements)
713
- [Contributing pull requests](#contributing-pull-requests)
8-
- [Contributing to Godot's translation](#contributing-to-godots-translation)
14+
- [Contributing to Godot translations](#contributing-to-godot-translations)
915
- [Communicating with developers](#communicating-with-developers)
1016

1117
## Reporting bugs
1218

1319
Report bugs [here](https://github.com/godotengine/godot/issues/new?assignees=&labels=&template=bug_report.yml).
1420
Please follow the instructions in the template when you do.
1521

22+
Notably, please include a Minimal Reproduction Project (MRP), which is a small
23+
Godot project which reproduces the issue, with no unnecessary files included.
24+
Be sure to not include the `.godot` folder in the archive to save space.
25+
26+
Make sure that the bug you are experiencing is reproducible in the latest Godot
27+
releases. You can find an overview of all Godot releases [on the website](https://godotengine.org/download/archive/)
28+
to confirm whether your current version is the latest one. It's worth testing
29+
against both the latest stable release and the latest dev snapshot for the next
30+
Godot release.
31+
32+
If you run into a bug which wasn't present in an earlier Godot version (what we
33+
call a _regression_), please mention it and clarify which versions you tested
34+
(both the one(s) working and the one(s) exhibiting the bug).
35+
1636
## Proposing features or improvements
1737

18-
**Since August 2019, the main issue tracker no longer accepts feature proposals.**
19-
Instead, head to the [Godot Proposals repository](https://github.com/godotengine/godot-proposals)
20-
and follow the instructions in the README file. High-quality feature proposals
21-
are more likely to be well-received by the maintainers and community, so do
22-
your best :)
38+
**The main issue tracker is for bug reports and does not accept feature proposals.**
2339

24-
See [this article](https://godotengine.org/article/introducing-godot-proposals-repository)
25-
for detailed rationale on this change.
40+
Instead, head to the [Godot Proposals repository](https://github.com/godotengine/godot-proposals)
41+
and follow the instructions in the README file and issue template.
2642

2743
## Contributing pull requests
2844

@@ -39,80 +55,41 @@ Similar rules can be applied when contributing bug fixes - it's always best to
3955
discuss the implementation in the bug report first if you are not 100% about
4056
what would be the best fix.
4157

42-
[This blog post](https://godotengine.org/article/will-your-contribution-be-merged-heres-how-tell)
43-
outlines the process used by core developers when assessing PRs. We strongly
44-
recommend that you have a look at it to know what's important to take into
45-
account for a PR to be considered for merging.
58+
You can refer to the [Pull request review process](https://docs.godotengine.org/en/latest/contributing/workflow/pr_review_guidelines.html)
59+
for insights into the intended lifecycle of pull requests. This should help you
60+
ensure that your pull request fulfills the requirements.
4661

4762
In addition to the following tips, also take a look at the
4863
[Engine development guide](https://docs.godotengine.org/en/latest/contributing/development/index.html)
4964
for an introduction to developing on Godot.
5065

5166
The [Contributing docs](https://docs.godotengine.org/en/latest/contributing/ways_to_contribute.html)
5267
also have important information on the [PR workflow](https://docs.godotengine.org/en/latest/contributing/workflow/pr_workflow.html)
53-
and the [code style](https://docs.godotengine.org/en/latest/contributing/development/code_style_guidelines.html) we use.
54-
55-
### Document your changes
56-
57-
If your pull request adds methods, properties or signals that are exposed to
58-
scripting APIs, you **must** update the class reference to document those.
59-
This is to ensure the documentation coverage doesn't decrease as contributions
60-
are merged.
61-
62-
[Update documentation XML files](https://docs.godotengine.org/en/latest/contributing/documentation/updating_the_class_reference.html#updating-class-reference-when-working-on-the-engine)
63-
using your compiled binary, then fill in the descriptions.
64-
Follow the style guide described in the
65-
[Writing guidelines](https://docs.godotengine.org/en/latest/contributing/documentation/docs_writing_guidelines.html).
66-
67-
If your pull request modifies parts of the code in a non-obvious way, make sure
68-
to add comments in the code as well. This helps other people understand the
69-
change without having to look at `git blame`.
70-
71-
### Write unit tests
68+
(with a helpful guide for Git usage), and our [Code style guidelines](https://docs.godotengine.org/en/latest/contributing/development/code_style_guidelines.html)
69+
which all contributions need to follow.
7270

73-
When fixing a bug or contributing a new feature, we recommend including unit
74-
tests in the same commit as the rest of the pull request. Unit tests are pieces
75-
of code that compare the output to a predetermined *expected result* to detect
76-
regressions. Tests are compiled and run on GitHub Actions for every commit and
77-
pull request.
78-
79-
Pull requests that include tests are more likely to be merged, since we can have
80-
greater confidence in them not being the target of regressions in the future.
81-
82-
For bugs, the unit tests should cover the functionality that was previously
83-
broken. If done well, this ensures regressions won't appear in the future
84-
again. For new features, the unit tests should cover the newly added
85-
functionality, testing both the "success" and "expected failure" cases if
86-
applicable.
87-
88-
Feel free to contribute standalone pull requests to add new tests or improve
89-
existing tests as well.
90-
91-
See [Unit testing](https://docs.godotengine.org/en/latest/contributing/development/core_and_modules/unit_testing.html)
92-
for information on writing tests in Godot's C++ codebase.
93-
94-
### Be nice to the Git history
71+
### Be mindful of your commits
9572

9673
Try to make simple PRs that handle one specific topic. Just like for reporting
9774
issues, it's better to open 3 different PRs that each address a different issue
98-
than one big PR with three commits.
75+
than one big PR with three commits. This makes it easier to review, approve, and
76+
merge the changes independently.
9977

10078
When updating your fork with upstream changes, please use ``git pull --rebase``
10179
to avoid creating "merge commits". Those commits unnecessarily pollute the git
10280
history when coming from PRs.
10381

10482
Also try to make commits that bring the engine from one stable state to another
10583
stable state, i.e. if your first commit has a bug that you fixed in the second
106-
commit, try to merge them together before making your pull request (see ``git
107-
rebase -i`` and relevant help about rebasing or amending commits on the
108-
Internet).
109-
110-
This [Git style guide](https://github.com/agis-/git-style-guide) has some
111-
good practices to have in mind.
84+
commit, try to merge them together before making your pull request. This
85+
includes fixing build issues or typos, adding documentation, etc.
11286

11387
See our [PR workflow](https://docs.godotengine.org/en/latest/contributing/workflow/pr_workflow.html)
11488
documentation for tips on using Git, amending commits and rebasing branches.
11589

90+
This [Git style guide](https://github.com/agis-/git-style-guide) also has some
91+
good practices to have in mind.
92+
11693
### Format your commit messages with readability in mind
11794

11895
The way you format your commit messages is quite important to ensure that the
@@ -121,12 +98,25 @@ message is formatted as a short title (first line) and an extended description
12198
(everything after the first line and an empty separation line).
12299

123100
The short title is the most important part, as it is what will appear in the
124-
`shortlog` changelog (one line per commit, so no description shown) or in the
125-
GitHub interface unless you click the "expand" button. As the name says, try to
126-
keep that first line under 72 characters. It should describe what the commit
127-
does globally, while details would go in the description. Typically, if you
128-
can't keep the title short because you have too much stuff to mention, it means
129-
you should probably split your changes in several commits :)
101+
changelog or in the GitHub interface unless you click the "expand" button.
102+
Try to keep that first line under 72 characters, but you can go slightly above
103+
if necessary to keep the sentence clear.
104+
105+
It should be written in English, starting with a capital letter, and usually
106+
with a verb in imperative form. A typical bugfix would start with "Fix", while
107+
the addition of a new feature would start with "Add". A prefix can be added to
108+
specify the engine area affected by the commit. Some examples:
109+
110+
- Add C# iOS support
111+
- Show doc tooltips when hovering properties in the theme editor
112+
- Fix GLES3 instanced rendering color and custom data defaults
113+
- Core: Fix `Object::has_method()` for script static methods
114+
115+
If your commit fixes a reported issue, please include it in the _description_
116+
of the commit (not in the title) using one of the
117+
[GitHub closing keywords](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
118+
such as "Fixes #1234". This will cause the issue to be closed automatically if
119+
the PR is merged.
130120

131121
Here's an example of a well-formatted commit message (note how the extended
132122
description is also manually wrapped at 80 chars for readability):
@@ -142,23 +132,59 @@ By fixing the regulation system via an added binding to the internal feature,
142132
this commit now ensures that Godot will not go past the ebullition temperature
143133
of cooking oil under normal atmospheric conditions.
144134
145-
Fixes #1789, long live the Realm!
135+
Fixes #1340.
146136
```
147137

148138
**Note:** When using the GitHub online editor or its drag-and-drop
149139
feature, *please* edit the commit title to something meaningful. Commits named
150140
"Update my_file.cpp" won't be accepted.
151141

152-
## Contributing to Godot's translation
142+
### Document your changes
143+
144+
If your pull request adds methods, properties or signals that are exposed to
145+
scripting APIs, you **must** update the class reference to document those.
146+
This is to ensure the documentation coverage doesn't decrease as contributions
147+
are merged.
148+
149+
[Update documentation XML files](https://docs.godotengine.org/en/latest/contributing/documentation/updating_the_class_reference.html)
150+
using your compiled binary, then fill in the descriptions.
151+
Follow the style guide described in the
152+
[Documentation writing guidelines](https://docs.godotengine.org/en/latest/contributing/documentation/docs_writing_guidelines.html).
153+
154+
If your pull request modifies parts of the code in a non-obvious way, make sure
155+
to add comments in the code as well. This helps other people understand the
156+
change without having to dive into the Git history.
157+
158+
### Write unit tests
159+
160+
When fixing a bug or contributing a new feature, we recommend including unit
161+
tests in the same commit as the rest of the pull request. Unit tests are pieces
162+
of code that compare the output to a predetermined *expected result* to detect
163+
regressions. Tests are compiled and run on GitHub Actions for every commit and
164+
pull request.
165+
166+
Pull requests that include tests are more likely to be merged, since we can have
167+
greater confidence in them not being the target of regressions in the future.
168+
169+
For bugs, the unit tests should cover the functionality that was previously
170+
broken. If done well, this ensures regressions won't appear in the future
171+
again. For new features, the unit tests should cover the newly added
172+
functionality, testing both the "success" and "expected failure" cases if
173+
applicable.
174+
175+
Feel free to contribute standalone pull requests to add new tests or improve
176+
existing tests as well.
177+
178+
See [Unit testing](https://docs.godotengine.org/en/latest/contributing/development/core_and_modules/unit_testing.html)
179+
for information on writing tests in Godot's C++ codebase.
180+
181+
## Contributing to Godot translations
153182

154-
You can contribute to Godot's translation from the [Hosted
155-
Weblate](https://hosted.weblate.org/projects/godot-engine/godot), an open
156-
source and web-based translation platform. Please refer to the [translation
157-
readme](editor/translations/README.md) for more information.
183+
You can contribute to Godot translations on [Hosted Weblate](https://hosted.weblate.org/projects/godot-engine/),
184+
an open source and web-based translation platform.
158185

159-
You can also help translate [Godot's
160-
documentation](https://hosted.weblate.org/projects/godot-engine/godot-docs/)
161-
on Weblate.
186+
Please refer to our [editor and documentation localization guidelines](https://docs.godotengine.org/en/latest/contributing/documentation/editor_and_docs_localization.html)
187+
for an overview of the translation resources and what they correspond to.
162188

163189
## Communicating with developers
164190

@@ -171,15 +197,13 @@ or a bug you want to fix), the following channels can be used:
171197

172198
- [Godot Contributors Chat](https://chat.godotengine.org): You will
173199
find most core developers there, so it's the go-to platform for direct chat
174-
about Godot Engine development. Feel free to start discussing something there
175-
to get some early feedback before writing up a detailed proposal in a GitHub
176-
issue.
200+
about Godot Engine development. Browse the [Directory](https://chat.godotengine.org/directory/channels)
201+
for an overview of public channels focusing on various engine areas which you
202+
might be interested in.
177203
- [Bug tracker](https://github.com/godotengine/godot/issues): If there is an
178-
existing issue about a topic you want to discuss, just add a comment to it -
179-
many developers watch the repository and will get a notification. You can
180-
also create a new issue - please keep in mind to create issues only to
181-
discuss quite specific points about the development, and not general user
182-
feedback or support requests.
204+
existing issue about a topic you want to discuss, you can participate directly.
205+
If not, you can open a new issue. Please mind the guidelines outlined above
206+
for bug reporting.
183207
- [Feature proposals](https://github.com/godotengine/godot-proposals/issues):
184208
To propose a new feature, we have a dedicated issue tracker for that. Don't
185209
hesitate to start by talking about your idea on the Godot Contributors Chat

COPYRIGHT.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ License: Expat
383383
Files: ./thirdparty/noise/FastNoiseLite.h
384384
Comment: FastNoise Lite
385385
Copyright: 2020, Jordan Peck and contributors
386-
License: MIT
386+
License: Expat
387387

388388
Files: ./thirdparty/misc/pcg.cpp
389389
./thirdparty/misc/pcg.h
@@ -428,7 +428,7 @@ License: BSD-2-clause
428428
Files: ./thirdparty/msdfgen/
429429
Comment: Multi-channel signed distance field generator
430430
Copyright: 2016-2022, Viktor Chlumsky
431-
License: MIT
431+
License: Expat
432432

433433
Files: ./thirdparty/nvapi/nvapi_minimal.h
434434
Comment: Stripped down version of "nvapi.h" from the NVIDIA NVAPI SDK

LOGO_LICENSE.md

-5
This file was deleted.

LOGO_LICENSE.txt

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Godot Engine Logo
2+
Copyright (c) 2017 Andrea Calabró
3+
4+
This work is licensed under the Creative Commons Attribution 4.0 International
5+
license (CC BY 4.0 International): https://creativecommons.org/licenses/by/4.0/

README.md

+11-9
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,26 @@
1010

1111
**[Godot Engine](https://godotengine.org) is a feature-packed, cross-platform
1212
game engine to create 2D and 3D games from a unified interface.** It provides a
13-
comprehensive set of [common tools](https://godotengine.org/features), so that users can focus on making games
14-
without having to reinvent the wheel. Games can be exported with one click to a
15-
number of platforms, including the major desktop platforms (Linux, macOS,
16-
Windows), mobile platforms (Android, iOS), as well as Web-based platforms
17-
and [consoles](https://docs.godotengine.org/en/latest/tutorials/platform/consoles.html).
13+
comprehensive set of [common tools](https://godotengine.org/features), so that
14+
users can focus on making games without having to reinvent the wheel. Games can
15+
be exported with one click to a number of platforms, including the major desktop
16+
platforms (Linux, macOS, Windows), mobile platforms (Android, iOS), as well as
17+
Web-based platforms and [consoles](https://docs.godotengine.org/en/latest/tutorials/platform/consoles.html).
1818

1919
## Free, open source and community-driven
2020

2121
Godot is completely free and open source under the very permissive [MIT license](https://godotengine.org/license).
2222
No strings attached, no royalties, nothing. The users' games are theirs, down
2323
to the last line of engine code. Godot's development is fully independent and
2424
community-driven, empowering users to help shape their engine to match their
25-
expectations. It is supported by the [Software Freedom Conservancy](https://sfconservancy.org/)
25+
expectations. It is supported by the [Godot Foundation](https://godot.foundation/)
2626
not-for-profit.
2727

2828
Before being open sourced in [February 2014](https://github.com/godotengine/godot/commit/0b806ee0fc9097fa7bda7ac0109191c9c5e0a1ac),
2929
Godot had been developed by [Juan Linietsky](https://github.com/reduz) and
30-
[Ariel Manzur](https://github.com/punto-) (both still maintaining the project) for several
31-
years as an in-house engine, used to publish several work-for-hire titles.
30+
[Ariel Manzur](https://github.com/punto-) (both still maintaining the project)
31+
for several years as an in-house engine, used to publish several work-for-hire
32+
titles.
3233

3334
![Screenshot of a 3D scene in the Godot Engine editor](https://raw.githubusercontent.com/godotengine/godot-design/master/screenshots/editor_tps_demo_1920x1080.jpg)
3435

@@ -37,7 +38,7 @@ years as an in-house engine, used to publish several work-for-hire titles.
3738
### Binary downloads
3839

3940
Official binaries for the Godot editor and the export templates can be found
40-
[on the homepage](https://godotengine.org/download).
41+
[on the Godot website](https://godotengine.org/download).
4142

4243
### Compiling from source
4344

@@ -53,6 +54,7 @@ The best way to get in touch with the core engine developers is to join the
5354
[Godot Contributors Chat](https://chat.godotengine.org).
5455

5556
To get started contributing to the project, see the [contributing guide](CONTRIBUTING.md).
57+
This document also includes guidelines for reporting bugs.
5658

5759
## Documentation and demos
5860

0 commit comments

Comments
 (0)