mirror of
https://github.com/luanti-org/luanti.git
synced 2025-10-20 11:35:21 +02:00
Refactor CONTRIBUTING.md
This commit is contained in:
133
.github/CONTRIBUTING.md
vendored
133
.github/CONTRIBUTING.md
vendored
@@ -1,12 +1,10 @@
|
|||||||
# Contributing
|
|
||||||
|
|
||||||
Contributions are welcome! Here's how you can help:
|
Contributions are welcome! Here's how you can help:
|
||||||
|
|
||||||
- [Contributing code](#code)
|
* [Contributing code](#code)
|
||||||
- [Reporting issues](#issues)
|
* [Reporting issues](#issues)
|
||||||
- [Requesting features](#feature-requests)
|
* [Requesting features](#feature-requests)
|
||||||
- [Translating](#translations)
|
* [Translating](#translations)
|
||||||
- [Donating](#donations)
|
* [Donating](#donations)
|
||||||
|
|
||||||
## Code
|
## Code
|
||||||
|
|
||||||
@@ -14,55 +12,56 @@ Contributions are welcome! Here's how you can help:
|
|||||||
[clone](https://help.github.com/articles/cloning-a-repository/) your fork.
|
[clone](https://help.github.com/articles/cloning-a-repository/) your fork.
|
||||||
|
|
||||||
2. Before you start coding, consider opening an
|
2. Before you start coding, consider opening an
|
||||||
[issue at Github](https://github.com/minetest/minetest/issues) to discuss the
|
[issue at GitHub](https://github.com/minetest/minetest/issues) to discuss the
|
||||||
suitability and implementation of your intended contribution with the core
|
suitability and implementation of your intended contribution with the core
|
||||||
developers.
|
developers.
|
||||||
|
|
||||||
Any Pull Request that isn't a bug fix and isn't covered by
|
Any pull request that isn't a bug fix and isn't covered by
|
||||||
[the roadmap](../doc/direction.md) will be closed within a month unless it
|
[the roadmap](../doc/direction.md) will be closed within a month unless it
|
||||||
receives a concept approval from a Core Developer. For this reason, it is
|
receives a concept approval from a Core Developer. For this reason, it is
|
||||||
recommended that you open an issue for any such pull requests before doing
|
recommended that you open an issue for any such pull requests before doing
|
||||||
the work, to avoid disappointment.
|
the work, to avoid disappointment.
|
||||||
|
|
||||||
You may also benefit from discussing on our IRC development channel
|
You may also benefit from discussing on one of our IRC development channels
|
||||||
[#minetest-dev](http://www.minetest.net/irc/). Note that a proper IRC client
|
[listed here](https://wiki.minetest.net/IRC). Note that a proper IRC client
|
||||||
is required to speak on this channel.
|
is required to speak on these channels.
|
||||||
|
|
||||||
3. Start coding!
|
3. Start coding!
|
||||||
- Refer to the
|
* Refer to the
|
||||||
[Lua API](https://github.com/minetest/minetest/blob/master/doc/lua_api.md),
|
[Lua API](https://github.com/minetest/minetest/blob/master/doc/lua_api.md),
|
||||||
[Developer Wiki](http://dev.minetest.net/Main_Page) and other
|
[Developer Wiki](https://dev.minetest.net/Main_Page) and other
|
||||||
[documentation](https://github.com/minetest/minetest/tree/master/doc).
|
[documentation](https://github.com/minetest/minetest/tree/master/doc).
|
||||||
- Follow the [C/C++](http://dev.minetest.net/Code_style_guidelines) and
|
* Follow the [C/C++](https://dev.minetest.net/Code_style_guidelines) and
|
||||||
[Lua](http://dev.minetest.net/Lua_code_style_guidelines) code style guidelines.
|
[Lua](https://dev.minetest.net/Lua_code_style_guidelines) code style guidelines.
|
||||||
- Check your code works as expected and document any changes to the Lua API.
|
* Check your code works as expected and document any changes to the Lua API.
|
||||||
|
|
||||||
4. Commit & [push](https://help.github.com/articles/pushing-to-a-remote/) your changes to a new branch (not `master`, one change per branch)
|
4. Commit and [push](https://help.github.com/articles/pushing-to-a-remote/) your changes
|
||||||
- Commit messages should:
|
to a new branch (not `master`, one change per branch)
|
||||||
- Use the present tense.
|
* Commit messages should:
|
||||||
- Be descriptive. See the commit messages by core developers for examples.
|
* Use the present tense.
|
||||||
- The first line should:
|
* Be descriptive. See the commit messages by core developers for examples.
|
||||||
- Start with a capital letter.
|
* The first line should:
|
||||||
- Be a compact summary of the commit.
|
* Start with a capital letter.
|
||||||
- Preferably have less than 70 characters.
|
* Be a compact summary of the commit.
|
||||||
- Have no full stop at the end.
|
* Preferably have less than 70 characters.
|
||||||
- The second line should be empty.
|
* Have no full stop at the end.
|
||||||
- The following lines should describe the commit, starting a new line for each point.
|
* The second line should be empty.
|
||||||
|
* The following lines should describe the commit, starting a new line for each point.
|
||||||
|
|
||||||
5. Once you are happy with your changes, submit a pull request.
|
5. Once you are happy with your changes, submit a pull request.
|
||||||
- Open the [pull-request form](https://github.com/minetest/minetest/pull/new/master).
|
* Open the [pull request form](https://github.com/minetest/minetest/pull/new/master).
|
||||||
- Add a description explaining what you've done (or if it's a
|
* Add a description explaining what you've done (or if it's a work-in-progress -
|
||||||
work-in-progress - what you need to do).
|
what you need to do).
|
||||||
- Make sure to fill out the pull request template.
|
* Make sure to fill out the pull request template.
|
||||||
|
|
||||||
### A pull-request is considered merge-able when:
|
### A pull request is Considered Mergeable When:
|
||||||
|
|
||||||
1. It follows [the roadmap](../doc/direction.md) in some way and fits the whole
|
1. It follows [the roadmap](../doc/direction.md) in some way and fits the whole
|
||||||
picture of the project.
|
picture of the project.
|
||||||
2. It works.
|
2. It works.
|
||||||
3. It follows the code style for
|
3. It follows the code style for
|
||||||
[C/C++](http://dev.minetest.net/Code_style_guidelines) or
|
[C/C++](https://dev.minetest.net/Code_style_guidelines) or
|
||||||
[Lua](http://dev.minetest.net/Lua_code_style_guidelines).
|
[Lua](https://dev.minetest.net/Lua_code_style_guidelines).
|
||||||
4. The code's interfaces are well designed, regardless of other aspects that
|
4. The code's interfaces are well designed, regardless of other aspects that
|
||||||
might need more work in the future.
|
might need more work in the future.
|
||||||
5. It uses protocols and formats which include the required compatibility.
|
5. It uses protocols and formats which include the required compatibility.
|
||||||
@@ -73,18 +72,18 @@ If you experience an issue, we would like to know the details - especially when
|
|||||||
a stable release is on the way.
|
a stable release is on the way.
|
||||||
|
|
||||||
1. Do a quick search on GitHub to check if the issue has already been reported.
|
1. Do a quick search on GitHub to check if the issue has already been reported.
|
||||||
2. Is it an issue with the Minetest *engine*? If not, report it
|
2. Is it an issue with the Minetest *engine*? If not, report it.
|
||||||
[elsewhere](http://www.minetest.net/development/#reporting-issues).
|
[elsewhere](https://www.minetest.net/development/#reporting-issues).
|
||||||
3. [Open an issue](https://github.com/minetest/minetest/issues/new) and describe
|
3. [Open an issue](https://github.com/minetest/minetest/issues/new) and describe
|
||||||
the issue you are having - you could include:
|
the issue you are having - you could include:
|
||||||
- Error logs (check the bottom of the `debug.txt` file).
|
* Error logs (check the bottom of the `debug.txt` file).
|
||||||
- Screenshots.
|
* Screenshots.
|
||||||
- Ways you have tried to solve the issue, and whether they worked or not.
|
* Ways you have tried to solve the issue, and whether they worked or not.
|
||||||
- Your Minetest version and the content (games, mods or texture packs) you have installed.
|
* Your Minetest version and the content (games, mods or texture packs) you have installed.
|
||||||
- Your platform (e.g. Windows 10 or Ubuntu 15.04 x64).
|
* Your platform (e.g. Windows 10 or Ubuntu 15.04 x64).
|
||||||
|
|
||||||
After reporting you should aim to answer questions or clarifications as this
|
After reporting, you should aim to answer questions or clarifications as this
|
||||||
helps pinpoint the cause of the issue (if you don't do this your issue may be
|
helps pinpoint the cause of the issue (if you don't do this, your issue may be
|
||||||
closed after 1 month).
|
closed after 1 month).
|
||||||
|
|
||||||
## Feature requests
|
## Feature requests
|
||||||
@@ -108,20 +107,20 @@ translated by editing a `.tr` text file. See
|
|||||||
## Donations
|
## Donations
|
||||||
|
|
||||||
If you'd like to monetarily support Minetest development, you can find donation
|
If you'd like to monetarily support Minetest development, you can find donation
|
||||||
methods on [our website](http://www.minetest.net/development/#donate).
|
methods on [our website](https://www.minetest.net/get-involved/#donate).
|
||||||
|
|
||||||
# Maintaining
|
# Maintaining
|
||||||
|
|
||||||
* This is a concise version of the
|
* This is a concise version of the
|
||||||
[Rules & Guidelines](http://dev.minetest.net/Category:Rules_and_Guidelines) on the developer wiki.*
|
[Rules & Guidelines](https://dev.minetest.net/Category:Rules_and_Guidelines) on the developer wiki.*
|
||||||
|
|
||||||
These notes are for those who have push access Minetest (core developers / maintainers).
|
These notes are for those who have push access Minetest (core developers / maintainers).
|
||||||
|
|
||||||
- See the [project organisation](http://dev.minetest.net/Organisation) for the people involved.
|
* See the [project organization](https://dev.minetest.net/Organisation) for the people involved.
|
||||||
|
|
||||||
## Concept approvals and roadmaps
|
## Concept Approvals and Roadmaps
|
||||||
|
|
||||||
If a Pull Request is not a bug fix:
|
If a pull request is not a bug fix:
|
||||||
|
|
||||||
* If it matches a goal in [the roadmap](../doc/direction.md), then the PR should
|
* If it matches a goal in [the roadmap](../doc/direction.md), then the PR should
|
||||||
be labeled as "Roadmap" and the goal stated by number in the description.
|
be labeled as "Roadmap" and the goal stated by number in the description.
|
||||||
@@ -137,33 +136,33 @@ Pull requests should be reviewed and, if appropriate, checked if they achieve
|
|||||||
their intended purpose. You can show that you are in the process of, or will
|
their intended purpose. You can show that you are in the process of, or will
|
||||||
review the pull request by commenting *"Looks good"* or something similar.
|
review the pull request by commenting *"Looks good"* or something similar.
|
||||||
|
|
||||||
**If the pull-request is not [merge-able](#a-pull-request-is-considered-merge-able-when):**
|
**If the pull request is not [mergeable](#a-pull-request-is-considered-mergeable-when):**
|
||||||
|
|
||||||
Submit a comment explaining to the author what they need to change to make the
|
Submit a comment explaining to the author what they need to change to make the
|
||||||
pull-request merge-able.
|
pull request merge-able.
|
||||||
|
|
||||||
- If the author comments or makes changes to the pull-request, it can be
|
* If the author comments or makes changes to the pull request, it can be
|
||||||
reviewed again.
|
reviewed again.
|
||||||
- If no response is made from the author within 1 month (when improvements are
|
* If no response is made from the author within 1 month (when improvements are
|
||||||
suggested or a question is asked), it can be closed.
|
suggested or a question is asked), it can be closed.
|
||||||
|
|
||||||
**If the pull-request is [merge-able](#a-pull-request-is-considered-merge-able-when):**
|
**If the pull request is [mergeable](#a-pull-request-is-considered-mergeable-when):**
|
||||||
|
|
||||||
Submit a :+1: (+1) or "Looks good" comment to show you believe the pull-request should be merged. "Looks good" comments often signify that the patch might require (more) testing.
|
Submit a :+1: (+1) or "Looks good" comment to show you believe the pull request should be merged. "Looks good" comments often signify that the patch might require (more) testing.
|
||||||
|
|
||||||
- Two core developers must agree to the merge before it is carried out and both should +1 the pull request.
|
* Two core developers must agree to the merge before it is carried out and both should +1 the pull request.
|
||||||
- Who intends to merge the pull-request should follow the commit rules:
|
* Who intends to merge the pull request should follow the commit rules:
|
||||||
- The title should follow the commit guidelines (title starts with a capital letter, present tense, descriptive).
|
* The title should follow the commit guidelines (title starts with a capital letter, present tense, descriptive).
|
||||||
- Don't modify history older than 10 minutes.
|
* Don't modify history older than 10 minutes.
|
||||||
- Use rebase, not merge to get linear history:
|
* Use rebase, not merge to get linear history:
|
||||||
- `curl https://github.com/minetest/minetest/pull/1.patch | git am`
|
`curl https://github.com/minetest/minetest/pull/1.patch | git am`
|
||||||
|
|
||||||
## Reviewing issues and feature requests
|
## Reviewing Issues and Feature Requests
|
||||||
|
|
||||||
- If an issue does not get a response from its author within 1 month (when requiring more details), it can be closed.
|
* If an issue does not get a response from its author within 1 month (when requiring more details), it can be closed.
|
||||||
- When an issue is a duplicate, refer to the first ones and close the later ones.
|
* When an issue is a duplicate, refer to the first ones and close the later ones.
|
||||||
- Tag issues with the appropriate [labels](https://github.com/minetest/minetest/labels) for devices, platforms etc.
|
* Tag issues with the appropriate [labels](https://github.com/minetest/minetest/labels) for devices, platforms etc.
|
||||||
|
|
||||||
## Releasing a new version
|
## Releasing a New Version
|
||||||
|
|
||||||
*Refer to [dev.minetest.net/Releasing_Minetest](http://dev.minetest.net/Releasing_Minetest)*
|
*Refer to [dev.minetest.net/Releasing_Minetest](https://dev.minetest.net/Releasing_Minetest)*
|
Reference in New Issue
Block a user