summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar wwylele2016-10-31 18:07:34 +0200
committerGravatar wwylele2016-10-31 21:31:47 +0200
commit708686b6d47efbd07568cea0d496b6884baf54cd (patch)
treeebb4d421945c8297717c19014d8df5bec33cd89d
parentTravis: only upload for push (#2134) (diff)
downloadyuzu-708686b6d47efbd07568cea0d496b6884baf54cd.tar.gz
yuzu-708686b6d47efbd07568cea0d496b6884baf54cd.tar.xz
yuzu-708686b6d47efbd07568cea0d496b6884baf54cd.zip
Update CONTRIBUTING.md
Diffstat (limited to '')
-rw-r--r--CONTRIBUTING.md21
1 files changed, 8 insertions, 13 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index c2735f564..3d6a87651 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,21 +1,19 @@
1# Reporting Issues 1# Reporting Issues
2 2
3**The issue tracker is not a support forum.** Unless you can provide precise *technical information* regarding an issue, you *should not post in it*. If you need support, first read the [FAQ](https://github.com/citra-emu/citra/wiki/FAQ) and then either visit our IRC channel or ask in a general emulation forum such as [/r/emulation](https://www.reddit.com/r/emulation/). If you post support questions, generic messages to the developers or vague reports without technical details, they will be closed and locked. 3**The issue tracker is not a support forum.** Unless you can provide precise *technical information* regarding an issue, you *should not post in it*. If you need support, first read the [FAQ](https://github.com/citra-emu/citra/wiki/FAQ) and then either visit our IRC channel, [our forum](https://discuss.citra-emu.org/) or ask in a general emulation forum such as [/r/emulation](https://www.reddit.com/r/emulation/). If you post support questions, generic messages to the developers or vague reports without technical details, they will be closed and locked.
4 4
5If you believe you have a valid issue report, please post text or a screenshot from the log (the console window that opens alongside Citra) and build version (hex string visible in the titlebar and zip filename), as well as your hardware and software information if applicable. 5If you believe you have a valid issue report, please post text or a screenshot from the log (the console window that opens alongside Citra) and build version (hex string visible in the titlebar and zip filename), as well as your hardware and software information if applicable.
6 6
7While issues about specific games not booting are valid bugs, we are currently not interested in them unless you have several games which fail with the same or similar messages. (In which case please file only a single issue about it.) There are too many non-working games right now to file individual issues for every one of them.
8
9# Contributing 7# Contributing
10Citra is a brand new project, so we have a great opportunity to keep things clean and well organized early on. As such, coding style is very important when making commits. They aren't very strict rules since we want to be flexible and we understand that under certain circumstances some of them can be counterproductive. Just try to follow as many of them as possible: 8Citra is a brand new project, so we have a great opportunity to keep things clean and well organized early on. As such, coding style is very important when making commits. We run clang-format on our CI to check the code. Please use it to format your code when contributing. However, it doesn't cover all the rules below. Some of them aren't very strict rules since we want to be flexible and we understand that under certain circumstances some of them can be counterproductive. Just try to follow as many of them as possible:
11 9
12### General Rules 10### General Rules
13* A lot of code was taken from other projects (e.g. Dolphin, PPSSPP, Gekko, SkyEye). In general, when editing other people's code, follow the style of the module you're in (or better yet, fix the style if it drastically differs from our guide). 11* A lot of code was taken from other projects (e.g. Dolphin, PPSSPP, Gekko, SkyEye). In general, when editing other people's code, follow the style of the module you're in (or better yet, fix the style if it drastically differs from our guide).
14* Line width is typically 100 characters, but this isn't strictly enforced. Please do not use 80-characters. 12* Line width is typically 100 characters. Please do not use 80-characters.
15* Don't ever introduce new external dependencies into Core 13* Don't ever introduce new external dependencies into Core
16* Don't use any platform specific code in Core 14* Don't use any platform specific code in Core
17* Use namespaces often 15* Use namespaces often
18* Avoid the use of C-style casts and instead prefer C++-style `static_cast` and `reinterpret_cast`. Never use `const_cast` or `dynamic_cast` (we build with RTTI disabled). The only exception to this rule is for casting between two numeric types, where C-style casts are encouraged for brevity and readability. 16* Avoid the use of C-style casts and instead prefer C++-style `static_cast` and `reinterpret_cast`. Try to avoid using `dynamic_cast`. Never use `const_cast`. The only exception to this rule is for casting between two numeric types, where C-style casts are encouraged for brevity and readability.
19 17
20### Naming Rules 18### Naming Rules
21* Functions: `PascalCase` 19* Functions: `PascalCase`
@@ -59,9 +57,9 @@ char* g_some_pointer; // Pointer * and reference & stick to the type name
59 57
60/// A colorful enum. 58/// A colorful enum.
61enum SomeEnum { 59enum SomeEnum {
62 COLOR_RED, ///< The color of fire. 60 ColorRed, ///< The color of fire.
63 COLOR_GREEN, ///< The color of grass. 61 ColorGreen, ///< The color of grass.
64 COLOR_BLUE, ///< Not actually the color of water. 62 ColorBlue, ///< Not actually the color of water.
65}; 63};
66 64
67/** 65/**
@@ -79,7 +77,7 @@ void FooBar() {
79 5, 77 5,
80 25, 78 25,
81 7, 79 7,
82 42 80 42,
83 }; 81 };
84 82
85 if (note == the_space_after_the_if) { 83 if (note == the_space_after_the_if) {
@@ -88,9 +86,6 @@ void FooBar() {
88 // Use a space after the // when commenting 86 // Use a space after the // when commenting
89 } 87 }
90 88
91 // Comment directly above code when possible
92 if (some_condition) single_statement();
93
94 // Place a single space after the for loop semicolons, prefer pre-increment 89 // Place a single space after the for loop semicolons, prefer pre-increment
95 for (int i = 0; i != 25; ++i) { 90 for (int i = 0; i != 25; ++i) {
96 // This is how we write loops 91 // This is how we write loops